Skip to content

Add Kusudama joint limitation (rotation swing) #13793

@fire

Description

@fire

Describe the project you are working on

V-Sekai development community focuses on providing social VR functionality for the open source Godot Engine.

Describe the problem or limitation you are having in your project

We would like more expressive inverse kinematics constraints that limit not merely twist but also swing rotation for creating realistic animations for humanoid bipeds.

See also https://github.com/martinfelis/godot_synced_animation_graph for humanoid biped gait synchronization with animations.

Describe the feature / enhancement and how it helps to overcome the problem or limitation

The socket of the arms and knees are suitable to be modelled via kusudama swing joint rotation limitations.

Kusudamas solve smooth joint limitations via using a combination of open cones and inter region path regions.

The other approaches for solving arbitrary swing rotation constraints require a "polygon swing constraints" or only support a single swing rotation cone.

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

Mockups:

Please ignore twist constraint part (the green arm) in these mockups by @EGjoni

Image Image

If this enhancement will not be used often, can it be worked around with a few lines of script?

The math is not particularly easy to write in gdscript.

Is there a reason why this should be core and not an add-on in the asset library?

Although it can be written as an addon, this was discussed with @TokageItLab and @lyuma and there was interest in core for 4.7.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions