Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

CollisionPolygon2D

Inherits: Node2D < CanvasItem < Node < Object

A node that provides a polygon shape to a CollisionObject2D parent.

Description

A node that provides a thickened polygon shape (a prism) to a CollisionObject2D parent and allows to edit it. The polygon can be concave or convex. This can give a detection shape to an Area2D or turn PhysicsBody2D into a solid object.

Warning: A non-uniformly scaled CollisionShape2D will likely not behave as expected. Make sure to keep its scale the same on all axes and adjust its shape resource instead.

Properties

BuildMode

build_mode

0

bool

disabled

false

bool

one_way_collision

false

float

one_way_collision_margin

1.0

PackedVector2Array

polygon

PackedVector2Array()


Enumerations

enum BuildMode:

BuildMode BUILD_SOLIDS = 0

Collisions will include the polygon and its contained area. In this mode the node has the same effect as several ConvexPolygonShape2D nodes, one for each convex shape in the convex decomposition of the polygon (but without the overhead of multiple nodes).

BuildMode BUILD_SEGMENTS = 1

Collisions will only include the polygon edges. In this mode the node has the same effect as a single ConcavePolygonShape2D made of segments, with the restriction that each segment (after the first one) starts where the previous one ends, and the last one ends where the first one starts (forming a closed but hollow polygon).


Property Descriptions

BuildMode build_mode = 0

Collision build mode. Use one of the BuildMode constants.


bool disabled = false

  • void set_disabled ( bool value )

  • bool is_disabled ( )

If true, no collisions will be detected.