参考网址:
创建窗口 - LearnOpenGL CN
Download | GLFW
Download | CMake
https://glad.dav1d.de/
前言:针对特殊名词(如GLFW/GLAD等)详细说明可参考网站创建窗口 - LearnOpenGL CN。
GLFW是专门针对的OpenGLC语言库提供了渲染对象所需的最低界面。它允许用户创建OpenGL定义窗口参数,处理用户输入。
GLFW您可以从其官方网站的下载页面上获取。有两种方法:一种是直接下载源代码包;另一种是源代码编译库。推荐第二个,因为源代码编译库可以确保生成的库完全适合您的操作系统CPU是的,预编译的二进制文件并不总是提供(有时,即使提供了预编译的二进制文件,也可能不适用于您的系统)。
下载后得到一个zip文件:
解压下载的GLFW解压文件夹下的新文件build文件夹用于保存生成的工程文件:
2.CMake
源代码编译需要工程文件生成工具CMake减少我们的代码构建任务量。
下载地址:Download | CMake
下载后得到一个zip解压后如下:
为了工作简单,我们使用它GUI启动cmake,当然也可以用命令行。
双击cmake_gui.exe,打开gui界面如下:
根据上图step1234依次完成vs2015年(请选择您当前安装的vs版本)工程配置。
因此,必须了解当前安装情况vs版本哦!此时点击Finish好吧,我们的cmake创建了这个项目。然后单击点击按钮即可用vs2015年开工。你也可以可以在文件夹中找到文件打开工程。
点击按钮,然后在我们编译的库文件将出现在文件夹中
因为OpenGL只是一个标准/规范,具体实现是由驱动开发商为特定显卡实现的。OpenGL驱动版本很多,编译时无法确定其大部分函数的位置,运行时需要查询。
因此,有必要选择一些图书馆来帮助我们做一些复杂的工作,否则开发人员需要在运行过程中获取函数地址,并将其保存在函数指针中供未来使用。获取地址的方法因平台而异Windows会是这样的:
// 定义函数原型 typedef void (*GL_GENBUFFERS) (GLsizei, GLuint*); // 找到正确的函数并赋值函数指针 GL_GENBUFFERS glGenBuffers = (GL_GENBUFFERS)wglGetProcAddress("glGenBuffers"); // 现在函数可以正常调用 GLuint buffer; glGenBuffers(1, &buffer);
其中是目前最新最流行的库。
GLAD提供在线服务的开源库:https://glad.dav1d.de/打开如下:
如上图所示,需要开发需要主动告诉我们 GLAD需要定义的OpenGL根据此版本加载所有相关版本OpenGL函数。可根据自己的电脑制定相应的版本(测试软硬件系统信息的工具-其他文档资源-CSDN下载)。
将语言(Language)设置为将模式(Profile)设置为OpenGL3.3,OpenGLES1.0,先(暂时)忽略扩展(Extensions)然后选择内容(Generate a loader)点击选项GENERATE按钮即可。
之后GLAD会给你一个zip:
zip两个头文件目录(和)和一个文件。
我在这里创建了一个用于OpenGL引用第三方头文件和库,并在下面创建一个include文件夹用于头文件的存放,一个Libs存储库中文件的文件夹:
在include创建一个文件夹glad文件夹,解压前的文件夹glad下的include文件夹下的两个文件夹和复制到新建的glad文件夹下:
如果您正确完成了上述步骤1234,您现在可以开始创建我们的第一个OpenGL工程了。
新建一个vs工程,解压后glad下的src文件夹里的glad.c将文件复制到项目下,配置第三方头文件和库,点击导航栏Project->工程名 Properties:
,通常在C:\Program Files (x86)\在路径下,我的是C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64路径下。
工程配置完成后,您可以参考窗口 - LearnOpenGL CN写你的第一个OpenGL工程啦!