godot-docs
godot-docs copied to clipboard
Provide a list of bones for SkeletonProfileHumanoid
Your Godot version:
4.0.2
Issue description:
SkeletonProfileHumanoid lacks documentation on what is a Humanoid bone. https://github.com/godotengine/godot/blob/24cb43a8741c7b10abbbbc77bb6e2bc188662ce0/scene/resources/skeleton_profile.cpp#L454
I am undecided if a tree or a flat dictionary dump as a json will be a better choice.
The advantage of dumping json means it will be updated as the code changes.
SkeletonProfileHumanoid
Root - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
└ Hips - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75, 0)
│ ├─ LeftUpperLeg - Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.1, 0, 0)
│ │ └─ LeftLowerLeg - Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.375, 0)
│ │ └─ LeftFoot - Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 0, 0.375, 0)
│ │ └─ LeftToes - Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.15, 0)
│ └─ RightUpperLeg - Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.1, 0, 0
│ └─ RightLowerLeg - Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.375, 0)
│ └─ RightFoot - Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 0, 0.375, 0)
│ └─ RightToes - Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.15, 0)
└─ Spine - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
└─ Chest - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
├─ UpperChest - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
│ ├─ LeftShoulder - Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.05, 0.1, 0)
│ │ └─ LeftUpperArm - Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.05, 0)
│ │ └─ LeftLowerArm - Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0, 0.25, 0)
│ │ └─ LeftHand - Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 0, 0.25, 0)
│ │ ├─ LeftThumbMetacarpal - Transform3D(0, -0.577, 0.816, 0, 0.816, 0.577, -1, 0, 0, -0.025, 0.025, 0)
│ │ │ └─ LeftThumbProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.043, 0)
│ │ ├─ LeftIndexProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.025, 0.075, 0)
│ │ │ └─ LeftIndexIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0)
│ │ │ └─ LeftIndexDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ │ ├─ LeftMiddleProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.075, 0)
│ │ │ └─ LeftMiddleIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.075, 0)
│ │ │ └─ LeftMiddleDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ │ ├─ LeftRingProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.025, 0.075, 0)
│ │ │ └─ LeftRingIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0)
│ │ │ └─ LeftRingDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ │ ├─ LeftLittleProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.05, 0.05, 0)
│ │ │ └─ LeftLittleIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0)
│ │ │ └─ LeftLittleDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ └─ RightShoulder - Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.05, 0.1, 0)
│ └─ RightUpperArm - Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.05, 0)
│ └─ RightLowerArm - Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 0, 0.25, 0)
│ └─ RightHand - Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0, 0.25, 0)
│ ├─ RightThumbMetacarpal - Transform3D(0, 0.577, -0.816, 0, 0.816, 0.577, 1, 0, 0, 0.025, 0.025, 0)
│ │ └─ RightThumbProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.043, 0)
│ ├─ RightIndexProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.025, 0.075, 0)
│ │ └─ RightIndexIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0)
│ │ └─ RightIndexDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ ├─ RightMiddleProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.075, 0)
│ │ └─ RightMiddleIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.075, 0)
│ │ └─ RightMiddleDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ ├─ RightRingProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.025, 0.075, 0)
│ │ └─ RightRingIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0)
│ │ └─ RightRingDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
│ └─ RightLittleProximal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.05, 0.05, 0)
│ └─ RightLittleIntermediate - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0)
│ └─ RightLittleDistal - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0)
└─ Neck - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
└─ Head - Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
└─ Jaw - Transform3D(-1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0.05, 0.05)
└─ LeftEye - Transform3D(1, 0, 0, 0, 0, -1, 0, 1, 0, 0.05, 0.15, 0)
└─ RightEye - Transform3D(1, 0, 0, 0, 0, -1, 0, 1, 0, -0.05, 0.15, 0)
URL to the documentation page (if already existing):
https://docs.godotengine.org/en/stable/classes/class_skeletonprofilehumanoid.html
Still pending @TokageItLab 's help on joint rule later also for XRHand.