这篇OpenGL超级宝典第五版环境搭建是参考这篇博客 http://www.zyh1690.org/build-opengl-super-bible-fifth-edition-development-environment/ 但是其中还是有些细节有点问题的,是参照了这篇博客的一些评论才搭建成功地,最重要的就是要细心同时这个搭建环境虽然是针对VS2010的但是我帮同学在VS2012下也搭建成功了所以我觉得这个是适合VS210以上的所有VS+OpenGL环境配置的,就是其中的Microsoft Visual Studio 10.0下要添加的文件变成Microsoft Visual Studio 12.0下添加相关的文件。
配置环境:
win7 X64 + Visua Studio 2010
所需要的工具:
搭建:
freeglut
打开 x:\x\freeglut-2.8.1\VisualStudio\2010\freeglut.sln 项目工程,
分别已Debug模式和Release模式生成解决方案。(只生成一个也可。建议在debug模式下编译,无需执行。如果运行弹出黑框,忽视即可。32位操作系统注意,最终在运行蓝宝书Chapter01\Block 的代码时,如果遇到freeglut_static.lib无法打开问题,应该选择Debug_Static模式重新编译,生成所需的freeglut_static.lib,添加到指定的文件夹中。)
会在 x:\x\freeglut-2.8.1\lib\x86 目录下看到生成的 .dll 和 .lib 文件,其中请把 Debug目录 中的 .dll 和 .lib 文件加上 _d 以便以后区分。如图:
把 x:\x\freeglut-2.8.1\include\GL 文件夹下的 .h文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL 目录下,没有GL文件夹的要自己建。
把 x:\x\freeglut-2.8.1\lib\x86 文件夹下(以及Debug文件夹)的 .dll 文件复制到 C:\Windows\SysWOW64 目录(x86 复制到 System32目录下)。
把 x:\x\freeglut-2.8.1\lib\x86 文件夹下(以及Debug文件夹)的 .lib文件复制到 x:\x\Microsoft Visual Studio 10.0\VC\lib。
至此,freeglut搞定!
Glew
把 x:\x\glew-1.11.0\include\GL 文件夹下的.h文件复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL 目录下。
把 x:\x\glew-1.11.0\lib\Release\Win32 文件夹下的 .lib文件复制到 x:\x\Microsoft Visual Studio 10.0\VC\lib 目录下。
把 x:\x\glew-1.11.0\bin\Release\Win32 文件夹下的 .dll文件复制到 C:\Windows\SysWOW64 目录下。(如果没有,就跳过)
Glut
把 x:\x\glutdlls37beta 文件夹下的 .h文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL 目录下。
把 x:\x\glutdlls37beta 文件夹下的 .lib文件 复制到 x:\x\Microsoft Visual Studio 10.0\VC\lib 目录下。
把 x:\x\glutdlls37beta 文件夹下的 .dll文件 复制到 C:\Windows\SysWOW64 目录下。
构建GLTools库
新建一个gltools的win32项目工程,如图:
先编译一下,(原文这里有错误,下面是我修改的)
把 x:\x\SB5\Src\GLTools\src 目录下的.cpp文件(不包括glew.c文件)复制到 x:\x\gltools\gltools。
把 x:\x\SB5\Src\GLTools\include 目录下的.h文件(不包括GL文件夹)复制到 x:\x\gltools\gltools。
分别在头文件和源文件上右键 添加->现有项 把 .h 和 .cpp 文件添加到项目。如图:
编译提示如下:
gltools.lib 文件生成成功。可以在 x:\x\gltools\Debug 目录下查看。
把 .lib文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib 文件夹下。
把 .h文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include 文件夹下(注意这次不是GL文件夹)。
到此gltools也OK了。
测试
我们使用书中给的例子来测试一下环境。
建立test的项目工程:
我们使用第一章的例子来测试,复制 x:\x\SB5\Src\Chapter01\Block 中的文件到 x:\x\test\test 文件夹下。同样在源文件上右键 添加->现有项把Block.cpp文件包含进来。
添加附加依赖项(第一个图):(这种添加依赖项方式,仅仅对当前test项目生效。为了让其他项目也可以使用这些个.lib文件,所以应该在属性管理器中添加依赖项,具体方式见下面第二个图)
编译运行项目,效果如图:
按空格键变换显示效果,共六种效果,我这里只贴1,3,6这三个效果图:
以上配置还差步骤所以在搭建的时候要把这一步给加进去: 还需要将\OpenGL超级宝典\SB5\SB5\freeglut-2.6.0\VisualStudio2008Static\Release里的freeglut_static.lib拷贝到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib才能运行成功。
如果出现c:\project\gltools\gltools\math3d.cpp(45): fatal error C1083: 无法打开包括文件:“math3d.h”: No such file or directory等头文件找不到的情况就需要把VC里面的include文件夹里面也加上了math3d.h等头文件加上就可以运行了。