-
Notifications
You must be signed in to change notification settings - Fork 58
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
JoltGeneric6DOFJoint3D angular limit gizmo not correct #855
Comments
Thank you for reporting this. This has been in the back of my mind for a while now, but I never got around to it. I've spent a silly amount of time trying to make sense of these joint gizmos, ever since I first implemented them, which I realize in hindsight was largely a result of me getting tripped up by the way that single-body joints work in Godot Physics, which I for some reason felt the need to accommodate for (over two-body joints). With this behavior having changed in #725 I should rightfully have changed the gizmo accordingly, but forgot to. Anyway, this should be fixed when #862 is merged. It now seems to line up nicely with Jolt's own debug visualization, as well as Nvidia Omniverse, which happens to use a very similar visualization in its USD Composer editor. |
extremely cool and swift execution. nicely done. |
might be an issue with negative values - I just checked and it looks good with limits above 0° edit: nope, still weird. |
Would you mind sharing the scene/project? It's hard to tell from the screenshots how you've set it up. It seemed to make sense in the scene I tried it with. |
you get the same issue with the minimal project up above. The underlying problem seems to be with where 0° starts? I phrased this as having to rotate the joint by 90° but then you fix only one axis and it gets messy when you need more than one axis limited.As you just changed the sign in your calculation i don't think that fixed it. I will see if I can suggest a fix on my own over then weekend.Am 23.05.2024 21:36 schrieb Mikael Hermansson ***@***.***>:
Would you mind sharing the scene/project? It's hard to tell from the screenshots how you've set it up. It seemed to make sense in the scene I tried it with.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: ***@***.***>
|
Oh, sorry, I had completely glossed over the original repro. I'd had this in my backlog for so long I didn't even bother to check it, so thank you for double-checking the fix. But yeah, it definitely looks weird/unintuitive in that scene, and now I'm having trouble recalling the setup I had where it made sense to me. Anyway, I'll need to take another look at this, clearly. I'm very curious what the gizmos in Nvidia Omniverse's USD Composer looks like with this setup. |
I'm pretty sure all we need is to add or substract half PI from the gizmo angle when calculating the points for it. |
sorry, bit pressed for time so I'll be sloppy. |
while playing around with this addon, which I really like, I figured there is a small issue with the Jolt-version of the 6DOF joints.
The short version: The angular limit gizmos only show the actual limits correctly if the joint itself is rotated by 90 degrees.
steps to reproduce:
should be obvious, have a static body and a rigid body connected by a Jolt 6DOF joint, set an angular limit that's relatively narrow to see the effect AND the gizmo, add a camera and run the scene to see the angular limit is not solved as previewed by the gizmo.
minimal project to reproduce:
jolt_gizmo_minimal.zip
Godot-Jolt version: 0.12.
Godot version: 4.2.1 stable
The text was updated successfully, but these errors were encountered: