OpenGL02-创建窗口.md

本文详细介绍了如何在Windows环境下使用GLFW库创建OpenGL窗口和上下文,以及如何通过GLAD在线服务加载OpenGL函数,为图形渲染奠定基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OpenGL窗口

在绘制图像之前,需要创建一个OpenGL上下文(Context)和一个用于显示的窗口。这些创建窗口的操作与特定的系统相关,OpenGL将这些操作抽象出来,我们需要自己创建窗口,并定义OpenGL上下文以及处理用户输入。
在Windows上,使用GLFW库提供窗口和上下文渲染。

GLFW

下载GLFW库,地址:https://www.glfw.org/download.html, 选择64-bit windows binaries

  • lib为:glfw3.lib
  • 头文件为:GLFW文件夹
  • dll为:glfw3.dll

使用时只需要在vs中配置头文件和lib文件,dll复制到执行的文件夹即可。
在windows上,已经包好了opengl32.lib库,只需要在编写程序时包含这个库即可。

GLAD

OpenGL只是一个标准/规范,具体的实现是由驱动开发商针对特定显卡实现。由于OpenGL驱动版本众多,它大多数函数的位置都无法在编译时确定下来,需要在运行时查询。开发者需要在运行时获取函数地址并将其保存在一个函数指针中供以后使用。
GLAD使用了一个在线服务。在这里我们能够告诉GLAD需要定义的OpenGL版本,并且根据这个版本加载所有相关的OpenGL函数。

打开GLAD的在线服务,将语言(Language)设置为C/C++,在API选项中,选择3.3以上的OpenGL(gl)版本(我们的教程中将使用3.3版本,但更新的版本也能正常工作)。之后将模式(Profile)设置为Core,并且保证生成加载器(Generate a loader)的选项是选中的。现在可以先(暂时)忽略拓展(Extensions)中的内容。都选择完之后,点击生成(Generate)按钮来生成库文件。
GLAD现在应该提供给你了一个zip压缩文件,包含两个头文件目录,和一个glad.c文件。将两个头文件目录(glad和KHR)复制到你的Include文件夹中(或者增加一个额外的项目指向这些目录),并添加glad.c文件到你的工程中。