Open fire opened 1 year ago
I was going to open a whole issue with details for IK system, but this does it all.
Now as I understand this uses a Node approach which I think is perfect for Godot Engine.
About this point :
the ui is too complicated needs ui work
I don't think so, from the screenshots it looks pretty much clear, and familiar with the Bone Hierarchy, looks like Skeleton3D, maybe just adapt the UI to look exactly like it.
It just needs 3D handles for usability.
Make ManyBoneIK a node? (trouble with gizmos.)
Wait isn't it a Node already ?
Edit : Any Idea about the performance of many bone IK ?
The https://github.com/godotengine/godot/pull/87888 enhancement improved the ik solver's stability so we're not stuck.
Describe the project you are working on
A open source social vr game made with Godot Engine.
We wish to provide full body tracking with 3 body sensors and the ground or up and more than 10 body sensors.
We also want to solve for any other skeleton. Example skeletons like quadrupeds, birds, squid or octopus.
Describe the problem or limitation you are having in your project
Godot Engine 4's multiple ik systems are broken.
https://twitter.com/wojtekpil/status/1609667214998650883?s=20
Provide a general purpose full body inverse kinematic system that is suitable for full body tracking and in general.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Many Bone IK is a custom inverse kinematics system solver for multi-chain skeletons and with constraints.
This project is a port from a Java project by Eron https://github.com/EGjoni/Everything-Will-Be-IK
See here for the EWBIK demo
GitHub usernames are indicated in parentheses.
Additonal features
Many Bone IK has a use for animation retargeting.
Many Bone IK can implement a "look-at" in a way that can take the entire rest of the character into account.
Authors
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
DRAFT PROPOSAL as of 2022-01-03. Want a demostration video at some time.
EWBIK A Highly General, Fast, Constrainable, and Stable Inverse Kinematics algorithm.odt
See open office document.
Abstract
Unfinished work
If this enhancement will not be used often, can it be worked around with a few lines of script?
Is there a reason why this should be core and not an add-on in the asset library?
Reduz asked me to write a proposal because I had working code for this in a c++ module at https://github.com/V-Sekai/many_bone_ik