Skip to content

Corrective Blendshape Authoring

Module: Animation · Category: Blendshape · Tool ID: CorrectiveBlendshapeAuthoring

A three-tab workflow for authoring corrective blendshapes (morph targets) directly inside Unreal. Capture & Sculpt snapshots the SkeletalMesh in a problem pose, accepts a corrected StaticMesh from your DCC, computes the per-vertex delta, and registers it as a UMorphTarget. Corrective Library browses, previews, duplicates, and deletes morph targets. Driven Key Planner is a planning cheat sheet — entries are exported as text snippets you copy into your AnimBP for manual hookup.

Screenshot 01 — Hero shot — Tool open on Capture & Sculpt tab, SkeletalMesh selected, base pose captured, corrected mesh path filled in, ready to record morph target.

⚠️ V1 scope clarification: Capture & Sculpt and Corrective Library do real work — they create and manage morph targets on your SkeletalMesh. The Driven Key Planner is planning-only — entries are exported as snippet text for manual AnimBP authoring, not auto-driven at runtime. A future release adds a runtime data asset + component that drives morph weights from bone transforms automatically.


  • Authoring corrective shapes for joint deformation (elbow / knee / shoulder pinch fixes)
  • Quickly fixing a specific pose problem without going back to your DCC and re-exporting the whole skeletal mesh
  • Building a corrective library tied to specific driver-bone rotations (planning side)
  • Inheriting a SkeletalMesh and wanting to inspect / clean up existing morph targets
  • Don’t expect runtime auto-driven morphs — V1’s Driven Key Planner exports text for manual AnimBP nodes; the runtime driver component is a future release
  • Don’t use this to author full facial blend libraries — for that, use Pose Library & Management Toolkit and standard facial pose workflows
  • Don’t expect full DCC-side sculpting — capture and DCC export remains the source-of-truth for the corrected shape; this tool computes the delta and registers it

  1. Open the EQLabs Hub and search for Corrective or Blendshape (or browse to Animation → Blendshape)
  2. Click the tool card
  3. Drop a SkeletalMesh into the picker (the picker is shared across all three tabs)

The real authoring workflow: capture, import, delta, register.

FieldWhat it doesDefault
Selected SkeletalMeshThe skeletal mesh to author against(empty)
Pose NameName for the new morph targetCorrective_01
Corrected Mesh pickerStaticMesh exported from your DCC with the correction applied(empty)
Capture Pose buttonSnapshots the current vertex positions of the SkeletalMesh in its current pose
Record Morph Target buttonComputes the delta between capture and corrected mesh, registers as a new UMorphTarget
Stats blockMesh display name, LOD count, current morph target count, captured vertex count
  1. Pick a SkeletalMesh
  2. Pose the mesh (in the Skeletal Mesh editor, in a level, or via your AnimBP) so the problem area is visible
  3. In the tool, click Capture Pose — vertex positions are snapshotted
  4. In your DCC, sculpt the correction on top of the captured shape, export as a StaticMesh
  5. Drop the corrected StaticMesh into the picker
  6. Set the Pose Name (e.g., Corrective_LeftElbow_90)
  7. Click Record Morph Target — delta is computed and a new UMorphTarget is added to the SkeletalMesh

Screenshot 02 — Capture flow — Tab 1 with all fields filled in, Stats block showing "captured vertex count: 12345", Record Morph Target button highlighted.


Browse and manage morph targets on the selected mesh.

SectionWhat it does
Scan Morph Targets buttonRefreshes the list from the selected SkeletalMesh
Corrective listPer-morph row: name, weight, driven-by name, active flag
Preview Selected buttonSets the selected morph target’s weight to 1.0 for preview
Duplicate Selected buttonDuplicates the selected morph target
Delete Selected buttonRemoves the selected morph target
  1. Click Scan Morph Targets to refresh from the asset
  2. Click a row to select
  3. Use Preview to confirm the morph still produces the intended deformation
  4. Use Duplicate when you need a variation; Delete to remove obsolete entries

Plan driver-bone → morph-target mappings. Planning only — exports as text snippet for manual AnimBP authoring.

FieldWhat it does
Source BoneBone whose rotation drives the morph
Driver PropertyWhich axis (X/Y/Z rotation)
Driver Min / MaxRange of driver value (typically degrees)
Target Morph TargetMorph target to drive
Weight Min / MaxOutput morph weight at driver min/max
Create Driven Key buttonAdds the entry to the planner list
Driven keys listTable of planned mappings
Remove Selected buttonRemoves a row
Export as Snippet buttonWrites the entries as text the user can copy into AnimBP nodes
  1. Pick a source bone (e.g., upperarm_l)
  2. Pick a driver property (e.g., Rotation Y)
  3. Set the driver range (e.g., 0 to 90 degrees)
  4. Pick the target morph target (e.g., Corrective_LeftElbow_90)
  5. Set weight min/max (typically 0 to 1)
  6. Click Create Driven Key to add the row
  7. Repeat for each correction
  8. Click Export as Snippet to get the text — paste into your AnimBP

The snippet is a text representation, not a graph rewrite — you wire the actual nodes by hand using the values as a reference.


FieldDefault
Pose NameCorrective_01
FieldDefault
Driver Min0.0
Driver Max90.0
Weight Min0.0
Weight Max1.0

Settings are persisted to [Project]/Saved/EQLabs/Settings/CorrectiveBlendshapeAuthoring.json.


  • Capture & Sculpt — adds a real UMorphTarget to the SkeletalMesh asset. Marked dirty until Save All.
  • Corrective Library — Duplicate / Delete actions modify the SkeletalMesh’s morph target collection. Marked dirty until Save All.
  • Driven Key Planner — exports text only. No AnimBP modifications. The user hooks up the nodes manually.
  • Undo — morph target operations are wrapped in ScopedTransaction. Ctrl+Z reverts.

  • The corrected StaticMesh must have the same vertex count as the SkeletalMesh’s base mesh — otherwise the delta computation fails. Export from your DCC without changing topology.
  • Pose the mesh before capturing — the morph target deforms relative to the captured pose, so the captured pose must show the problem you’re correcting.
  • Driven Key Planner is intentionally planning-only in V1 — the runtime auto-driver component is a future release. Don’t be surprised when entries don’t take effect at runtime.
  • Naming morph targets matters — use a convention like Corrective_<Bone>_<Angle> so AnimBP graphs stay readable.
  • Save All afterward — morph target additions/deletions are in-memory until saved.


Report an issue with this tool

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