Announcement

Collapse
No announcement yet.

Full Body IK Setup

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • [PLUGIN] Full Body IK Setup

    EDIT : For all those who might be wondering what were we upto for GDC, here's a trailer of "From Other Suns" a game by GunFire Games, an Oculus Studio. They use the VR IK solver from our BIK plugin.



    BIK plugin is currently on v0.7.

    0.6a feature update



    Video : Weapon Holding and AimIK


    World Collision with feet and hands, and performance test




    Multiple Character Support




    ------------------------------------------------------------------------------------------------------------------------------
    Hi all,

    I have been working on some IK setups. Here I am showing my current IK setup which works for straight chains.

    Original Video :
    https://www.youtube.com/watch?v=Clcl...m-upload_owner

    The box is the end effector and the chain can have as many bones as you want. The box is manually animated using Matinee which drives the animation on the cylinder object.

    And this is all implemented inside a single blueprint node.



    Next I will try to implement this for trees with multiple constraints.

    Cheers,
    darkZ

    -------------------------------------------------------------------------------------
    Contact for purchasing early access : contact@anomotion.com

    Roadmap : http://trello.com/bik4ue4
    Attached Files
    Last edited by darkZ; 03-28-2017, 12:00 PM. Reason: Added new gif

  • #2
    Nice work so far! Looking forward to seeing this progress

    Comment


    • #3
      How cool indeed.

      Comment


      • #4
        Very cool. Unlimited possibilities!

        Comment


        • #5
          Thanks folks.

          I have an update with the implementation. I can now create arbitrary tree structures as my bone hierarchies. So human/imaginary creatures are now possible in the current implementation. Also, the IK Blueprint node is more configurable. Any number of constraints can be enabled here by adding more effector locations. Also Root location can be handled as a constraint or can be left free.

          Click image for larger version

Name:	Untitled picture.png
Views:	1
Size:	164.6 KB
ID:	1050293

          Again, the demo I am showing here is terrible and has zero thought put into it. So apologies in advance. But at the moment all my time is going in the core implementation.



          The next step would be to enforce joint limits on the model so that unnatural poses can be avoided. And then the final step would be to use biological data to create data driven Tree IK.



          Cheers,
          darkZ

          Comment


          • #6
            I have updated the implementation to now have Joint Type Constraints ( Ball and Socket, Hinge and Fixed ). Also Hinge Joint limits are now implemented as well. Additionally rotational constraints for feet and root are also in effect now.



            Cheers !

            Comment


            • #7
              Hi all,

              In this video I am demonstrating the result of applying full body IK on a human character ( a free character from Maximo ).



              Cheers,
              darkZ

              Comment


              • #8
                Hi darkZ,

                Is there any chance you could release the plugin? Do you support rotations in IK set up? Since it is pretty much what I'm looking for. Unity has Final IK and I need something which is simple to implement.

                Cheers,

                Peter

                Comment


                • #9
                  I need this *bad* - are you planning to sell this darkZ?

                  I'm doing a VR game with full avatar body and really need a full body IK with constraints like this in order to get it perfect.
                  Storyteller - An immersive VR audiobook player

                  Dungeon Survival - WIP First person dungeon crawler with a focus on survival and environmental gameplay ala roguelikes

                  Comment


                  • #10
                    Same situation here. Its crazy that two bone IK doesn't support rotations! I'm currently applying rotations manually but would happily pay for a plugin.

                    Comment


                    • #11
                      Hi folks,

                      Sorry I didn't notice this thread had come back to life. I have not made more progress with it since I posted here last. pwsnow seems interested in purchasing and alpha testing the plugin.

                      In my spare time these days I had changed gears to work on something a bit more artistic haha. However I will go back to implementing the Full Body IK for a release given that I have some time on my hands.

                      n00854180t, can you describe what all constraints do you need ? Feel free to PM me if you are interested in setting something up before I can put it up on the marketplace.

                      Best,
                      darkZ

                      Comment


                      • #12
                        @darkZ - Actually the ones you already showed off are perfect. I'd love to alpha test it myself, I've got everything set up with a character to just plug in the node actually.
                        Storyteller - An immersive VR audiobook player

                        Dungeon Survival - WIP First person dungeon crawler with a focus on survival and environmental gameplay ala roguelikes

                        Comment


                        • #13
                          Hey n00854180t,

                          I am getting very close to an alpha release. The system is now nicely implemented in its own plugin with an editor and a runtime module. I am just doing some more improvements. Now supports preserving animation for parts of the skeleton which are not being effected by any IK constraints.



                          (Figure : Imagine a character leaning on a walking stick with the left hand which is being controlled via IK. This kind of behaviour cannot be achieved via the inbuilt IK tools within)

                          I am definitely looking for people to purchase this at half price for alpha testing. So PM me if you are interested. There are limited spots available as I will be in touch with all the alpha testers myself and try to incorporate their feedback into the final product. I am thinking we can start the alpha testing from next week if things go well.

                          In the meanwhile I will also need to look into some legalities pertaining to the distribution of this plugin outside the marketplace during early access. So if anyone has any ideas about the correct way of doing this, I am all ears.

                          Best,
                          darkZ
                          Attached Files

                          Comment


                          • #14
                            I was wondering how exactly this works as opposed to using the built in IK controls. And how flexible would it be for something like monsters/aliens/demons, etc... with possibly extra limbs or missing limbs as opposed to real life humans.

                            Right now I have a bunch of IK happening with 2Bone IK controllers on my human character. It's working for arms holding guns right now. I haven't started on feet placement yet.

                            I wanted to have my character also be able to reach out and push buttons or grab objects off the ground when picking them up. I have ideas for how to do this via a bunch of blend spaces depending on which direction my character is stretching their arms out so they lean properly with their whole body, while the IK positions the hand itself.

                            I was also thinking about how the head would need to move on the body for VR and that's a whole other complicated thing to work on. I was probably going to add a multi bone IK chain controller to the spine for that.

                            Comment


                            • #15
                              This is a C++ implementation for a generic hierarchy of bones and is capable of handling rotation of end effectors and hence the joints along with constraints on the joints such as rotation and twist limits. It does not use the inbuilt IK controls.

                              Another update with swing and twist limits :

                              Attached Files

                              Comment

                              Working...
                              X