Inherits: Node2D < CanvasItem < Node < Object

A 2D polygon.


A Polygon2D is defined by a set of points. Each point is connected to the next, with the final point being connected to the first, resulting in a closed polygon. Polygon2Ds can be filled with color (solid or gradient) or filled with a given texture.


bool antialiased false
Array bones [  ]
Color color Color( 1, 1, 1, 1 )
int internal_vertex_count 0
float invert_border 100.0
bool invert_enable false
Texture2D normal_map  
Vector2 offset Vector2( 0, 0 )
PackedVector2Array polygon PackedVector2Array(  )
Array polygons [  ]
float shininess 1.0
NodePath skeleton NodePath("")
Color specular_color Color( 1, 1, 1, 1 )
Texture2D specular_map  
Texture2D texture  
Vector2 texture_offset Vector2( 0, 0 )
float texture_rotation  
float texture_rotation_degrees 0.0
Vector2 texture_scale Vector2( 1, 1 )
PackedVector2Array uv PackedVector2Array(  )
PackedColorArray vertex_colors PackedColorArray(  )


void add_bone ( NodePath path, PackedFloat32Array weights )
void clear_bones ( )
void erase_bone ( int index )
int get_bone_count ( ) const
NodePath get_bone_path ( int index ) const
PackedFloat32Array get_bone_weights ( int index ) const
void set_bone_path ( int index, NodePath path )
void set_bone_weights ( int index, PackedFloat32Array weights )

Property Descriptions

Default false
Setter set_antialiased(value)
Getter get_antialiased()

If true, polygon edges will be anti-aliased.

Default [  ]

Default Color( 1, 1, 1, 1 )
Setter set_color(value)
Getter get_color()

The polygon's fill color. If texture is defined, it will be multiplied by this color. It will also be the default color for vertices not set in vertex_colors.

  • int internal_vertex_count
Default 0
Setter set_internal_vertex_count(value)
Getter get_internal_vertex_count()

Default 100.0
Setter set_invert_border(value)
Getter get_invert_border()

Added padding applied to the bounding box when using invert. Setting this value too small may result in a "Bad Polygon" error.

  • bool invert_enable
Default false
Setter set_invert(value)
Getter get_invert()

If true, polygon will be inverted, containing the area outside the defined points and extending to the invert_border.

Setter set_normal_map(value)
Getter get_normal_map()

Default Vector2( 0, 0 )
Setter set_offset(value)
Getter get_offset()

The offset applied to each vertex.

Default PackedVector2Array(  )
Setter set_polygon(value)
Getter get_polygon()

The polygon's list of vertices. The final point will be connected to the first.

Note: This returns a copy of the PackedVector2Array rather than a reference.

Default [  ]
Setter set_polygons(value)
Getter get_polygons()

Default 1.0
Setter set_shininess(value)
Getter get_shininess()

Default NodePath("")
Setter set_skeleton(value)
Getter get_skeleton()

Default Color( 1, 1, 1, 1 )
Setter set_specular_color(value)
Getter get_specular_color()

Setter set_specular_map(value)
Getter get_specular_map()

Setter set_texture(value)
Getter get_texture()

The polygon's fill texture. Use uv to set texture coordinates.

Default Vector2( 0, 0 )
Setter set_texture_offset(value)
Getter get_texture_offset()

Amount to offset the polygon's texture. If (0, 0) the texture's origin (its top-left corner) will be placed at the polygon's position.

Setter set_texture_rotation(value)
Getter get_texture_rotation()

The texture's rotation in radians.

  • float texture_rotation_degrees
Default 0.0
Setter set_texture_rotation_degrees(value)
Getter get_texture_rotation_degrees()

The texture's rotation in degrees.

Default Vector2( 1, 1 )
Setter set_texture_scale(value)
Getter get_texture_scale()

Amount to multiply the uv coordinates when using a texture. Larger values make the texture smaller, and vice versa.

Default PackedVector2Array(  )
Setter set_uv(value)
Getter get_uv()

Texture coordinates for each vertex of the polygon. There should be one uv per polygon vertex. If there are fewer, undefined vertices will use (0, 0).

Default PackedColorArray(  )
Setter set_vertex_colors(value)
Getter get_vertex_colors()

Color for each vertex. Colors are interpolated between vertices, resulting in smooth gradients. There should be one per polygon vertex. If there are fewer, undefined vertices will use color.

Method Descriptions

Adds a bone with the specified path and weights.

  • void clear_bones ( )

Removes all bones from this Polygon2D.

  • void erase_bone ( int index )

Removes the specified bone from this Polygon2D.

  • int get_bone_count ( ) const

Returns the number of bones in this Polygon2D.

Returns the path to the node associated with the specified bone.

Returns the height values of the specified bone.

Sets the path to the node associated with the specified bone.

Sets the weight values for the specified bone.