矩阵的行主序与列主序的分析

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

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!