PDA

View Full Version : Texture format & render times


Skyraider3D
10-29-2006, 2:23 PM
Recently I discovered that I get quite big differences in rendertimes (in 3DSMAX) when I compress TIFF textures. I thus came to the conclusion different file formats could have different render times. Does anybody know more about this? I smell a potential saving in rendertimes here, by using the quickest format :D

scrimski
10-29-2006, 3:43 PM
Does it render faster or slower?

I think (don't know exactly) that Max decompresses the used image because it needs 32 bit colors so what you save in disk space when using smth like png or jpg(neverever!) you lose when rendering. Same goes for greyscale images, they will be transformed internally into 32 bit rgb(A).

Skyraider3D
10-29-2006, 3:57 PM
Well funny thing... I am 100% sure once I experienced slower rendertimes with LZW compressed TIFs compared to normal TIFs. However I just did some testing and all rendertimes were identical. I tested BMP, PNG, TIF, TIF+LZW, TGA, PSD... didn't make any difference. Odd. Or maybe not :)
The test was done in MAX 7. Maybe I experienced the difference in MAX 5...?

kiwi123
10-29-2006, 3:59 PM
That would be extremely memory inefficient though. can't imagine that being the case.
In LW for instance it is beneficial to use 2bit, 4bit, 8bit textures as they take up less memory during rendertime. Sure, Jpeg is loaded in at the same size as a 24bit TGA (uncompressed), but it shouldn't automatically make it 32bit. That would be very strange.

arai
10-29-2006, 6:44 PM
sometimes your render time wont change much but your memory usage will be drastically different. I'd be more worried about that than render times when useing textures. For instance, some people think using .jpgs as textures should speed things up because they are way smaller on disk. but because of the way the software deals with the compression you actually end up loosing memory. In lightwave, certain formats are sort of "built in", the software knows the format and deals with it effeciently. For jpg's however, as it loads the texture, it has to expand it out and store it in its uncompressed format. In the end what happens is if you had 2 textures, 1 jpg and 1 tga, its the jpg that ends up slowing things down, or pushing you closer to your memory limit than the tga, because regardless of the size on disk, the way the software deals with the textures ends up making the .tga the better memory user.

Each software usually has a small list of "native" formats that it will deal with better than others.

I have used lightwave a lot in feature films with very large texture usage, so I've had to get every last bit out of lightwaves memory cap. Lightwave has what feels like a very low ceiling what your dealing with a lot of 2k textures.

I've found in the past its stable up around the 500mb and possible to get as high as 800mb (viewing from layouts texture useage decription), at that point it gets a bit sketchy

Skyraider3D
10-29-2006, 6:48 PM
I don't think MAX turns everything into 32-bit. I believe in the helpfile it even recommends to use an 8-bit greyscale image for bump and specular maps, rather than a 24 or 32-bit one, as it speeds things up times 3. Logically... :)

It might however calculate things like bumpmaps in 24-bit, as it needs to split up the info in X Y and Z info. At least with normal maps it works that way... I think stuff like specular masks will always work in 8-bit. But I'm no coder, so I might be talking b0ll0x here :lol: