小编典典
您无法使用StreamReader或File类读取Resources目录。您必须使用Resources.Load。
1。 该路径相对于项目的Assets文件夹内的任何Resources文件夹。
2 。做 不 包括文件扩展名,如 .TXT , png格式 , MP3播放 路径参数。
3。 在 Resources 文件夹中有另一个文件夹时,请使用正斜杠而不是反斜杠。反斜杠将不起作用。
文字档 :
TextAsset txtAsset = (TextAsset)Resources.Load("textfile", typeof(TextAsset));
string tileFile = txtAsset.text;
支持的 TextAsset 格式:
TXT 的.html 的.htm 的.xml .bytes 以.json 的.csv .yaml .FNT
声音文件 :
AudioClip audio = Resources.Load("soundFile", typeof(AudioClip)) as AudioClip;
图片文件 :
Texture2D texture = Resources.Load("textureFile", typeof(Texture2D)) as Texture2D;
精灵-单人 :
图像的 纹理类型 设置为 精灵(2D和UI) 和
与图像 雪碧模式 设置为 单 。
Sprite sprite = Resources.Load("spriteFile", typeof(Sprite)) as Sprite;
精灵-多个 :
图像的 纹理类型 设置为 精灵(2D和UI) 和
与图像 雪碧模式 设置为 多 。
Sprite[] sprite = Resources.LoadAll("spriteFile") as Sprite[];
视频文件(Unity > = 5.6):
VideoClip video = Resources.Load("videoFile", typeof(VideoClip)) as VideoClip;
GameObject预制件 :
GameObject prefab = Resources.Load("shipPrefab", typeof(GameObject)) as GameObject;
3D网格(例如FBX文件)
Mesh model = Resources.Load("yourModelFileName", typeof(Mesh)) as Mesh;
3D网格(来自GameObject Prefab)
MeshFilter modelFromGameObject = Resources.Load("yourGameObject", typeof(MeshFilter)) as MeshFilter;
Mesh loadedMesh = modelFromGameObject.sharedMesh; //Or design.mesh
3D模型(作为GameObject)
GameObject loadedObj = Resources.Load("yourGameObject") as GameObject;
//MeshFilter meshFilter = loadedObj.GetComponent();
//Mesh loadedMesh = meshFilter.sharedMesh;
GameObject object1 = Instantiate(loadedObj) as GameObject;
访问子文件夹中的文件 :
例如,如果在 资源 文件夹中的子文件夹“ Sound ”中有一个 shoot.mp3 文件,则可以使用正斜杠:
AudioClip audio = Resources.Load("Sound/shoot", typeof(AudioClip)) as AudioClip;
异步加载 :
IEnumerator loadFromResourcesFolder()
{
//Request data to be loaded
ResourceRequest loadAsync = Resources.LoadAsync("shipPrefab", typeof(GameObject));
//Wait till we are done loading
while (!loadAsync.isDone)
{
Debug.Log("Load Progress: " + loadAsync.progress);
yield return null;
}
//Get the loaded data
GameObject prefab = loadAsync.asset as GameObject;
}
使用方法 :StartCoroutine(loadFromResourcesFolder());
2020-05-19