您好,登錄后才能下訂單哦!
原始代碼如下:
#include <gl/glut.h>
#include <Windows.h>
#define WIDTH 400
#define HEIGHT 400
#include <math.h>
#define ColoredVertex(c, v) do{ glColor3fv(c); glVertex3fv(v); }while(0)
GLfloat angle = 0.0f;
void myDisplay(void)
{
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT );
glPointSize(20);
glBegin(GL_POINTS);
//////////
glVertex3f(0, 0, 0);
glColor3f(0.0f, 0.0f, 0.0f);
//////////
glEnd();
glFlush();
}
void myIdle(void)
{
myDisplay();
::Sleep(10000);
}
int main(int argc, char* argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
//glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
glutInitWindowPosition(200, 200);
glutInitWindowSize(WIDTH, HEIGHT);
glutCreateWindow("OpenGL 窗口1");
glutDisplayFunc(&myDisplay);
glutIdleFunc(&myIdle);
glutMainLoop();
return 0;
}
在上面的代碼中,會出現一個白色的矩形,然后到超時10秒之后消失了,但是設置的顏色都是黑色,按照道理應該只是黑色。如果調整
glVertex3f(0, 0, 0);
glColor3f(0.0f, 0.0f, 0.0f);
的次序,就不會出現上面的情況,因為渲染的矩形都是黑色的,所以什么也沒有除了黑色的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。