나는 주위를 돌아 다니며 키로 걸어 다닐 수있는 기준으로 걸어 다닐 수있는 간단한 장면을 만들려고합니다. 그러나, 내 무승부 장면 기능에서 회전하는 것보다 내 장면을 번역 할 때 전체 장면이 단지 주위를 회전하여 개체가 나를 통과하게되므로 주변에서 패닝이 제대로 작동하지 않습니다. 내 장면을 번역하는 것보다 회전 할 때 제대로 돌아 다닐 수는 있지만 특정 방향으로 만 이동할 수 있습니다. 따라서 오른쪽으로 90도 회전하면 전진하지 않고 왼쪽으로 이동합니다. 어쨌든 내가이 두 가지 효과를 조합 할 수 있습니까? 여기먼저 번역하거나 먼저 회전해야합니까?
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glPushMatrix();
glTranslated(xposition, 0, zposition); //This is where I translate my views
glRotated(yrot, 0, 1, 0); //
glEnableClientState(GL_NORMAL_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
glEnableClientState(GL_VERTEX_ARRAY);
glBindBuffer(GL_ARRAY_BUFFER_ARB, quadVBO);
glNormalPointer(GL_FLOAT, 0, (void*)sizeof(sideArray));
glColorPointer(3, GL_FLOAT, 0, (void*)sizeof(sideArray)+sizeof(normals));
glVertexPointer(3, GL_FLOAT, 0, 0);
glDrawArrays(GL_QUADS, 0, sizeof(sideArray)/sizeof(GLfloat)/3);
glPopMatrix();
glFlush();
glDisableClientState(GL_VERTEX_ARRAY);
glDisableClientState(GL_COLOR_ARRAY);
glDisableClientState(GL_NORMAL_ARRAY);
glBindBufferARB(GL_ARRAY_BUFFER_ARB, 0);
지금 내 문제를 설명 일부 사진은 다음과 같습니다 :
회전 후 번역 :
PIC1
이
은 내가보기를 그리는 데 사용할 코드http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.17.39%20PM.PNG
그림 2
는 나는 내가 앞으로 걸을 때
http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.17.48%20PM.PNG
Pic3
그러나, 그것은 단지 한 방향으로 산책 카메라의 회전, 그리고 내가 찾고 있어요 방향을 모방 할 수 있습니다.
http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.18.30%20PM.PNG
http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.18.39%20PM.PNG
다음 회전을 번역 :
PIC1
http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.19.44%20PM.PNG
PIC2
을내가 이동할 수 있습니다 자유롭게 주위를 바라보며 어느 방향으로나 직진합니다.
http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.19.52%20PM.PNG
Pic3
그러나, 나는 장면을 회전 할 때, 더 이상 그때 회전 할 때처럼 나를 통해 클립에 개체가 발생하고보기를 통해 "팬"하지 않는 전체 일 회전, 내 견해를 번역하십시오.
http://dl.dropbox.com/u/2747708/Screen%20Shot%202012-04-03%20at%2010.20.01%20PM.PNG