Up to date
This page is up to date for Godot 4.1
. If you still find outdated information, please open an issue.
StaticBody2D
Inherits: PhysicsBody2D < CollisionObject2D < Node2D < CanvasItem < Node < Object
Inherited By: AnimatableBody2D
A 2D physics body that can’t be moved by external forces. When moved manually, it doesn’t affect other bodies in its path.
Description
A static 2D physics body. It can’t be moved by external forces or contacts, but can be moved manually by other means such as code, AnimationPlayers (with AnimationPlayer.playback_process_mode set to ANIMATION_PROCESS_PHYSICS
), and RemoteTransform2D.
When StaticBody2D is moved, it is teleported to its new position without affecting other physics bodies in its path. If this is not desired, use AnimatableBody2D instead.
StaticBody2D is useful for completely static objects like floors and walls, as well as moving surfaces like conveyor belts and circular revolving platforms (by using constant_linear_velocity and constant_angular_velocity).
Properties
| ||
| ||
Property Descriptions
float constant_angular_velocity = 0.0
The body’s constant angular velocity. This does not rotate the body, but affects touching bodies, as if it were rotating.
Vector2 constant_linear_velocity = Vector2(0, 0)
The body’s constant linear velocity. This does not move the body, but affects touching bodies, as if it were moving.
PhysicsMaterial physics_material_override
void set_physics_material_override ( PhysicsMaterial value )
PhysicsMaterial get_physics_material_override ( )
The physics material override for the body.
If a material is assigned to this property, it will be used instead of any other physics material, such as an inherited one.