2015-01-07 30 views
0

我有一個3D模型,用戶可以通過它來控制退出迷宮。我想在窗口右下角的視口中放置小地圖。除了地圖不在視口上,它的繪圖爲0,0。 這裏是繪製微縮代碼:OpenGL Viewport無法正常工作

GLfloat SCREEN_WIDTH = glutGet(GLUT_WINDOW_WIDTH); 
GLfloat SCREEN_HEIGHT = glutGet(GLUT_WINDOW_HEIGHT); 
glViewport(glutGet(GLUT_WINDOW_WIDTH)/2, 0, glutGet(GLUT_WINDOW_WIDTH)/2, glutGet(GLUT_WINDOW_HEIGHT)/2); 
glMatrixMode(GL_PROJECTION); 
glLoadIdentity(); 
gluOrtho2D(-40, 40, -40, 40); 
glMatrixMode(GL_MODELVIEW); 
glLoadIdentity(); 
glEnable(GL_BLEND); 
glRotatef(90, 1, 0, 0); 
glDisable(GL_LIGHTING); 
glCallList(modelo.labirinto[JANELA_NAVIGATE]); 
//glCallList(modelo.chao[JANELA_NAVIGATE]); 
glEnable(GL_LIGHTING); 
glDisable(GL_BLEND); 

下面是結果:

enter image description here

+0

也許0,0不在你期望的位置,試着保持偏移量的高度和寬度爲/ 2 –

回答

0

看來你忘了打電話給glTranslatef()後指定圖紙的位置:

glMatrixMode(GL_MODELVIEW); 
glLoadIdentity(); 
+0

雖然通過使用視口,它會自動在視口上繪製 –