0

我目前正在学习如何在 openGL 中加载和使用图像。我尝试了几个教程的许多示例。很多教程都使用了一个函数:LoadBMP 什么的。我使用的标头未声明此函数。

您是否需要加载图像的功能的 appart 标头?我查看了 openGL 维基百科,他们说存在 3 个这样的标题。

还是我错了?您需要 openGL 3.0 或更高版本来加载图像吗?

4

2 回答 2

9

OpenGL 没有任何加载图像的功能。您可以自己编写 LoadBMP 函数,也可以使用第三方库。有很多可用的,您可以在相关问题的答案中找到其中的一些

然后,您可以将原始图像数据传递给 OpenGL 纹理创建函数,例如glTexImage2D,以创建纹理。

于 2013-01-05T16:02:12.920 回答
3

OpenGL 只是一个用于访问 GPU 的 API。没有加载任何媒体文件(图像、3d 模型等)的功能。甚至不支持在给定的操作系统中创建窗口(操作系统 API 需要与 OpenGL 粘合)。

您需要从图像中加载字节(使用另一个库),然后您可以使用 OpenGL 将其上传到 GPU。

出于简单的目的,我使用了一个我认为很棒的名为SOIL的库。OpenGL wiki 上有一个相关工具包和 API 的列表,它们可能很有用。

于 2013-01-06T17:04:59.193 回答