尽管 SOIL 包含从图像自动创建纹理的功能,但它使用了现代 OpenGL 中不可用的功能。因此,我们将简单地使用 SOIL 作为图像加载器并自己创建纹理。
没关系,但是什么功能?库中的哪些其他功能也受到类似影响?我有一个谷歌,但没有找到任何关于此的信息。我已经看到它在 opengl es 应用程序中使用,IIRC 也只有核心的 opengl 功能。
这里的任何人都可以了解所有功能是否都是可疑的,或者它是否只是 load_ogl_texture。
我很确定问题出在调用 'glGetString(GL_EXTENSIONS)' 已在 OpenGL 3.0 中被弃用并在核心配置文件 3.1 中删除。正确的方法是(来自 OpenGL 论坛):
GLint n, i;
glGetIntegerv(GL_NUM_EXTENSIONS, &n);
for (i = 0; i < n; i++) {
printf("%s\n", glGetStringi(GL_EXTENSIONS, i);
}