unity?

Tags: 地圖, 玩家,

現在很多的遊戲都流行隨機關卡

玩家每次進入遊戲,地圖都不一樣

極大地提高了遊戲的可玩性。

工具/原料

unity4.0

一臺電腦

方法/步驟

首先我們準備一張素材圖,點擊右側的sprite editor,我們先對其進行編輯,

unity 隨機地圖的創建

unity 隨機地圖的創建

在“sprite editor”面板中,點擊slice,就會自動對圖片素材進行分割,點擊apply。就搞定了,圖片被分成了一小塊一小塊的。

unity 隨機地圖的創建

看,分割完成!

unity 隨機地圖的創建

我們新建一個空對象,添加sprite renderer 組件。該對象就是構成地圖的元件。我們通過平鋪該元件,並隨機他的sprite屬性來完成地圖創建。

OK,前置工作做好了!

unity 隨機地圖的創建

unity 隨機地圖的創建

然後就是關鍵的地方了,我們新建一個腳本文件,將它附給Main Camera,雙擊打開腳本,我們進行編輯。完成的代碼我先展示一下:

unity 隨機地圖的創建

聲明地圖元件與元件的一組sprite

public GameObject floor;

public Sprite[] floorSp;

然後回到主界面,我們將sprite 拖到floorsp中。

unity 隨機地圖的創建

再次回到腳本中,添加:

for(int i=0;i<10;i++){

for(int j=0;j<10;j++){

GameObject floor0= (GameObject)Instantiate(floor,new Vector3(0.48f*i,0.48f*j,0),Quaternion.identity);

floor.GetComponent ().sprite=floorSp[Random.Range(0,floorSp.Length-1)];

}

}什麼意思呢,sprite的邊長為0.48,我們循環創建10*10次。並每次地圖元件創建的時候隨機地圖元件的sprite“Random.Range(0,floorSp.Length-1)”。

ok!基本上完成了,我們測試一下,非常好!

每次生成地圖都不一樣!

unity 隨機地圖的創建

unity 隨機地圖的創建

相關問題答案