按:按照下述博文,三个例子均成功。浏览器
https://blog.csdn.net/so_geili/article/details/51685005工具
请仔细阅读每个字。 学习
为了学习《OpenGL超级宝典(第五版)》必须配置OpenGL环境,正所谓工欲善其事必先利其器。翻阅了不少网上的配置教程,不少都有问题,但也有详细的精华教程,好比博客: http://www.zyh1690.org/build-opengl-super-bible-fifth-edition-development-environment/ 。尽管该教程很详细,但其中仍是有些细节问题,博客中没有细说。配置OpenGL环境必定要细心、耐心。由于有一点疏忽均可能致使最终配置环境失败。本篇虽然是针对“win7 X64 +VS2010”环境的配置过程,可是我在VS2012/VS2015下也搭建成功了,VS2012/VS2015下配置OpenGL的原理也很简单,就是其中的Microsoft Visual Studio 10.0下要添加的文件变成Microsoft Visual Studio 12.0或Microsoft Visual Studio 15.0下添加相关的文件。测试
配置环境:ui
win7 X64 + Visua Studio 2010spa
win7 X64 + Visua Studio 2012操作系统
win7 X64 + Visua Studio 2015 .net
所须要的配置文件及工具:debug
百度云盘下载地址:3d
连接:http://pan.baidu.com/s/1kVsKUGJ 密码: xxqq
连接: http://pan.baidu.com/s/1slu9RK5 密码: asj8
下面正式开始搭建:>>>>>>>>>>>>>>>>>>>>>>>>分割线>>>>>>>>>>>>>>>>>>>>>>>>>分割线>>>>>>>>>>>>>>>>>>>>>>>>>
打开 x:\x\freeglut-2.8.1\VisualStudio\2010\freeglut.sln 项目工程,(若是是配置VS2015,能够选择x:\x\....\2015\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搞定!
(这一步搞定后,能够用代码检查。
测试一:创建win32 控制台工程,添入测试代码 ,编译运行。
测试二:创建win32 控制台工程,添入测试代码,编译运行。)
把 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 目录下。(若是没有,就跳过)
(注意,若是配的是VS2015,须要将配置文件放入x:\x\Microsoft Visual Studio 15.0....中)
把 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 目录下。
(注意,若是配的是VS2015,须要将配置文件放入x:\x\Microsoft Visual Studio 15.0....中)
新建一个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了。
咱们使用书中给的例子来测试一下环境。若是测试成功,则OpenGL环境才算是配好了。
创建test的项目工程:
咱们使用第一章的例子来测试,复制 x:\x\SB5\Src\Chapter01\Block 中的全部文件到 x:\x\test\test 文件夹下。一样在源文件上右键 添加->现有项把Block.cpp文件包含进来。
添加附加依赖项(第一个图):(这种添加依赖项方式,仅仅对当前test项目生效。为了让其余项目也可使用这些个.lib文件,因此应该在属性管理器中添加依赖项,具体方式见下面第二个图)
编译运行项目,效果如图:(若是编译出错,则用百度浏览器搜索错误信息,寻找相应的解决方案。或者查看本博文最后的“一些特殊状况的处理”,可能会获得帮助。)
按空格键变换显示效果,共六种效果:
彻底按照上面的教程配置OpenGL环境,在大多数电脑上,都能成功。但凡是都有例外,若是配置失败,下面的一些配置细节或许能够帮你解决问题。
case1:freeglut_static.lib没法打开问题
方案一:还须要将\OpenGL超级宝典\SB5\SB5\freeglut-2.6.0\VisualStudio2008Static\Release里的freeglut_static.lib拷贝到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib才能运行成功。若是失败,能够尝试方案二;
方案二:仔细查看本篇博文关于 freeglut配置部分,有红色加粗部分。留意配置细节。 case2:“math3d.h”: No such file or directory
若是出现c:\project\gltools\gltools\math3d.cpp(45): fatal error C1083: 没法打开包括文件:“math3d.h”: No such file or directory等头文件找不到的状况就须要把VC/include文件夹里面也加上了math3d.h等头文件加上就能够运行了。
case3:Visual Studio 2015中ucrtbased.dll丢失
能够按照这个连接:http://blog.csdn.net/so_geili/article/details/53009680 ,选择里面的“解决方案三”来解决问题。