笔者真是苦逼啊,之前花了很多时间去学习“基于OpenGL的图形学”的开头部分,包括书本和老师的PPT。但是到自己尝试编译运行示例代码的时候真是困难重重。而且!在自己胡乱摸爬滚打终于运行成功后不久,发现不论是老师的PPT还是书本,它们给的代码真是太少了,让我没法练习编程。我只好去图书馆找来一本OpenGL超级宝典。在学习了几天后发现,这特么代码都是过时的,时的,的。。。好吧,全部推倒重来。

http://www.opengl-tutorial.org/beginners-tutorials/tutorial-1-opening-a-window/就是看了这个网站,我才发现,我看的代码都是过时的,已经不用的了。他第一步就教你 Forget Everything:You don’t have to know anything, but you have to forget everything you know about OpenGL. If you know about something that looks like glBegin(), forget it. 

淦!笔者还是个零基础的菜鸡,为什么这么折磨我。无奈之下,我立马买来一本《OpenGL编程指南 (原书第9版)》来学习。不过,折磨我的行为还没有停止,这本书居然一点点配置环境的操作都不讲!于是我只好上百度搜索了,不过,百度关于第9版的源码使用方法寥寥无几。经过我不断地尝试,总结出一个非常简单的方法,在这里教给大家。

 

首先下载红宝书源码

这里是红宝书官网:http://www.opengl-redbook.com/

仔细看英文可以找到Github地址,打开,或者直接打开这个网址https://github.com/openglredbook/examples

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

因为是零基础新手写的博客,所以会非常的,详细。点右边的绿色按钮,再点“Download ZIP”,等待下载。

把下载下来的压缩包解压到一个合适的地方,最好是没有中文的路径。比如我放到我平常放代码的文件夹:

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

 

安装CMake

如果你已经有CMake的话就跳过安装部分吧。

打开CMake官方网站,下载CMake的安装包,自行安装。

选择“Latest Release"目录下的"Binary distributions"(也就是最新的发行版本)目录下的msi安装包,下载安装吧。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

安装好之后你的菜单就会多出一个CMake文件夹了,运行CMake(cmake-gui)。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

在第一栏选择刚刚解压的“examples-master”文件夹,在第二栏自己选择一个文件夹,用来保存CMake生成的项目。我这里就直接选择它里面的build文件夹。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

点Configure,弹窗保持默认即可,然后选择“Finish”。(我的是最新版Visual Studio2017,如果你没有,这里选择自己合适的吧。)

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

这里不知道为什么是红色的,第一次用的时候不是这样的。不过已经显示“Configuring done”了,应该是没问题的。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

Configure完成之后就点“generate”。

Generate完成之后就点“Open Project”,这时应该会自动打开一个Visual Studio项目。

 

到这时离成功已经很接近了,可以看到解决方案资源管理器有一大堆的项目。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

这时直接调试运行一次,或者对着“ALL BUILD”项目右键->调试->启动新实例。可能会报错,不过实际已经成功了。(至少我是成功了,如果你不成功,那真要麻烦你自己想想办法了,我也不太懂。。。)

然后运行几个例子测试一下,用右键->调试->启动新实例的方法。

这是书上第一个例子,“01-triangles”:

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

还有其他例子,我还没有学到这,所以也不知道是什么。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

这个厉害了,还会动。

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

如果你的例子没有运行成功的话,我可能也帮不了你,因为我还是个新手。我只能在我仅有的一点点知识范围内,给你提供一丢丢的帮助。如果你的电脑很旧的话,可能要考虑显卡OpenGL版本的问题。那么怎么查看显卡支持的OpenGL版本呢?下载一个OpenGLExtensionViewer(http://realtech-vr.com/admin/glview),如下图所示:

用最简单的方法配置运行OpenGL红宝书源码示例-LMLPHP

可以看到我的电脑可以支持到4.5版本的OpenGL,现在最新的版本也是4.5,这样就可以放心大胆的开始OpenGL编程啦。(不要吐槽显卡啦,以后会有的)

以后可以直接在这个解决方案里面添加文件夹放自己的项目,就不用再到处配环境了。学习知识而已,又不是专业配环境,不用在意那么多细节。

总结:其实这波操作也是很简单的呢,只是新手没有人带领的话,真的比较费劲。大佬都是直接一句“CMake一下就可以用啦”,对零基础的新手没有什么帮助。希望通俗易懂的教程越来越多,学习越来越容易,这样大家都可以快乐地进入更深层次的学习。

 

我写的博客真的非常简单,又很多细节我想弄懂再给大家解释,但是能力有限,时间有限。以后实例提升了,可能就能写更好的博客了。

10-06 13:46