Work in progress

Godot documentation is being updated to reflect the latest changes in version 4.0. Some documentation pages may still state outdated information. This banner will tell you if you're reading one of such pages.

The contents of this page are up to date. If you can still find outdated information, please open an issue.


Inherits: Resource < RefCounted < Object

Inherited By: BoxShape3D, CapsuleShape3D, ConcavePolygonShape3D, ConvexPolygonShape3D, CylinderShape3D, HeightMapShape3D, SeparationRayShape3D, SphereShape3D, WorldBoundaryShape3D

Base class for all 3D shape resources.


Base class for all 3D shape resources. Nodes that inherit from this can be used as shapes for a PhysicsBody3D or Area3D objects.











get_debug_mesh ( )

Property Descriptions

float custom_solver_bias = 0.0

  • void set_custom_solver_bias ( float value )

  • float get_custom_solver_bias ( )

The shape's custom solver bias. Defines how much bodies react to enforce contact separation when this shape is involved.

When set to 0, the default value from ProjectSettings.physics/3d/solver/default_contact_bias is used.

float margin = 0.04

  • void set_margin ( float value )

  • float get_margin ( )

The collision margin for the shape. Used in Bullet Physics only.

Collision margins allow collision detection to be more efficient by adding an extra shell around shapes. Collision algorithms are more expensive when objects overlap by more than their margin, so a higher value for margins is better for performance, at the cost of accuracy around edges as it makes them less sharp.

Method Descriptions

ArrayMesh get_debug_mesh ( )

Returns the ArrayMesh used to draw the debug collision for this Shape3D.