Я пытаюсь использовать gluLookAt для перемещения камеры в моей игре для iPhone, но каждый раз, когда я пытаюсь использовать gluLook, мой экран просто становится пустым (в данном случае серым)
I 'Я пытаюсь сделать простой треугольник и переместить камеру, это мой код:
для настройки моей сцены я делаю:
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, поэтому я считаю, что это правильно), я делаю:
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 в сети, но не повезло :(, если кто-то может мне объяснитьили покажите мне, как двигать камеру сверху вниз (зельда и т. д.), я был бы очень признателен.
Спасибо!