1) KTX loader for Irrlicht
2) KTX loader worked also with FVF's Patch by Nadro
3) KTX loader for pure OpenGL applications (use GLEW and read from a standard input stream std::istream)
4) KTX exporter: tool for creating KTX textures (has texture compression and is easily pluggable with more functionalities)
Info about compressed textures:
Compressed textures are faster in loading (especially with the KTX file format wich has all in a nutshell) and they requires less memory (from 1/4 to 1/6 only required compared to uncompressed textures). On old videocards compressed textures improves also rendering speed due to reduced bandwith usage (and better caching).
Compressed textures are used on every AAA game title and are very usefull on mobile devices wich have usually less memory available. Note that also download time for your title is reduced because your package will be more little with compressed textures. So most bottlenecks can be simply solved by using compressed Textures.
KTX exporter:
Download link:
https://sourceforge.net/projects/fixeengine/files/
Screenshots:
![Image](http://i.imgur.com/OJawD.png)
![Image](http://i.imgur.com/U5P7O.png)
Video:
http://www.youtube.com/watch?v=oZs21xda9lY (watch the Tutorial-Video on Youtube)
Notes:
It is written using Irrlicht, POCO, GLEW and OpenGL (+stl and std library of course)
Instructions:
Open the needed files (File->Open), select one of them and open the compression window (Export->compressedRGB). Then press "Start Compression". The output of the compression will be putted in the "KTX" folder. If you want to clear the cache of recently opened files you have just to clear the content of the "cache" folder.
KTX loader for Irrlicht:
Download link:
https://sourceforge.net/projects/fixeen ... 0Irrlicht/
Screenshots:
![Image](http://i.imgur.com/6qFgC.jpg)
Instructions:
there's a readme.txt file in the download link that explains what to do: anyway is very simple: you have to add few files to Irrlicht and recompile it. Then you have just to compile the example.
Try KTX loader also with Nadro's patch:
get Test code there:
http://irrlicht.sourceforge.net/forum/v ... 7&start=75
screenshot:
![Image](http://i.imgur.com/eOORg.jpg)
KTX loader for pure OpenGL applications: (the same from my engine)
Download link:
Not related to Irrlicht
Screenshots:
![Image](http://i.imgur.com/AfDJH.png)
Instructions:
Just provide a reference to a input stream (std::istream) wich can come from any kind of stream (internet connection, compressed/cyphred archive, opening a file for reading) and make sure you have an active OpenGL context. It returns the name of the GL texture that you can read directly with OpenGL
About KTX textures:
Info:
KTX textures are designed to provide fast and efficient loading for OpenGL textures. With a KTX texture is possible storing all kind of info usefull for setting up 1 texture unit. (all texture types are supported by KTX loaders: 1D, 2D, 3D, cubemaps. 1D & 2D arrays. compressed textures. floating point textures. luminance textures etc..)
With Irrlicht using a 512x512 RGB texture requires up to 1MB of video memory + time for decoding it from a image file (that can be PNG, JPG etc.)
the same texture compressed as DXT1 texture requires only 172KB (the same amount of memory is required on Hard disk and on Video memory.. very nice) of memory and is several times faster in loading.
Specifications link:
http://www.khronos.org/opengles/sdk/too ... rmat_spec/