我目前正在学习如何在openGL中加载和使用图像。 我尝试了很多教程的例子。 许多教程都使用了一个函数:LoadBMP或其他东西。 我使用的标题没有声明这个函数。
您是否需要为加载图像的函数设置appart标头? 我查看了openGL维基百科,他们说有3个这样的标题。
或者我错了吗? 你需要openGL 3.0或更高版本来加载图片吗?
答案 0 :(得分:8)
OpenGL没有任何加载图片的功能。您可以自己编写LoadBMP函数,也可以使用第三方库。有许多可用,你可以在this中找到一些相关问题的答案。
然后,您可以将原始图像数据传递给OpenGL纹理创建函数,如glTexImage2D,以创建纹理。
答案 1 :(得分:3)
OpenGL只是用于访问GPU的API。没有任何功能可以加载任何媒体文件(图像,3D模型等)。甚至不支持在给定的OS中创建窗口(OS API需要与OpenGL粘合)。
您需要从图像中加载字节(使用其他库),然后您可以使用OpenGL将其上传到GPU。
出于简单的目的,我使用了一个名为SOIL的库,我觉得这很棒。在OpenGL维基上有一个list of related toolkits and APIs可能很有用。