Legacy Documentation: Version 2017.1 (Go to current version)
言語English
  • C#
  • JS

Script language

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

Resources.FindObjectsOfTypeAll

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function FindObjectsOfTypeAll(type: Type): Object[];
public static Object[] FindObjectsOfTypeAll(Type type);

パラメーター

type オブジェクトの型

戻り値

Object[] typetype から派生したオブジェクトの配列

説明

type で指定した型のすべてのオブジェクトを取得します

この関数は Unity オブジェクトとして読み込まれているものを対象として取得します。例えばゲームオブジェクト、プレハブ、マテリアル、メッシュ、テクスチャなどです。また、通常は触れない内部的なオブジェクトも取得することができます。したがって十分に注意して扱うようにしてください。 この関数は Object.FindObjectsOfType と比べてさらに無効となっているオブジェクトの取得まで出来てしまいます。

この関数はとても処理が遅いので毎フレーム使用するのは推奨されません。

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

public class ExampleScript : MonoBehaviour { // This script displays the number of allocated Unity objects by type. // This is useful for finding leaks. Knowing the type of object // (mesh, texture, sound clip, game object) that is getting leaked is // the first step. You could then print the names of all leaked assets of that type.

void Start() { print("All " + Resources.FindObjectsOfTypeAll(typeof(UnityEngine.Object)).Length); print("Textures " + Resources.FindObjectsOfTypeAll(typeof(Texture)).Length); print("AudioClips " + Resources.FindObjectsOfTypeAll(typeof(AudioClip)).Length); print("Meshes " + Resources.FindObjectsOfTypeAll(typeof(Mesh)).Length); print("Materials " + Resources.FindObjectsOfTypeAll(typeof(Material)).Length); print("GameObjects " + Resources.FindObjectsOfTypeAll(typeof(GameObject)).Length); print("Components " + Resources.FindObjectsOfTypeAll(typeof(Component)).Length); } }
no example available in JavaScript
using UnityEngine;
using UnityEditor;
using System.Collections.Generic;

public class ExampleScript : MonoBehaviour { // This script finds all the objects in scene, excluding prefabs:

List<GameObject> GetAllObjectsInScene() { List<GameObject> objectsInScene = new List<GameObject>();

foreach (GameObject go in Resources.FindObjectsOfTypeAll(typeof(GameObject)) as GameObject[]) { if (go.hideFlags == HideFlags.NotEditable || go.hideFlags == HideFlags.HideAndDontSave) continue;

if (!EditorUtility.IsPersistent(go.transform.root.gameObject)) continue;

objectsInScene.Add(go); }

return objectsInScene; } }

public static function FindObjectsOfTypeAll(): T[];
public static T[] FindObjectsOfTypeAll();

説明

T で指定した型からすべてのオブジェクトを取得します

この関数は Unity オブジェクトとして読み込まれているものを対象として取得します。例えばゲームオブジェクト、プレハブ、マテリアル、メッシュ、テクスチャなどです。また、通常は触れない内部的なオブジェクトも取得することができます。したがって十分に注意して扱うようにしてください。 この関数は Object.FindObjectsOfType と比べてさらに無効となっているオブジェクトの取得まで出来てしまいます。

この関数はとても処理が遅いので毎フレーム使用するのは推奨されません。

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

public class ExampleScript : MonoBehaviour { // This script displays the number of allocated Unity objects by type. // This is useful for finding leaks. Knowing the type of object // (mesh, texture, sound clip, game object) that is getting leaked is // the first step. You could then print the names of all leaked assets of that type.

void Start() { print("All " + Resources.FindObjectsOfTypeAll<UnityEngine.Object>().Length); print("Textures " + Resources.FindObjectsOfTypeAll<Texture>().Length); print("AudioClips " + Resources.FindObjectsOfTypeAll<AudioClip>().Length); print("Meshes " + Resources.FindObjectsOfTypeAll<Mesh>().Length); print("Materials " + Resources.FindObjectsOfTypeAll<Material>().Length); print("GameObjects " + Resources.FindObjectsOfTypeAll<GameObject>().Length); print("Components " + Resources.FindObjectsOfTypeAll<Component>().Length); } }
no example available in JavaScript
using UnityEngine;
using UnityEditor;
using System.Collections.Generic;

public class ExampleScript : MonoBehaviour { // This script finds all the objects in scene, excluding prefabs:

List<GameObject> GetAllObjectsInScene() { List<GameObject> objectsInScene = new List<GameObject>();

foreach (GameObject go in Resources.FindObjectsOfTypeAll(typeof(GameObject)) as GameObject[]) { if (go.hideFlags == HideFlags.NotEditable || go.hideFlags == HideFlags.HideAndDontSave) continue;

if (!EditorUtility.IsPersistent(go.transform.root.gameObject)) continue;

objectsInScene.Add(go); }

return objectsInScene; } }

Did you find this page useful? Please give it a rating: