Install any skill in seconds. Free to start, no credit card required.
Get Started Free →gamedev-skills/godot-physics
Use Godot 4.x physics bodies and detection in 2D and 3D: RigidBody, StaticBody, Area, and CharacterBody; collision layers vs masks; contact/overlap signals; and raycasts (RayCast nodes and direct space-state queries).
Passed 22 of 22 test cases with the skill, and 19 of 22 without it.
3 fixed19 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 3 test cases the skill fixed. Same model, same prompt, with and without the skill.
In our 3D game running Jolt Physics, we have a frozen RigidBody3D operating in kinematic mode (freeze = true). Even though max_contacts_reported is greater than 0, get_colliding_bodies() returns an empty array when static bodies touch it. What Jolt setting needs to be enabled?
| Checked | Without skill | With skill |
|---|---|---|
| Specifies enabling Generate All Kinematic Contacts in Project Settings under Jolt Physics 3D Simulation. | Missed | Passed |
The instructions your model reads when the skill loads.
Pick the right physics body, wire up collision layers/masks, detect overlaps, and cast
rays. Concepts apply to both 2D and 3D (swap the 2D/3D suffix). Targets
Godot 4.7. In 3D, projects created with Godot 4.6 or later run Jolt Physics by
default; older projects keep GodotPhysics3D unless someone switched them. 2D always
uses Godot's own 2D engine.
Area, applying
forces/impulses to a RigidBody, or casting rays for line-of-sight/ground checks.When not to use: kinematic character controllers (move_and_slide) →
godot-2d-movement; tile collision setup → godot-tilemap; tuning the feel of physics
(timestep, mass, jitter) → physics-tuning.
[physics] 3d/physics_engine="Jolt Physics" in
project.godot). The API is the same, but joints, ray-cast face indices, kinematic
contacts, and collision margins behave differently (see Pitfalls).StaticBody — never moves (floors, walls). Collides, no simulation.RigidBody — fully simulated (gravity, forces, bouncing). Don't set its
position directly; apply forces/impulses or set linear_velocity.CharacterBody — script-driven kinematic (see godot-2d-movement).Area — detects overlaps and can apply gravity/damping; no solid collision.
Every body needs a CollisionShape (or CollisionPolygon) child.Area signals (body_entered, area_entered)._integrate_forces for full
control.RayCast2D/3D node (polled each frame) or a one-shot space-state
query from code.test cases passed, vs 19 / 22 without
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.