Vertex Animation Texture - Compression

Hello ! I recently tried to include various VAT uses in my work but I encountered a problems of texture compression.

In Unreal I can use “HDRcompressed” setting and the animation still hold up pretty well.
When I compare the Ressource size between HDRCompressed and HDR, there no change.
When I try compress the texture in BC6H myself, I see quite a big quality loss.
Which make the animation quite lo-fi
Here is the blue channel of the texture :
xtexconv BC6H : image
Unreal BC6H : image

What kind of format would you export your position map ? :slight_smile:

What format would I export?
Either an EXR, TIFF, or TGA, depending on the requirements. (signed, 16 bit, 8 bit).

What format would I use in engine?
Uncompressed. Always. If I need to reduce the file size, I’ll reduce the number of frames.

Image compression formats are not designed to hold arbitrary data, and while BC6H and BC7 are a lot better than the older BC1 and BC3 formats, I personally still find the artifacts from compression to be far more of an issue than using a reduced frame count.

I’ve found using “VectorDisplacementmap” cuts the resource size in half without it turning into a tornado of triangles.

VectorDisplacement with sRGB unchecked. edit: I’m not knowledgeable on HDR stuff so I don’t know if VAT actually need a HDR compression type. Probably a @Partikel question

@bgolus got it right. Some Vat types like soft can be slightly compressed if desperate. But in general, don’t compress. Reduce point count and number of frames instead.


For ue4 at least:

Yup, needs the HDR compression.
Sometimes others work, but thats more fluke. (depends a little on compression)
Filter should preferably be on nearest.

The texture controlling normals (optional)
Should generally be vector displacement map.
Nearest filter.

and meshes should preferably have accurate UV’s enabled, and no degenerates removed on import.

More info:

1 Like

Thanks for your answers. !
Yeah I got the reduce point and nb of frames. In some case its possible to blend the frames and so on anyway.