VS2017-OPENGL配置glfw+glad

VS2017-OPENGL配置glfw+glad

https://jveilcoo.github.io/XQ.github.io/categories/ 观看更清晰
之前配置的是glfw+glew,可是glad是目前比较新的,比glew更好用,所以这次配置一下glfw+glad的开发环境。(注:必须下载32位的哦)


首先要去下载 glfwglad,直接去官网下载就好了,glfw我们选择3.3版本的,glad下载的时候需要自己根据需求来选择,按照下图选择即可:

选择完后往下翻点击generate生成下载链接,下载该zip就行了。放在自己熟悉的文件夹哦。


然后打开VS,新建一个空项目,右键项目,点击属性->C/C++->附加包含目录,根据图片编辑附加包含目录:


在上面的界面选择文件,打开之前下载的glfw文件夹,添加路径...glfw-3.3.2.bin.WIN32include
然后我们再添加glad的路径,同样...gladinclude


然后点击C/C++下面的链接器,点开常规,配置附加库目录:

...glfw-3.3.2.bin.WIN32lib-vc2017添加进去即可。

最后点击链接器,点开输入:

然后输入:
opengl32.lib
glfw3.lib

点击确定后,打开存放glad的文件夹,找到src目录,复制里面的glad.c,将其放到该项目的源文件夹就全部完成了。


下面来验证一下是否能够使用glfw+glad创建一个窗口

#define GLEW_STATIC
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>

int main()
{
	glfwInit();
	glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
	glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
	glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

	GLFWwindow* window = glfwCreateWindow(800, 600, "LearnOpenGL", NULL, NULL);
	if (window == NULL)
	{
		std::cout << "Failed to create GLFW window" << std::endl;
		glfwTerminate();
		return -1;
	}
	glfwMakeContextCurrent(window);

	if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
	{
		std::cout << "Failed to initialize GLAD" << std::endl;
		return -1;
	}

	while (!glfwWindowShouldClose(window))
	{

		glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
		glClear(GL_COLOR_BUFFER_BIT);

		glfwSwapBuffers(window);
		glfwPollEvents();
	}

	glfwTerminate();
	return 0;
}

如果创建成功,则证明环境配置完成,如果遇到了

无法解析的外部符号 _glfwInit,该符号在函数 _main 中被引用

这类报错,则证明glfw配置过程中出错,建议仔细检查。

原文地址:https://www.cnblogs.com/xiangqi/p/14608091.html