glut为什么不能显示图形呀,黑屏?

txwd0033 2009-03-16 09:59:35
各位老大,我是OpenGL的菜鸟。现在买了本OpenGL 编程指南(第六版),照着上面的例子,敲的代码运行时弹的window窗口是黑屏。简单的图形可以显示,但是复杂的好像就不行了,动画也不能显示,用的是GLUT的库,各位老大给瞅瞅吧,代码如下:




#include <windows.h>
#include <gl/glut.h>

static int year=0,day=0;

void init(void)
{
glClearColor(0.0,0.0,0.0,0.0);

glShadeModel(GL_FLAT);
}

void display(void)
{

glClear(GL_COLOR_BUFFER_BIT);

glColor3f(1.0,1.0,1.0);

glPushMatrix();
glutWireSphere(1.0,20,16);
glRotatef((GLfloat)year,0.0,1.0,0.0);
glTranslatef(2.0,0.0,0.0);
glRotatef((GLfloat)day,0.0,1.0,0.0);
glutWireSphere(0.2,10,8);
glPopMatrix();
glutSwapBuffers();


}

void reshape(int w,int h)
{
glViewport(0,0,(GLsizei)w,(GLsizei)h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();

gluPerspective(60.0,(GLfloat)w/(GLfloat)h,1.0,20.0);

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0,0.0,5.0,0.0,0.0,0.0,0.0,1.0,0.0);

}

void keyboard(unsigned char key,int x,int y)
{
switch(key)
{
case 'd':
day=(day+10)%360;
glutPostRedisplay();
break;
case 'D':
day=(day-10)%360;
glutPostRedisplay();
break;
case 'y':
year=(year+5)%360;
glutPostRedisplay();
break;
case 'Y':
year=(year-5)%360;
glutPostRedisplay();
break;
default:
break;
}
}


int main(int argc,char ** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(500,500);
glutInitWindowPosition(100,100);
glutCreateWindow(argv[0]);
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutKeyboardFunc(keyboard);
glutMainLoop();
return 0;
}


...全文
254 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
txwd0033 2009-03-20
  • 打赏
  • 举报
回复
谢谢楼上,改成glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB)就行了
zzz822163 2009-03-18
  • 打赏
  • 举报
回复
void reshape(int w, int h)
{
glViewport (0, 0, (GLsizei) w, (GLsizei) h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-50.0, 50.0, -50.0, 50.0, -1.0, 1.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}

glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
->>>
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
fandh 2009-03-18
  • 打赏
  • 举报
回复
有人,但是opengl我好多年已经不再搞了,所以,还是等别人看吧!
帮楼主顶!
txwd0033 2009-03-17
  • 打赏
  • 举报
回复
怎么没人呢??

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧