← All ideas
  • Published 1 Nov 2019

Multiple independent animations

I've been developing a system to export animations for use inside a video game, but doing so requires the ability to export multiple animations (e.g. walk, jump, shoot, etc.) from one file. However, Blender currently seems to not support having multiple independent animations in one file, and the methods of emulating this are unnecessarily complicated and finicky.

I've found only two ways to do this currently. The first is stringing the various animations one after another on the timeline and using markers to delineate them, which seems like more of a hack and is fragile, and the second is using actions, which have the problem of being separate for each object.

My proposal would be to have something akin to tracks in the NLA editor but for entire timelines, allowing you to swap between multiple complete animations. It would need some system in place to provide a "resting state" (e.g. a T pose), since the animations would need to be independent from each other, since having no resting state means a modification by one timeline may "leak" when switching to other timelines that don't animate that particular property.

0%

Development Status: Open

Upvote 0 Downvote 0
thecodewarrior
1 Nov 2019

4 Comments

threcius

Using add-on would be an option to save your independent animations in your blend file, and load them back anytime you like. Try this add-on:

blendermarket.com/products/animation-versions-kit

Josephbburg

This is possible to do, use "actions" to store the animations.

This video explains a few ways to export animations in Blender: youtube.com/watch

thecodewarrior Author

* @Josephbburg * I know about actions. I even mentioned them in my post, along with why I think they aren't a good solution to the problem at hand. I can go into a bit more detail though.

While actions and NLA tracks work for creating multiple animations, each object has its own set of actions and tracks, which means that any time you want to edit an animation you have to select the appropriate action for each object, and when playing back you have to go through every animated object and solo the appropriate track. While this may be fine for a single armature with manual keyframes, it becomes an ordeal when you start getting inverse kinematics using empties involved, since each empty has its own set of NLA actions and tracks.

As I also explained, this system would require a "resting state" system to prevent timelines "leaking" values to other timelines that don't have any keyframes for a given property.

Josephbburg

* @thecodewarrior * It sounds to me like a better solution is putting more of the controls into the rig. Bones work just as well as empties for anything empties can do.

There's no need to have multiple actions on the NLA track or solo them- you can just set a fake user on the actions you aren't using, and switch between them in the animation editors (disregarding entirely the NLA). If you keep the action's naming conventions consistent, you could quickly switch them in every object with Python.

I do agree that there could be a way of keeping multiple objects' actions and NLA tracks synced. That would be awesome.