Slow loading FileTextures in DXT5 Format

To save some graphics card memory i tried loading FileTextures instead of using the mostly used Formats “No Specific”, “X8R8G8B8” or “A8R8G8B8” using “DXT9”.
The result is pretty good, colours look good, alpha is working and there seem to be no big compression artefacts.

The only bad thing i noticed is that it takes very long to load textures in this format.
For the same BMP 1920x1080px loading as X8R8G8B8 takes 0.088 seconds, loading it as DXT5 it takes long 0.679 seconds. (the times for loading the textures are taken from tty-renderer)
It seems to make no difference if the image is stored as BMP, JPG or even DDS.

Ok, of course, using DXT5 the texture has to be compressed during loading into graphicscard memory, but I can not believe that this should take 0,6 seconds per texture.

Is there any way to speed this up by changing settings or patching, can the devvvvs think of any optimation for this within vvvv or is this like it has to be ?

system again:
Intel Core2Quad X9650 3GHz
WinXP Pro32
nvidia GTX285 2GB


yes, you can save the textures with photoshop or so in .dds format with the DXT compression, this should load much faster…

hmm … i tried with .dds-files created from vvvv using writer(EX9Texture). Loading these dds-files did take more or less the same time as loading the bmp-files.
What pluging for saving dds-files from photoshop are you using.
I tried to install the nvidia pluging for photoshop an a plugin for gimp, but bozh failed somehow !?
I need to have a deeper look into this …


I experienced much faster texture-loading when using dds-files generated through the nvidia photoshop-plugins (using them with photoshop cs3). A texture saved as dds R8G8B8 for example loads up to 10 times faster than its png eqivalent.

Have you set the texture-format in file-texture node to something specific, e.g. DXT5, or left it at the default value (Non Specific)? If I remember correctly leaving it at “non specific” results in faster loading and vvvv generally detects the texturetype correctly.

Also disabling Mipmaps in the plugins save dialog (if you won´t need them) might enhance loading times.

If you have no luck with the nvidia plugins you could try a stand-alone tool from ati called Compressonator. But I think the generated textures are sometimes not properly “interpreted” by nvidia cards.

OK … got the nvidia photoshop plugin working and it is working great.

DXT5-DDS files created with this pluging using the default settings look very good in vvvv and load very fast as bjoern described above.

What file-format is vvvv creating using writer(EX9Texture)in DDS-mode connected to DX9Texture set to DXT5 ?
This saved dds-file is loading very slow.
Besides this, this DDS-File is apprx. 4 times bigger than the file created with the nvidia plugin and (even stranger) it has exactly the same size as a bmp created by vvvv using DX9texture and writer.


ja, thing is, that the dx9texture cannot be a DXTx compressed texture. even if you set it to one of the DXTx formats, it will just be a standard 32bit texture, which explains the equal size to a .bmp.

the workaround in vvvv would be to save the file as .dds or .bmp, then load it with the filetexture set to the desired DXTx format and then save the filetextures output again. voila.

rrrr has a texture conversion tool in his pipeline which probably does that already…