TileSet

Inherits: Resource < Reference < Object

Tile library for tilemaps.

Description

A TileSet is a library of tiles for a TileMap. It contains a list of tiles, each consisting of a sprite and optional collision shapes.

Tiles are referenced by a unique integer ID.

Methods

Vector2 _forward_atlas_subtile_selection ( int atlastile_id, Object tilemap, Vector2 tile_location ) virtual
Vector2 _forward_subtile_selection ( int autotile_id, int bitmask, Object tilemap, Vector2 tile_location ) virtual
bool _is_tile_bound ( int drawn_id, int neighbor_id ) virtual
void autotile_clear_bitmask_map ( int id )
int autotile_get_bitmask ( int id, Vector2 coord )
BitmaskMode autotile_get_bitmask_mode ( int id ) const
Vector2 autotile_get_icon_coordinate ( int id ) const
OccluderPolygon2D autotile_get_light_occluder ( int id, Vector2 coord ) const
NavigationPolygon autotile_get_navigation_polygon ( int id, Vector2 coord ) const
Vector2 autotile_get_size ( int id ) const
int autotile_get_spacing ( int id ) const
int autotile_get_subtile_priority ( int id, Vector2 coord )
int autotile_get_z_index ( int id, Vector2 coord )
void autotile_set_bitmask ( int id, Vector2 bitmask, int flag )
void autotile_set_bitmask_mode ( int id, BitmaskMode mode )
void autotile_set_icon_coordinate ( int id, Vector2 coord )
void autotile_set_light_occluder ( int id, OccluderPolygon2D light_occluder, Vector2 coord )
void autotile_set_navigation_polygon ( int id, NavigationPolygon navigation_polygon, Vector2 coord )
void autotile_set_size ( int id, Vector2 size )
void autotile_set_spacing ( int id, int spacing )
void autotile_set_subtile_priority ( int id, Vector2 coord, int priority )
void autotile_set_z_index ( int id, Vector2 coord, int z_index )
void clear ( )
void create_tile ( int id )
int find_tile_by_name ( String name ) const
int get_last_unused_tile_id ( ) const
Array get_tiles_ids ( ) const
void remove_tile ( int id )
void tile_add_shape ( int id, Shape2D shape, Transform2D shape_transform, bool one_way=false, Vector2 autotile_coord=Vector2( 0, 0 ) )
OccluderPolygon2D tile_get_light_occluder ( int id ) const
ShaderMaterial tile_get_material ( int id ) const
Color tile_get_modulate ( int id ) const
String tile_get_name ( int id ) const
NavigationPolygon tile_get_navigation_polygon ( int id ) const
Vector2 tile_get_navigation_polygon_offset ( int id ) const
Texture tile_get_normal_map ( int id ) const
Vector2 tile_get_occluder_offset ( int id ) const
Rect2 tile_get_region ( int id ) const
Shape2D tile_get_shape ( int id, int shape_id ) const
int tile_get_shape_count ( int id ) const
Vector2 tile_get_shape_offset ( int id, int shape_id ) const
bool tile_get_shape_one_way ( int id, int shape_id ) const
float tile_get_shape_one_way_margin ( int id, int shape_id ) const
Transform2D tile_get_shape_transform ( int id, int shape_id ) const
Array tile_get_shapes ( int id ) const
Texture tile_get_texture ( int id ) const
Vector2 tile_get_texture_offset ( int id ) const
TileMode tile_get_tile_mode ( int id ) const
int tile_get_z_index ( int id ) const
void tile_set_light_occluder ( int id, OccluderPolygon2D light_occluder )
void tile_set_material ( int id, ShaderMaterial material )
void tile_set_modulate ( int id, Color color )
void tile_set_name ( int id, String name )
void tile_set_navigation_polygon ( int id, NavigationPolygon navigation_polygon )
void tile_set_navigation_polygon_offset ( int id, Vector2 navigation_polygon_offset )
void tile_set_normal_map ( int id, Texture normal_map )
void tile_set_occluder_offset ( int id, Vector2 occluder_offset )
void tile_set_region ( int id, Rect2 region )
void tile_set_shape ( int id, int shape_id, Shape2D shape )
void tile_set_shape_offset ( int id, int shape_id, Vector2 shape_offset )
void tile_set_shape_one_way ( int id, int shape_id, bool one_way )
void tile_set_shape_one_way_margin ( int id, int shape_id, float one_way )
void tile_set_shape_transform ( int id, int shape_id, Transform2D shape_transform )
void tile_set_shapes ( int id, Array shapes )
void tile_set_texture ( int id, Texture texture )
void tile_set_texture_offset ( int id, Vector2 texture_offset )
void tile_set_tile_mode ( int id, TileMode tilemode )
void tile_set_z_index ( int id, int z_index )

Enumerations

enum BitmaskMode:

  • BITMASK_2X2 = 0
  • BITMASK_3X3_MINIMAL = 1
  • BITMASK_3X3 = 2

enum AutotileBindings:

  • BIND_TOPLEFT = 1
  • BIND_TOP = 2
  • BIND_TOPRIGHT = 4
  • BIND_LEFT = 8
  • BIND_CENTER = 16
  • BIND_RIGHT = 32
  • BIND_BOTTOMLEFT = 64
  • BIND_BOTTOM = 128
  • BIND_BOTTOMRIGHT = 256

enum TileMode:

  • SINGLE_TILE = 0
  • AUTO_TILE = 1
  • ATLAS_TILE = 2

Method Descriptions



  • bool _is_tile_bound ( int drawn_id, int neighbor_id ) virtual

  • void autotile_clear_bitmask_map ( int id )

Clears all bitmask information of the autotile.


Returns the bitmask of the subtile from an autotile given its coordinates.

The value is the sum of the values in AutotileBindings present in the subtile (e.g. a value of 5 means the bitmask has bindings in both the top left and top right).


Returns the BitmaskMode of the autotile.


  • Vector2 autotile_get_icon_coordinate ( int id ) const

Returns the subtile that’s being used as an icon in an atlas/autotile given its coordinates.

The subtile defined as the icon will be used as a fallback when the atlas/autotile’s bitmask information is incomplete. It will also be used to represent it in the TileSet editor.


Returns the light occluder of the subtile from an atlas/autotile given its coordinates.


Returns the navigation polygon of the subtile from an atlas/autotile given its coordinates.


Returns the size of the subtiles in an atlas/autotile.


  • int autotile_get_spacing ( int id ) const

Returns the spacing between subtiles of the atlas/autotile.


Returns the priority of the subtile from an autotile given its coordinates.

When more than one subtile has the same bitmask value, one of them will be picked randomly for drawing. Its priority will define how often it will be picked.


Returns the drawing index of the subtile from an atlas/autotile given its coordinates.


  • void autotile_set_bitmask ( int id, Vector2 bitmask, int flag )

Sets the bitmask of the subtile from an autotile given its coordinates.

The value is the sum of the values in AutotileBindings present in the subtile (e.g. a value of 5 means the bitmask has bindings in both the top left and top right).


Sets the BitmaskMode of the autotile.


  • void autotile_set_icon_coordinate ( int id, Vector2 coord )

Sets the subtile that will be used as an icon in an atlas/autotile given its coordinates.

The subtile defined as the icon will be used as a fallback when the atlas/autotile’s bitmask information is incomplete. It will also be used to represent it in the TileSet editor.


Sets the light occluder of the subtile from an atlas/autotile given its coordinates.


Sets the navigation polygon of the subtile from an atlas/autotile given its coordinates.


Sets the size of the subtiles in an atlas/autotile.


  • void autotile_set_spacing ( int id, int spacing )

Sets the spacing between subtiles of the atlas/autotile.


  • void autotile_set_subtile_priority ( int id, Vector2 coord, int priority )

Sets the priority of the subtile from an autotile given its coordinates.

When more than one subtile has the same bitmask value, one of them will be picked randomly for drawing. Its priority will define how often it will be picked.


  • void autotile_set_z_index ( int id, Vector2 coord, int z_index )

Sets the drawing index of the subtile from an atlas/autotile given its coordinates.


  • void clear ( )

Clears all tiles.


  • void create_tile ( int id )

Creates a new tile with the given ID.


  • int find_tile_by_name ( String name ) const

Returns the first tile matching the given name.


  • int get_last_unused_tile_id ( ) const

Returns the ID following the last currently used ID, useful when creating a new tile.


  • Array get_tiles_ids ( ) const

Returns an array of all currently used tile IDs.


  • void remove_tile ( int id )

Removes the given tile ID.


Adds a shape to the tile.


Returns the tile’s light occluder.


Returns the tile’s material.


  • Color tile_get_modulate ( int id ) const

Returns the tile’s modulation color.


Returns the tile’s name.


Returns the navigation polygon of the tile.


  • Vector2 tile_get_navigation_polygon_offset ( int id ) const

Returns the offset of the tile’s navigation polygon.


Returns the tile’s normal map texture.


  • Vector2 tile_get_occluder_offset ( int id ) const

Returns the offset of the tile’s light occluder.


  • Rect2 tile_get_region ( int id ) const

Returns the tile sub-region in the texture.


Returns a tile’s given shape.


  • int tile_get_shape_count ( int id ) const

Returns the number of shapes assigned to a tile.


Returns the offset of a tile’s shape.


  • bool tile_get_shape_one_way ( int id, int shape_id ) const

Returns the one-way collision value of a tile’s shape.


  • float tile_get_shape_one_way_margin ( int id, int shape_id ) const

Returns the Transform2D of a tile’s shape.


  • Array tile_get_shapes ( int id ) const

Returns an array of the tile’s shapes.


Returns the tile’s texture.


  • Vector2 tile_get_texture_offset ( int id ) const

Returns the texture offset of the tile.


Returns the tile’s TileMode.


  • int tile_get_z_index ( int id ) const

Returns the tile’s Z index (drawing layer).


Sets a light occluder for the tile.


Sets the tile’s material.


  • void tile_set_modulate ( int id, Color color )

Sets the tile’s modulation color.


Sets the tile’s name.


Sets the tile’s navigation polygon.


  • void tile_set_navigation_polygon_offset ( int id, Vector2 navigation_polygon_offset )

Sets an offset for the tile’s navigation polygon.


  • void tile_set_normal_map ( int id, Texture normal_map )

Sets the tile’s normal map texture.


  • void tile_set_occluder_offset ( int id, Vector2 occluder_offset )

Sets an offset for the tile’s light occluder.


  • void tile_set_region ( int id, Rect2 region )

Sets the tile’s sub-region in the texture. This is common in texture atlases.


Sets a shape for the tile, enabling collision.


  • void tile_set_shape_offset ( int id, int shape_id, Vector2 shape_offset )

Sets the offset of a tile’s shape.


  • void tile_set_shape_one_way ( int id, int shape_id, bool one_way )

Enables one-way collision on a tile’s shape.


  • void tile_set_shape_one_way_margin ( int id, int shape_id, float one_way )

  • void tile_set_shape_transform ( int id, int shape_id, Transform2D shape_transform )

Sets a Transform2D on a tile’s shape.


  • void tile_set_shapes ( int id, Array shapes )

Sets an array of shapes for the tile, enabling collision.


  • void tile_set_texture ( int id, Texture texture )

Sets the tile’s texture.


  • void tile_set_texture_offset ( int id, Vector2 texture_offset )

Sets the tile’s texture offset.


  • void tile_set_tile_mode ( int id, TileMode tilemode )

Sets the tile’s TileMode.


  • void tile_set_z_index ( int id, int z_index )

Sets the tile’s drawing index.