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

FULL BODY IK, Mech Spiders and much more about to hit the Asset Store!

Discussion in 'Works In Progress - Archive' started by Partel-Lang, Dec 16, 2013.

Thread Status:
Not open for further replies.
  1. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    Hi!

    I can't wait to introduce the WIP Asset Store package that contains most of the inverse kinematics solutions known to mankind (or at least to game developers :)) - FINAL IK.

    Final IK contains:
    • Full Body IK system for biped characters
    • Biped IK - alternative solution to Unity's built-in Avatar IK system that provides more flexibility and works in Unity Free with the same API
    • CCD (Cyclic Coordinate Descent) IK
    • Multi-effector FABRIK (Forward and Backward Reaching IK)
    • Look-At IK
    • Aim IK
    • Limb IK
    • Rotation constraints - Angular, Polygonal (Reach Cone), Spline and Hinge rotation limits that work with CCD, FABRIK and Aim solvers
    Technical overview:
    • Requires at least Unity 4.3
    • Does NOT require Unity Pro
    • Does NOT require, but works with Mecanim
    • Tested on Standalone, Web Player, IOS and Android
    • Source code included
    • Custom undoable inspectors and scene view handles for each component
    • Warning system to safeguard from null references and invalid setups
    • Optimized for great performance
    • Modular, easily extendable. Compose your own custom character rigs
    • HTML documentation, fully documented code
    • Demo scenes and example scripts for all components
    • Tested on a wide range of characters
    For more information, see the RootMotion website: http://www.root-motion.com

    User Manual (WIP): http://www.root-motion.com/finalikdox/html/page1.html

    Documentation: http://www.root-motion.com/finalikdox/html/classes.html

    Support Forum: http://www.root-motion.com/final-ik-forum.html#/

    Here are some videos to demonstrate the capabilities of the Final IK components:

    EDIT: There are many more videos in the thread, but you can also find them all from my YouTube channel: http://www.youtube.com/user/SnuffThePuppy/videos

    Full Body IK system for biped characters


    Using constrained CCD IK to create custom realtime IK rigs


    Creating a 360 degree aiming system of 2-handed weapons with 6 static aim poses and Aim IK


    FBIK driving rig


    Using FBIK effector offset to customise animation in realtime


    There is much more to Final IK, I will post more videos as soon as I get them done. Coming up are super long constrained IK chains, multi-effector FABRIK and Rotation Limits to name a few so stay tuned :).
     
    Last edited: Dec 18, 2013
    FBTH likes this.
  2. Paddington_Bear

    Paddington_Bear

    Joined:
    Dec 9, 2012
    Posts:
    274
    Give the man an award! Looks incredible, definitely going to be keeping an eye on this one..
     
  3. Klein_TK

    Klein_TK

    Joined:
    Dec 16, 2013
    Posts:
    2
    Looks great! Excellent work, ill be watching it as well.
     
  4. SunnySunshine

    SunnySunshine

    Joined:
    May 18, 2009
    Posts:
    974
    Looks sweet!
     
  5. Mister-D

    Mister-D

    Joined:
    Dec 6, 2011
    Posts:
    1,694
    i could definitly use this, well done!
    what will the price be?
     
  6. SpookyCat

    SpookyCat

    Joined:
    Jan 25, 2010
    Posts:
    3,748
    Very nice :)
     
  7. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    Thank you a lot guys :). I have not decided on the pricing yet, at this point I just want to concentrate on finishing the package and making sure it is rock solid and as bug free as possible, so I don't want to promise anything specific at this point. But since it was born as a pet project and has cost me zero dollars to develop so far, it will probably be the most affordable advanced character IK system in the industry ;)
     
  8. Whippets

    Whippets

    Joined:
    Feb 28, 2013
    Posts:
    1,775
    Interesting looking project. What's the extra load like? Constant IK checking on multiple avatars could be quite expensive.
     
  9. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    The FBIK solver on one character with the default quality takes about 0.09 - 0.14 ms on my MacBook Pro. With minimum quality it is only about 0.06 ms, which is less than Animator.Update takes for that character and I still have some ideas to optimise the solver further. I have not done any proper stress testing yet, but I enabled FBIK on the 20 unique test characters that I have and the scene was still running hundreds of frames per second on my machine. FBIK can also be smoothly weighed out for characters in the distance.

    Here is a profiler screenshot of a character with FBIK (the default quality):
    $Screen Shot 2013-12-16 at 1.59.30 PM.png
     
  10. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    I have no idea why i looked over the thread title on the forum, but i'm so glad I clicked this, this looks so useful the mind boggles. And would sort out my animation a treat, very impressive work, well done. Likely I wont be able to afford it initially.. like you have have hopes of something amazing being cheap but this deserves a good price tag, although you suggest affordable, it really is impressive.

    I'll definitely try grab it before too long.. its exciting thinking of what I can do with it and my own rigged models already! So in that regard i hope the wait for a final product isnt too long and i can watch a lot more examples in action
     
  11. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    Looks awesome, its definitely on my shopping list.
     
  12. Paddington_Bear

    Paddington_Bear

    Joined:
    Dec 9, 2012
    Posts:
    274
    Wow, thats incredible, it was something I wondered about (performance) but i'm glad to hear it.
    One more questions I have though: Could you perhaps give a demonstration of as many IK affected avatars in one scene as possible? Of course its understandable that its still a WIP, and it'll be running on a macbook with some sort of screen capture software but I think we'd all love to see whether this tool is ready for large scale use (yet ).
    Cheers
     
  13. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    :eek:
    Speechless...
    :eek:
     
  14. PrimeDerektive

    PrimeDerektive

    Joined:
    Dec 13, 2009
    Posts:
    3,090
  15. John-G

    John-G

    Joined:
    Mar 21, 2013
    Posts:
    1,122
    Just take my money, simply amazing.
     
  16. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    Once more, thank You all for your kind words! :D

    There you go :)
     
  17. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Just a quick question and wont affect a purchase, can you attach an effector to an object with a collider/rigidbody so it can be influenced by the physics system? Most obvious example might be dragging something along the floor, or a famous example of it is the kid moving yorda along by holding her hand in Ico (Like if the pressure on a link crosses a threshold it might change the animation of the thing you're dragging)

    I am getting this thing anyways, it looks like a gamechanger for mixing procedural animation with canned animation, i just asked the above cause i'm already planning how I can integrate it
     
  18. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
    Certainly looks thoroughly tested.
     
  19. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    @OP
    You just reconcile myself with Mecanim. The examples presented in the videos will be available?
     
  20. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Oh my....

    ...works with Mecanim fully? I don't know how else to ask that question with any specificity, as I don't really see why it shouldn't work fully! :D

    Incredible and indeed money tossed at my screen does not seem to grant me access to this plugin more quickly!

    Awesome.

    -Steven
     
  21. thedreamer

    thedreamer

    Joined:
    May 13, 2013
    Posts:
    226
    First, first I'll have to say this asset is amazing,

    I do not know if this question is appropriate

    This product is useful for the character interaction like beds and chairs

    What I really want is the character of the interaction between avatars

    Like hug, high five, hand, shake, kiss... you know i mean?

    there any way I can get help on interaction animation between character?
     
  22. Paddington_Bear

    Paddington_Bear

    Joined:
    Dec 9, 2012
    Posts:
    274
    Thank you very much, thats next-level amazing, keep it up!
     
  23. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    Waiting for the release :)
    This is looking so usefull

    Hope that this will not only work with a special 3d program.
    Are there any informations on how to export from a 3d animation package?
     
  24. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    You can attach the effectors to anything you like, including rigidbodies, bones of other characters and whatever else you can think of. You would simply write ik.solver.rightHandEffector.position = something and thats it. Moving Yorda around by holding her hand sounds like an easy job for Final IK :)

    It works with Mecanim fully, Final IK starts working in LateUpdate when Mecanim or Legacy (or whatever else) have already finished. In each frame the IK solver just reads the current pose of the character, solves itself according to the effector positions and other parameters and then transforms the bones of the character to match the solved state. So you see it doesn't really care what happens before or after that. You can even disable the FullBodyBipedIK component on your character and control the updating manually, simply by calling solver.Update() whenever you need, even multiple times per frame. In that sense it works just like Autodesk's HumanIK, it is not integrated to any animation system, it is a fully independent component.

    Sure, no problem. As I said above, you can link effectors to just about anything including the bones of other characters. Thanks for bringing that up though, I'll include some kind of a demo of character:character interaction, as I see there is interest for that.

    Yes. But not the one with 20 unique characters, because I do not own all of them.

    Final IK has nothing to do with any 3D animation packages. You would animate and export your animation clips just like you are doing it now, the IK components will just provide a library of possibilities for extending, modifying and characterising those animations. The primary function of Full Body IK is not providing a rig for creating animations in Unity from scratch (although you could do that), it is modifying the existing animations and retargeting specific body parts to match the dynamic realtime environment. It will dramatically reduce the amount of animation work you will have to do for your game. I am quite sure you could do with just one idle animation, for instance in the driving rig video, if you scroll to the last seconds you could see that if you turned off the IK, the Dummy was actually playing a standing idle animation that I found from the Mecanim Animation Samples. Or perhaps creating a simple procedural behaviour that tilts your character while it turns left or right (just offsetting some effectors based on the rotation angle) would relieve you from creating special tilting animations for walking, running, sneaking.. etc. I have so many ideas of what could be done with it. :)
     
  25. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    Don't hold your breath just yet, I still have a lot of work to do :)
     
  26. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Stop talking and get on with it then! Just this with weighting could take cre of almost every aniation i can think of for my main charater now i've done the core animation - you could have a character slumped as if depressed or more forthright if happy and i wouldnt have to leave unity to do it. Godspeed fellow, definitely one of the most interesting unity addons i can imagine (i never even realised it could be done like this)

    The yorda thing got me thinkig so much, like how it could work easily with mecanim - main character using mechanim cept ik arm with effector attached to yordas hand, further effector feels pulled from yorda you just feed that as a variable into mecanim to change her animation automatically. You could get some pretty intricate stuff going on
     
  27. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    As I suspected, yay!! The only real thing I could think of is if for some reason Mecanim fought again relinquishing control of the skeleton. Super yay!

    <exhales>

    Insta-buy for me!

    -Steven
     
  28. primus88

    primus88

    Joined:
    May 14, 2013
    Posts:
    611
    My...
    God..
    Dear man...

    Seeing something like this in Unity makes me proud of using this engine and being a part of this awesome community.
    I bookmark this page right now!
     
  29. cynel

    cynel

    Joined:
    Apr 18, 2012
    Posts:
    734
    this is Brilliant.
     
  30. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
    This will let me try to design games that were way beyond my budget because I just couldn't afford an animation studio to capture them and COTS animation is still mostly FPS after how many years?
     
  31. PrimeDerektive

    PrimeDerektive

    Joined:
    Dec 13, 2009
    Posts:
    3,090
    any chance of an IK driven melee combat example? :)
     
  32. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    This reminds me that the new Optimize Game Objects thing that hides the bone Transforms cant be used, because obviously IK needs to reference those bones.
     
  33. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Yup I've yet to use that option myself, but good catch.

    I can't express how very eager I am for this, especially your aim system as mine doesn't have pole-vectors and can get wonky unless carefully managed. Yea um I'd rather use your system. :D

    Thanks Partel
     
  34. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    As mentioned previously, your tool makes me love Mecanim : re-targeting and this!!!. A must have. Day one for me. Thanks a lot. :D
     
  35. nuverian

    nuverian

    Joined:
    Oct 3, 2011
    Posts:
    2,087
    Being a character animator as well, this is so super awesome that I only wish I could have that as well within Softimage XSI (think about it :p)
    Looks very stable and well thought as far as I can tell.
    Instant buy for me...
    Amazing work. Hats off
     
  36. MD_Reptile

    MD_Reptile

    Joined:
    Jan 19, 2012
    Posts:
    2,664
    I must see this spider ik your thread title speaks of, that's something I've wanted to figure out for a long time now, some kind of semi procedural spider animation... like "spider man" games but with a real spider setup to cling to walls and such, with accurate foot placement. have you made any videos yet of that? if not, is it implemented yet?... if not are there plans to do wall climbing / ceiling walking or just multi legged ground based animation?
     
  37. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    I hope that answers your questions about the Yorda thing:
     
  38. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    My goodness...

    ...and just imagine we could return the limit when maxed out and get 'Yorda' to transition to a running animation to keep up!

    So good Partel. Emerging man crush here...I'm feeling it.

    :D
     
  39. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,617
    A gigantic thumbs up from me. Well done indeed!

    I don't usually jump on the day one bandwagon for buying plugins, but this is particularly timely and useful for me. I want it. Please make a lot of noise when it's done!

    You've said both "about to hit the Asset Store" and that you have a fair way to go. What kind of ballpark timeframe do you think it'll be?
     
  40. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    ^Truth. I almost never buy an asset (in this case mentally) without a significant vetting time.

    Major barriers for me are the robustness of the software, showing me the author understands his own tool and the customer, and the way he or she presents themselves to interested parties (us).

    Both criteria have been met here in spades.

    Cheers
     
    Last edited: Dec 17, 2013
  41. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    Im sorry for the misleading title, Im not actually making mech spider IK, but a system that you can create mech spiders with (among other things). You probably missed the spider video in the inital post, here it is http://www.youtube.com/watch?v=-z_l7Jdz8Bo
    That particular demo can't handle vertical or ceiling movement, it was not meant to because it is just a demo for the IK system and a demo is supposed be as simple as possible. But making a wall/ceiling climbing spider should not be too hard with Final IK in your sleeve.

    I was afraid that last video of dummies holding hands was a bit too gay :D
     
  42. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Nope nothing wrong with man on man love. In fact I don't think my girlfriend would even mind in this particular case! :D
     
  43. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    Well the coding part is finished, Im just testing now and creating demos and improving things and trying to get second opinions as you can see. I just want to test the hell out of this thing and find the bugs before you guys do. Besides that I have to deal with a ton of bureaucracy, documentation and the user manual and of course eventually getting it through the Asset Srore. Im not giving any promises so please don't hold that against me, but I dohope to be done in a month or two. As it has been in development for more than a year now that is "about to hit the Asset Store" in my book :D
     
  44. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    2 months?! :(

    I have an idea, and I'm not even being facetious, as this does work. dGI (Chris Kahler) has been doing this for the past two months. Heck uScript is only NOW about to have a release candidate; uScript has been in beta for like a year and a half I want to say! Shader Forge is about to Beta as well on the Asset Store!

    Toss it up sooner as an Early Access just like Steam does. Let those of us pay you, run it around the block a few times with our current projects (I know I absolutely can use a more solid IK solution) and just slap the good ole 'Beta Version 0.9' label on it.

    This way you're getting paid now by the adventurous among us and we get a chance plan around this asset and test it out fully for you.

    Just an idea.

    Help us help you help us pay you! :D
     
    Last edited: Dec 17, 2013
  45. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    2,548
    That does sound reasonable.. I'll give it some thought with a fresh brain and let you guys know, thanks :)
     
  46. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,617
    For what it's worth, what you've shown in the videos would already add significant value for one of my projects and, since my project is also a prototype, using a pre-release library wouldn't be an issue to me in the slightest. So if you did do the above I'd probably be one of your early adopters.

    One question I have is can we tween in and out of an IK'd pose? I can live without it, but it'd be awesome if we can do it. (I haven't watched all the videos, so it may already be covered.)
     
  47. the7347

    the7347

    Joined:
    Dec 29, 2012
    Posts:
    33
    Please consider to implement a foot placement system, could be well received and fantastic.

    Consider it...:wink:
     
  48. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Mate you are about to become a very rich man

    I'm constantly strapped for cash so my partner will just have to suck it up if i spent a months money on this, but i cannot understand why anyone with anything to do with animation wouldnt want to fool with this

    This may be a stupid question but could you use effectors with 'weights' to imply the animation underneath continues to play but is slower or otherwise constrained? You might have already mentioned it. Example being walking against a heavy flow of water, swinging a heavier weapon than previously/maybe outo f your remit but getting feedback from a collision,. stopping an animation and and maybe (now its possible) to transition to a previous mecanim state (all dark souls territory here haha, not useful to me particularly but someone might find it useful), in the same vein an effector registering a collision with a wall or with a trigger perhaps predict such a collision and constrain that limb? I was thinking just altering the position of an effector and its influence of the bones and you can suddenly, procedurally, change the mood of a model, or its gait, quickly. Genius.

    Asking a lot, and most of it not for my needs, and i'd imagine not too hard to script oneself but yeah, just wondered! This thing is just.. out there

    As a guy said above, when you decide on a price, i'd happily join the ranks of people who would buy it now (final intended price if you wish, if i can feasibly afford it) and help beta test it because it's going to significantly affect how I would approach the design of my work so i'd rather have it sooner than later, i really hope the major bones of what i'm doing will be there in 2 months which would make factoring a new animation feature a pain, when i'd like to play with it now (i can live without documentation etc, you might want to make somewhere paying people can share information however, we'd learn how to use it with each others examples and a goldmine of information for you to improve your product) and get it into my stuff

    I'm somewhat a one man band not counting my writer, with some professional advisors, and my ability to provide all the canned animation would essentally disappear with this going on in it, massive time saver, looks much better and you're replacing hundreds of hours of animation work with a single tool. Basically i'm in, i'll just pray its affordable haha. Or my partner will leave me when i buy it ANYWAY
     
    Last edited: Dec 18, 2013
  49. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    THIS....

     
    Last edited: Dec 18, 2013
  50. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
    Even if he goes to release tomorrow it'll take about 2 weeks to get it in the asset store. I won't be buying myself til after Christmas but I will be buying. Until this I thought I was pretty much through adding things from the asset store.
     
Thread Status:
Not open for further replies.