Skip to content

VAT Management Suite

Module: Tech · Category: TextureGenerators · Tool ID: VATImportManagementSuite

Four-tab Vertex Animation Texture toolkit. Import Wizard loads pre-baked VAT data from external tools (Houdini, Blender OpenVAT). VAT Manager scans the project for VAT assets. Preview & Settings previews playback. VAT Baker bakes from UE sources (SkeletalMesh + Anim, Alembic, Geometry Collection, Niagara cache) into VAT textures + a static mesh.

Six VAT types are supported: Bone, Vertex, Soft Body, Alembic, Fluid, Sprite. Each has expected source types and matching parent materials.

Screenshot 01 — Hero shot — Suite open on VAT Baker tab with a SkeletalMesh + AnimSequence source loaded, viewport showing baked VAT preview.


  • Baking expensive animations (cloth, destruction, fluid) into static meshes that play back via texture lookup
  • Importing pre-baked VAT data from Houdini SideFX ROPs / Blender OpenVAT
  • Managing a project’s VAT asset library
  • Creating per-particle camera-facing sprites from Niagara
  • Don’t use this for runtime skeletal animation — VAT is for baked animation; runtime animation goes through AnimBP / IK Rig
  • Don’t expect this to handle complex retargeting — that’s the IK Retargeter’s job

  1. Open the EQLabs Hub and search for VAT (or browse to Tech → TextureGenerators)
  2. Click the tool card
  3. Use the tab bar: Import Wizard / VAT Manager / Preview & Settings / VAT Baker

TypeSourceUse case
BoneHoudini Bone VAT ROPSkeletal bone animation, LOD-independent
VertexHoudini Vertex VAT ROPDirect per-vertex offset animation
Soft BodySkeletalMesh + Anim, or AlembicCloth, deformation
Alembic.abc (UGeometryCache)Cloth, destruction, VFX with constant topology
Fluid.abcFluid surfaces with changing topology
SpriteNiagara cache, or Alembic pointsCamera-facing particle sprites

Load pre-baked Houdini or Blender VAT data.

FieldWhat it does
Import VAT TypePick the type matching the Houdini ROP that produced the data
Base MeshStatic mesh exported from the DCC alongside the textures
Position TexturePosition VAT texture
Normal TextureNormal VAT texture (called “Rotation” in SideFX terms)
Lookup TextureFluid-only — lookup indirection table
Bone Weight TextureBone-only — bone influence weights
Sprite Color TextureSprite-only — per-particle color
Base Color / Normal MapStandard surface textures (NOT VAT rotation)
Frame CountAuto-detect from mesh data, or override
Playback SpeedMaterial parameter
Import & GenerateCreates the VAT material instance + binds the textures

Screenshot 02 — Import Wizard — Tab 1 with Houdini-baked Bone VAT data loaded across all required slots.

Screenshot 03 — Houdini Fluid VAT import + playback — Import Wizard configured for Fluid type — Position + Normal + Lookup textures bound, base mesh loaded, preview viewport playing the imported simulation back inside the editor.


Scan and browse VAT assets in the project.

ActionWhat it does
Scan ProjectWalks /Game for VAT assets
Scan FolderWalks a specific folder
Open AssetOpens the selected VAT
Regenerate MaterialRe-creates the VAT material instance
VAT listPer-asset row: name, path, VAT type, frame count

Screenshot 04 — VAT Management dashboard — Tab 2 showing a populated project-wide VAT inventory — multiple VAT assets with type, path, frame count, and per-row Open / Regenerate Material actions.


Live preview playback.

FieldWhat it does
Preview Mesh / Material pickersDrop a baked VAT mesh + material
Scrub FrameManual frame scrubber
Total FramesDisplay
Playback SpeedSpeed multiplier
LoopToggle
Play / Pause / StopPlayback controls
Preview viewportEmbedded SVATPreviewViewport

Bake VAT from UE sources.

VAT TypeAvailable Sources
BoneSkeletalMesh + Anim
VertexSkeletalMesh + Anim
Soft BodySkeletalMesh + Anim, or Alembic
AlembicAlembic (UGeometryCache)
FluidAlembic
SpriteNiagara System (live capture) or pre-recorded SimCache
FieldWhat it doesDefault
Output ResolutionVAT texture size512
Output PathWhere to save(configurable)
Export Static MeshBake rest-pose static mesh alongsidetrue
Frame Sampling comboPer-VAT-type sampling mode
FieldWhat it doesDefault
Niagara SystemSource — live capture
Niagara SimCacheOptional pre-recorded override
Emitter IndexWhich emitter to bake0
FramesTotal frames to capture120
FPSCapture frame rate30

For each bake:

  • Position texture — per-frame vertex positions
  • Normal texture — per-frame normals (or rotation for Bone VAT)
  • Static mesh — rest pose with VAT-specific UVs (UV1/UV2 for bone indices, etc.)
  • Material instances — one per skeletal-mesh material slot, parented to the VAT master with parameters configured
  1. Switch to VAT Baker tab
  2. Pick Bone type
  3. Drop the SkeletalMesh + AnimSequence
  4. Set Output Resolution and Output Path
  5. Click Bake VAT Textures
  6. New asset set appears in the Content Browser

Screenshot 05 — Bone VAT bake in progress — Baker tab with a SkeletalMesh + AnimSequence loaded, progress dialog visible during the bake, output path field showing where the asset set will land.


Per-tab parameters persist to [Project]/Saved/EQLabs/Settings/VATImportManagementSuite.json.


  • UTexture2D assets — Position + Normal (+ Lookup / BoneWeight / SpriteColor as needed)
  • UStaticMesh rest-pose mesh — with VAT-specific UV/VertexColor encoding
  • UMaterialInstanceConstant — one per source material slot, parented to the appropriate VAT master
  • Skeleton sockets copied to the static mesh as static-mesh sockets
  • Texture format — 16-bit half-float for high-precision encodes; 8-bit for low-precision

The VAT Runtime module (EQLabsVATRuntime) ships a tracker component + Blueprint function library so gameplay can query baked bone / vertex positions at runtime. Use cases: spawning effects from baked-bone sockets, snapping actors to baked vertices, attaching props to bone-VAT animations.

Screenshot 06 — Runtime socket tracker — Level viewport with an actor following a baked Bone-VAT bone in real time via the runtime tracker component. Tracker properties visible in the Details panel showing the bound socket name + animation phase.


  • VAT bakes a fixed-frame animation — once baked, the VAT has the frame count you configured; re-bake to change
  • Bone VAT uses UV channels for bone indexing — UV1 / UV2 store bone indices; the static mesh has these auto-set by the baker
  • VAT materials must be parented to the right VAT master — the baker handles this, but if you author manually, use the matching master
  • Niagara live capture spawns a temp component, runs N frames, captures, destroys — entirely in-editor, no PIE required
  • Algorithm inspired by OpenVAT (Blender open-source tool)


Report an issue with this tool

Opens our feedback form in a new tab with the tool name pre-filled.