本教程配置环境
win7 ×64位系统(win10 ×64位系统也测试过,完全可以) + codeblocks-13.12mingw-setup-RC2
下载并安装FreeGlut
1、www.transmissionzero.co.uk/software/freeglut-devel/
2、将freeglut->include->GL->*.h拷贝到mingw->include->GL
3、将freeglut->lib->*.a拷贝到mingw->lib (注意×64文件夹用不着,暂时忽略)
4、将freeglut->bin->*.dll拷贝到Windows->System32(如果是×64系统,可以在SysWOW64文件夹下放置一份;注意×64文件夹用不着,暂时忽略)
配置OpenGL
1、Code::Blocks-> create a new project ->Console application->C++
3、Add: “libopengl32”, “libglu32”, “libfreeglut”,如图所示。
把如下代码,放入main.cpp文件中,编译执行。
#include <GL/glut.h>
static void resize(int width, int height)
{
const float ar = (float) width / (float) height;
glViewport(0, 0, width, height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45.0, ar, 0.1, 100.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity() ;
}
static void display(void)
{
static double theta = 0;
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
theta = theta+0.05;
glLoadIdentity();
glColor3d(1, 0.5, 1);
glTranslated(0, 0, -8);
glRotated(30, 1, 0, 0);
glRotated(theta, 0, 1, 0);
glutSolidTeapot(2.0f);
glutSwapBuffers();
}
static void idle()
{
glutPostRedisplay();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitWindowSize(800, 600);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Teapot");
glutReshapeFunc(resize);
glutDisplayFunc(display);
glutIdleFunc(idle);
glClearColor(1,1,1,1);
glEnable(GL_DEPTH_TEST);
glDepthFunc(GL_LESS);
glEnable(GL_LIGHT0);
glEnable(GL_COLOR_MATERIAL);
glEnable(GL_LIGHTING);
glutMainLoop();
return 0;
}
运行的效果图如下。到此code::blocks下OpenGL配置与使用就结束了。