2012-11-30 41 views

回答

6

OpenGL-ES-2中沒有矩陣堆棧。它已被完全刪除。現代OpenGL(OpenGL-3核心及更高版本)也是如此。

你應該自己管理矩陣,這是每一個嚴肅的3D圖形應用程序多年來的方式。 < = OpenGL-2.1和OpenGL-ES-1的矩陣堆棧從來沒有功能完備,並且使用起來很麻煩。甩掉包袱。

有很多庫實現3D圖形矩陣數學。 Google for「GLM」,「Eigen」或「linmath.h」

+0

那麼這意味着我不需要關心矩陣模式了嗎?如果我使用提供的API來繪製圖片,那麼它總是保持在正確的矩陣模式? –

+3

@ user674199:不再有矩陣模式。有點合理,因爲無論如何你必須提供一個頂點着色器,而你提供的任何矩陣的語義完全由着色器定義。通常情況下,您將提供3個矩陣:模型視圖,投影和法線變換矩陣(法線變換是模型視圖的逆轉置)。 – datenwolf

+2

我會把我的客戶端端程序扔進戒指:[matrix.h](http://ezekiel.vancouver.wsu.edu/~cs442/util/matrix.h),[matrix.c](http: //ezekiel.vancouver.wsu.edu/~cs442/util/matrix.c)。使用'glUniformMatrix4fv'將你的矩陣加載到GL中供着色器使用。 – wcochran

相關問題