本文主要是介绍code::blocks下freeglut配置与使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本教程配置环境
下载并安装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配置与使用就结束了。
这篇关于code::blocks下freeglut配置与使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!