BIK: Full Body IK Solver

EDIT:
Rig Editor Feature Overview (Coming Soon)

EDIT:
6 point tracking example now included in v0.8.0.

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

Fluid Chest and Clavicle Motion

https://gyazo.com/dd84352432c6a895a2973944e96ff806.gif

Multiple Character Support

https://gyazo.com/7f505491c1e7bae73f21e7c83f059b6d.gif


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.

fbik.png

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

Cheers,


Contact for purchasing early access : [EMAIL=“”]

Roadmap : Trello

Nice work so far! Looking forward to seeing this progress

How cool indeed.

Very cool. Unlimited possibilities!

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.

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,

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 !

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,

Hi ,

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,

I need this bad - are you planning to sell this ?

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.

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.

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,

@ - 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.

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.

http://i77.photobucket.com/albums/j80/sarge4x/9d445fef3bb639e79767b3ae91430bb5_zpsuk6ovorg.gif

(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,

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.

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 :

Awesome work ! I’m looking forward to the beta :slight_smile:

Thanks n00854180t for your support !

Some more updates, now I have the spherical joints, hinge constraints ( which utilize pole vector constraints ) working together.

Best,

Can’t wait to play with this for my VR arms/hands :slight_smile:

It is coming soon !

Another update. Effector twist controls the hierarchy of bones.

Just checking out the surroundings :wink:

Nice work , looks awesome