What I learnt about .png files the hard way.


If you are rendering to an image sequence (many reasons you should be) and writing out .png files, you could have longer render times.

While .png results in a smaller file, it is the processing necessary for the compression of these files that increases the render time, very likely more time writing a frame to disk than actually rendering it.

I would highly recommend .tga as an alternative, your render time will drop like a stone and still supports alpha channel.

.png does “on paper" store more colour information, but I highly doubt it is something you would miss when working with .tga - if you need that much colour latitude .exr is a better choice.

.tga is faster reading from disk, allowing realtime playback of .tga sequences if your IO is fast enough for it. I could not do this with .png.

I want to be clear, this is only a performance issue, this should not affect the quality of rendering from various systems, adversely or otherwise.

This has been confirmed by myself and others on various platforms.

I had been rendering to .png files for many years, it never occurred to me that processing them would take such a toll on the render time. For a simple animated sequence in Adobe After Effects, a couple of minutes in duration took 6 hours to render to a .png sequence.

After switching to .tga this lowered to 20 minutes and I was able to stream this from disk in realtime, to give you some idea.

It may not hurt to try other formats to see which one suits you best in your workflow in terms of processing time, disk space cost and supported between the software in your pipeline.

I would be remiss to not mention that image format handling (reading and writing) between software are not equal. This means the implimentation of one format in software A could be worse than B even though it exposes more settings for quality and/or compression.

Michael

Email me when VFX Craft publishes stories