首先贴出OpenGL超级宝典第7版 PDF 的下载地址: https://f.usemind.org/files/b/1/UseMind.ORG_comprehensive-tutorial-and-reference_2015__.pdf
还有OpenGL超级宝典官方网站: http://www.openglsuperbible.com/
要开始OpenGL超级宝典的学习不是用传统的配环境方法的,因为它要用到它自己写的头文件和库。我们要到官方网站上获取这些文件。
首先在官方网站下载第7版的源代码:
把下载下来的压缩包解压到合适的位置(如:D:/sb7code-master),运行CMake,生成Visual Studio项目来编译glfw库。
成功打开项目后,编译整个工程(直接编译,不用改东西),Debug和Release都要。
然后关闭Visual Studio,打开文件夹。
把sb7code-master\extern\glfw-3.0.4\build\src\Debug文件夹下的glfw3.lib复制到sb7code-master\lib,并改名为glfw3_d.lib
把sb7code-master\extern\glfw-3.0.4\build\src\Release文件夹下的glfw3.lib复制到sb7code-master\lib,这次不改名
再次运行CMake,这次是生成蓝宝书的示例程序。
成功打开项目后,编译整个工程(直接编译,不用改东西),Debug和Release都要。
这时准备工作已经做好了。
可以开始新建自己的工程了
打开Visual Studio,新建一个新解决方案。
打开解决方案所在的文件夹,新建两个文件夹:include和lib
把sb7code-master\include文件夹里的东西复制到include文件夹
把sb7code-master\extern\glfw-3.0.4\include文件夹里的东西复制到include文件夹
完成之后应该是这样的:
把sb7code-master\lib文件夹里的东西复制到lib文件夹
完成之后应该是这样的:
笔者习惯新建一个文件夹来放项目,这样看起来整洁一点。在LearnOpenGL文件夹新建一个project文件夹。
回到Visual Studio ,在解决方案下新建一个项目
下面开始配环境了。
先新建一个源文件,不然项目属性里面没有C/C++这一项。
打开项目→属性,打开C/C++→常规→附加包含目录→小箭头→编辑。
添加你的include文件夹。两种方法,绝对路径简单,相对路径可以防止项目移动后用不了。二选一即可,效果一样。
这是相对路径方法:
然后打开预处理器,修改预处理器定义
添加下面两行:(这是模仿书本的示例代码所做的操作,我个人肯定想不出来)
WIN32
_WINDOWS
打开链接器→常规,修改附加库目录。
把lib文件夹添加进去,绝对路径或者相对路径,二选一。
这是相对路径方法。
打开链接器→输入,修改依赖库
将这几个库添加进依赖项
sb7_d.lib
glfw3_d.lib
opengl32.lib
glu32.lib
到这里就配完了,贴上书上的例子测试一下。
// Include the "sb7.h" header file
#include "sb7.h"
// Derive my_application from sb7::application
class my_application : public sb7::application
{
public:
// Our rendering function
void render(double currentTime)
{
// Simply clear the window with red
static const GLfloat red[] = { 1.0f, 0.0f, 0.0f, 1.0f };
glClearBufferfv(GL_COLOR, 0, red);
}
};
// Our one and only instance of DECLARE_MAIN
DECLARE_MAIN(my_application);
运行,结果弹出了一个红色的窗口,大功告成。
祝大家学习愉快。