/Godot 3.2


Inherits: Node2D < CanvasItem < Node < Object

Defines a 2D collision polygon.


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


BuildMode build_mode 0
bool disabled false
bool one_way_collision false
float one_way_collision_margin 1.0
PoolVector2Array polygon PoolVector2Array(  )


enum BuildMode:

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

Property Descriptions

BuildMode build_mode

Default 0
Setter set_build_mode(value)
Getter get_build_mode()

Collision build mode. Use one of the BuildMode constants.

bool disabled

Default false
Setter set_disabled(value)
Getter is_disabled()

If true, no collisions will be detected.

bool one_way_collision

Default false
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

Default 1.0
Setter set_one_way_collision_margin(value)
Getter 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 polygon at a high velocity.

PoolVector2Array polygon

Default PoolVector2Array(  )
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.

© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.