OpenGL红宝书正序解读(二)

OpenGL红宝书正序解读二

首先感谢大家对我博客的支持,这篇博客我们重点的解读一下第三章视图的相关概念,本人想在写完这篇博客以后写个代码,囊括第二章第三章的内容
本章视图的目标就是让读者学会,不再使用默认的坐标系和观察点,我们要会自己指定观察的方向和空间中我们要放的物体的位置,同时,我们在把一个三维空间中物体的位置对应到屏幕这种二维面上时,应该怎么做,在这里,给出了一个基本的顺序:
1.包括模型视图投影操作,这三个操作都是由矩阵乘法表示的。
2.裁剪掉裁剪平面之外的物体
3.视口变换,就是让变换的坐标和我们的屏幕像素之间,建立好对应关系

用照相机打比方

之前我们提到了观察方向,这里我们用照相机来做一个比喻,比如我们想拍一张照片,那么我们就要选好角度,这个过程就是视图变换,然后有了好的角度,场景中的物体要怎么摆放呢,这个就是模型变换,然后我们选择了照相机的镜头,调整放大倍数,这个是投影变换,最后我们洗照片,洗多大尺寸的,这个就是视口变换,我们在对顶点操作过程中,视图变换一定要在模型变换之前,在后续你们会看到,这两个其实融为一体了,对于投影和视口变换,可以在绘图之前的任何时候开始。而且绘图我们一般是在上面这四个步骤完成之后才开始的,不要把模型变换当作是绘制图形,只是指定了一个矩阵而已,用于后续我们绘制物体顶点时,进行变换。
对于视图模型投影这三个变换,我们一般会用一个4X4的矩阵来表示,在后面,这些矩阵会和所有绘制的顶点相乘。这个矩阵是放到乘法式子的左边的,大家看好,矩阵的乘法是有顺序的。
在这里选用4*4的矩阵是因为,我们在指定顶点的时候,所有的顶点都是四维的,虽然最后一个大部分情况为0或1(二维和三维),同时,视图和模型变换还会对顶点上的法线产生作用,法线是相对于视觉坐标而言的,这就保证了法线和坐标之间有正确的对应关系。
在这里涉及到了坐标的概念,我会逐步地向大家介绍。
视图和模型变换一起组成了视图模型矩阵,作用于物体坐标,那么最开始,每个物体的初始坐标为物体坐标,与前述矩阵相乘之后,形成的是视觉坐标,视觉坐标是相对于视觉的,所以得在指定视图变换之后才产生视觉坐标。如果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值