2D系セール中なので、Assetを一つ買ってみました(ゝω・)
Isometric Tile Bundle
https://www.assetstore.unity3d.com/jp/#!/content/27944
半額なので$7.5
入ってるのはSpriteだけで、Scriptは付いてきません。
なにかEditor系で並べることを想定しているのかもしれないけど
よく判らないので、
さっそくScriptを書いてみました、
Sprite test; Sprite test2; void Start () { test = Resources.Load<Sprite>("ISO_Tile_Brick_Brick_01"); test2 = Resources.Load<Sprite>("ISO_Tile_Dirt_01_Grass_01"); Sprite sp = Instantiate(test ) as Sprite; Sprite sp2 = Instantiate(test2) as Sprite; for(float y=0;y<=20;y++) for(float x=20;x>=0;x--) { GameObject obj2 = new GameObject("Sprite"); SpriteRenderer obj = obj2.AddComponent<SpriteRenderer>(); if(Random.Range(0,100)<50) obj.sprite = Instantiate(test) as Sprite; else obj.sprite = Instantiate(test2) as Sprite; float noise = Random.Range(-0.1f,0.1f); obj.transform.position = new Vector3(x/2f+(y/2f),(y/4f)-(x/4f)+noise); } }
上下をランダムに多少変動させてみました。
山とか岡を自動で作る場合は、フラクタルで二次元マップ作ってやるといいらしいです。