What’s next on Mecanim roadmap

December 7, 2012 in Technology

Hi everyone,

After the excitement of the Unity 4 release and the creative blast of Ninja Camp, it’s time for another Mecanim update.

Unity 4 with Mecanim brings beautiful efficiency and ease of use to creating AAA animation for your interactive content. But that was just the first iteration of our new animation system! Here are some details about new features and updates in the roadmap.

Our immediate main task is to polish the animation creation tools and workflows. We plan to open the Mecanim API to create and control Animators, allowing you to create and set up State Machines and Blend Trees completely from scripting. We’ll make it possible to control the flow of a State Machine by forcing Transitions and time progression in States. Finally, we plan to develop cool new features like 2D Blend Trees and IK for fingers. Here’s a short list of planned features:

- Discover State Machines and Blend Trees that use a Parameter
- Create State Machine to State Machine Transitions
- Use different icons in State Machine for Animation Clip or Blend Trees
- Animation Events for Mecanim
- Ability to zoom/dolly in Animator Preview window
- Hot swap of controllers at runtime
- Make Foot Bottom Height available in public API to help foot planting and similar IK rigs
- Trajectory Node for Humanoid Clip
- Runtime mirror and cycle offset. In States and Blend Tree Leaves
- 2D Blend Trees
- Controller recording
- Auto Ragdoll

We worked on some of these  planned features at Ninja Camp VII, which you can read more about here.

That’s it for now.  Thanks!

 

Comments (41)

Subscribe to comments
  1. bOb

    March 1, 2013 at 10:21 am / 

    @Derek Traver: individual state speed from script at runtime is on short term roadmap

  2. machinery movers los angeles

    February 25, 2013 at 7:05 pm / 

    This blog is truly a gold mine. I have been wallowing on this for quite sometime and here I am reading about it!

  3. Derek Traver

    February 15, 2013 at 10:32 am / 

    I know this is old, but please, add the ability to change individual state speeds from script at runtime.

  4. google

    February 8, 2013 at 7:03 am / 

    artikelnya sangat informatif sekali..terimaksih banyak

  5. Josh

    February 7, 2013 at 8:03 pm / 

    Yes, what Mike and Bill mentioned (for example, audio for footsteps). Using curves is a bit convoluted for triggering single events, especially if you need parameters, and would basically require creating my own event system, which seems silly when one is in the works. Someone created something in the asset store, which looks like a good stop-gap:
    https://www.assetstore.unity3d.com/#/content/5969
    http://forum.unity3d.com/threads/162196-How-do-you-use-animation-events-in-Mecanim

  6. JOE

    February 5, 2013 at 9:57 pm / 

    Alternatively, spawning particles for a shooting animation, or spherecasting for a spell animation, apply stat bonuses at an exact moment, etc.

  7. BILL

    January 31, 2013 at 5:29 pm / 

    @BOB, Is there an ETA on the “Animation Events for Mecanim”? This is a critical feature we need for development… surprised that it was omitted. Just like MIKE said, it’s crucial for timing soundfx, visualfx, and other important things requiring knowing at what frame/time we are in the animation. Thanks!

  8. Mike

    January 23, 2013 at 9:24 am / 

    @BOB, I don’t know how Josh would use it but one obvious example of anim events is to trigger both visual and sound effects in an attack animation at the “right time”. Such as damage flyoffs, particles and impact sounds.

  9. bob

    January 15, 2013 at 1:31 pm / 

    @JOSH: Could you give me the use cases of how you would use Events with Mecanim?

  10. bob

    January 15, 2013 at 10:53 am / 

    no ETA, but some hope! it’s coming…

  11. Josh

    January 11, 2013 at 2:44 am / 

    Any ETA on “Animation Events for Mecanim”?

  12. bob

    January 10, 2013 at 9:03 am / 

    @TIMUR: Opening Mecanim API is top priority on our short term roadmap.

    “create/change state machines dynamically” will be available soon in a point release.

  13. bob

    January 10, 2013 at 8:54 am / 

    @DAVE: First I would say that retageter was not meant to drive 2D anim… but why not? I gave it a try and was kind of successful!
    - Consider you character as a 3D model when setting the T-Pose. Roll upper arms 90 degree so that elbow hinge axis points Up. Roll upper legs so that knees hinge axis are parallel with world X.
    - 2D animation should then be projected correctly on 3D dof.

    Would it be possible to get some of your content to validate what I propose above? (my test case was kind of fake 2D stuff, not real user data)

  14. Timur

    January 10, 2013 at 5:06 am / 

    Hi,

    Could you please let me know about estimates for Mecanim API to be able to create/change state machines dynamically? Mecanim seems to be very nice tool and such functionality will make it possible to use Mecanim in projects with dynamically created characters (from many parts with different animations).

    Thanks in advance!

  15. Dave

    January 7, 2013 at 12:25 pm / 

    All these new features sound great!

    I have a thread going in the forum about using Mecanim re-targeting with 2D characters. Any consideration for extending Mecanim to work with 2D?
    http://forum.unity3d.com/threads/165118-Unity-Mecanim-Retargeting-for-2D-characters

    Or said a different way:
    Dialing the mecanim requirements of retargeting back and create an advanced mode, leaving it up to the user to decide on the number of bone, starting pose etc.

    Mecanim is a huge feature that I’m sure could be used in a bunch of different ways if opened up. For my current project we built our own custom re-targeting system for 2D because our game depends on it, but it would be great to use something that fits into the unity animation workflow.

    Keep up the good work dudes!

  16. bob

    December 14, 2012 at 12:20 pm / 

    @JAIMI: Yeah! A priority… “Hot swap of controllers” is already in the process of being released!

    About foot step sounds, “Additional Curves” does a great job at it. Look At Mecanim Tutorial to know more about those. Around time 28:00

    http://video.unity3d.com/video/7362044/unity-40-mecanim-animation

  17. Akira Kido

    December 14, 2012 at 8:14 am / 

    The next update, will suport foot replacement system like locomotion system ? I hope unity will have it.

  18. Marble

    December 13, 2012 at 10:37 pm / 

    2D blend trees would be really useful. The feature looked pretty finished, so I hope we’ll see it soon.

  19. David

    December 12, 2012 at 7:40 pm / 

    +1 to finger IK too ^^

  20. David

    December 12, 2012 at 7:32 pm / 

    +1 To auto Ragdolls, It’s a real pain in the ass. What’s available on the asset store isn’t pro at all…

  21. JT

    December 12, 2012 at 12:43 pm / 

    Are there any plans to add quadruped support?

  22. Quique

    December 12, 2012 at 2:01 am / 

    Hi I would like to have something like mesh morpher or a FFD cage linked to the joint rotation. I’m working with a close up of the arm and it would be very useful for removing artifacts and simulate muscles, constraints etc.
    Please, consider it.

  23. BitGem

    December 12, 2012 at 12:14 am / 

    Something I would really like to see is a way to maintain volume of a mesh in areas like the hips, shoulders, knees and elbows on deformation. Perhaps a primitive form of Maya muscle or bone that stops the geometry from collapsing in on itself in extreme poses. Maybe something like that exists and I just have not heard of it. :)

  24. Jaimi

    December 11, 2012 at 4:20 pm / 

    >> Hot swap of controllers at runtime

    I hope that’s a priority. Almost impossible to swap equipment around without it (ie, gun vs. rifle, etc) — unless you want to create hideously giant state machines. Unless I’m missing something! :)

    Looking forward to animation events too – would like to make footstep sounds, etc. Finger IK sounds great as well – hopefully some simple interface to make the fingers basically just grasp a handle or something.

    Very impressed with Mecanim so far. Going to save me a ton of time.

  25. Samuel Morais

    December 10, 2012 at 2:51 pm / 

    That are good news! The mirror at runtime is useful…
    And what about support for extra objects like guns or ball (in case of sports). I am developing a football game and if I could animate the ball and use it in mecanim would be really nice. In today’s solution I was not able to animate the ball in 3D package and have it describe its trajectory in mecanim/unity. It does not move, stays at origin (i think because the ball is not a part of the character bone hierarchy)…
    Thanks! Again, it is a great framework.

  26. Robert Lanciault

    December 10, 2012 at 10:57 am / 

    @AHMAD: You will be able to specify in a State or in a Blend Tree leaf if you want a clip to be mirrored or not. So no need to create an additional clip for the mirrored version at Import. Ex: for a walk blend tree controlled by direction, you would drop WalkLeft, Walk and WalkLeft again, but with Mirror “ON” the second time. Note that you will also be able to control the Cycle Offset of the Clip. In the example above, you would Cycle Offset the mirrored Clip by 50% so that phases match for blending.

  27. Robert Lanciault

    December 10, 2012 at 8:58 am / 

    @Luka: Controlling IK for each finger independently could be painful. We did prototype grabbing of simple geometric primitives instead. With that API you “grab” spheres, cubes, cylinders or planes.

    http://www.youtube.com/watch?v=Q06itxIcFSw&feature=youtu.be

  28. Robert Lanciault

    December 10, 2012 at 8:05 am / 

    @Eli: The roadmap for API is to allow the creation of everything in Mecanim, Avatars included!

  29. Robert Lanciault

    December 10, 2012 at 8:02 am / 

    @Gavalakis: We are currently working on Asset Bundles/Mecanim case.

  30. Ahmad

    December 10, 2012 at 6:06 am / 

    “Runtime mirror and cycle offset. In States and Blend Tree Leaves”

    Can you elaborate on this one please? Does this mean clips can be mirrored at runtime without needing to create them in the import setting like the case now? (So things like Strafe Left will just be mirrored at runtime to get the right variation at no extra memory cost)

  31. Dave

    December 10, 2012 at 5:52 am / 

    Is there an expected release date for the next version? I am especially interested in the ragdoll transitioning, as this is something I was just looking at coding up myself. If it’s coming up reasonably soon, then I may just wait and use the new systems.

    Setting states and transition through an API would also be incredibly useful to me, as I could script a system to update Animators on load, instead of having to have a lot of Animators that are 90% the same, but with a few different clips.

  32. Vardges petikyan

    December 9, 2012 at 2:31 am / 

    super

  33. Soemardjo

    December 8, 2012 at 7:10 pm / 

    is it Support for the Lower Version too ???

  34. Bruno Xavier

    December 7, 2012 at 10:50 pm / 

    All good… After that, since you gonna auto generate ragdolls, make sure you build next a system like Natural Motion’s Euphoria!! :)

    How much is 3+10?? Damn you rocket science…

  35. Sunny

    December 7, 2012 at 6:36 pm / 

    How about retargeting legacy animation clips? (ex. Mixamo)

  36. Kashif RIley

    December 7, 2012 at 4:39 pm / 

    Auto Ragdolls? That sounds too good to be real…especially for a fighting game that I am working on that will require physics reaction to hits and blows… I haven’t fully tested out Mecanim, but this is definitely something I am looking forward to using for YEARS to come

  37. Luka Kotar

    December 7, 2012 at 3:00 pm / 

    Some very impressive features coming up, I see. I am though wondering, if there is any chance we’ll see any feature to ensure the fingers (humanoid rig) are on the surface at certain events, anytime soon?

  38. Eli Curtz

    December 7, 2012 at 1:18 pm / 

    Please consider API support for avatar definitions as well. That would let us do lots of fun stuff like procedural characters and rigging entirely within Unity.

  39. Gavalakis Vaggelis

    December 7, 2012 at 11:52 am / 

    Thats really all great and can’t wait. Any chance to support Asset bundles? thats the only thing that keeps us from using mechanim right now and its a shame really :/

  40. Robert Lanciault

    December 7, 2012 at 10:18 am / 

    I have added “IK hints for elbows and knees” in our roadmap ideas!

  41. Valentin

    December 7, 2012 at 7:46 am / 

    Add IK affectors for elbows!!

Comments are closed.