Version: 5.4 (switch to 5.5b)
言語English
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Resources

class in UnityEngine

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

マニュアルに切り替える

Description

アセットを含むオブジェクトにアクセスすることができます。

エディター上で Resources.FindObjectsOfTypeAll を使用してアセットとシーンのオブジェクトを見つけることができます。

"Resources" という名前のフォルダー内にあるすべてのアセットは、Resources.Load 関数を介してアクセスすることができます。 Multiple "Resources" folders may exist and when loading objects each will be examined.

In Unity you usually don't use path names to access assets, instead you expose a reference to an asset by declaring a member-variable, and then assign it in the inspector. この方法を使えば、Unity はビルドするときに自動的にアセットの容量を計算することができます。 同じオブジェクトを生成しないので、ゲームサイズを最小限に抑えることができるようになります。 "Resources" フォルダーにアセットを配置する場合はこれが出来ず、結果的に "Resources" フォルダーのすべてのアセットはビルドに含まれます。

パス名で利用する欠点として、スクリプトが直接アセットの場所など必要な情報を持つと、他のスクリプトで使用する際、再利用できず同じものを生成してしまうということです。 その一方で、インスペクターに情報が表示され、設定がしやすいという利点もあるので、場合によって使い分けるようにします。

しかし、インスペクター上でリンクするのでなく、アセットを名前でフェッチしたほうが便利な場合があります。 Essentially whenever it is inconvenient to assign the reference to the object in the inspector. 例えばゲームオブジェクトをスクリプトからプロシージャルに作成して、プロシージャル生成したメッシュにテクスチャを割り当てする場合があるかもしれません。

いくつかの読み込み済みのアセット、特にテクスチャではシーン上にインスタンスが存在しない場合もメモリを多く消費します。アセットが不要となったときに、このメモリを再び使用可能とするには Resources.UnloadUnusedAssets を使用できます。

no example available in JavaScript
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void Start() { GameObject go = GameObject.CreatePrimitive(PrimitiveType.Plane); Renderer rend = go.GetComponent<Renderer>(); rend.material.mainTexture = Resources.Load("glass") as Texture; } }

Static Functions

FindObjectsOfTypeAll type で指定した型のすべてのオブジェクトを取得します
Loadパスを設定し、Resources フォルダーにあるアセットを読み込みます
LoadAllLoads all assets in a folder or file at path in a Resources folder.
LoadAsyncAsynchronously loads an asset stored at path in a Resources folder.
UnloadAssetUnloads assetToUnload from memory.
UnloadUnusedAssetsUnloads assets that are not used.