StaticBody3D

Inherits: PhysicsBody3D < CollisionObject3D < Node3D < Node < Object

Inherited By: AnimatableBody3D

Physics body for 3D physics which is static or moves only by script. Useful for floor and walls.

Description

Static body for 3D physics.

A static body is a simple body that can't be moved by external forces or contacts. It is ideal for implementing objects in the environment, such as walls or platforms. In contrast to RigidDynamicBody3D, it doesn't consume any CPU resources as long as they don't move.

They have extra functionalities to move and affect other bodies:

Static transform change: Static bodies can be moved by animation or script. In this case, they are just teleported and don't affect other bodies on their path.

Constant velocity: When constant_linear_velocity or constant_angular_velocity is set, static bodies don't move themselves but affect touching bodies as if they were moving. This is useful for simulating conveyor belts or conveyor wheels.

Property Descriptions

  • Vector3 constant_angular_velocity

Default

Vector3(0, 0, 0)

Setter

set_constant_angular_velocity(value)

Getter

get_constant_angular_velocity()

The body's constant angular velocity. This does not rotate the body, but affects touching bodies, as if it were rotating.


Default

Vector3(0, 0, 0)

Setter

set_constant_linear_velocity(value)

Getter

get_constant_linear_velocity()

The body's constant linear velocity. This does not move the body, but affects touching bodies, as if it were moving.


Setter

set_physics_material_override(value)

Getter

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.