CollisionShape2D

Inherits: Node2D < CanvasItem < Node < Object

Node that represents collision shape data in 2D space.

Description

Editor facility for creating and editing collision shapes in 2D space. Set the shape property to configure the shape. IMPORTANT: this is an Editor-only helper to create shapes, use CollisionObject2D.shape_owner_get_shape to get the actual shape.

You can use this node to represent all sorts of collision shapes, for example, add this to an Area2D to give it a detection shape, or add it to a PhysicsBody2D to create a solid object.

Tutorials

Properties

Color

debug_color

Color(0, 0, 0, 1)

bool

disabled

false

bool

one_way_collision

false

float

one_way_collision_margin

1.0

Shape2D

shape


Property Descriptions

Color debug_color = Color(0, 0, 0, 1)

  • void set_debug_color ( Color value )

  • Color get_debug_color ( )

The collision shape debug color.

Note: The default value is ProjectSettings.debug/shapes/collision/shape_color. The Color(0, 0, 0, 1) value documented here is a placeholder, and not the actual default debug color.


bool disabled = false

  • void set_disabled ( bool value )

  • bool is_disabled ( )

A disabled collision shape has no effect in the world. This property should be changed with Object.set_deferred.


bool one_way_collision = false

  • void set_one_way_collision ( bool value )

  • bool is_one_way_collision_enabled ( )

Sets whether this collision shape should only detect collision on one side (top or bottom).

Note: This property has no effect if this CollisionShape2D is a child of an Area2D node.


float one_way_collision_margin = 1.0

  • void set_one_way_collision_margin ( float value )

  • float get_one_way_collision_margin ( )

The margin used for one-way collision (in pixels). Higher values will make the shape thicker, and work better for colliders that enter the shape at a high velocity.


Shape2D shape

The actual shape owned by this collision shape.