OpenGL坐标系
六大坐标系
1,物体或模型坐标系(Object or model coordinates);
2,世界坐标系(World coordinates)
3,眼坐标或相机坐标(Eye (or Camera) coordinates)
4,裁剪坐标系(Clip coordinates)
5,标准设备坐标系(Normalized device coordinates)
6,屏幕坐标系(Window (or screen) coordinates)
7. 视口坐标系(ViewPort coordinates)
8. 纹理坐标系(Texture coordinates)
9. 齐次坐标(Homogeneous Coordinates)
转换流程

常用矩阵
ModelMatrix
将模型坐标变换到WorldMatrix的Matrix
ViewMatrix
将World坐标系下的坐标转换到Camera坐标系
ModelViewMatrix
模型视图矩阵是视图变换矩阵与模型变换矩阵相乘的结果。
ProjectionMatrix
投影矩阵将视图坐标系中的顶点转化到平面上。
MVP:ModelViewProjectionMatrix
模型视图投影矩阵 = 投影矩阵 × 视图矩阵 × 模型矩阵
顶点坐标乘以该矩阵就直接获得其在规范立方体中的坐标了。这个矩阵通常作为一个整体出现在着色器中:
1 | |
NormalMatrix
法线矩阵:与自己的共轭转置矩阵满足交换律的复系数方块矩阵
这是一个三维矩阵:
1 | |
设计经验
在openGL中,每一个GameObject上面都会有一个Transform,用来记录这个Object的position,rotation和scale.