Skip to main content

StaticBody3D

Inherits: PhysicsBody3D < CollisionObject3D < Node3D < Node < Object

Inherited By: AnimatableBody3D

A 3D 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 3D physics body. It can't be moved by external forces or contacts, but can be moved manually by other means such as code, AnimationMixer\ s (with AnimationMixer.callback_mode_process set to AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS), and RemoteTransform3D.

When StaticBody3D is moved, it is teleported to its new position without affecting other physics bodies in its path. If this is not desired, use AnimatableBody3D instead.

\ StaticBody3D 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).

Tutorials

Properties

Vector3constant_angular_velocityVector3(0, 0, 0)
Vector3constant_linear_velocityVector3(0, 0, 0)
PhysicsMaterialphysics_material_override

Property Descriptions

Vector3 constant_angular_velocity = Vector3(0, 0, 0) 🔗

  • void set_constant_angular_velocity\ (\ value: Vector3\ )
  • Vector3 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.


Vector3 constant_linear_velocity = Vector3(0, 0, 0) 🔗

  • void set_constant_linear_velocity\ (\ value: Vector3\ )
  • Vector3 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.


PhysicsMaterial 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.