游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1338|回复: 1

求助。。。。。程序窗口不能显示

[复制链接]

4

主题

11

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2008-4-7 17:32:00 | 显示全部楼层 |阅读模式
  1. #include <gl/glut.h>

  2. GLfloat UpAngle = 0.0f;
  3. GLfloat LeAngle = 0.0f;

  4. void Render(void)
  5. {
  6.         glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  7.         glMatrixMode(GL_MODELVIEW);

  8.         glPushMatrix();
  9.         glRotatef(UpAngle,1.0f,0.0f,0.0f);
  10.         glRotatef(LeAngle,0.0f,1.0f,0.0f);

  11.         glBegin(GL_TRIANGLES);

  12.         //正面
  13.         glColor3f(1.0f,0.0f,0.0f);
  14.         glNormal3f(0.0f,0.0f,1.0f);
  15.         glVertex3f(10.0f,10.0f,10.0f);
  16.         glColor3f(0.0f,1.0f,0.0f);
  17.         glVertex3f(-10.0f,10.0f,10.0f);
  18.         glVertex3f(10.0f,-10.0f,10.0f);
  19.         glVertex3f(10.0f,-10.0f,10.0f);
  20.         glVertex3f(-10.0f,10.0f,10.0f);
  21.         glColor3f(0.0f,0.0f,1.0f);
  22.         glVertex3f(-10.0f,-10.0f,10.0f);

  23.         glEnd();
  24.         glPopMatrix();

  25.         glutSwapBuffers();
  26. }

  27. void InitGL(void)
  28. {
  29.         GLfloat ambientlight[] = {0.5f,0.5f,0.5f,1.0f};
  30.         GLfloat diffuselight[] = {1.0f,1.0f,1.0f,1.0f};
  31.         GLfloat positionlight[] = {0.0f,0.0f,30.0f,1.0f};

  32.         glLightfv(GL_LIGHT0,GL_AMBIENT,ambientlight);
  33.         glLightfv(GL_LIGHT0,GL_DIFFUSE,diffuselight);
  34.         glLightfv(GL_LIGHT0,GL_POSITION,positionlight);

  35.         glEnable(GL_LIGHT0);
  36.         glEnable(GL_LIGHTING);

  37.         //glEnable(GL_CULL_FACE);
  38.         glEnable(GL_DEPTH_TEST);

  39.         glClearColor(0.0f,0.0f,0.0f,1.0f);
  40. }

  41. void ChangeSize(int w,int h)
  42. {
  43.         if(h <= 0)
  44.                 h = 1;

  45.         glViewport(0,0,w,h);

  46.         glMatrixMode(GL_PROJECTION);
  47.         glLoadIdentity();

  48.         gluPerspective(45.0f,(GLfloat)w/(GLfloat)h,1.0f,100.0f);

  49.         glMatrixMode(GL_MODELVIEW);
  50.         glLoadIdentity();

  51.         glTranslatef(0.0f,0.0f,-30.0f);
  52. }

  53. void TimerFunc(int v)
  54. {
  55.         glutPostRedisplay();
  56.         glutTimerFunc(33,TimerFunc,1);
  57. }

  58. int main()
  59. {
  60.         glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH | GLUT_RGBA);
  61.         glutInitWindowSize(800,600);
  62.         glutCreateWindow("LIGHT");

  63.         glutDisplayFunc(Render);
  64.         glutReshapeFunc(ChangeSize);
  65.         glutTimerFunc(33,TimerFunc,1);

  66.         InitGL();

  67.         glutMainLoop;
  68.        
  69.         return 0;
  70. }
复制代码



这个程序连程序窗口都没有出来就结束了,我不知道为什么 也不清楚哪里错了

4

主题

11

帖子

11

积分

新手上路

Rank: 1

积分
11
 楼主| 发表于 2008-4-7 17:37:00 | 显示全部楼层

Re:求助。。。。。程序窗口不能显示

为什么每次一发完贴后,我就莫明奇妙的找到了错误。。。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 22:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表