图形库坐标矩阵

时间:2021-12-27 03:54:39

转载地址:http://www.cnblogs.com/siphen/articles/1881974.html


最近在几种图形api与渲染引擎环境中来回切换,比较下矩阵运算

opengl  右手坐标系 列向量 左乘 列主序存储矩阵
osg     右手坐标系 行向量 右乘 行主序存储矩阵
d3d        左手坐标系 行向量 右乘 行主序存储矩阵
ogre      右手坐标系 列向量 左乘 行主序存储矩阵

 

osg 底层使用的是opengl ,行向量,由于使用矩阵是行主序存储,

相同变换矩阵与opengl矩阵内存内容一直,可直接使用api设置变换矩阵;

 

ogre 支持opengl,d3d,opengl与ogre上层矩阵库运算顺利相同,

但opengl api设置矩阵前需要修改矩阵的存储顺序为列主序,

d3d使用右乘,ogre上层运算的矩阵应用到d3d api前需要转置处理,

d3d使用与ogre不同的坐标系,设置ogre的ViewMatrix到d3d api前取反look方向(view坐标系z轴)