您的位置:首页 > 运维架构

VS2010配置OpenGL编译环境

2015-07-07 10:34 288 查看
OpenGL(Open Graphics Library)是一个跨编程语言、跨平台的专业图形程序接口。
      OpenGL是SGI公司开发的一套计算机图形处理系统,是图形硬件的软件接口,任何一个OpenGL应用程序无须考虑其运行环境所在平台与操作系统,在任何一个遵循OpenGL标准的环境下都会产生相同的可视效果。
       OpenGL不是一种编程语言,而是一种API(Application Programming
Interface,应用程序编程接口)。
       OpenGL主要包括三个函数库,它们是核心库、实用函数库和编程辅助库。核心库中包含了OpenGL最基本的命令函数。核心库提供了一百多个函数,这些函数都以”gl”为前缀,用来建立各种各样的几何模型、进行坐标变换、产生光照效果、进行纹理映射、产生雾化效果等所有的二维和三维图形操作。实用函数库是比核心库更高一层的函数库,它提供四十多个函数,这些函数都以”glu”为前缀。由于OpenGL是一个图形标准,是独立于任何窗口系统或操作系统的,在OpenGL中没有提供窗口管理和消息事件响应的函数,也没有鼠标和键盘读取事件的功能,所以在编程辅助库提供了一些基本的窗口管理函数、事件处理函数和简单的事件函数。这类函数以”aux”作为前缀。值得一提的是,目前AUX编程辅助库已经很大程度上被GLUT库取代了。以下介绍以GLUT库为例。

     GLUT代表OpenGL应用工具包(OpenGL Utility Toolkit),是一个与窗口系统无关的工具包。它作为AUX库的功能更强的替代品,用于隐藏不同窗口系统API的复杂性。GLUT的子程序的前缀使用”glut”。

一、下面介绍如何为VS2010配置OpenGL编译环境

   1. 下载GLUT。Windows环境下的GLUT下载地址:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

   2. 将下载的压缩包解开,将得到5个文件:glut.h glut.lib glut32.lib glut.dll glut32.dll

   3. 将glut.h放到(C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include\gl\)这个文件夹中.

   4. 将glut.lib和glut32.lib放到静态函数库所在文件夹中。(安装目录\VC\lib\)

   5. 将glut.dll和glut32.dll放到操作系统所在目录下面的system32文件夹内. (C:Windows\system32)

   经过这五步,配置完成。

二、测试配置环境是否成功

   1. 打开VS2010,选择File->New->Project,然后选择Win32 Console Application,选择一个名字OpenGLTest,然后按OK。 

   2. 在弹出的对话框左边点Application Settings,找到Empty project并勾上,选择Finish。

   3. 然后向该工程添加一个代码文件,取名为OpenGLTest.cpp。

   4. 向OpenGLTest.cpp中添加代码


#include <GL/glut.h>




void myDisplay(void)


{


    glClear(GL_COLOR_BUFFER_BIT);


    glRectf(-0.5f, -0.5f, 0.5f, 0.5f);


    glFlush();


}




int main(int argc, char *argv[])


{


    glutInit(&argc, argv);


        glutInitDisplayMode(GLUT_RGB | 


                            GLUT_SINGLE);


    glutInitWindowPosition(100, 100);


       glutInitWindowSize(400, 400);


    glutCreateWindow("第一个OpenGL程序");


    glutDisplayFunc(&myDisplay);


    glutMainLoop();




    return 0;


}



编译、链接、执行这段程序,生成一个黑色的窗口中央画一个白色的矩形,表明配置环境成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: