我想用下面的OpenGL來畫點,但它只顯示一個黑色的窗口。有人能告訴我什麼是錯誤?點在OpenGL中不顯示
#include "stdafx.h"
#include <gl/GL.h>
#include <gl/GLU.h>
#include <gl/glut.h>
void init(void)
{
glClearColor(0.0,0.0,0.0,0.0);
glColor3f(1.0,0,1.0);
glPointSize(10);
//glShadeModel(GL_FLAT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D (0.0,0.0,400, 150);
}
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
float pointSize = 5;
glPointSize(10);
glBegin(GL_POINTS); // render with points
glVertex2i(50,40); //display a point
glEnd();
glFlush();
}
void reshape(int w,int h)
{
glViewport(0,0,(GLsizei)w,(GLsizei)h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0,(GLdouble)w,0.0,(GLdouble)h,-1.0,1.0);
}
int _tmain(int argc, char* argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowPosition(100, 100);
glutInitWindowSize(400, 150);
glutCreateWindow("Draw Simple Object");
init();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
對,這應該使它工作。好的工作發現! – Rekin 2010-07-31 16:01:10
非常感謝您的幫助。我花了很多時間來解決它。 – 2010-07-31 16:06:19