用DevIL在DDS文件中加载一个立方体映射

Load a cubemap in a DDS file with DevIL

本文关键字:一个 映射 立方体 加载 DevIL DDS 文件      更新时间:2023-10-16

我只得到cubemap中的第一张脸。我如何访问/加载其他的?

在Ubuntu Natty上使用DevIL 1.7.8:我使用ilLoad或ilLoadImage来加载带有6个纹理的dds文件,但只有第一个面被加载。ilGetInteger()给出结果:

IL_IMAGE_DEPTH: 1

IL_IMAGE_BYTES_PER_PIXEL: 4

IL_NUM_LAYERS: 0

IL_NUM_IMAGES: 0

IL_IMAGE_TYPE: 5121 (= 0x1401,甚至不是il.h中的图像类型!)

IL_IMAGE_CUBEFLAGS: 1024

IL_ACTIVE_IMAGE: 0

IL_IMAGE_SIZE_OF_DATA: 65536(即128x128x4,匹配"图像像素大小"乘以"字节/像素")

如果我尝试使用非0值的ilActiveImage,它返回false。

我试过地球。dds和LightCube。从RenderMonkey示例纹理中的dds,以及用GIMP保存我自己的dds文件,但只有第一张脸被加载。

有人有什么建议吗?(我已经用ilu和ilut-support编译了DevIL,如果这有什么区别的话)

DevIL没有DDS Cubemaps的规定。大量的图像加载器也是如此。