Version: 2023.2
TileBase
TileData

Tile

Tile 类是一个允许在瓦片地图上渲染精灵的简单类。Tile 继承自 TileBase。下面描述了为具有 Tile 的行为而要重写的方法。

public Sprite sprite;
public Color color = Color.white;
public Matrix4x4 transform = Matrix4x4.identity;
public GameObject gameobject = null;
public TileFlags flags = TileFlags.LockColor; 
public ColliderType colliderType = ColliderType.Sprite; 

These are the default properties of a Tile. If the Tile was created by dragging and dropping a Sprite onto the Tile Palette, the Tile would have the Sprite property set as the sprite that was dropped in. You may adjust the properties of the Tile instance to get the Tile required.

public void RefreshTile(Vector3Int location, ITilemap tilemap) 

不会由 TileBase 重写。默认情况下,仅刷新该位置的瓦片。

public override void GetTileData(Vector3Int location, ITilemap tilemap, ref TileData tileData)
{
    tileData.sprite = this.sprite;
    tileData.color = this.color;
    tileData.transform = this.transform;
    tileData.gameObject = this.gameObject;
    tileData.flags = this.flags;

tileData.colliderType = this.colliderType;
}

通过将 Tile 实例的属性复制到 tileData 来填充瓦片地图渲染瓦片时所需的信息。

public bool GetTileAnimationData(Vector3Int location, ITilemap tilemap, ref TileAnimationData tileAnimationData) 

不会由 TileBase 重写。默认情况下,Tile 类不运行任何瓦片动画并会返回 false。

public bool StartUp(Vector3Int location, ITilemap tilemap, GameObject go) 

This is not overridden from TileBase. By default, the Tile class does not have any special start up functionality. If tileData.gameObject is set, the Tilemap still instantiates it on start up and place it at the location of the Tile.


  • 2017–09–06 页面已发布
TileBase
TileData