Rigid Body
2026/01/03
- Type
- Learning Resource
- Format
- Glossary Article
- Version
- General
- Subject Tags
- Created
- Updated
- 2026/02/16
- 2026/01/03
A rigid body is a physics object that moves and responds to physics forces automatically. The physics engine handles its movement for you. Rigid bodies react to gravity, collisions with other objects, and forces you apply to them. When something hits a rigid body, it moves, rotates, and bounces in a realistic way depending on its physical properties like mass and friction.
With rigid bodies, you don't write code to move them step by step. Instead, you apply forces or impulses to them, and the physics engine calculates how they should move. This makes rigid bodies appropriate for objects like boxes, balls, debris that should react to collisions automatically, but also different types of vehicles and more generally anything that should behave with fairly realistic physics.
In physics terms, a rigid body is a solid object that doesn't bend or deform when forces act on it. In game development, we use "rigid body" to mean an object controlled by the physics engine, as opposed to a kinematic body, which you control with your own code, or a soft body, which can deform.
In Godot, you create rigid bodies using the RigidBody3D and RigidBody2D nodes for 3D and 2D games, respectively. These nodes have properties you can adjust, like mass, friction, and bounciness, to control how the object behaves physically.
Here's a simple example of how to use this node in Godot to create a bouncing ball in 2D:
extends RigidBody2D
func _ready():
physics_material_override = PhysicsMaterial.new()
physics_material_override.bounce = 0.8
physics_material_override.friction = 0.5Notice how we only set up the physical properties of the ball. We don't write any code to move it or handle collisions. By default, the rigid body responds to gravity automatically and bounces when it hits the ground. The physics engine handles all the collision responses and realistic movement for us.
Of course, you can add code to apply forces or impulses to the rigid body if you want to influence its movement. You can even directly take control of its velocity if needed, but out of the box, the physics engine drives the movement of rigid bodies based on collisions.
Don't stop here. Step-by-step tutorials are fun but they only take you so far.
Try one of our proven study programs to become an independent Gamedev truly capable of realizing the games you’ve always wanted to make.
Get help from peers and pros on GDQuest's Discord server!
20,000 membersJoin ServerThere are multiple ways you can join our effort to create free and open source gamedev resources that are accessible to everyone!
Sponsor this library by learning gamedev with us onGDSchool
Learn MoreImprove and build on assets or suggest edits onGithub
Contributeshare this page and talk about GDQUest onRedditYoutubeTwitter…