Unity載入資源的3種方法
阿新 • • 發佈:2019-01-10
方法一:
在指令碼中public一個量,然後在編輯器把相應的prefab拖過來
這種方法靈活但也混亂
方法二:
動態載入,Assets目錄下建立一個名為Resources的資料夾,通過Resources.Load(path)載入該檔案載入該檔案下的資源
如
(GameObject)Resources.Load("Prefab/Tile", typeof(GameObject))
就是載入Resources/Prefab下名為Tile的物件
注意:路徑名使用正斜槓“/”,如果使用反斜槓“\”會不正常執行
即便不在Resources下的檔案一樣可以載入
如
Resources.LoadAssetAtPath("Assets/Prefabs/Cube.prefab" , typeof(GameObject));
可以載入Assets目錄下檔案
這種方法不允許更改檔案目錄結構,否則錯誤難以控制
方法三
查詢遊戲內的物體
//查詢指定物件的子物體
GameObject go;
//返回TransfTransform[]
go.GetComponentsInChildren(typeof(Transform), true);
//遍歷場景中所有物體,獲取泛型T型別物體
object[] gameObjects;
gameObjects = GameObject.FindSceneObjectsOfType(typeof(Transform));