Search Unity

[Released] Motion Matching for Unity - Advanced Character Animation

Discussion in 'Assets and Asset Store' started by CptKen, May 27, 2019.

  1. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Yes, it will work with controller based movement. However, just like any controller based movement system you have to counter the resultant foot sliding on your own. There is a package I developed as an example of how to handle this with motion matching which is available to verified users on the Discord.
     
    Last edited: Aug 8, 2019
  2. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    I don't recommend it but you sound capable. Motion matching, while simple in concept has many pitfalls.

    MxM uses the playable system meaning that it is compatible with any other system that uses playables. With playable graphs, you can get more or less on par performance for simple animation as legacy.

    400+ characters all at once? I don't recommend motion matching for your purposes. While it's fast for what it does, the point of motion matching is high animation fidelity, not mass animation or even ease of use.

    I've done tests up to 200 motion matched characters running at full quality which runs pretty well. However, that's not in a game setting so there's literally nothing else going on.

    Not sure when your launch is but I have very little faith in Unity sticking to their timelines. Looking at the current state, DOTS is a long way off. I plan complete DOTS support when it is in a state that makes sense to support it. Currently I'm only uses part of the stack for performance reasons (i.e. Jobs, Burst, Native Containers)

    The Job system isn't the learning curve with motion matching. Motion Matching It's a simple concept but there are many nuances to it that don't get a mention when it's presented.

    You can swap animation sets in and out pretty easily with MxM. I plan to integrate an LOD system for MxM in the future but right now it has to be done manually.
     
    sordidlist likes this.
  3. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    MxM v1.6b has been submitted to the asset store for review. If you want it now, its available on the MxM discord server for verified users.

    If you have purchased MxM but are not a verified user on the Discord server yet, be sure to join and send me (Avindr) your invoice number and I will give you verified status.
     
  4. PiAnkh

    PiAnkh

    Joined:
    Apr 20, 2013
    Posts:
    126
    Ken,
    a couple of questions about MxM.

    Is it possible to have some (random) variations of movement? Or will a group of characters with the same movement trajectory always have identical animations.

    I know you have said that MxM is not for mass animation, but in the case that you need want high fidelity animations only close to the camera, is it possible to reduce the performance load from more distant characters by reducing the fidelity, for example the sample rate on the controller?
    Thanks
     
    CptKen likes this.
  5. sordidlist

    sordidlist

    Joined:
    Sep 2, 2012
    Posts:
    86
    I had a similar question, what I found works really well is to use MxM for my main character, and maybe for a few central characters. Then, for enemies, I can use something like GPU Instancer to spawn big armies of enemies with lower fidelity animations. The characters with the most screen time are the ones you might want to use MxM with, or at least that's one idea.
     
    CptKen likes this.
  6. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    It doesn't randomise movement by default but its very likely that they will have some slight differences. If not, it wouldn't be hard to force them to be slightly different.

    Yes, so one thing you can do is reduce the update rate of a of characters at a distance. You really only need to update the heavy lifting part of MxM at 0.1s even for the player character. You could probably update characters that are farther away even less often. You could also swap out their animation set at different distances.

    What growling_egg says is also a possibility. MxM doesn't lock you into using motion matching for every character. In my opinion it has the most impact on the main character.
     
    hopeful likes this.
  7. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Absolutely.

    Speaking of performance. I did a refactor of my job scheduling logic and sped up the MxM update by about 2.5x. So thats nice :)
     
    hopeful and sordidlist like this.
  8. PiAnkh

    PiAnkh

    Joined:
    Apr 20, 2013
    Posts:
    126
    How would you do that with MxM? For example you have a group of 4 characters walking in the same direction. You don't want the animations to be synchronised. For upper body animations you might randomly blend in other animations but how you you make sure the leg movement was not in step?
     
  9. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    With MxM as it is now, I would give each character slighting different settings (only slightly) This will result in minor differences in their animations which will compound over time making them completely out of sync. You could also give them random input delay so they aren't all in the same step.
     
  10. PiAnkh

    PiAnkh

    Joined:
    Apr 20, 2013
    Posts:
    126
    If you have animations that are slightly different but have the same trajectory characteristics (for example from standing to walking with left foot first and from standing to walking with right foot first) will these be randomly chosen or will they be chosen to match the previous idle stance?
     
  11. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Motion matching matches poses and trajectory, it doesn't pick them randomly. If you have alternative WalkForwardStart animations, it will automatically pick the right one based on your idle stance.
     
  12. PiAnkh

    PiAnkh

    Joined:
    Apr 20, 2013
    Posts:
    126
    Hi Ken,

    experimenting with MxM, I have found that the tags are very useful for introducing variation in particular for upper body variation. I have a tag "variation" which I sometimes use as a non-required tag.

    A couple of questions
    1. How can I know when an event has completed, for example if I have one event for loading and then I want to trigger an event for shooting?

    2. How difficult would it be to adapt MxM to non-humanoid movement, for example for a horse where you match 4 legs rather than 1?

    Thanks

    Ronan
     
    CptKen likes this.
  13. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Tagging is very powerful indeed :)

    1. At the moment the only way to check if an event is complete is this property: bool MxMAnimator.IsEventComplete You just have to keep checking that every frame after you start an event.

    I am looking into other possible methods like callbacks to make it easy to automatically trigger things when events are complete or even possibly when certain parts of the events are reached. Not sure how that will turn out. For now use IsEventComplete

    2. MxM can match up to 8 joints and 12 trajectory points so there is some flexibility there for non humanoid things. I can't say how well it would work because I've never tested it on anything but a human. My gut feeling says it would work on anything that has ground based movement but its hard to say without testing it.
     
  14. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Just a heads up for people wondering or having issues. MxM does support Unity's 'Animation Rigging Package' out of the box.

    upload_2019-8-26_11-1-10.png

    However, there is one thing you need to know so that it works. Currently Unity's playable graphs do not have a sorting feature to sort animation graphs. This can be a problem because the animation rigging procedural animation needs to come last. Until 2019.3 launches with playable graph sorting features, the only way to do this is to manually enable the 'Rig Builder' component only after MxM is finished it's setup. This can be done by using the in built callbacks on the MxMAnimator inspector as shown below.

    upload_2019-8-26_10-20-24.png

    Then in whatever function you specify in the callback, just enable the rig builder component as follows
    upload_2019-8-26_10-21-23.png
     

    Attached Files:

    one_one and hopeful like this.
  15. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    MxM 1.7b is now available for download on the Discord for verified users. I've also submitted it to the asset store, so it should be available there as well some time within the next week.

    Some highlights:
    - ~2x performance improvement on the main thread
    - Improved pose matching algorithm which provides smoother animation
    - Several bug fixes and minor QoL improvements

    See Discord for full patch notes.

    WARNING - Some big changes with character setup as we move toward release, particularly if you are creating your own trajectory controller etc.

    Please watch the following video to get an understanding of the changes and how to adapt to them:


    The first version of the standalone playable demo is coming very soon as well. The source code for the game play side of that demo (not a part of MxM) will be available to download from the Discord as an example of how you could use MxM in a semi proper game setting.
     
    LudiKha and one_one like this.
  16. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    **WARNING** This demo is very was created in MxM v1.7 (beta) so it is quite old and doesn't reflect the current quality of the system. I am working on a new standalone demo to properly reflect the current state.

    I've created a standalone demo that showcases a lot of the features of 'Motion Matching for Unity'

    Here's a quick introduction:


    Download and try it out for yourself.

    Happy to field any questions that come from the demo.

    A few things to note:
    • Assets shown in this demo are not included with MxM
    • Source code for the 'gameplay' side of this demo is available for all verified users to download from the discord.
    • The demo is just one way you could implement game-play with Motion Matching for Unity. There is a lot more that you can do with it.
    • I haven't put any parkour in this particular demo. Might add some vaulting later.
     
    Last edited: Apr 16, 2020
    vorokoi, razzraziel and hopeful like this.
  17. razzraziel

    razzraziel

    Joined:
    Sep 13, 2018
    Posts:
    396
    Natural and fluid animation blending, feels good.

    While trying demo, i interrupted idle animations with inputs. Wondering that, in RDR2, while character doing some idle animations, after some inputs it blends that movement with the active idle animation. For example, character killing a mosquito on his neck while idling, when we move it doesnt interrupt that killing animation sequence and continuing while moving with player inputs. How is that possible in MxM?
     
    CptKen likes this.
  18. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    You would use layers to do this just like traditional animation.
     
    razzraziel likes this.
  19. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Some new debugging tools coming with 1.8b next week.

    Here's a sneak peak.





    You can basically record your animation data over a time period. Pause, rewind, and interrogate pretty much any bit of data related to the animation and motion matching. Your character will even rewind for you so you can see exactly what it was doing at that point.

    Should help users understand better whats going on behind the scenes, identify potential errors or un-desirable animations.
     
  20. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Updated the quick start guide to better match the current state of MxM. The User Manual will follow suite shortly.

    MxM v1.8b is more or less ready to ship. However, I'm holding off until I have updated the User Manual.

    For all those wanting to know when MxM beta is over and the price increases: MxM v1.9b (Update after next) will be the last beta release of this asset. After that the price will increase. I'm expecting this to take roughly 2 months but I will keep everyone updated if that changes.

    Also just a reminder that there is no upgrade cost from beta to release.
     
  21. Goldrake

    Goldrake

    Joined:
    Feb 6, 2010
    Posts:
    148
    Hello, I'd like to know why in the demo there is no example of how the system would handle animations near obstacles. There are no obstacles, only walls. And near the walls the character keep on running. Can you explain if the system can handle this and make a video?

    Thanks!
     
    CptKen likes this.
  22. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Hi, yes the system can handle this. However, firstly you need to understand that MxM is an animation system not a game-play system. It will handle the animation and motion warping to perform something like a vault or a wall run with precise contacts. However, you have to write the game-play code to detect when one of these actions should occur and where these contacts should be.

    This is not included in the standalone demo because, well, it takes time to write game play code to detect such actions and its only the first version of the demo for the asset which is still in beta. For this reason have chosen to release the standalone demo as is and focus on getting the asset out of beta first before adding more to the demo.

    There already are a few videos that explains how the system can help perform animation over obstacles. They are shown below. The second video actually shows how it handles obstacles but the first video is required to understand the second.




    Regarding stopping before running into walls, this isn't inherently a feature of motion matching, more a side effect. Motion matching follows whatever trajectory you give it. So if your trajectory stops before the wall then so will your character. MxM ships with a basic trajectory generator but it is designed so that users can create custom trajectory generators to suite their own games. To take future collision prediction into consideration for trajectory, you need to simulate your character controller into the future and then rewind it. Since developers user different character controllers, it's not very beneficial for me to embed this feature into MxM. Once I am finished with beta, I might inclue an example of it with the Unity Character Controller though.
     
  23. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    MxM v1.8b has been submitted to the asset store for approval and is available now on the Discord for verified users.

    Among other minor improvements and bug fixes, this update brings a new debugging tool which is super useful. You can check it out in the latest video below.

    Additionally, I've updated both the Quick Start and User Manual documentation to better reflect the changes to MxM over the last few updates.

     
  24. PiAnkh

    PiAnkh

    Joined:
    Apr 20, 2013
    Posts:
    126
    Hi,

    I have been doing a lot of test with MXM and am very pleased with the results so far.

    One of the tests I did was to chain all of my locomotion animations together into a single large animation.
    Why would I do that when one of the strengths of MxM is that you can use smaller clips? The reason I did that is I need to make a number of variations for the locomotion, mainly for the upper body and it is easier to make those variations for a single long animation rather than several small ones. What I noticed when I added this one animation to MXM is that it does not switch when you only have one animation. It plays out the entire animations. I solved that easily enough by adding the same animation a second time and it worked perfectly, swapping between the two copies as needed.
    I don't know if that should be considered a bug in MXM that it does not switch within the same animation but I am just reporting it. The work around of adding the same animation a second time is quite easy and I assume it does not have much of a performance overhead but any comment you have concerning that is very welcome.

    Now a question concerning the idle animations. I saw that you have recently added transition animations to the idles. As far as I see there is only a possibility to tag the idle animation itself and not the transition animation. Is there some way to define a transition specifically for use between two tagged idles (one with tag 1 and the second with tag 2)?
    Or is it that MXM chooses the transition animation on the bases of motion matching the foot and neck position only?

    Thanks!!

    Ronan
     
    CptKen likes this.
  25. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Hi,

    That's interesting. I've never encountered that issue before, though I can't say I've tried it with only 1 clip. Can you confirm if it still does this when your second clip is just a run loop or something rather than a duplicate of the first. It may be some obscure bug and I'll investigate.

    Also if you post your settings, I can have a look for you. It may be easier to join the Discord though, then I can help you directly.

    Regarding the idle transition animations, the idea is that you shouldn't have to tag them. You place here every animation that would end with the primary idle stance, even if that transition starts from a set with a different tag. The transitions are pose matched, meaning the system should pick the correct animation based on the pose you are in when you go into an idle state.

    So yeh, it's as you say, currently it's pose matched based on the pose configuration you specify. In the standalong demo I match the right hand as well which does help with this but it's also because that's needed for sword combat matching. There may be a little further iteration on idle transitions before the end of beta, soon(TM). There may be a benefit to matching a denser pose configuration for idles, but I want to stay away from explicit transitions because it defeats the purpose of pose matching.

    Hope this helps, Cheers
     
  26. Goldrake

    Goldrake

    Joined:
    Feb 6, 2010
    Posts:
    148
    Thanks for the answer Ken!
     
  27. pit-travis

    pit-travis

    Joined:
    Sep 17, 2018
    Posts:
    14
    I haven't looked in detail at the documentation or its internals yet, therefor I have two questions which may already be answered somewhere but I hope you don't mind:

    1. Is it easy to influence which animations are matched to with gameplay state? E.g. if my character is walking and the player presses a crouch button, and I want the animations of course switch to crouching which happens at roughly the same velocity, what do I actually do?

    2. Is it easily possible to combine the animation resulting from this framework with other animation methods? E.g. custom IK for limbs, overriding locomotion animations with custom ones in certain gameplay situations, etc.

    I haven't actually worked with Unity's built-in animation support a lot, so I guess what I'm asking is whether or not I have script access to the final skeleton state your library produces in order to do my own manipulation with it before actually handing it to the skinned mesh renderer.
     
    CptKen likes this.
  28. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Hi, answers are as below

    1. To differentiate between high level character states (e.g. standing, crouching, combat stance) MxM uses an animation tagging system. When setting up the motion matching you can define a tag for each of those stances and then assign them to animations. You can even assign them on a per pose / frame basis if you need that fine grained control.

    At runtime you simply tell MxM that you require a tag. So for example if the player pushes the crouch button. You would call something like this MxMAnimator.SetRequiredTag(tagId); where MxMAnimator is the motion matching component on your character. The motion matching will take care of the rest, choosing the closest pose from all your crouching tagged animations to make a smooth as possible transition. The motion matching matches trajectory, body velocity and the pose so you don't need to worry about the speed you are going or which foot is forward.

    You can even stack tags in a tag mask and require multiple tags at once. An example use case of this is having a 'CombatStance' tag and a 'Strafing' tag.... So that when you are in combat and strafing, turn animations will never be chosen. Again, adding additional tags is as simply as a single function call to the MxMAnimator component.

    On this note of tagging, there is also a tag favouring system which allows you to tell the system that you prefer animations with certain favour tags. This isn't always necessary but allows additional fine grained control.

    2. Just like any animation system, MxM outputs an animation pose at the end of the animation update. What you do to that after the fact is totally up to you. I have not encountered an IK system that does not work with MxM. Both FinalIK and the UnityAnimationRigging package work with MxM out of the box.

    Hope this helps :)
     
  29. pit-travis

    pit-travis

    Joined:
    Sep 17, 2018
    Posts:
    14
    Indeed, I think I'm going to give it a shot. Thanks for the answer.
     
  30. PiAnkh

    PiAnkh

    Joined:
    Apr 20, 2013
    Posts:
    126
    Thanks for the help. I have spent some time experimenting and have some further feedback. It was a bit tricky tying down the issue, in part because I have a custom interface to your MxMTranjectoryGenerator, based on waypoints. It looks that the fact that I have a single animation clip was NOT the source of the problem. It seems the problem was a Required Tag which I was using for an idle. In some circumstance I did not clear this tag and when MxM required a non idle clip it got stuck on the single long clip. I will experiment further but I wanted to let you know that it was not as I was reporting it.
     
    CptKen likes this.
  31. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Thanks for letting me know
     
  32. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Motion Matching for Unity v1.9b will be coming very soon. This will be the FINAL beta build for MxM. This means that the asset price will increase for subsequent updates if you haven't already purchased. Many people expressed a desire to know in advance when this was going to happen so here is your warning. You can probably expect between 2 - 4 weeks between v1.9b release and the full release (v2.0 I suppose).

    Watch the following video to see what's coming.


    Following v1.9b I will be shifting my focus from feature development onto the following for a while:
    - Remaking video tutorials
    - Improving the demo scene (the included one)
    - Providing implementation examples
    - Integrations
    - Bug fixes & cleanup
     
    TeagansDad and hopeful like this.
  33. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Motion Matching for Unity 1.9b is now available to verified users on the Discord channel. I've submitted it to the Unity Asset store and it should be available there as well within a few days.

    I am in the process of updating the existing demo scene for the end of beta or rather v2.0. 1.9b contains only the very start of these improvements. For the best experience in the demo going forward, download cinemachine and post processing stack v2 from the Unity package manager. MxM and the demo scene will work fine without them but you just won't have camera follow / control or post processing in the demo scene. The choice is yours.
     
  34. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Here's a sneak preview of the automatic vaulting example that I am working on for v2.0 release. With MxM's animation warping tech, it just doesn't matter what the size the object is, you can vault over it in a believable manner, provided you have appropriate vaulting animations. Also, while this is an example script, it's also going to be pretty full featured. I adapted it from the vaulting system used in Horizon Zero Dawn.

    I'm going to add a lot more vault animations for more variation. Initially the system will handle the following kind of manoeuvres:
    • Vault Up
    • Vault Over
    • Vault Off
    • Vault Over Gap
    I may also be able to get some automatic wall running / interaction going which should be fun.

     
    OdderOtter, Gooren and sharkapps like this.
  35. perholmes

    perholmes

    Joined:
    Dec 29, 2017
    Posts:
    296
    Hi,

    When you say that mobile isn't supported, does that mean that a game using this may or may not even work on iOS/Android? That's a pretty hefty kick in the groin to cut off two entire platforms if one wants to use your extension. Am I misunderstanding this?
     
  36. perholmes

    perholmes

    Joined:
    Dec 29, 2017
    Posts:
    296
    Also, is it possible to drive the animation programmatically and not with a controller? I need to do this for a non-real-time application where the path is known ahead of time, including everything the character will do along the way.

    Secondly, is it possible to get the FK output from your solver as data for each frame for a time range? I'd like to pre-calculate e.g. 10 seconds of motion so that the motion can be augmented further with a custom blending system, also non-real-time.
     
    CptKen likes this.
  37. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Mobile platforms aren't actively supported because the asset is still in beta. I haven't had time to test it on those platforms. Therefore, I am not willing to say that I actively support those platforms until I have had the chance to do adequate testing.

    That being said, I know of no reason why it wouldn't work on those platforms. I would be happy to change that 'status' in the future once I have had time to adequately confirm it works properly with adequate performance. In the meantime that risk is yours.


    Yes. Motion Matching does not require root motion to work. In fact, motion matching is simply a generic animation system. Like mecanim, it outputs controlled animation (with a few extra bells and whistles). You can do whatever you like after that. Whether it is IK, manually moving the character etc. Just like with other animation systems, you will have to tweak your movement / animations so that they suite each other.

    I have built the system to be flexible so that it is not locked to a single game type. For your use case (where the path is known ahead of time). You will need to write a custom trajectory generator to tell MxM what its trajectory should be. I've designed the system to allow this. The package comes with two example trajectory generators. One is for player input control, the other is for navmesh. I'd say your case would be similar to the navmesh approach but getting a new path all the time.


    MxM doesn't use any solvers and it doesn't do any IK or FK animation itself. In general MxM stays out of the animation post processing space all together. It is intended to be a base animation system.

    You are able to do whatever you like with the animation once MxM is finished with it. Afaik there is nothing hidden and if you wanted access to something in the system that you don't have access, I'm happy to provide it.
     
    Last edited: Oct 28, 2019
  38. perholmes

    perholmes

    Joined:
    Dec 29, 2017
    Posts:
    296
    Hi,

    Thanks for your detailed reply. I wasn't clear on one thing:

    When I mentioned getting the data, the point is that I'd like to pre-compute an entire time-range of motion. I need to be able to scrub the final result within the app, including playing it in reverse, so I wouldn't be using MxM in real-time. Rather, I'd like to get the output data for all the frames for 60 seconds, and then when the animation is running, I'm simply playing back bone rotations and final root motion, and the MxM code isn't running. Is it possible to simply loop through the frames as a background process and pre-compute the result?

    Secondly, I'm concerned about the long-term prospects of your extension. Whatever motion-mixing approach I choose, I'll live with it for 5-10 years (this app isn't a game, but a 3D version of a tool), and I'm concerned with choosing your approach over for example the long advertised Kinematica. Nobody has any idea if Kinematica is a proper solution or just a check-the-box thing, and your solution looks really comprehensive. But I'm concerned about your business model, and whether a price of $70 and competition from the game engine itself is enough to keep MxM alive for years and years.

    Sorry for being so blunt, but building a new version of my app in a game engine is partly to recover from a framework I built the previous app in suddenly being catastrophically unsupported, and we're talking about at least half a year of work to port into Unity. So the danger is very real to me, which is why I have to ask. I would also be happy to pay substantially more for this.

    Best,

    Per
     
    CptKen likes this.
  39. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    This functionality is only supported for debugging. To do it in a way that you would need, it would need a custom implementation. Technically nothing stopping you from implementing that yourself but it would be extra work. It would also be pretty low on my priority list for implementation as it's a niche use case.

    I would say, based on the description of what you want to do, it's probably not the right tool for you.
     
  40. LastAtlas

    LastAtlas

    Joined:
    Jun 9, 2013
    Posts:
    15
    Looks very impressive, no doubt this is the future of animation, been hoping this tech would come to Unity.

    Is this basically the same technology as Unity's proposed Kinematica solution? Or is it better/different in some manner?
     
    CptKen likes this.
  41. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    It's similar. However, not much is known about Kinematica, including it's actual release date which keeps getting pushed back.
     
  42. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Happy to announce that MxM v2.0 [RELEASE] is now available on the Discord channel for verified users. I've also submitted the update to the Unity Asset Store and it will be available when my Unity overlords find it in their grace to approve it.

    Once approved, the price will automatically increase as previously mentioned. However, because of this, approval may take longer than expected.
     
    nirvanajie and hopeful like this.
  43. Korsigon

    Korsigon

    Joined:
    Oct 6, 2014
    Posts:
    16
    FYI - I had to update to Cinemachine to version Cinemachine preview.6 - 2.4.0 for the Demo to work without errors. I am new to this asset and am about to start to get myself familiar with it. It looks promising. I am using Unity 209.2.12f1 (latest version to date).
     
    CptKen likes this.
  44. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Cheers, I'll look into this. I may have accidentally downloaded the preview version of Cinemachine because I'm always using preview packages for this asset.

    Keep an eye out for the new video tutorials I'm making for the release version. I'll be making them pretty rapidly and they'll give you the most up to date info.

    2019.2X versions of Unity should all work pretty well with MxM.
     
  45. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    MxM v2.01 is now available to download for verified users on the DIscord Channel. It has also been submitted to the asset store and should be approved shortly.

    Just a few minor bug fixes and demo scene fixes.
     
  46. verteom

    verteom

    Joined:
    Oct 26, 2018
    Posts:
    48
    Hey~CptKen~ I so glad to find this asset in store, And I followed the video to setting up animator, It seems not work, I got the error about NULL-EXCEPTION, Can you help me ? But I used the demo MxMAnimData , it worked well~
     

    Attached Files:

    • 1.png
      1.png
      File size:
      264.6 KB
      Views:
      449
    • 2.png
      2.png
      File size:
      98.8 KB
      Views:
      466
    • 36.png
      36.png
      File size:
      29.4 KB
      Views:
      451
  47. verteom

    verteom

    Joined:
    Oct 26, 2018
    Posts:
    48
    I tried to copy the robot component and it was worked~ But seems my animations were not setting well,
     
  48. CptKen

    CptKen

    Joined:
    May 30, 2017
    Posts:
    216
    Hi, this is likely being caused by the default setting on your animation composite which is suited for mocap takes rather than cut clips. Basically all of your animations are being tagged with 'DoNotUse' tags and it can't find any poses to search.

    To fix it, click on the cog on the top right of each composite category and, in the window that pops up, uncheck 'IgnoreEdges' and check 'Extrapolate' and then 'Apply All'.

    upload_2019-11-30_10-35-5.png

    From the next release onwards, the default composite category settings will be changed to extrapolate as most people are using cut clips.

    P.S. I saw you joined the Discord channel. If you have any further issues, or if this doesn't work, hit me up in the 'Verified-Users' channel and I can assist more if necessary :)
     

    Attached Files:

  49. verteom

    verteom

    Joined:
    Oct 26, 2018
    Posts:
    48
    Ťthanks~I did it in consulting your demo data , But i seems bug here, it will always turn back Ignore
     
  50. SarhanSoft

    SarhanSoft

    Joined:
    Apr 15, 2015
    Posts:
    65
    i work on my laptop, small screen 15.x size, in animation data foldout, when click on animation the window that open for me can't resize it! or either move around it. so with small screen like me and with much more windows opining it very hard to see bottom options. so i hope if you can fix this :)

    another thing and more important i need some explain. im not good with animator! so what excatly you mean by this:
    "Blend Spaces - This is where you create blend spaces which work similarly to blend trees in mecanim."
    im not undestand trees in mecanim so i don't know what you mean exactly!

    after see your demo process model -
    what i undestand is (tell me if true or not):
    1. Animation Composites: for animations with start/end point or cut.
    2. idle: for idle
    3. Blend spaces: for animations like loop itself, start point like end point so it is like loop motion.
    is this true? if not please tell me! what animation should be in blend spaces and should not be. and what in composites.
    also im using Runner action animation from assetstore and try to use them in your tool. all of them I think like a loop animation witout any cutting! start point like end point..

    finallly, it is effect if i use inplace motion or root motion? also in animation options there are "Root transform position" is it should be uncheck?

    sorry maybe my question is very stupid but im not work before with these things :) I just see your tool is easier than state machine system, no need complex and much cooding!