如何通过脚本在Unity中渲染等轴测图?

时间:2019-02-18 17:36:14

标签: unity3d

我是Unity的新手,所以请和我一起住。

我正在尝试为游戏的地形构建等距的tilemap对象。平铺图像存储在二进制文件中。我已经读完了Unity的Isometric Tilemaps文档,但是我还不清楚如何通过脚本插入tilemap图像。

希望这里的人可以概述如何解决此问题,或为我提供一些有用的文档。

如果有帮助,下面是一些我正在解析的二进制文件的简要文档:https://uo.stratics.com/heptazane/fileformats.shtml#3.8

1 个答案:

答案 0 :(得分:0)

如果要在(x,y)坐标上设置图块,则可以使用Tilemap方法SetTile(或在方法GetTile的返回图块上更改纹理),例如:

//fields:
public Tilemap Map;
public TileBase[] TileTypes = { water, ground, mountain.....} //fill in the inspector (Texture2D/Sprite/Tile/Image/anything you want)

//array = world from your binary file (I use int but you can use anything you want)
public void GenerateTileMap (int[,] world)
{
    for (int x = 0; x < world.GetLength(0); x++)
        for (int y = 0; y < world.GetLength(1); y++)
            Map.SetTile(new Vector3Int(x, y, 0), TileTypes[world[x, y]]);
}

有关脚本api参考的更多信息(请参见公共方法):https://docs.unity3d.com/ScriptReference/Tilemaps.Tilemap.html