bool compress(E_COLOR_FORMAT format) // Where ECF_DXT1, ECT_DXT3, ECF_DXT5, ECF_KTX will be support.
// Here we can write code for compression a RAW data into a compressed data; at start we don't need this method worked)
// Like a compress we don't need this method worked at start
bool IsCompressed; // if true, many CImage methods aren't active, we can manipulate only uncompressed images.
fmx wrote:Somebody correct me if I'm wrong:
- Texture filesize reduction is primarily due to DXT compression?
- DDS texture format uses DXT compression too, right?
- DX8/9 supports loading of DXT compressed textures?
- Irrlicht doesn't already allow importing DDS textures with GL or DX drivers?!
I dont have anything against your KTX loader REDDemon, but I get the feeling maybe irrlicht needs a proper .DDS texture loader first (for both GL and DX)...
fmx wrote:at first glance it looks like KTX is nothing but a container for compressed DXTx texture data which gets used by glCompressedTexImage2D directly?
\param ktx_stream: you get this by opening a KTX file with irrlicht (also from inside a compressed archive)
\param start_level : 0 is the biggest mipmap level. You can specify to start using a more little level
(if you need to save more memory, or increase performance on target platform).
Occlusion queries can be used to see if a mipmap level is rendered or not. If it is not
rendered you can just reload the texture without that mipmap level (explained well
in a GPU gems chapter).
\param num_of_mipmaps: 0 is default value and leave the decision of how many mipmaps to
create to the KTX loader. You can specify the number of mipmap levels to be used startin
from "start_level" (very usefull for texture ATLASES wich needs a truncated mip pyramid
for avoid visible artifacts). 1 means only 1 miplevel (usefull for GUI elements wich don't
need mipmap pyramid). Supported only from OpenGL 1.2 and above
loadTexture(io::IReadFile* ktx_stream, u32 start_level = 0, u32 num_of_mipmaps = 0)
Users browsing this forum: No registered users and 1 guest