下面是OpenGL画一个矩形的示例代码:
#include <GL/glut.h>
void display() {
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_QUADS);
glVertex2f(-0.5f, -0.5f);
glVertex2f(-0.5f, 0.5f);
glVertex2f(0.5f, 0.5f);
glVertex2f(0.5f, -0.5f);
glEnd();
glFlush();
}
int main(int argc, char **argv) {
glutInit(&argc, argv);
glutCreateWindow("OpenGL Rectangle");
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
这段代码使用了OpenGL的固定函数管线,通过glBegin和glEnd函数来定义一个矩形,然后使用glFlush函数来将图像输出到屏幕上。在main函数中,使用glut库来创建窗口和注册回调函数,最后进入主循环等待事件的发生。
编译出现错误提示:fatal error: GL/glut.h: No such file or directory
这个错误通常是因为编译器无法找到GLUT库头文件。你需要确保已经正确安装了GLUT库,并且在编译时引用了正确的库文件和头文件路径。
如果你使用的是Linux操作系统,可以使用以下命令安装GLUT库:
sudo apt-get install freeglut3-dev
编译出现错误提示二:undefined reference to 'glClear',使用如下命令编译
gcc -o myprogram myprogram.c -I/usr/include/GL -lglut -lGLU -lGL -lm