[問題] 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