时间:2021-08-23 09:25:07 | 栏目:C代码 | 点击:次
1.矩阵在内存中的存储
不管是D3D还是OpenGL,使用的矩阵都是线性代数标准的矩阵,只是在存储方式上有所不同。分别为:行主序(Direct3D),列主序(OpenGL)
存储顺序说明了线性代数中的矩阵如何在线性的内存数组中存储。
例如:内存中使用一个二维数组m存储矩阵,第i行第j列的表示方法分别为:
行主序:m[i][j]
列主序:m[j][i]
线性代数意义的同一个矩阵,在d3d 和 openGL 中的存储顺序
线代:a11,a12,a13,a14 d3d : a11,a12,a13,a14 OpenGL: a11,a21,a31,a41
a21,a22,a23,a24 a21,a22,a23,a24 a12,a22,a32,a42
a31,a32,a33,a34 a31,a32,a33,a34 a13,a23,a33,a43
a41,a42,a43,a44 a41,a42,a43,a44 a14,a24,a34,a44
2.行主序的矩阵与列主序的矩阵如何转换呢?
不难发现,M行=M列T
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!