首先介紹下Resources.Load的使用方法
在這里為了簡單使用一個Cube代替,
首先在Project面板建立一個文件夾命名為 Resources (這個文件夾的名字一定不能錯),接著在Resources文件夾下建立一個文件夾命名為Prefabs的文件夾
接著Hierarchy面板右鍵建立一個Cube,將Cube拖到Resources下的Prefabs文件夾中做為預設體,如下圖:
在Hierarchy面板下建立一個空物體命名為CubePrefabs
接著開始寫代碼了,新建一個腳本名字隨便起
腳本內容:
GameObject hp_bar = (GameObject)Instantiate(Resources.Load("Prefabs/Cube"), new Vector3(34.5f, 237.5f, 0), Quaternion.identity);
GameObject mUICanvas = GameObject.Find("CubePrefabs");
hp_bar.transform.parent = mUICanvas.transform;
下面開始介紹Asset Bundle加載方式:
首先先建立幾個文件夾Editor, StreamingAssets,Scripts 在StreamingAssets下建立一個Bundle文件夾,
接著建立一個sphere 將它改名為abc,并且拖為預設體,將在Hierarchy的sphere刪掉
這樣前期的準備工作就好了,下面進入代碼時間:
在Editor下建立一個腳本命名為Bulid
當你寫完這些的時候,就會出現這么個玩意
下面我們開始建立倆個腳本:一個為Load,一個為test
將這倆個腳本都掛到Main Camera上
下面開始表演正真的技術
1,選中你的預設體abc,然后在unity的菜單欄選中AssetBundle→Build,這時會在你的StreamingAssets→Bundles
下有4個文件夾
這表示你已經完成一半了,
選中你的預設體abc,在你的unity右下角有一個框,將紅框里的名字改為abc.a
現在點擊運行,就可以動態加載出你的預設體了