我确定我的浏览器没有损坏,但OpenGL的参考文档使用非常奇怪和未记录的矩阵表示,我无法理解。如何理解OpenGL文档的矩阵?
例如,这样的:https://www.opengl.org/sdk/docs/man2/xhtml/glFrustum.xml
说明
glFrustum描述了产生的透视投影的立体矩阵。当前矩阵(见glMatrixMode)是由这个矩阵相乘,结果替换当前矩阵,仿佛glMultMatrix用以下矩阵作为参数调用:
2 nearVal right - left 0 A 0 0 2 nearVal top - bottom B 0 0 0 C D 0 0 -1 0
A = right + left right - left
B = top + bottom top - bottom
C = - farVal + nearVal farVal - nearVal
D = - 2 farVal nearVal farVal - nearVal
所以我不能让“下面的矩阵感“ 他们说。它甚至没有16个值,如果我不得不把它看作线性数组。
这是更难:https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml
实例
如果当前矩阵是C和坐标被变换为V = V0伏1体积2 v3,则当前转换为C×v,或者
c 0 c 4 c 8 c 12 c 1 c 5 c 9 c 13 c 2 c 6 c 10 c 14 c 3 c 7 c 11 c 15 × v 0 v 1 v 2 v 3
Calling glMultMatrix with an argument of m = m 0 m 1 ... m 15 replaces the current transformation with C × M × v , or
c 0 c 4 c 8 c 12 c 1 c 5 c 9 c 13 c 2 c 6 c 10 c 14 c 3 c 7 c 11 c 15 × m 0 m 4 m 8 m 12 m 1 m 5 m 9 m 13 m 2 m 6 m 10 m 14 m 3 m 7 m 11 m 15 × v 0 v 1 v 2 v 3
Where v is represented as a 4 × 1 matrix.