使用DevIL在DDS文件中加载立方体贴图

时间:2011-09-27 07:10:58

标签: c++ opengl textures devil

我只获得立方体贴图中的第一张脸。如何访问/加载其他的?

在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,匹配“像素大小”乘以“每像素字节数”。)

如果我尝试将ilActiveImage用于0以外的值,则返回false。

我从RenderMonkey示例纹理中尝试过Earth.dds和LightCube.dds,并使用GIMP保存了我自己的dds文件,但只为第一个面部加载了所有这些。

有没有人有任何建议? (我已经用ilu和ilut-support编译了DevIL,如果这会有所不同。)

1 个答案:

答案 0 :(得分:2)

DevIL没有DDS Cubemaps的规定。也没有令人惊讶的图像加载器数量。