OpenGL中的坐标变换与代码示例

该文章深入探讨了OpenGL中的顶点表示和变换,包括顶点坐标、变换矩阵及详细步骤。重点介绍了模型视图矩阵、投影矩阵的使用,如gluLookAt()和glFrustum()函数,以及透视除法和视口变换在场景绘制中的作用,展示了如何通过这些变换创建和操纵3D场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 OpenGL中的顶点表示和变换

1.1 顶点的坐标表示 (x, y,z, w)

即顶点总是有4个坐标(绝大多数情况下w都固定为1)。

1.2 顶点的变换矩阵

若有一个4X4的矩阵的M,就可以通过矩阵乘法运算,实现顶点坐标的变换,这个M就是顶点的变换矩阵。
v ′ = M v v^{'}=\textbf{M}v v=Mv

1.3 顶点变换的步骤

在这里插入图片描述

2 顶点变换中的矩阵

2.1 模型视图矩阵

视图和模型变换一起形成了模型视图矩阵,这个矩阵作用于物体坐标(object coordinate),产生视觉坐标

如果还指定了其他裁剪平面,用于从场景中删除某些物体或者提供物体的裁剪视图,这些裁剪平面就会在此时生效。

2.1.1 视图变换

视图变换相当于把照相机固定在三角架上并使它对准场景。

OpenGL使用gluLookAt()函数指定视图变换。这个函数的参数表示照相机(或眼睛)的位置、瞄向以及哪个方向是朝上的。

gluLookAt(0.0,0.0,5.0,0.0,0.0,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值