😞✋ godot physics 3d

😎👉 godot-jolt

dropped godot-jolt into my project, went into project settings and changed the physics server setting, and bam!

all my problems with rigidbodies that would vibrate endlessly and not settle, or would settle partially stuck in the ground and fly out at high speed when even a small force was applied are resolved.

i am _very_ happy with this result!

thanks so much @mihe for putting this package together!

get godot-jolt here: https://github.com/godot-jolt/godot-jolt

#godot #godotengine #physics

GitHub - godot-jolt/godot-jolt: Godot Jolt is a Godot extension that integrates the Jolt physics engine

Godot Jolt is a Godot extension that integrates the Jolt physics engine - godot-jolt/godot-jolt

GitHub

update on godot-jolt and my player controller:

1. i had to redo the crouching code, which had been altering a capsule's size and height. with godot physics, this worked ok, but with jolt this led to me sometimes getting stuck in or falling through the floor. now i toggle two pre-sized capsules.

2. had issues colliding with the 'gap' between two exactly adjacent (on-grid) static colliders. unsure why. worked around it by making the colliders overlap slightly.

#godot #godotengine #jolt #physics

@vfig What kind of body are you using for your player controller?

@mihe CharacterBody3D, using move_and_slide() to actually move it.

another odd collision is happening in a situation like this: grey is my character's capsule moving left; blue cross-section is a single ConcavePolygonShape3D. i sometimes seem to get caught up on the indicated edge—but only about 5% of the time.

its not a serious bug for me, but slightly annoying. if it gets too annoying i might try replacing the mesh with some convex colliders.

@vfig That doesn't sound right. Any chance I could ask you to create an issue on GitHub and upload some sort of repro project there, even if it's not 100% reproducible? I tried creating a mesh similar to your drawing, but I can't see any problems when using the default CharacterBody3D script.

@mihe sure, ill see if i can disentangle it from all my other stuff and reproduce it in isolation.

my gut feeling is its more likely a matter of tuning various parameters that i dont understand, than an actual bug in jolt/godot-jolt though.

@vfig That would be much appreciated.

I'm honestly having trouble reproducing your other two issues as well.

There shouldn't be any difference between changing the properties of a shape and toggling between two pre-configured ones, as far as Jolt is concerned, and I can't seem to get stuck or fall through no matter how often I change my capsule height.

As for colliding with gaps/seams, that's something I've only ever seen with RigidBody3D, so I would love a repro there as well, if possible.

@mihe the stair gap one should be doable to repro.

the crouching one was likely all my fault: i had been using a single raycast to check for “enough height to uncrouch”, and so under an overhang edge that would false positive. and so i think my code was trying to expand the capsules height into a space that wasnt really big enough. its just that with godot-physics i somehow got away with it.

Capsule getting caught up on ramp-to-flat boundary of ConcavePolygonShape3D · Issue #524 · godot-jolt/godot-jolt

As described on mastodon: Often when moving from an upward sloping ramp part of a collider to the flat polygon at the top of the ramp, my character gets caught up. This issue wasn't seen before I m...

GitHub
@vfig Much of that is of course thanks to @jrouwe and his amazing work on Jolt itself, but it gives me great joy to have made that available to the Godot community and to hear testimonies like this, so thank you for sharing.
@mihe oh yes, huge thanks to @jrouwe too!
@mihe you guys are the best.

@mihe @vfig Mikael, you basically saved 3D in Godot 4 with Godot Jolt! Thanks again for making it (and @jrouwe for making Jolt to start with :)).

It's no exaggeration, because without Godot Jolt, any kind of 3D in Godot 4 ends up failing miserably one way or another eventually due to some fundamental flaws in Godot's 4 default physics.

And the cool part is that @reduz even hinted the possibility of making Godot Jolt the main physics engine.

@vfig @mihe oh that sounds cool! I'll have to take a look at this 👀

@vfig @mihe

playing around with it right now and yeah, it's a pleasure to use it !