View full documentation at https://github.com/sharpen3d/openvat
Encode vertex animated textures (VATs) from your animated mesh for use in game engines and VFX. Bake any type of vertex animation: animated modifiers, animated geometry nodes, simulations, armature, shape keys, and more.
Exports an optimized VAT, a mesh with VAT-compatible additional UV set, JSON remapping data (to inform engine shaders), and optionally exports relative vertex normals in a secondary (VNRM) texture.
Install the satellite Unity package via Unity's Package manager for openVAT auto-import and setup tools for unity. Add via git with this URL - https://github.com/sharpen3d/openvat-unity.git
-See README in documentation for more details on Engine Usage.
Running the tool automatically sets up the newly-created VAT on an included geometry node method to decode the VAT and provides an example implementation and instant preview to check the quality of the generated information.
Encoding directly from dependency graph vertex information, this vertex encoding method is fast, accurate, and extremely powerful. Geometry node animations and simulations can be captured and exported accurately to game engines. Relative color space in RGB is remapped to MIN-MAX per-channel to represent the best-possible use of spectral information in RGB.
VATs are typically used for CPU optimization in game engines. With careful implementation in engine shaders, effects such as clothing simulations, complex character/creature animation, interactive/animated environmental effects and more can be driven by VAT on GPU.
Release Date: 2025-04-29
Minimum Blender Version: 4.2.0
EXR Export Option Export as RGB(half) EXR in addition to the existing PNG option
RGB (no alpha) Default Export Previously, VATs exported with blank Alpha channel, now all exports strip the Alpha channel for better (RGB) formatting.
Custom Frame Range Encoding
Export VATs with precise control over the frame range to encode.
Deformation Basis Options
Choose deformation basis from Start Frame, Current Frame, or a Custom Proxy object.
GLTF Export Support Export model by default as GLTF or GLB (for Godot) or choose to not automatically export a model - handle this yourself after creating the VAT.
Attribute Stripping Often after creating a VAT, there is no use for vertex data like vertex groups and colors - an option has been added to strip this data from the mesh result, as to not carry unnecessary data.
Transform Space Control
Select whether to bake object space or world space deformation into the VAT.
Target 'Collection Combined' Mode
Export a combined mesh from all objects in a collection into a single VAT.
Normal-Safe Edge Splitting (Optional)
Automatically splits sharp edges for safe per-vertex normal capture without modifying the original mesh.
This extension requests the following permission:
Import/export VAT data from/to disk (in a location you specify)
Thank you for the kind words, already planning some stability and flexibility updates for the next update - feel free to reach out if you see any lacking features!
IDK anything about what kinda work goes on behind the scenes of this, but it works and works well and without it my blender-unity pipeline for VAT would be impossible. I thank you for this. I must add tho, often I have to sort of "cheat" it to get it to make the damn texture. For no reason it refuses to do it with neither of the normals options checked, then another time it does it first try, then another time it doesnt work with the cleanup option checked, and yet another it does etc. I would REALLY like to be able to see what the hell its actually "thinking" and what exactly it does and how to stop it. For example it keeps outputting "vat.001" when the folder is emptied etc ect. Its very useful and mildly to medium frustrating. Please try and perfect it if you can.
Hotfix for overwrite handling (.001 folder creation on repeated encoding) available in 1.0.3a (preview update patch on GitHub)
Thank you for the review, next version should have a little more stability. It may help to purge all orphaned data before running the encoding process- your comment about ‘.001’ is kinda hinting this to me. Here’s a video explaining more of what is going on in the background - Baking Complex Vertex Animation For Games (OpenVAT for Blender Overview) https://youtu.be/eTBuDbZxwFg
Awesome addon, although I hoped it would work for Unreal, but I couldn't get it to work
Check out the current process for OpenVAT to UE5 here:
Blender to Unreal VAT Pipeline – Real-Time Mesh Animation with OpenVAT https://youtu.be/T1KVvUIduGI
sharpen3d has done an incredible job especially with this new version. It's intuitive to use, makes efficient use of texture space while keeping to power of 2 texture sizes, and is actively developed.
if you need easy vertex animation textures, look no further