Inherits: Node2D < CanvasItem < Node < Object

Category: Core

Brief Description

Defines a 2D collision polygon.


enum BuildMode:

  • BUILD_SOLIDS = 0 — Collisions will include the polygon and its contained area.
  • BUILD_SEGMENTS = 1 — Collisions will only include the polygon edges.


Provides a 2D collision polygon to a CollisionObject2D parent. Polygon can be drawn in the editor or specified by a list of vertices.

Property Descriptions

Setter set_build_mode(value)
Getter get_build_mode()

Collision build mode. Use one of the BUILD_* constants. Default value: BUILD_SOLIDS.

Setter set_disabled(value)
Getter is_disabled()

If true, no collisions will be detected.

  • bool one_way_collision
Setter set_one_way_collision(value)
Getter is_one_way_collision_enabled()

If true, only edges that face up, relative to CollisionPolygon2D’s rotation, will collide with other objects.

  • float one_way_collision_margin
Setter set_one_way_collision_margin(value)
Getter get_one_way_collision_margin()

Setter set_polygon(value)
Getter get_polygon()

The polygon’s list of vertices. The final point will be connected to the first. The returned value is a clone of the PoolVector2Array, not a reference.