我正在尝试将Glad.H与我的代码一起使用。我正在Visual Studio 2013上进行编程。由于某些原因,它给了我错误C1189: #error : OpenGL header already included, remove this include, glad already provides it
有人可以帮我吗?
这些是我包括的标题: -
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>
我刚刚逆转了 glfw3.h
和 glad.h
的包含顺序,如下:
#include <gladglad.h>
#include <GLFWglfw3.h>
使用glfw,将glfw_include_none添加到properties-> c/c -> preprocessor-> preprocessor->预处理程序定义已修复此
来自https://www.glfw.org/docs/3.3/build_guide.html#glffw_include_none
如果您使用的是OpenGL扩展加载库(例如Glad(,则应在GLFW ONE之前包括扩展装载器标头。GLFW试图检测其之前包含的任何OpenGL或OpenGL ES标头或扩展装载机标头,然后将禁用默认OpenGL标头的包含。大多数扩展装载机还定义了在其下方禁用类似标头的宏。
#include <glad/gl.h>
#include <GLFW/glfw3.h>
这两种机制都取决于定义已知宏的扩展装载器头。如果您不知道您的用户会选择哪一个,则GLFW_INCLUDE_NONE宏将明确地防止GLFW标头包括OpenGL标头。这也将使您以任何顺序包括两个标题。
#define GLFW_INCLUDE_NONE
#include <GLFW/glfw3.h>
#include <glad/gl.h>