[问题] OpenGL glmultmatrixf 方向?

楼主: qscgy4 (有点厉害)   2016-04-11 00:48:32
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Win7
VC2010
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
GLUT 3.7 beta
问题(Question):
我在 opengl 中使用了 glmultmatrixf() 函式,来旋转我的图形。
可是转起来怎么方向是相反的....!?
同样的旋转矩阵在 Matlab 是对的,在这里怎么反过来了..
我有google了一下,似乎跟是opengl矩阵左/右乘跟别人不一样!?
请问我要怎么设定,才能让opengl的计算跟一般数学计算一样呢?
还是我只能手动自己转置旋转矩阵..。
作者: Bencrie   2016-04-11 01:12:00
matlab 不熟。OpenGL 是一堆矩阵乘完以后最后才乘顶点效果就会是你执行顺序的反向然后矩阵是 column major
作者: Schottky (顺风相送)   2016-04-11 02:04:00
如果搞不清方向,怎么不用 glRotatef() 方便多了
作者: Bencrie   2016-04-11 13:11:00
所以我说是 column major 啊 XD
作者: longlongint (华哥尔)   2016-04-11 13:14:00
自己用其他library算完座标再画出来然后左右手座标系注意一下
作者: taies (akira)   2016-04-12 02:58:00
glMultTransposeMatrix?GLee里有定义那函式 看看要不要用
楼主: qscgy4 (有点厉害)   2016-04-13 01:23:00
GLEE的网页挂啦...根本连不进去XD
作者: Bencrie   2016-04-13 01:40:00
那个函数不是 glut 的
作者: chehsunliu (阿勋)   2016-04-14 01:26:00
我都用glm@@
作者: ronin728 (浪人)   2016-04-17 13:56:00
我不知道Matlab用什么表示法,但是OpenGL与DirectX是不同的,网络上能找到转换公式,可以参考,举一反三

Links booklink

Contact Us: admin [ a t ] ucptt.com