0
我試圖使用gluLookAt移動相機在我的iPhone遊戲,但每次我試圖用我的gluLookAt屏幕只是去「空白」(灰色在這種情況下)使用gluLookAt在2D iPhone遊戲中移動相機?
我試着渲染一個簡單的三角形和移動攝像機,這是我的代碼:
設置我的場景我做的:
glViewport(0, 0, backingWidth, backingHeight);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glRotatef(-90.0, 0.0, 0.0, 1.0); //using iPhone in horizontal mode
glOrthof(-240, 240, -160, 160, -1, 1);
glMatrixMode(GL_MODELVIEW);
然後我的「三角形渲染」代碼如下所示:
GLfloat triangle[] = {0, 100, 100, 0, -100, 0,};
glClearColor(0.7, 0.7, 0.7, 1.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glEnableClientState(GL_VERTEX_ARRAY);
glColor4f(1.0, 0.0, 0.0, 1.0);
glVertexPointer(2, GL_FLOAT, 0, &triangle);
glDrawArrays(GL_TRIANGLES, 0, 6);
glDisableClientState(GL_VERTEX_ARRAY);
這繪製一個紅色的三角形在屏幕的中間,當我嘗試申請gluLookAt(我從cocos2d的功能的實現,所以我asume它是正確的),我做的:
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0,0,1,0,0,0,0,0,1); // try to move the camera a bit ?
GLfloat triangle[] = {0, 100, 100, 0, -100, 0,};
glClearColor(0.7, 0.7, 0.7, 1.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glEnableClientState(GL_VERTEX_ARRAY);
glColor4f(1.0, 0.0, 0.0, 1.0);
glVertexPointer(2, GL_FLOAT, 0, &triangle);
glDrawArrays(GL_TRIANGLES, 0, 6);
glDisableClientState(GL_VERTEX_ARRAY);
這使我灰色屏幕(glClearColor是灰色的),我已經嘗試了各種各樣的東西,並閱讀我在網上發現的關於gluLookAt,但沒有運氣:(如果有人可以解釋我或告訴我如何移動移動相機以自頂向下的方式(塞爾達等),我真的很感激它。
謝謝!