Version: 2022.3
public static Object[] LoadAll (string path);
public static Object[] LoadAll (string path, Type systemTypeInstance);

参数

path 目标文件夹的路径名称。使用空字符串(即 "")时,该函数将加载 Resources 文件夹的全部内容。
systemTypeInstance 返回的对象的类型筛选器。

描述

加载位于 Resources 文件夹中的 path 处的文件夹中的所有资源,或加载位于该处的文件。

如果 path 引用的是文件夹,则返回该文件夹中的所有资源。 如果 path 引用的是文件,则仅返回该资源。 path 是相对于项目的 Assets 文件夹中的任何 Resources 文件夹的相对路径。

**注意:**Unity 中的所有资源名称和路径都使用正斜杠。使用反斜杠的路径将**无法**正常工作。

// Loads all assets in the "Resources/Textures" folder
// Then picks a random one from the list.
// Note: Random.Range in this case returns [low,high]
// range, i.e. the high value is not included in the range.
using UnityEngine;

public class ExampleClass : MonoBehaviour { private Object[] textures; private GameObject go;

void Start() { textures = Resources.LoadAll("Textures", typeof(Texture2D));

foreach (var t in textures) { Debug.Log(t.name); }

go = GameObject.CreatePrimitive(PrimitiveType.Cube); }

void OnGUI() { if (GUI.Button(new Rect(10, 70, 150, 30), "Change texture")) { // change texture on cube Texture2D texture = (Texture2D)textures[Random.Range(0, textures.Length)]; go.GetComponent<Renderer>().material.mainTexture = texture; } } }

public static T[] LoadAll (string path);

参数

path 目标文件夹的路径名称。使用空字符串(即 "")时,该函数将加载 Resources 文件夹的全部内容。

描述

加载位于 Resources 文件夹中的 path 处的文件夹中的所有资源,或加载位于该处的文件。

如果 path 引用的是文件夹,则返回该文件夹中的所有资源。 如果 path 引用的是文件,则仅返回该资源。 仅返回 T 类型的对象。 path 是相对于项目的 Assets 文件夹中的任何 Resources 文件夹的相对路径。

下面的脚本示例演示如何将 LoadAll 与 Linq 配合使用。

// Loads all assets in the "Resources/Textures" folder
// using Linq.
using UnityEngine;
using System.Linq;

public class ExampleClass : MonoBehaviour { void Start() { var textures = Resources.LoadAll("Textures", typeof(Texture2D)).Cast<Texture2D>().ToArray(); foreach (var t in textures) Debug.Log(t.name); } }