Timofej Jermolaev

AnimBaker

Unreal Engine's ever expanding toolsets allow you to make content without ever having to leave the editor. Personally, I've been quite fond of creating various technical animations using ControlRig and Sequencer. Being able to adjust a pose, press save and be able to test it instantly in the game is a great feedback loop. But, with the current implementation of sequence baking, I've ran into quite a few painpoints, which prompted me to create a more robust solution.

Source code available on GitHub

AimOffsets

No description has been provided for this image
One use case which I ran into all the time is the creation of single frame AimOffset poses. Because these poses are often structurally dependant(i.e Left-Up aim pose is just Left pose with a curved up spine/head), I found it very useful to utilize additive layers. But, current sequence baking only allows you to render one sequence with whichever layers are currently active. Switching back and forth between level sequences is super annoying, especially when you want to adjust single pose. So, I wrote a small editor extension that adds a "AnimBaker" menu to sequencer. There you can specify various AnimSequence targets and have them automatically bake out when you save the level sequence.

Using 3 base poses(Center, Left, Right) and 2 additive poses(Up, Down), we can bake out all 9 of the combinations necessary for an AimOffset with a click of a button, while still being able to adjust the base poses, making the entire workflow non-destructive. In complex Level Sequences with multiple Control Rig tracks, you can selectively bake only the sections you care about without affecting the rest of the timeline. This enables precise export of layered animation data and clean separation of Control Rig tracks without cross-contamination.

Other use cases:

  • Non-Destructive Idle Breaks
  • Transition animations in an "attack combo" that live in a seperate section
  • Corrective layers for quick fixes

Future Work

  • Reverse linking from asset to level sequence("Open Linked LevelSequence")
  • Automatic additive base pose assignment in baked sequence for additive layers by default
  • Better handling of controls when switching between sections
  • DragAndDrop reordering