Search Unity

[Released] MoveEn: automatic animation

Discussion in 'Assets and Asset Store' started by ykravchik, Dec 25, 2017.

  1. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    MoveEn - is the engine for automatic animation - it adds cinematic grade animations to any mech or spider model.

    With virtually no effort you get the whole range of general animations for your model - walk, run, strafe, jib, jump, recoil, hit, ragdolled death.
    Even more - all animations are calculated at runtime, so model gets seamless transitions between states and natural reaction to the external influences. And its legs never slide again.
    You just connect the bones of your rigged model, and it comes alive.

    Asset store

    It is in active development phase now, some interesting features will be soon.



     
    Last edited: Dec 25, 2017
    neon_teebar likes this.
  2. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    How to prototype multilegged robot with all animations in 30 min. New tutorials arrived!

    Part 1, legs structure, initial layout, first walk


    Part 2, pelvis, gait, 6 legs, camera control, head, jumps, tuning
     
  3. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    V0.8 is out!
    It contains plenty of tunings and bug fixes, new assets, refactored joints, and changed directory structure.

    Joints have again become to affect children geometry right in the editor. So you can instantly see your layout and movement results. And they, of course, don't affect 'connected' geometry (which is usually bones for a model). So, children work in both editor-time and run-time, connected geometry - in a run-time only. Anyway, it shouldn't affect many your current use-cases but opens some interesting possibilities in future. And restores a nice feature from first versions.

    In assets, there are new scenes and models. And most important - new MoveControls - for NPC and 'from behind' shooter.

    And directory change. I've seen recommendations to keep an asset in Plugins directory, so it is implemented. And I am also preparing a ground for the new asset.

     
  4. clagrens

    clagrens

    Joined:
    May 19, 2017
    Posts:
    70
    Very impressive!But a little expensive:(

    Wait for Fulfilled.;);):)
     
    ykravchik likes this.
  5. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Thanks!
    About price - it is just hard for me to justify the amount of time invested and yet to invest, if the price will be much lower.
    But you can see it as a good deal from the perspective "how much I can save on animations"! Let alone features not available in classic animations at all.
     
    clagrens likes this.
  6. clagrens

    clagrens

    Joined:
    May 19, 2017
    Posts:
    70
    I wait for the "mix with animation" and "hands control" feature come out.;)
    Currently my mechs holding swords to attack enemy like samurai
     
    ykravchik likes this.
  7. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Next Moveen tutorial: simple robot prototyping. From empty floor to walking multilegged robot in 10 minutes.
    3 and 4 legs, 2 elbow types.
     
  8. MRBAEK

    MRBAEK

    Joined:
    Sep 30, 2014
    Posts:
    2
    can i use this asset for mobile project(Android)?
     
  9. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Sure! I tested it on my phone. And it uses only fast and optimized IK and other algorithms.
     
  10. daschatten

    daschatten

    Joined:
    Jul 16, 2015
    Posts:
    133
    Hey @ykravchik,

    your asset seems promising! In your latest video it shows that there is a target object needed to move the char. Does it work with a navmesh agent sitting on the root of the char thus moving the whole object? Or how can your asset be used with a navmesh agent?
     
  11. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Sure it should! But it shouldn't move the whole object because there is a RigidBody to make motions physical. It should move "target" game object only.
     
  12. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Hi, fellow game-developers! Moveen v0.81 is out. It includes this walking gun. You can compose yours, it pretty easy to do. Or use this as it is.
    There is also a bunch of bugfixes and tunings.

     
    neon_teebar likes this.
  13. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Hello, fellow developers! I've finally finished long requested feature - skeleton modification at runtime (Moveen v0.82). Here you can see how one can modify a model layout and use ragdoll in the limb!



    Tutorial: how to make rapid unplanned disconnection
     
    Inspeinre likes this.
  14. kurobon_jp

    kurobon_jp

    Joined:
    Dec 1, 2017
    Posts:
    1
    I think this asset is very wonderful.
    But why is the all robots facing in the right direction?
    It is hard to handle a bit. .
     
  15. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Initially, the library was developed for another system. And, when I was thinking about changing it, I gathered opinions that it is not worth it as there are already many standards, and devs are managing them anyway.
     
  16. haim96

    haim96

    Joined:
    May 24, 2013
    Posts:
    88
    Hello!
    i need to write an NPC script the will control a robot that walk is straight lines and turn in 90 degrees.
    how should i do that? what part controls the rig walking and turning direction?

    thanks!
     
  17. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    It is a model's target GameObject. You move it, and model tries to stand at where it is now. You can see in this tutorial at 55s how I'm moving the Target and the model follows it.
     
  18. haim96

    haim96

    Joined:
    May 24, 2013
    Posts:
    88
    so for rotation, i just rotate the target? .thanks!


    edit: that works really great! used the bridle script as reference. thanks!
     
    Last edited: Apr 17, 2018
  19. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Yes! MoveenBridle1. Exactly its purpose - simple example. There are also MoveControl1-5 - far more complex controllers with player input, camera control, jump, run, etc.
     
  20. haim96

    haim96

    Joined:
    May 24, 2013
    Posts:
    88
    so many scripts and options. does all of it have documentation?
     
  21. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Tutorials and docs in the sources. And some info on the site though I find tutorials far easier to understand. And make.
     
  22. RicheyMB

    RicheyMB

    Joined:
    Jul 20, 2009
    Posts:
    111
    This looks like a really useful asset.

    I notice that the videos all show a flat plane. What happens when the system encounters a slope / rough terrain?
     
  23. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
  24. RicheyMB

    RicheyMB

    Joined:
    Jul 20, 2009
    Posts:
    111
  25. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    No estimation, sorry
     
  26. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    736
    Hi, can this asset be used to generate animations for humanoid character or animals?
    And can the legs be placed on the right height when walking on a slope?
     
  27. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Hi! Yes, leg placement on the slopes is one of the main features.
    And no, not yet. I mean, you can achieve something, but you'll be stuck with some obvious limitations. I am working on humans and animals. I am not sure if it will fit into the current lib, or will be completely new one. Stay tuned.
     
  28. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    736
    Ok, I'll come back to check it out from time to time.
     
  29. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,030
    Moveen is incredibly fun:)

    Is there a way to resize the sample bots or bones in one go? or do we need to manually change the bone 1/2 length for each leg?
     
  30. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Glad you like it!
    You can use MoveenScaleHelper. Just place it on the top of the model to be scaled. You will still need to tune here and there, but it does most the work.
     
  31. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,030
    Thanks:) That worked amazing, and in my test it didn't even need any fine tuning.

    I think my only other issue is if i move the target behind some mountains, the mech tries to walk kind of through the mountain - its trying to stay at the same Y height as the target it seems. And it is like it is stuck on steep hills so it wont climb up them.

    Is there a way to make it just follow the X/Z position of the target, and follow up and down hills as needed?
     
  32. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    It seems like you are using MoveenBridle1 which is there for an example purpose and kept extremely simple. I am trying to keep it from overgrowing with additional features.
    So, in order to keep appropriate Y you should use other scripts or approaches.
    • you can see at MoveControl1-5. They control both camera and target, use keyboard input, and calculate appropriate Y.
    • write your own script by the example of MoveControl1-5 and MoveenBridle1 which will ray-cast down to detect suitable Y.
    • use external path-finding/navigation library which will do the work for you (for example https://assetstore.unity.com/packages/tools/ai/a-pathfinding-project-pro-87744 )
     
    protopop likes this.
  33. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,030
    cool - thanks for the helpful feedback:)
     
  34. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Walking on extremes - walk and rotate at the same time - the toughest task for animation engine.
    I will try more to connect some real models, not only compile them from boxes and shoelaces.
    Model of the Boston's dog source.
    I've also finally added a gun to better show external influence.
     
    Inspeinre, NeatWolf, protopop and 2 others like this.
  35. sarum

    sarum

    Joined:
    Mar 2, 2014
    Posts:
    208
    looks good .. awesome :)
     
    ykravchik likes this.
  36. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    The same model, view from behind.
    Actually, it was harder to import it than to animate. 1hr spent on hierarchy fixes (in Blender and Unity), and 1hr to rig and animate. Though animation here means - just slight tuning of the skeleton from the walking gun (top-down arcade scene).
    Of course, this model isn't included in the asset! You can download it here.
     
  37. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    What if use Moveen for a 2D game?
     
  38. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    824
    That's awesome!
    I wish I could use it for non conventional fantasy creatures as well, but at the moment everything seems very mecha-focused to use with organic/humanlike subjects (better if supporting Generic rigs, other than Humanoid ones).

    I know this has been asked before, but just wanted to put another coin for the request of adding human-like support, apart from spiders :)
     
    pixelsteam and ykravchik like this.
  39. pixelsteam

    pixelsteam

    Joined:
    May 1, 2009
    Posts:
    923
    Me as well, If there was a humanoid biped version I would get it in a flash....
     
    Last edited: Aug 24, 2018
  40. Slick_Nick

    Slick_Nick

    Joined:
    Jan 4, 2014
    Posts:
    36
    Hello!

    If you would want to enable modification on rotation and position of the mech model while in air (_dockedCount == 0), what would be the correct way to enable such a functionality?

    Best regards /Niklas
     
  41. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    At any time you can apply any force to the body. When docked count == 0 - it just will not be able to resist
     
  42. Slick_Nick

    Slick_Nick

    Joined:
    Jan 4, 2014
    Posts:
    36
    Hi again and thanks for the fast reply!

    Worked like a charm!
     
  43. Slick_Nick

    Slick_Nick

    Joined:
    Jan 4, 2014
    Posts:
    36
    Hello again!

    I have one more question :)

    When standing on a tilted plane and using MoveControl5 with "inclineBodyToLegs" activated.

    In addition to tilt the mech on the x and z (in eulerAngles) to adjust the body to the legs, the mech also turns away from, or towards the slope (y-axis).

    The turn towards/away from the slope depends if the mech is rotated slightly more to the either direction.

    Worth mentioning is that ive changed the rotate x input to be on an joystick, so the screen-width-based rotation-input is now based on joystick movement.

    The same thing happens on the test robot "fast 4" using the original "MoveControl5", when i disable the line with Input.mousePosition.x, it starts rotating towards or away from the slope.


    I have tried quite a few things like having a if-condition on the leftRight property needing to be >0.1 to use the regular yawRoll calculation, and using the engine.inputWantedRot property to set the yawRoll else, if no leftRight-input is registered, but it feels very much like a ugly hack :)

    Any input on how to make the mech just adjust its tilt to the slope but not rotate on the y-axis, would be greatly appreciated!

    Best regards /Niklas
     
  44. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Overall, these MoveControl1-5 - are there mostly for exemplary purposes.
    Of course, it can be not a specific bug you are talking about, but a general one and MoveControl5 should behave differently in these circumstances. I've seen this behavior and, maybe, I will address it some day.
    But generally, there are too many specifics in each game's controls. So I don't see it feasible to address all of them in these classes. Mostly because they are there as examples, and should stay simple (though they already aren't). Pack of production-ready controllers would contain enough tweaks and fixes for a separate asset pack.
    So, here the road I would take myself (and that is why they are 1, 2,...5, and I have more locally). I'd create a copy of a most closely related controller, and fix, extend, and modify it as my game requires.

    So, maybe, your "ugly hack" - is not a hack, but just a proper evolution of a controller ;)
     
  45. Slick_Nick

    Slick_Nick

    Joined:
    Jan 4, 2014
    Posts:
    36

    Yea, thats what ive been doing, created a new controlled having Control5 as the base :)

    I guess ill stick with my own fix then!

    Thanks again!
     
  46. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Hello,

    This is really impressive! One of the coolest assets I've seen. I just have some questions before trying it out:

    1) It seems the last update was a while ago - do you still plan on working on this?

    2) What is CPU performance like? From the performance video, it seemed that each Moveen mech was using about 1ms of your CPU - could you share what CPU was used? Or is there some way I could evaluate performance before purchasing? (I'm targeting VR, not just looking to have many Moveen-mechs.)

    3) Are humanoid-bipeds planned/supported? Mechs with arms, for example.

    4) You mentioned mixing with animations - could you elaborate on this?

    Thanks.
     
  47. ykravchik

    ykravchik

    Joined:
    Sep 13, 2016
    Posts:
    35
    Really glad you liked it!

    1. there was no bug reports for a while, it seems like it is a stable version now. And yes, there was not much sells to keep adding new features.
    2. my processor: AMD FX 6300
    3. see #1 :)
    4. I haven't done it user-friendly. There are some clues in the source, but you should be a good programmer to handle this.
     
    matteumayo likes this.
  48. Nevercallmebyname

    Nevercallmebyname

    Joined:
    Nov 18, 2013
    Posts:
    88
    This is going to get used in most of my games .
     
  49. Slick_Nick

    Slick_Nick

    Joined:
    Jan 4, 2014
    Posts:
    36
    Hello!

    Got a problem with respawning..

    The scenario is this, the player/mech has been killed, and i want to re-spawn the mech at a re-spawn location.

    The issue i have is when i have moved the mech and the its Target to the re-spawn location, the movement gets very glitchy, when especially when walking up on a ramp that is going somewhat upwards, and my jump power also gets very weak...

    I have tried to set
    moveen.needsReset = true;
    moveen.needsUpdate = true;

    And a lot of other things... but cant get it to work like it does when its newly instantiated...

    Any help would be greatly appreciated! :)
     
  50. Slick_Nick

    Slick_Nick

    Joined:
    Jan 4, 2014
    Posts:
    36
    Realized i forgot to write i that the issue were on my end, a custom controller ive created that bugged out, so were my own code that caused the issue :)
     
    ykravchik likes this.