这节算是引言部分,主要想对 opengl 和 glm 的矩阵在内存中按照列主序保存方式进行说明 [1]。 通常我们看到的矩阵是用的行优先存储方式,比如以下矩阵:
用行优先存储表示为:
如果以列主序存储该矩阵,在内存中的布局如下图所示:
OpenGL API接受的矩阵要求是列主序的,如果一个OpenGL的应用使用的是行主序的矩阵,那么在将矩阵传给OpenGL API前,需要先转换为列主序。
由图可以看出,矩阵的行主序等于其转置矩阵的列主序,矩阵的列主序等于其转置矩阵的行主序。
这节算是引言部分,主要想对 opengl 和 glm 的矩阵在内存中按照列主序保存方式进行说明 [1]。 通常我们看到的矩阵是用的行优先存储方式,比如以下矩阵:
用行优先存储表示为:
如果以列主序存储该矩阵,在内存中的布局如下图所示:
OpenGL API接受的矩阵要求是列主序的,如果一个OpenGL的应用使用的是行主序的矩阵,那么在将矩阵传给OpenGL API前,需要先转换为列主序。
由图可以看出,矩阵的行主序等于其转置矩阵的列主序,矩阵的列主序等于其转置矩阵的行主序。