RigidBody character demo for 3D using a capsule for the character. Cubes as RigidBodies spawn in the map from above to show interaction with the player (jump on them, gently push them), which would be impossible with a KinematicBody.
Language: GDScript
Renderer: GLES 3
Check out this demo on the asset library: https://godotengine.org/asset-library/asset/1291
This demo uses a RigidBody
for the player, and StaticBody
for the level. Each has colliders, the player moves itself via
apply_central_impulse()
in _physics_process()
, and collides with the level.
The ShapeCast3D
node is used to detect whether the player is able to jump
(i.e. touching the floor). Compared to a RayCast3D
which is infinitely thin,
this allows for more reliable checking if the player is standing over an edge or
corner.