OpenGL Basic Transformations - OpenGL 基础变换原理(1)

主要内容引自:

Addison.Wesley.OpenGL.SuperBible.5th.Edition.Jul.2010

CHAPTER 4
Basic Transformations:
A Vector/Matrix Primer

OpenGL的坐标变换其实主要是理解各种矩阵变换,其实在各个领域都在用矩阵变换,OpenGL用到的只是3维(后扩展到4维)的矩阵变换。

1.向量

在OpenGL里的向量定义有两种方式:

typedef float M3DVector3f[3]; //只有XYZ坐标
typedef float M3DVector4f[4];//XYZ坐标加上缩放因子

向量运算主要有两种形式:

Dot Product:点积,单位向量的点积可以表示两个向量的夹角。

Cross Product:差积,可以计算出和两个单位向量垂直的第三个向量,这样只需给出某个坐标系的两个坐标轴方向,自然可以计算出第三个坐标轴方向。记得在电磁场理论里也用叉积来计算由电流产生的磁场。

2.变换

有如下几种变换:

Viewing: Specifies the location of the viewer or camera 观察变换:定义观察者位置或摄像头位置
Modeling: Moves objects around the scene 物体变换:在场景中移动物体。
Modelview: Describes the duality of viewing and modeling transformations 描述观察变换和物体变换的对偶性,因为他们本来就是相对移动的。
Projection: Sizes and reshapes the viewing volume 投影变换:改变观察空间的大小和形状。
Viewport: A pseudo-transformation that scales the final output to the window 观察窗口变换:从投影结果到窗口系统的变换。

 

待续......

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值