Hello,
for a project of mine i needed the ability to load DDS Textures in Irrlicht. The result was a little and simple to use library which does:
Load a DDS File and return a *IImage
Supports DXT1/3
No dependencies to other libraries (except Irrlicht
The entire DXT decoding is based around FFmpeg's s3tc.c implementation which has been additionally licensed under the Terms of the ZLIB license by the original author (Ivo van Poorten). My code is also licensed under the terms of the ZLIB.
DDS is certainly a features often missed. I think I've also seen 2 other implementations on the forums trying to fix that. One from festini was for an older Irrlicht and worked only for OpenGL, but also had a loader. I think the other was from Nadro, I haven't checked out that one yet.
@BlindSide: Be careful, we can't use LGPL code in Irrlicht.
i've contacted the author of the parts not written by me and he told me that he additionally releases his components (s3tc.c and s3tc.h) under the Terms of the ZLIB License for inclusion in Irrlicht.
Tomorrow i will upload a new Release of the Library licensed under the terms of ZLIB at its entire.
BlindSide wrote:Nice job. I'll see if I can get this into Irrlicht somehow (Although the IImage system is due for a long overhaul so we may just wait until then).
What we need is native dds support - decoding on load is far less useful, if that is what this is.
Thanks egrat for taking the extra time to get a compatible license (and do carry my thanks to the author of the code you used for allowing it too if you talk to him again)
BlindSide wrote:Nice job. I'll see if I can get this into Irrlicht somehow (Although the IImage system is due for a long overhaul so we may just wait until then).
What we need is native dds support - decoding on load is far less useful, if that is what this is.
Yes I agree, but it's not really possible at the moment. The only easy way out is to compress it ourselves at runtime.
ShadowMapping for Irrlicht!: Get it here
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net