Windows7+VS2012下OpenGL 4的环境配置

系统环境

        Windows 7 Ultimate x64,Visual Studio Ultimate 2012 Update 4,和一块支持OpenGL 4.x的显卡。


准备工作

        首先用GPU Caps Viewer检查机器最高支持的OpenGL及GLSL版本。比如我的机器可以支持OpenGL 4.5和GLSL 4.5:

gpu-caps-viewer

        下载GLEW和GLFW的源码。其中GLEW用来管理和载入OpenGL的各种扩展库,GLFW用来创建窗口和控制鼠标及键盘的交互。我使用的版本分别是glew-1.12.0和glfw-3.1.1。下载地址分别为:

               https://sourceforge.net/projects/glew/files/glew/1.12.0/glew-1.12.0.zip/download

               http://sourceforge.net/projects/glfw/files/glfw/3.1.1/glfw-3.1.1.zip/download

        下载并安装CMAKE。用来辅助编译GLFW。我使用的版本为cmake-3.2.1。下载地址为:

               http://www.cmake.org/files/v3.2/cmake-3.2.1-win32-x86.exe


编译GLFW

       打开CMAKE。点击“Browsw source…”选择GLFW的根目录,点击“Browse build…”任意选取一个新建的文件夹作为输出目录。点击“Configure”:

cmake-1        在弹出的窗口中选择“Visual Studio 11 2012”,点击“Finish”:

cmake-2        保持默认配置即可。如果想用头文件+.dll的方式调用GLFW,可以勾选“BUILD_SHARED_LINKS”;不勾选则是默认的头文件+.lib方式调用。为“CMAKE_INSTALL_PREFIX”选择一个新的位置,用来存放用VS2012编译输出的结果。然后点击“Generate”,VS2012项目文件就生成完毕了。

cmake-3

        打开刚刚指定的Build目录,用Visual Studio 2012打开GLFW.sln文件。为保险起见,先用Debug方式编译ZERO_CHECK,如果没有报错,则用Release方式编译ALL_BUILD,再编译INSTALL。

vs2012-glfw        如果编译成功,在之前指定的GLFW文件夹内会多出两个文件夹include和lib,这里面就包含着我们会用到的头文件和链接库文件:

glfw-directory        把include中的GLFW文件夹拷贝到一个你觉得方便的位置,比如“E:\dev-lib\opengl4\include”:

glfw-include        把lib中的glfw3.lib文件拷贝到新的位置,比如“E:\dev-lib\opengl4\lib”:

glfw-lib


编译GLEW

        用Visual Studio 2012打开GLEW目录下build\vc10\glew.sln文件,第一次打开时会提示是否把VS2010项目转换成VS2012项目,选择是即可。选择Release方式,点击BUILD -> Build Solution:

vs2012-glew      如果编译成功,会发现在bin\Release\Win32目录下有3个新文件。把glew32.dll文件拷贝到C:\Windows\SysWOW64目录下。

glew-bin        glewinfo.exe和visualinfo.exe可以用来查看系统对OpenGL各个特性的支持情况,比如:

glewinfo        把lib\Release\Win32目录下的glew32.lib拷贝到之前的“E:\dev-lib\opengl4\lib”中。把include目录中的GL文件夹拷贝到之前的“E:\dev-lib\opengl4\include”中。


新建项目

       打开Visual Studio 2012,点击FILE -> New -> Project…,选择Visual C++ -> Win32 Console Application。比如命名为“ogl4-test”:

vs2012-new-project        右击项目名称,点击Properties。在Configuration Properties -> VC++ Directories中,为Include Directories添加“E:\dev-lib\opengl4\include;”;为Library Directories添加“E:\dev-lib\opengl4\lib;”。注意为Debug和Release都要添加:

project-properties        在Configuration Properties -> Linker -> Input中,为Additional Dependencies添加“glew32.lib;glfw3.lib;opengl32.lib;”。注意为Debug和Release都要添加

linker-input

        把以下代码拷贝到0gl4-test.cpp文件中。代码来自Anton's OpenGL 4 Tutorials

        点击“Local Windows Debugger”,就可以看见如下效果:

triangle

 


另一枚例子

        这是一个用合成的Gerstner波绘制水面的例子,根据《水面的简单渲染 – Gerstner波》修改而来。完整代码下载地址:http://pan.baidu.com/s/1gdzoe4b,所需的配置文件下载地址:http://pan.baidu.com/s/1pJ81kyZ。项目托管地址:https://github.com/johnhany/OpenGLProjects/tree/master/GerstnerWave

        效果如下:

gerstner-waves

共有1条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注