Hello,Window#
我们来看看能不能让 GLFW 运行起来。首先,创建一个 .cpp 文件,并在新创建的文件顶部添加以下包含语句。
#include <glad/glad.h>
#include <GLFW/glfw3.h>请务必在引入 GLFW 之前引入 GLAD。GLAD 的头文件包含了后台所需的 OpenGL 头文件(例如 GL/gl.h ),因此请确保在其他需要 OpenGL 的头文件(例如 GLFW)之前引入 GLAD。
接下来,我们创建主函数,并在其中实例化 GLFW 窗口:
int main()
{
glfwInit();
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
//glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
return 0;
}在主函数中,我们首先使用 `glfwInit` 初始化 GLFW,之后可以使用 `glfwWindowHint` 配置 GLFW。`glfwWindowHint` 的第一个参数指定要配置的选项,我们可以从一个以 GLFW_ 为前缀的枚举列表中选择。第二个参数是一个整数,用于设置选项的值。所有可用选项及其对应值的列表可以在
GLFW 的窗口处理文档中找到。如果您现在尝试运行应用程序并出现大量_未定义引用_错误,则表示您没有成功链接 GLFW 库。
由于本书重点介绍 OpenGL 3.3 版本,我们需要告知 GLFW 我们要使用的 OpenGL 版本为 3.3。这样,GLFW 在创建 OpenGL 上下文时就能做出正确的配置。这确保了当用户没有安装正确的 OpenGL 版本时,GLFW 不会运行。我们将主版本号和次版本号都设置为 3 此外,我们还告知 GLFW 我们要==显式使用核心配置文件。使用核心配置文件意味着我们将获得 OpenGL 功能的一个较小子集,而不会使用我们不再需要的向后兼容功能。==请注意,在 macOS 系统上,您需要在初始化代码中添加 glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); 才能使其生效。

