Version: 2017.3

Object.FindObjectsOfType

Switch to Manual
public static Object[] FindObjectsOfType (Type type);

Parameters

type The type of object to find.

Returns

Object[] The array of objects found matching the type specified.

Description

Returns a list of all active loaded objects of Type type.

It will return no assets (meshes, textures, prefabs, ...) or inactive objects. Will not return objects that have HideFlags.DontSave set. Use Resources.FindObjectsOfTypeAll to avoid these limitations.

Please note that this function is very slow. It is not recommended to use this function every frame. In most cases you can use the singleton pattern instead.

using UnityEngine;

// Ten GameObjects are created and have TextMesh components added. // When the game runs press the Space key and the number of // TextMesh components are displayed.

public class ScriptExample : MonoBehaviour { private const int count = 10;

void Start() { var gameObjects = new GameObject[count]; var expectedObjects = new TextMesh[count];

for (var i = 0; i < count; ++i) { gameObjects[i] = new GameObject(); expectedObjects[i] = gameObjects[i].AddComponent<TextMesh>(); } }

void Update() { if (Input.GetKeyDown(KeyCode.Space)) { var foundObjects = FindObjectsOfType<TextMesh>(); Debug.Log(foundObjects + " : " + foundObjects.Length); } } }