Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

AnimFollow active ragdoll is now free to download.

Discussion in 'Assets and Asset Store' started by Kavorka, Jan 4, 2014.

  1. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    AnimFollow is a script that makes a ragdoll follow an animation.

    Any game with this type of technology seems to get a lot of attention e.g. clumsy ninja, gtav or overgrowth. I have read several post saying this is about to hit and that they are understandably eager to be among the pioneers of this technology. Since this technology is still quite rare, even small improvements on canned animations are likely to be a huge advantage in getting the game noticed.
    I started developing this system because I was sincerely bugged by shooters where enemies showed no signs of being hit until the final killing shot. So I made this system where it is easy to make the enemy have partial ragdoll effects without dying.



    Check out the tutorials on http://www.kavorka-racing.com/animfollow-tutorials.html

    Free download here.

    Best wishes
    Patrik
     
    Last edited: Nov 19, 2015
  2. Andrew_atl

    Andrew_atl

    Joined:
    Sep 21, 2010
    Posts:
    103
    Looks pretty cool!
     
  3. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Thank you Andrew.
     
    Last edited: Feb 15, 2014
  4. sandboxgod

    sandboxgod

    Joined:
    Sep 27, 2013
    Posts:
    366
    I like that physics ragdoll video
     
  5. bbsbot

    bbsbot

    Joined:
    May 23, 2012
    Posts:
    84
    I'd like to see how this plugin act in an arpg game.
    make 2 character attack each other with/without sword.
     
  6. aspire9

    aspire9

    Joined:
    Aug 8, 2013
    Posts:
    45
    well done, this looks awesome.
    but as bbsbot said, a combat scene would be nice, to see what can be done with this asset
     
  7. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    This asset is mainly a script (AnimFollow) that makes a ragdoll mimic an animation. It is done with forces and the strength of the forces can be adjusted in realtime. Animfollow is to strong by itself and therefore a RagdollControl script is needed to adjust the strengths to the context and tell the animator what to do when the ragdoll is for example knocked out. Cool fighting is certainly possible but requires a custom fighting controller. You will have to modify or replace the included controller to suit your team´s desires. Here is a small example of what it could look like.

     
  8. BTStone

    BTStone

    Joined:
    Mar 10, 2012
    Posts:
    1,422
    Reminds me of the system used in Overgrowth! Coolio, keep it up!
     
  9. aspire9

    aspire9

    Joined:
    Aug 8, 2013
    Posts:
    45
    any news regarding the release of this asset?
     
  10. shkar-noori

    shkar-noori

    Joined:
    Jun 10, 2013
    Posts:
    833
    this is awesome...its like the same animation system used in Rockstar studios
     
    Last edited: Jan 20, 2014
  11. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Last edited: Jan 30, 2014
  12. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    This Asset is very interesting but I assume it is needed the animated character has to be implemented specific animation clips for working when the character is recovering and standing up from a fall to the ground, for example.
     
  13. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Hello angel_m
    There are get up animations included in the package. The animator in the example scene shows how to set them up for the included RagdollControl script. So everything is included to get your character to behave like in the first demo video. If you want something else or if you are not using mecanim some modifications are required to the RagdollControl script. The AnimFollow script is likely to work straight away. You can use your own animator and add the get up states like in the example scene. You may also use your own get up animations if you so desire.
    Please ask more questions if you have them.
     
    Last edited: Feb 12, 2014
  14. McGravity

    McGravity

    Joined:
    Nov 2, 2013
    Posts:
    60
    Hello Kavorka,

    I get the following error when the stand up animation is supposed to be played:

    Parameter type 'Hash -702002093' does not match.
    UnityEngine.Animator:SetBool(Int32, Boolean)

    I'm trying to get the example scene to run and I'm not sure what information to get out of the warning as the hashes in the HashesIDs script seem to be fine.

    By the way, a very nice project and thanks for that ;)

    Greetings

    PS: What I have done:

    - Loaded the example "scene1"
    - Put the DonePlayerAnimator to Animator of EthanMaster
    - Hit play-button
    - Running around -> falling down -> warning
     
    Last edited: Feb 11, 2014
  15. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Hello McGravity
    Thanks for purchasing AnimFollow. I am very pleased you like the project. I am sorry to hear that you are having a problem. I tried but can not duplicate your problem and none of the other customers have reported any problems. I am not sure why you added the DonePlayerAnimator to EthanMaster, that should not be required. I have had all kinds of errors during the development but I have never seen this. Would you please try to: start a new project, import AnimFollow, double click on scene1, hit play button. I will absolutely do everything I can to help you get past this problem. Tell me why you were compelled to add the animator. Try from fresh without doing anything other than load scene1 and hit play.

    Best of luck
     
  16. aspire9

    aspire9

    Joined:
    Aug 8, 2013
    Posts:
    45
    do you plan to update the asset with custom scripts over time?
     
  17. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Hello aspire9
    I believe that would be a Sisyphean task. I believe the developers want their own unique solution and that it would be a work with no end to do a system that comprises all possible uses of semi-procedural animations. I aim to help and support development of custom solutions. If customer feedback signals that the product is lacking some crucial feature I will update with such a feature. I encourage developers to sell their custom ragdoll controls but I would be very put out if someone sold a copied or modified AnimFollow script.
    I plan to support my customers.
     
  18. aspire9

    aspire9

    Joined:
    Aug 8, 2013
    Posts:
    45
    thanks for your fast reply.
     
  19. McGravity

    McGravity

    Joined:
    Nov 2, 2013
    Posts:
    60
    Nevermind Kavorka :)

    the unity version on the machine I used was under 4.3.0. That was basically the problem.
     
  20. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    I am glad you worked it out.
     
  21. Velo222

    Velo222

    Joined:
    Apr 29, 2012
    Posts:
    1,437
    Hahahaha. Oh man. I couldn't stop laughing after watching that. That looks really cool. I'm thinking about maybe using it as simply a ragdoll death effect for an rts game with hundreds of units. What do you think performance would be like in that case (say a battle of 100 vs 100 units)?

    So, if I get this right though, if I have a mecanim death animation for one of my characters, I can use this asset to make it ragdoll like in the video?
     
    Last edited: Feb 15, 2014
  22. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Hello Velo
    I am happy you find this cool and amusing. You don't even need a death animation to make it ragdoll like in the video, but if you want to add some flare to your death so that it is not just a canned death animation nor just the standard ragdoll death you can make any mixture of the two. This asset makes it easy to have partial ragdoll effects. You can make the ragdoll follow the animation weakly so that it tries to follow the animation but at the same time is affected by physics.

    You can make the whole ragdoll weak or just the limbs you want, for example an arm, a leg or the head. The included ragdoll control is an example of how to lerp strength on and off. When the ragdoll collides the ragdoll controll leaves some residual strength in the ragdoll so that it tries to follow the animation for a short while. During this period it is possible (with a little bit of work) to play your death animation of choice to make your death half ragdoll, half death animation. There are also three types of strengths so that you can customize the ragdolls response exactly to your liking.

    I have been very careful not to promise to much in my marketing because I know some of what is possible will take some skill and persistence to pull of. But I have been secretly hoping that the community will recognise this as an opportunity to take semi-procedural animations to the next level. If someone launched a game with this technology, would it not be very likely to get some publicity? I plan to first use this to have my enemies in a shooter react to hits even if they are just hurt. The AnimFollow script is not just for humanoids, It is easily adapted to spiders or machines.

    I tried 40 characters in a scene and got around 50 fps. Some models will require more some less, I am afraid 200 characters are too many. My advice is: don't make it big, make it good. I will very soon release a foot IK for bipeds that will work with AnimFollow.
     
    Last edited: Feb 16, 2014
  23. datadebaser

    datadebaser

    Joined:
    Mar 6, 2013
    Posts:
    8
    this is such an amazing tool, i'm having so much fun playing with it and imagining the possibilities. works solid and clean. really captures the tension between the character responding to its environment vs. the character asserting its mecanim willpower.

    just so i understand, I'm trying to integrate animfollow with other IK tools. Does the order matter in which animfollow evaluates the master's transforms? for example if i am also applying IK calculations? Does it have to be within fixedupdate to avoid the parkinson shakes when applying additional constraints to the master?

    thank you for paving the way forward!!
     
  24. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Thank you for the kind words, I am very pleased that you appreciate its potential.
    AnimFollow makes the ragdoll follow the master´s animations. If you Use IK on the master it is important that the Animfollow script executes after the IK so that the ragdoll mimics the correct pose. When I use IK with AnimFollow I run the IK script in FixedUpdate and call AnimFollow as a method from the IK script after the IK constrains are set. I have a foot IK pending release in the asset store. The foot IK is drag and drop for most biped characters, both mecanim and legacy. It also works with AnimFollow. I explain a little about it in this tutorial. If you have a problem, I will help you fix it.
     
  25. datadebaser

    datadebaser

    Joined:
    Mar 6, 2013
    Posts:
    8
    thanks for the quick reply --
    I just tried my IK setup followed by animFollow in fixedupdate, works perfectly, no shakes!
     
  26. antoineguidi

    antoineguidi

    Joined:
    Sep 3, 2012
    Posts:
    9
    Kavorka, I want to buy the Asset asap. I am just wondering what are your toughts on perfomance on mobile devices such as iPhone 5 > up and Samsung S3/4 and Up. The scene will have no more than 10/15 characters.
    Thank you very much
     
  27. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Thank you for your inquiry
    I have no experience of mobile devices and would not make empty promises. It may be no problem or it may be that we have to use some macro optimizations. If you are serious, and have reasonable expectations, I am interested in helping you make it work. Try it out and get back to me.
     
  28. EmeralLotus

    EmeralLotus

    Joined:
    Aug 10, 2012
    Posts:
    1,459
    Great asset. Amazingly Wicked Stuff.

    I'm working on Mobile and would really like to see this kit be fully supported on mobile . Android, IOS, WinRT.

    Would you consider a request for Solid performance on Mobile.

    Having this technology locked up on the desktop is not doing it the justice.

    The technology needs to be Free and Roam in a totally Mobil-listic way.

    Cheers.
     
  29. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    I expect AnimFollow to work fine on mobile. I only said I have not tried it and that I do not want to promise things I am not 100 % certain about. I get a strange feeling in my stomach when I realize that someone other than me might be the first to put this on mobile and make the next “angry flappy birds”. Most people think this is really funny and cool, which makes it easy to believe that the first mobile game with this technology would get a lot of attention. I wish I had more time.
     
    Last edited: Feb 26, 2014
  30. Setmaster

    Setmaster

    Joined:
    Sep 2, 2013
    Posts:
    239
    Looks really nice, is it compatible with Final IK? Also a webplay demo would be cool.
     
    Last edited: Mar 4, 2014
  31. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Thank you

    Yes, it is compatible with Final IK. Just remember to run the AnimFollow script directly after the IK.

    I'll consider doing a web player demo. Good idea.
     
  32. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    There is an issue with mesh distortion, in the neck area, during the get-up animations. I ignored this earlier because I thought the big collar of the Ethan character was the culprit. After receiving angry feedback about it I took a closer look and found it is visible on some other models also. It only appears during the get-up animations. I am working on finding why this, is and how to fix it. I will also tune the get-up animations to be a little smoother. I apologize for this oversight and will prioritize to have an update out as promptly as possible.
     
  33. Setmaster

    Setmaster

    Joined:
    Sep 2, 2013
    Posts:
    239
    Would it be usable in a multiplayer game?
     
  34. Dantas

    Dantas

    Joined:
    Mar 9, 2014
    Posts:
    28
    I really liked the videos, but a playable demo is really needed.
     
  35. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    I do not know multiplaying, but I cannot see a reason for it to not work in a multiplayer game.
    I have solved the neck distortion problem. I am working on a few more things that need polishing.

    I want to ask all who bought this to contact me to establish a faster channel for support and updates.
     
  36. Setmaster

    Setmaster

    Joined:
    Sep 2, 2013
    Posts:
    239
    Just bought your asset, sent you a email.
     
  37. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    I am improving the asset and polishing stuff in the example scene. The next update will also include the foot IK asset.

    There is now a web player, with IK and smoother get-ups: link.

    There was a few complains about the example scene not doing the asset justice. I am working on that. See the progress in the web player. I plan to submit an update within a few days.
     
    Last edited: Mar 15, 2014
  38. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    Hi Kavorka,

    I've just purchased your asset and I followed your tutorial videos, how to make a good rag doll and how to animate a rag doll with AnimFollow, but I seem to have a problem, I added the ReplaceJoints_S script and it added all the configurable joints, I then added the AnimFollow_S script and added the master in the inspector, but when I press play the master disappears and the rag doll just drops to the ground, video link below.

    Do you know why this would happen?

    Thanks.

    Kevin.

    https://www.youtube.com/watch?v=suidId8GVmI&list=UUSzyLhlMouGand-6xW9jgiQ

    $Screen Shot 2014-03-16 at 15.04.42.png
     
    Last edited: Mar 16, 2014
  39. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Can't say i know why. Is there no warning in the console? I thought I had added warnings for most user mistakes.
    Please check the console and get back to me. We will fix this :)
     
    Last edited: Mar 16, 2014
  40. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    Sorry I'd got warnings turned off, these are showing ..

    Enemy Soldier Type1 RagDoll does not have a valid master.
    Master transform count does not equal slave transform count.
    UnityEngine.Debug:LogWarning(Object)
    AnimFollow_S:Awake() (at Assets/AnimFollow/Scripts/RagdollScripts/AnimFollow_S.cs:130)


    and ..

    Missing Script: DonePlayerMovement on Enemy Soldier Type1 RunTest
    UnityEngine.Debug:LogWarning(Object)
    RagdollControl_S:WeHaveAllTheStuff() (at Assets/AnimFollow/Scripts/RagdollScripts/RagdollControl_S.cs:368)
    RagdollControl_S:Awake() (at Assets/AnimFollow/Scripts/RagdollScripts/RagdollControl_S.cs:96)



    Thanks,

    Kevin.
     
  41. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    Ok, one had a weapon and the other did not, I've deleted the weapon so both have no weapon but still get the error ..

    Enemy Soldier Type1 RagDoll does not have a valid master.
    Master transform count does not equal slave transform count.
    UnityEngine.Debug:LogWarning(Object)
    AnimFollow_S:Awake() (at Assets/AnimFollow/Scripts/RagdollScripts/AnimFollow_S.cs:130)


    And Ive taken the control script off for now to remove the other error.
     
  42. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    OK, I've found it, it was a weapon mount I'd left on the original model, seem to be ok now, thanks for the fast reply.

    Kevin.
     
  43. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    OK, Then I know what is wrong. Email me on gmail.com, the address is kavorka.games..... and I will talk you through it.

    The second warning indicates that you have also added the RagdollControl which requires an animator and PlayerMovement script like the ones in the example scene.

    The first warning is because when you made the ragdoll you changed something in the transform hierarchy. The ragdoll must have exaclty the same hierarchy as the master (or we need to do some tricks ;)).

    Study how the original example scene is set up. Make the AnimFollow work first before you add the RagdollControl. And email me!

    Edit: I see you solved it, good work.
     
    Last edited: Mar 22, 2014
  44. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    Kavorka,

    Sent you an email ..
     
  45. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    I have a problem with my Ragdoll getting up it jerks a lot, I've tried most settings but no joy, anyone know why?

    Thanks.

     
  46. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    Yesterday I submitted an update to the asset store where I have made several improvements, one of them being smoother get-ups. I will send you that version now on google drive. Wait just a few minutes and you will receive a mail.

    A taste of the new version:

     
    Last edited: Mar 18, 2014
  47. Griffo

    Griffo

    Joined:
    Jul 5, 2011
    Posts:
    700
    Thank you, fast support .. I like it.
     
  48. Dantas

    Dantas

    Joined:
    Mar 9, 2014
    Posts:
    28
    Can a character jump with this script? I'm really interested and I see you made some good updates, but I really want to see a character jumping while having this script.
     
  49. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    There is no jump functionality in the included controller. But it is certainly possible to have the character jump, with a little bit of work.
     
  50. Kavorka

    Kavorka

    Joined:
    Sep 15, 2012
    Posts:
    247
    I quickly coded a very simple jump function to show that it is possible.