我在场景中渲染了一个三角形,但现在我添加了鼠标导航,似乎什么都不起作用了。因此,我再次删除了所有导航内容,以查看我使用gluLookAt()时出了什么问题。但即使在非常简单的情况下,我也看不到任何东西:
void GLScene::paintGL() {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
//m_navigation.UpdateCamera();
gluLookAt(0 ,0 ,20,
0,0,-1,
0, -1, 0 );
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1,0,0);
glBegin(GL_POLYGON);
glVertex3f(0,0,0);
glVertex3f(0,100,0);
glVertex3f(100,0,0);
glEnd();
}发布于 2013-06-26 08:06:38
你弄乱了你的对象变换矩阵
正确的代码(未测试)
void GLScene::paintGL() {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0 ,0 ,20,
0,0,-1,
0, -1, 0 );
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1,0,0);
glBegin(GL_POLYGON);
glVertex3f(0,0,0);
glVertex3f(0,100,0);
glVertex3f(100,0,0);
glEnd();
}https://stackoverflow.com/questions/17309511
复制相似问题