PDA

View Full Version : Whats the best 32bit image format file?



blessman11
04-08-2011, 05:15 AM
Whats the fasted 32bit image file available? And does anyboad know how they are loaded into either Open GL or Direct X?

A mate at university said that binary datafiles would be the fasted. Apparently theres one for Direct X, a binary file/ rawdat(can't recall its actual name), which is also compatible with Open GL.

V-man
04-08-2011, 06:52 AM
png is nice because it has a high compression ratio. Decomp is slow.

bmp is uncompressed. Despite what some people say, you can store 32 bit in it. There is also the raw format which is headerless and uncompressed.

The only D3D format in existance is DDS and these also can store uncompressed 32 bit BGRA.

http://www.opengl.org/wiki/Common_Mistakes#Unsupported_formats_.233

Dan Bartlett
04-08-2011, 07:17 AM
As well as DDS (which is fairly widely supported), or custom formats that store each mipmap level, there is also a Khronos defined file format, that you could decide to use. It was only defined on 20th December 2010, so unlikely to be supported by many tools:

http://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/

Eddy Luten
04-08-2011, 09:20 AM
png is nice because it has a high compression ratio. Decomp is slow. One more vote for PNG here, it's a compressed, lossless, open format that supports RGBA, implemented by almost every image editor. What more do you want in a portable image format?

mhagain
04-08-2011, 10:25 AM
PNG is too slow to load - second that for sure. DDS is nice to use, fully portable (despite the name - it's just a file format after all, so all you need is a loader), supports compression formats that can be sent directly through glTexImage2D and so can be very fast to load, but is lossy compression and can have severe artefacts. 32-bit uncompressed TGA is my own format of choice; unless storage space is at a premium you shouldn't be worried about size, it's already BGRA so you can take what's normally the most efficient route through glTexImage2D, and all you need is a pointer to the data and the height and width of the file. The only real downsize is that you can occasionally get flipped TGAs that need some extra processing.