一、openGL在VisualStudio2010下的环境配置
1、 复制gl文件夹到 D:\vs2010\VC\include
2、 复制dll下的文件到system32下
3、 复制lib下的文件到D:\vs2010\VC\lib下
4、 在VS2010中设置:project>properties>ConfigurationProperties>linker>input>AdditionalDependencies添加opengl32.lib;glu32.lib;glut32.lib;
二、编写一个helloWorld:
//里面包含gl.h和glu.h
#include <GL/glut.h>
void myDisplay(void)
{
//清除。GL_COLOR_BUFFER_BIT表示清除颜色,glClear函数还可以清除其它的东西,但这里不作介绍
glClear(GL_COLOR_BUFFER_BIT);
//glRectf,画一个矩形。四个参数分别表示了位于对角线上的两个点的横、纵坐标。
glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
//保证前面的OpenGL命令立即执行(而不是让它们在缓冲区中等待)。其作用跟fflush(stdout)类似。
glFlush();
}
int main(int argc, char *argv[])
{
//对glut进行初始化,必须
glutInit(&argc, argv);
/*设置显示方式,
其中glut_rgb表示使用rgb颜色,glut_index表示使用索引颜色,
glut_single使用单缓冲,glut_double使用双缓冲
*/
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
//设置窗口位置
glutInitWindowPosition(100, 100);
//设置窗口大小
glutInitWindowSize(400, 400);
//创建窗口,参数是标题,但是不被立即显示到屏幕,需要调用glutMainLoop才能看到窗口
glutCreateWindow("第一个OpenGL程序");
//设置一个函数,当需要进行画图时,这个函数就会被调用。(这个说法不够准确,但准确的说法可能初学者不太好理解,暂时这样说吧)
glutDisplayFunc(&myDisplay);
/*进行一个消息循环。
(这个可能初学者也不太明白,现在只需要知道这个函数可以显示窗口,
并且等待窗口关闭后才会返回,这就足够了。)*/
glutMainLoop();
return 0;
}