我正在閱讀來自WWDC2010的示例代碼GLVideoFrame。在此示例中,它具有這樣的代碼如下:沒有glFrustum和glOrtho設置的投影的視圖體積是多少?
static const GLfloat squareVertices[] = {
-0.5f, -0.33f,
0.5f, -0.33f,
-0.5f, 0.33f,
0.5f, 0.33f,
};
...
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslatef(0.0f, (GLfloat)(sinf(transY)/2.0f), 0.0f);
transY += 0.075f;
...
glVertexPointer(2, GL_FLOAT, 0, squareVertices);
注意,此代碼並不要求openGL的投影像的設置或glFrustum任何glOrtho功能。
通過只調用gLoadIdentity(),什麼是「默認」視圖體積?
它將是一個透視項目或正投影?
編輯: 至更具體地, 是視體「在所有三個軸上範圍從-1到1」的立方體?
有人可以給我一個爲什麼這個問題被投票-1的原因嗎?太愚蠢的問題?太簡單?我實際上搜索了一遍,幾天後閱讀了「紅皮書」,但沒有發現任何線索。我真的很感激有人可以指點我,我應該在哪裏找到答案? – 2012-04-25 01:18:49
Downvote是那個人的良心:)'gLoadIdentity()'爲投影模式設置單位矩陣,與模型視圖矩陣一樣。 'glFrustum'和'glOrtho'從不同的輸入參數設置這些矩陣。您可以在運行時通過XCode捕捉OpenGL幀(它可在iPad 2/New和iPhone 4S設備上運行)來查看矩陣。 – brigadir 2012-04-25 06:14:08
「通過XCode捕獲OpenGL框架時,您可能會在運行時查看矩陣」,這與我的問題沒有直接關係,但聽起來很有趣。你能給我一個關於如何的鏈接嗎? – 2012-04-25 13:05:05