2 liyanfolfol liyanfolfol 于 2013.07.03 16:47 提问

关于OpenGL问题,请高手帮忙Review一下代码

下面的代码是我写的,不知道为什么要表示的东西没有被显示,而一直都是黑画页。
代码如下:
oid CBuild::GlRealize()
{
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(800,400);
glutInitWindowPosition(100,100);
glutCreateWindow("Building");
Init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMainLoop();
}
void CBuild::display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear Screen And Depth Buffer
glLoadIdentity(); // Reset The Current Modelview Matrix
glTranslatef(-1.5f,0.0f,-6.0f); // Move Left 1.5 Units And Into The Screen 6.0
glRotatef(rtri,0.0f,1.0f,0.0f); // Rotate The Triangle On The Y axis ( NEW )
glBegin(GL_TRIANGLES); // Start Drawing A Triangle
glColor3f(1.0f,0.0f,0.0f); // Set Top Point Of Triangle To Red
glVertex3f( 0.0f, 1.0f, 0.0f); // First Point Of The Triangle
glColor3f(0.0f,1.0f,0.0f); // Set Left Point Of Triangle To Green
glVertex3f(-1.0f,-1.0f, 0.0f); // Second Point Of The Triangle
glColor3f(0.0f,0.0f,1.0f); // Set Right Point Of Triangle To Blue
glVertex3f( 1.0f,-1.0f, 0.0f); // Third Point Of The Triangle
glEnd(); // Done Drawing The Triangle
glLoadIdentity(); // Reset The Current Modelview Matrix
glTranslatef(1.5f,0.0f,-6.0f); // Move Right 1.5 Units And Into The Screen 6.0
glRotatef(rquad,1.0f,0.0f,0.0f); // Rotate The Quad On The X axis ( NEW )
glColor3f(0.5f,0.5f,1.0f); // Set The Color To Blue One Time Only
glBegin(GL_QUADS); // Draw A Quad
glVertex3f(-1.0f, 1.0f, 0.0f); // Top Left
glVertex3f( 1.0f, 1.0f, 0.0f); // Top Right
glVertex3f( 1.0f,-1.0f, 0.0f); // Bottom Right
glVertex3f(-1.0f,-1.0f, 0.0f); // Bottom Left
glEnd(); // Done Drawing The Quad
rtri+=0.2f; // Increase The Rotation Variable For The Triangle ( NEW )
rquad-=0.15f;
glFlush();
// Decrease The Rotation Variable For The Quad ( NEW )
/*
glClear(GL_COLOR_BUFFER_BIT);
glLoadIdentity();

glColor3f(1.0,1.0,1.0);
glBegin(GL_LINES);
glVertex2f(50.0,-50.0);
glVertex2f(100.0,-200.0);
glVertex2f(300.0,-200.0);
glEnd();

glFlush();

  */

}
void CBuild::reshape(int w,int h)
{
glViewport(0,w,0,h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0,w,0,h);
}
void CBuild::Init()
{

glShadeModel(GL_SMOOTH);                            // Enable Smooth Shading
glClearColor(0.0f, 0.0f, 0.0f, 0.5f);               // Black Background
glClearDepth(1.0f);                                 // Depth Buffer Setup
glEnable(GL_DEPTH_TEST);                            // Enables Depth Testing
glDepthFunc(GL_LEQUAL);                             // The Type Of Depth Testing To Do
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);  // Really Nice Perspective Calculations

// glClearColor(0.0,0.0,0.0,0.0);
// glShadeModel(GL_FLAT);
// glClearDepth(1.0);
// glMatrixMode(GL_PROJECTION);
// glLoadIdentity();
// glOrtho(0.0,1.0,0.0,1.0,1.0,1.0);

}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
整天说Code Review重要,你知道应该关注哪些关键点吗?
转载至:微信公众号 聊聊架构 http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659598372&idx=1&sn=7a3ebbd7eff29c30a2076d5123262701&chksm=8be99536bc9e1c20c48f0c4cd5f6c450170c68a76a24033653841d903068aacae2fd1db4f
代码Review那些事
代码Review那些事
证明Fibonacci数列与黄金分割的关系
某CSDN网友问:1,1,2,5,8,13.....请问这个数列第30项是什么? 用java实现玄机逸士的回答:楼主的题目是不是少了一个数字3?否则没有规律可言,无法得出第30项数据,正确的题目应该是: 1,1,2,3,5,8,13.....请问这个数列第30项是什么? 用java实现 很明显这是一个Fibonacci数列,代码如下: package com.pnft.fibonacc
已加密文件
已加密文件,请高手帮忙解密啊,并帮忙提供一下C语言的源码,谢谢!!
Debug关于线程问题
请大家帮忙解决一下,是关于线程同步的问题,我想了很久,问题是运行时出现白屏
帮助Bsny
题目描述 Bsny的书架乱成一团了,帮他一下吧!他的书架上一共有n本书,我们定义混乱值是连续相同高度书本的段数。例如,如果书的高度是30,30,31,31,32,那么混乱值为3;30,32,32,31的混乱值也为3。但是31,32,31,32,31的混乱值为5,这实在是太乱了。Bsny想尽可能减少混乱值,但他有点累了,所以他决定最多取出k本书,再随意将它们放回到书架上。你能帮助他吗?输入 第一行
c语言
请高手帮忙
请高手们帮忙!!!!
 想问一下.... 父窗口是以  USERCONTROL 组合而成的, 在子窗口中写入一些字  点按钮之后 怎样把那些字传给父窗口中USERCONTROL 中的TEXTBOX 里    opener.document.all.txt.value = "ajsdklfhwiuefiuh" 这个只能传给父窗口中的 TEXTBOX 不能传给 USERCONTROL中的TEXTBOX....... 
请高手帮忙!
我的系统重装后,系统没有毒和木马,怎么出现上面那副图的那样子,请高手速速帮忙,小弟不甚感激!先谢谢拉!
请高手帮忙!
     写了个老鼠走迷宫的代码,结果准备打印出走之前的地图和走之后的地图,不知道为啥,只输出了前一个,而没有后一个。     好心的人帮我看看是怎么回事,不胜感激。源代码:#include#define EAST MAZE[x][y+1]   #define WEST MAZE[x][y+1] #define SOUTH MAZE[x][y+1] #define NORTH MAZE