为什么某些GL Image函数需要使用GL Load来初始化OpenGL上下文?是否可以使用GLEW充分利用GL Image来初始化OpenGL上下文?
答案 0 :(得分:3)
如果您在谈论Unofficial SDK's GL Image system,答案是肯定的。 SDK旨在成为一揽子交易;如果你使用它的一部分,你应该使用其余部分。毕竟,如果你可以构建并包含GL Image,你也可以使用GL Load,因为它们是捆绑在一起的。
GL Load完全符合GLEW的要求;它在很多方面都更好,因为它不需要“实验性”的东西来使其在核心环境中运行。通过C界面,您可以使用#include <GL/glew.h>
替换所有#include <glload/gl_[Insert Version Here].h>
部分。您不需要修改除此之外的任何代码(当然还有初始化代码)。
话虽这么说,你应该能够同时使用GL Load和GLEW,只要:
您初始化两者。这意味着在创建OpenGL上下文后调用glewInit
和 LoadFunctions
。他们的变量不应该相互影响。
您从不尝试将两个非系统标头都包含在同一个文件中。 GL Image的TextureGenerator.h
实际上是专门为而不是而设计的,要求包含OpenGL标头(也就是说,它不直接使用GL类型,如GLint
或GLenum
)。
这显然是浪费,因为他们做同样的工作。但它应该有用。