Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2D physics pin joint angular limits do nothing #91691

Open
AlphaDragon601 opened this issue May 8, 2024 · 1 comment
Open

2D physics pin joint angular limits do nothing #91691

AlphaDragon601 opened this issue May 8, 2024 · 1 comment

Comments

@AlphaDragon601
Copy link

Tested versions

Godot 4.2.2 stable mono

System information

Linux - Forward+

Issue description

I have a very simple setup of a Node2D with two rigid body children and a pin joint child. The pin joint affixes the two bodies together. I attempt to enable "angular limit" but no matter what settings I use for the bounds nothing is affected. The body pivots just fine and can be motorized without issue. According to the code it is enabled.

Steps to reproduce

  • create a Node2D scene
  • create 2 rigid bodies as children, each with collision shapes and sprites
  • create a pin joint 2d and attach the two bodies
  • enable angular limit
  • instantiate this scene into a different, larger scene
    on run the limb just falls loosely
    image
    image

Minimal reproduction project (MRP)

project.zip

@stephanbogner
Copy link

stephanbogner commented Jun 26, 2024

I just encountered the same issue.

1) I'd propose renaming the issue to:

So it's easier to find and more precise

PinJoint2D doesn't respect angular_limit

2) People in the forum mentioning it:

3) Open issue

There is also an open issue which requests this feature. This could be closed now since the feature was "added" 🙃 (and now can be tracked via this issue)

4) Worked at some point

According to this video it seemed to work at some point (even though they never were hard limits) so I am trying to figure out when it broke.
This seems to be the code responsible. Doesn't look crazy complicated but I have no experience with C++.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants