public static T Load (string path);

Parameters

pathPathname of the target folder.

Returns

T The requested asset returned as a Type.

Description

Loads an asset stored at path in a folder called Resources.

Returns the asset at path if it can be found otherwise returns null. Only an object of type T will be returned. The path is relative to any folder named Resources inside the Assets folder of your project. More than one Resources folder can be used. For example, a project may have Resources folders called Assets/Resources and Assets/Guns/Resources. String names that include Assets and Resources are not needed. For example the loading of a GameObject at Assets/Guns/Resources/Shotgun.prefab does not use the folder names. Also, if Assets/Resources/Guns/Missiles/PlasmaGun.prefab exists it will be loaded using Prefabs/Missiles/PlasmaGun. If you have multiple Resources folders you cannot duplicate use of an asset name.

Another example of the Resources folder. In Resources there are two files, fancyA and fancyB. Resources also has Resources2 folder. This folder contains two files, fancyA2 and fancyB2. Finally, Resources2 has a folder called Resources3 with a single file also called fancyB. (This means the file in Resources3 has the same name as in Resources.) The files in Resources can be loaded as fancyA and fancyB with no need for the folder hierarchy Assets/Resources. Also, the files in Resources2 can be loaded. Loading these require the folder directory so an example load will be Resources2/fancyB2. Finally, loading from Resources3 will be Resources2/Resources3/fancyB.

Note: Extensions must be omitted.
Note: All asset names and paths in Unity use forward slashes, paths using backslashes will not work.

// Load assets from the Resources folder.  Ignore other named and typed assets.
using UnityEngine;

public class ExampleClass : MonoBehaviour { void Start() { //Load a text file (Assets/Resources/Text/textFile01.txt) var textFile = Resources.Load<TextAsset>("Text/textFile01");

//Load text from a JSON file (Assets/Resources/Text/jsonFile01.json) var jsonTextFile = Resources.Load<TextAsset>("Text/jsonFile01"); //Then use JsonUtility.FromJson<T>() to deserialize jsonTextFile into an object

//Load a Texture (Assets/Resources/Textures/texture01.png) var texture = Resources.Load<Texture2D>("Textures/texture01");

//Load a Sprite (Assets/Resources/Sprites/sprite01.png) var sprite = Resources.Load<Sprite>("Sprites/sprite01");

//Load an AudioClip (Assets/Resources/Audio/audioClip01.mp3) var audioClip = Resources.Load<AudioClip>("Audio/audioClip01"); } }

public static Object Load (string path);
public static Object Load (string path, Type systemTypeInstance);

Parameters

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

Returns

Object The requested asset returned as an Object.

Description

加载存储在 Resources 文件夹中的 path 处的资源。

如果在 path 处找到指定资源,则返回该资源,否则返回 null。 如果提供该参数,则仅返回 type 类型的对象。 path 是相对于项目的 Assets 文件夹中的任何 Resources 文件夹的相对路径,必须省略扩展名。

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

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { // Assigns a texture named "Assets/Resources/glass" to a Plane. void Start() { GameObject go = GameObject.CreatePrimitive(PrimitiveType.Plane); var rend = go.GetComponent<Renderer>(); rend.material.mainTexture = Resources.Load("glass") as Texture; } }
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void Start() { // Instantiates a Prefab named "enemy" located in any Resources // folder in your project's Assets folder. GameObject instance = Instantiate(Resources.Load("enemy", typeof(GameObject))) as GameObject; } }