Repository navigation
3.45.0
Vertex Animation Texture export — four modes
qtmesh vat now bakes four kinds of animation into OpenVAT textures, not just skeletal clips:
| mode | bakes | texture columns |
|---|---|---|
skeletal (default) |
a skinned animation, per-vertex positions + normals | vertices |
rigid |
one rotation + pivot per submesh piece per frame (destruction, mechanical parts) | pieces |
mesh-anim |
a vertex cache (Alembic / vertex-animation clip) | vertices |
morph |
keyed blend-shape weights (defaults to the editor's weight clip) | vertices |
- Encodings:
rgba8(smallest),rgba16(default),exr(float32, lossless). - Targets:
agnostic,unity,unreal,godot. A non-agnostic target also copies that engine's shader template next to the bake. Rigid bakes ship a new Godot template,openvat_rigid.gdshader. - Rigid bakes report a fit residual per piece, so a piece that doesn't actually move rigidly is visible instead of silently wrong.
- Same controls everywhere: CLI
--mode / --encoding / --target, MCPbake_vatmode / encoding / target / include_shaders, and Mode / Encoding / Target pickers in the Inspector's VAT section. The picker only offers modes the selected mesh can bake.
Using it
qtmesh vat character.fbx --anim Walk -o out/qtmesh vat pieces.fbx --anim Explode --mode rigid --target godot -o out/qtmesh vat face.glb --mode morph --encoding exr -o out/
Two bake bugs fixed along the way
- The last frame of every bake read frame 0 (Ogre wraps time on looping clips). Invisible on a looping walk, wrong on a lipsync clip that ends on a different mouth shape.
- Morph bakes lost their vertex alignment and UV2 because the glTF read-back rejected the embedded buffer the exporter adds for morph animations.
Checked against an independent blend-shape oracle on the 51-target ICT lipsync clip: every frame decodes within one 16-bit quantization step.
Also in this release
- ARKit blendshapes no longer land on the back of the head. The face auto-rig assumed every head faces the same way as its template, so any model facing another direction got the template fitted onto its skull, even with markers placed. The rig now solves the head's rotation from the detected face points or your markers, fits in the template's frame, and rotates the shapes back. With no usable points it falls back to the detected face direction (yaw and pitch; a head rolled sideways still needs markers). The face-landmark model now downloads on first use, and the CLI/MCP report includes
orientation_sourceandorientation_angle_deg.
Full changelog: 3.44.0...3.45.0