# PlayableDirector

> Controls playback of Playable objects.

## Definition

* **Type:** Class
* **Namespace:** [UnityEngine.Playables](/engine/6000.5/script-reference/unityengine/playables.md)
* **Assembly:** UnityEngine.DirectorModule
* **Inherits from:** [Behaviour](/engine/6000.5/script-reference/unityengine/behaviour.md)
* **Implements:** [IExposedPropertyTable](/engine/6000.5/script-reference/unityengine/iexposedpropertytable.md)

```csharp
public class PlayableDirector : Behaviour, IExposedPropertyTable
```

## Remarks

The PlayableDirector is primarily used by the [Timeline Package](https://docs.unity3d.com/Manual/com.unity.timeline.html) to handle bindings to scene objects and control playback of the [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md).

The PlayableDirector object builds a [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md) from a [PlayableAsset](/engine/6000.5/script-reference/unityengine/playables/playableasset.md). Once the graph is built, use the PlayableDirector to manage playback of the graph's [Playable](/engine/6000.5/script-reference/unityengine/playables/playable.md). To control playback of the [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md), use:

* [PlayableDirector.Play](/engine/6000.5/script-reference/unityengine/playables/playabledirector/play.md)
* [PlayableDirector.Stop](/engine/6000.5/script-reference/unityengine/playables/playabledirector/stop.md)
* [PlayableDirector.Pause](/engine/6000.5/script-reference/unityengine/playables/playabledirector/pause.md)
* [PlayableDirector.Resume](/engine/6000.5/script-reference/unityengine/playables/playabledirector/resume.md)

To be notified of playback state changes, subscribe to:

* [PlayableDirector.played](/engine/6000.5/script-reference/unityengine/playables/playabledirector/played.md)
* [PlayableDirector.paused](/engine/6000.5/script-reference/unityengine/playables/playabledirector/paused.md)
* [PlayableDirector.stopped](/engine/6000.5/script-reference/unityengine/playables/playabledirector/stopped.md)

To handle references between assets and scene objects, PlayableDirector implements [IExposedPropertyTable](/engine/6000.5/script-reference/unityengine/iexposedpropertytable.md). To set or get bindings, use:

* [PlayableDirector.SetGenericBinding](/engine/6000.5/script-reference/unityengine/playables/playabledirector/setgenericbinding.md)
* [PlayableDirector.GetGenericBinding](/engine/6000.5/script-reference/unityengine/playables/playabledirector/getgenericbinding.md)

Multiple PlayableDirectors can reference the same [PlayableAsset](/engine/6000.5/script-reference/unityengine/playables/playableasset.md). When this occurs, each PlayableDirector creates its own independent [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md) with its own scene bindings.

The following example demonstrates how to use the Playable Director to bind scene objects to assets and how to control the Playable Graph.

## Examples

```csharp
using System;
using UnityEngine;
using UnityEngine.Playables;
using Object = UnityEngine.Object;

[RequireComponent(typeof(PlayableDirector))]
public class PlayableDirectorSample : MonoBehaviour
{
    PlayableDirector m_Director;
    TestPlayableAsset m_TestAsset;

    void Start()
    {
        m_Director = gameObject.GetComponent<PlayableDirector>();
        m_TestAsset = ScriptableObject.CreateInstance<TestPlayableAsset>();
        m_Director.playableAsset = m_TestAsset;
        m_Director.SetGenericBinding(m_TestAsset, gameObject);
        BuildGraphAndPlay();
    }

    void BuildGraphAndPlay()
    {
        m_Director.RebuildGraph();
        if (m_Director.playableGraph.IsValid())
        {
            m_Director.Play();
        }
    }
}

[Serializable]
class TestBehaviour : PlayableBehaviour
{
    public override void OnPlayableCreate(Playable playable) { }

    public override void OnPlayableDestroy(Playable playable) { }
    public Object target { get; set; }
    public override void OnBehaviourPlay(Playable playable, FrameData info)
    {
        base.OnBehaviourPlay(playable, info);
        if (target != null)
        {
            Debug.Log($"{target.name}-{info.frameId}");
        }
    }
}

[Serializable]
class TestPlayableAsset : PlayableAsset
{
    public override Playable CreatePlayable(PlayableGraph graph, GameObject owner)
    {
        ScriptPlayable<TestBehaviour> behavior = ScriptPlayable<TestBehaviour>.Create(graph);
        var director = owner.GetComponent<PlayableDirector>();
        Object target = director.GetGenericBinding(this);
        behavior.GetBehaviour().target = target;
        return behavior;
    }
}
```

## Properties

| Property                                                                                                         | Description                                                                                                                                                                                                                                                       |
| ---------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [duration](/engine/6000.5/script-reference/unityengine/playables/playabledirector/duration.md)                   | The duration of the currently connected [Playable](/engine/6000.5/script-reference/unityengine/playables/playable.md) in seconds.                                                                                                                                 |
| [extrapolationMode](/engine/6000.5/script-reference/unityengine/playables/playabledirector/extrapolationmode.md) | Controls how the time is incremented when it goes beyond the duration of the playable.                                                                                                                                                                            |
| [initialTime](/engine/6000.5/script-reference/unityengine/playables/playabledirector/initialtime.md)             | The time at which the Playable should start when first played.                                                                                                                                                                                                    |
| [playableAsset](/engine/6000.5/script-reference/unityengine/playables/playabledirector/playableasset.md)         | The [PlayableAsset](/engine/6000.5/script-reference/unityengine/playables/playableasset.md) that is used to instantiate a playable for playback.                                                                                                                  |
| [playableGraph](/engine/6000.5/script-reference/unityengine/playables/playabledirector/playablegraph.md)         | The [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md) created by the [PlayableDirector](/engine/6000.5/script-reference/unityengine/playables/playabledirector.md).                                                         |
| [playOnAwake](/engine/6000.5/script-reference/unityengine/playables/playabledirector/playonawake.md)             | Whether the playable asset will start playing back as soon as the component awakes.                                                                                                                                                                               |
| [state](/engine/6000.5/script-reference/unityengine/playables/playabledirector/state.md)                         | The current playing state of the component. (Read Only)                                                                                                                                                                                                           |
| [time](/engine/6000.5/script-reference/unityengine/playables/playabledirector/time.md)                           | The component's current time. This value is incremented according to the [PlayableDirector.timeUpdateMode](/engine/6000.5/script-reference/unityengine/playables/playabledirector/timeupdatemode.md) when it is playing. You can also change this value manually. |
| [timeUpdateMode](/engine/6000.5/script-reference/unityengine/playables/playabledirector/timeupdatemode.md)       | Controls how time is incremented when playing back.                                                                                                                                                                                                               |

## Methods

| Method                                                                                                                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [ClearGenericBinding](/engine/6000.5/script-reference/unityengine/playables/playabledirector/cleargenericbinding.md)               | Clears the binding of a reference object.                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [ClearReferenceValue](/engine/6000.5/script-reference/unityengine/playables/playabledirector/clearreferencevalue.md)               | Clears an exposed reference value.                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [DeferredEvaluate](/engine/6000.5/script-reference/unityengine/playables/playabledirector/deferredevaluate.md)                     | Schedules the [PlayableDirector](/engine/6000.5/script-reference/unityengine/playables/playabledirector.md) to perform [PlayableGraph.Evaluate](/engine/6000.5/script-reference/unityengine/playables/playablegraph/evaluate.md) on the [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md) associated with the [PlayableDirector.playableAsset](/engine/6000.5/script-reference/unityengine/playables/playabledirector/playableasset.md) on the next update. |
| [Evaluate](/engine/6000.5/script-reference/unityengine/playables/playabledirector/evaluate.md)                                     | Performs [PlayableGraph.Evaluate](/engine/6000.5/script-reference/unityengine/playables/playablegraph/evaluate.md) on the [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md) associated with the [PlayableDirector.playableAsset](/engine/6000.5/script-reference/unityengine/playables/playabledirector/playableasset.md) at [PlayableDirector.time](/engine/6000.5/script-reference/unityengine/playables/playabledirector/time.md).                       |
| [GetGenericBinding](/engine/6000.5/script-reference/unityengine/playables/playabledirector/getgenericbinding.md)                   | Returns a binding to a reference object.                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [GetReferenceValue](/engine/6000.5/script-reference/unityengine/playables/playabledirector/getreferencevalue.md)                   | Retrieves an ExposedReference binding.                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [Pause](/engine/6000.5/script-reference/unityengine/playables/playabledirector/pause.md)                                           | Pauses playback of the currently running playable.                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [Play](/engine/6000.5/script-reference/unityengine/playables/playabledirector/play.md)                                             | Instatiates a [Playable](/engine/6000.5/script-reference/unityengine/playables/playable.md) using the provided [PlayableAsset](/engine/6000.5/script-reference/unityengine/playables/playableasset.md) and starts playback.                                                                                                                                                                                                                                                                       |
| [RebindPlayableGraphOutputs](/engine/6000.5/script-reference/unityengine/playables/playabledirector/rebindplayablegraphoutputs.md) | Rebinds each [PlayableOutput](/engine/6000.5/script-reference/unityengine/playables/playableoutput.md) of the [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md).                                                                                                                                                                                                                                                                                            |
| [RebuildGraph](/engine/6000.5/script-reference/unityengine/playables/playabledirector/rebuildgraph.md)                             | Discards the existing [PlayableGraph](/engine/6000.5/script-reference/unityengine/playables/playablegraph.md) and creates a new instance.                                                                                                                                                                                                                                                                                                                                                         |
| [Resume](/engine/6000.5/script-reference/unityengine/playables/playabledirector/resume.md)                                         | Resume playing a paused playable.                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [SetGenericBinding](/engine/6000.5/script-reference/unityengine/playables/playabledirector/setgenericbinding.md)                   | Sets the binding of a reference object from a [PlayableBinding](/engine/6000.5/script-reference/unityengine/playables/playablebinding.md).                                                                                                                                                                                                                                                                                                                                                        |
| [SetReferenceValue](/engine/6000.5/script-reference/unityengine/playables/playabledirector/setreferencevalue.md)                   | Sets an ExposedReference value.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [Stop](/engine/6000.5/script-reference/unityengine/playables/playabledirector/stop.md)                                             | Stops playback of the current [Playable](/engine/6000.5/script-reference/unityengine/playables/playable.md) and destroys the corresponding graph.                                                                                                                                                                                                                                                                                                                                                 |

## Events

| Member                                                                                       | Description                                                               |
| -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| [paused](/engine/6000.5/script-reference/unityengine/playables/playabledirector/paused.md)   | Event that is raised when a PlayableDirector component has paused.        |
| [played](/engine/6000.5/script-reference/unityengine/playables/playabledirector/played.md)   | Event that is raised when a PlayableDirector component has begun playing. |
| [stopped](/engine/6000.5/script-reference/unityengine/playables/playabledirector/stopped.md) | Event that is raised when a PlayableDirector component has stopped.       |

## Inheritance

**Inherited Members:**

* [Behaviour.enabled](/engine/6000.5/script-reference/unityengine/behaviour/enabled.md)
* [Behaviour.isActiveAndEnabled](/engine/6000.5/script-reference/unityengine/behaviour/isactiveandenabled.md)
* [Component.GetComponent(Type)](/engine/6000.5/script-reference/unityengine/component/getcomponent.md#getcomponent\(type\))
* [Component.GetComponent\<T>()](/engine/6000.5/script-reference/unityengine/component/getcomponent.md)
* [Component.TryGetComponent(Type, Component)](/engine/6000.5/script-reference/unityengine/component/trygetcomponent.md)
* [Component.TryGetComponent\<T>(T)](/engine/6000.5/script-reference/unityengine/component/trygetcomponent.md)
* [Component.GetComponent(string)](/engine/6000.5/script-reference/unityengine/component/getcomponent.md#getcomponent\(string\))
* [Component.GetComponentInChildren(Type, bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentinchildren.md#getcomponentinchildren\(type-bool\))
* [Component.GetComponentInChildren(Type)](/engine/6000.5/script-reference/unityengine/component/getcomponentinchildren.md#getcomponentinchildren\(type\))
* [Component.GetComponentInChildren\<T>(bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentinchildren.md)
* [Component.GetComponentsInChildren(Type, bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinchildren.md)
* [Component.GetComponentsInChildren\<T>(bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinchildren.md#getcomponentsinchildrent\(bool\))
* [Component.GetComponentsInChildren\<T>(bool, List\<T>)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinchildren.md)
* [Component.GetComponentsInChildren\<T>()](/engine/6000.5/script-reference/unityengine/component/getcomponentsinchildren.md#getcomponentsinchildrent\(\))
* [Component.GetComponentsInChildren\<T>(List\<T>)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinchildren.md)
* [Component.GetComponentInParent(Type, bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentinparent.md#getcomponentinparent\(type-bool\))
* [Component.GetComponentInParent(Type)](/engine/6000.5/script-reference/unityengine/component/getcomponentinparent.md#getcomponentinparent\(type\))
* [Component.GetComponentInParent\<T>(bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentinparent.md#getcomponentinparentt\(bool\))
* [Component.GetComponentInParent\<T>()](/engine/6000.5/script-reference/unityengine/component/getcomponentinparent.md#getcomponentinparentt\(\))
* [Component.GetComponentsInParent(Type, bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinparent.md)
* [Component.GetComponentsInParent\<T>(bool)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinparent.md#getcomponentsinparentt\(bool\))
* [Component.GetComponentsInParent\<T>(bool, List\<T>)](/engine/6000.5/script-reference/unityengine/component/getcomponentsinparent.md)
* [Component.GetComponentsInParent\<T>()](/engine/6000.5/script-reference/unityengine/component/getcomponentsinparent.md#getcomponentsinparentt\(\))
* [Component.GetComponents(Type)](/engine/6000.5/script-reference/unityengine/component/getcomponents.md#getcomponents\(type\))
* [Component.GetComponents(Type, List\<Component>)](/engine/6000.5/script-reference/unityengine/component/getcomponents.md#getcomponents\(type-listcomponent\))
* [Component.GetComponents\<T>(List\<T>)](/engine/6000.5/script-reference/unityengine/component/getcomponents.md)
* [Component.GetComponents\<T>()](/engine/6000.5/script-reference/unityengine/component/getcomponents.md#getcomponentst\(\))
* [Component.GetComponentIndex()](/engine/6000.5/script-reference/unityengine/component/getcomponentindex.md)
* [Component.CompareTag(string)](/engine/6000.5/script-reference/unityengine/component/comparetag.md#comparetag\(string\))
* [Component.CompareTag(TagHandle)](/engine/6000.5/script-reference/unityengine/component/comparetag.md#comparetag\(taghandle\))
* [Component.SendMessageUpwards(string, Object, SendMessageOptions)](/engine/6000.5/script-reference/unityengine/component/sendmessageupwards.md#sendmessageupwards\(string-object-sendmessageoptions\))
* [Component.SendMessageUpwards(string, SendMessageOptions)](/engine/6000.5/script-reference/unityengine/component/sendmessageupwards.md#sendmessageupwards\(string-sendmessageoptions\))
* [Component.SendMessage(string, Object)](/engine/6000.5/script-reference/unityengine/component/sendmessage.md#sendmessage\(string-object\))
* [Component.SendMessage(string)](/engine/6000.5/script-reference/unityengine/component/sendmessage.md#sendmessage\(string\))
* [Component.SendMessage(string, Object, SendMessageOptions)](/engine/6000.5/script-reference/unityengine/component/sendmessage.md#sendmessage\(string-object-sendmessageoptions\))
* [Component.SendMessage(string, SendMessageOptions)](/engine/6000.5/script-reference/unityengine/component/sendmessage.md#sendmessage\(string-sendmessageoptions\))
* [Component.BroadcastMessage(string, Object, SendMessageOptions)](/engine/6000.5/script-reference/unityengine/component/broadcastmessage.md#broadcastmessage\(string-object-sendmessageoptions\))
* [Component.BroadcastMessage(string, SendMessageOptions)](/engine/6000.5/script-reference/unityengine/component/broadcastmessage.md#broadcastmessage\(string-sendmessageoptions\))
* [Component.transform](/engine/6000.5/script-reference/unityengine/component/transform.md)
* [Component.transformHandle](/engine/6000.5/script-reference/unityengine/component/transformhandle.md)
* [Component.gameObject](/engine/6000.5/script-reference/unityengine/component/gameobject.md)
* [Component.tag](/engine/6000.5/script-reference/unityengine/component/tag.md)
* [Object.GetEntityId()](/engine/6000.5/script-reference/unityengine/object/getentityid.md)
* [Object.GetHashCode()](/engine/6000.5/script-reference/unityengine/object/gethashcode.md)
* [Object.InstantiateAsync\<T>(T)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, Transform)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, Vector3, Quaternion)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, Transform, Vector3, Quaternion)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Transform)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Vector3, Quaternion)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, ReadOnlySpan\<Vector3>, ReadOnlySpan\<Quaternion>)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Transform, Vector3, Quaternion)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Transform, Vector3, Quaternion, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Transform, ReadOnlySpan\<Vector3>, ReadOnlySpan\<Quaternion>)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Transform, ReadOnlySpan\<Vector3>, ReadOnlySpan\<Quaternion>, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, InstantiateParameters, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, InstantiateParameters, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, Vector3, Quaternion, InstantiateParameters, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, Vector3, Quaternion, InstantiateParameters, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.InstantiateAsync\<T>(T, int, ReadOnlySpan\<Vector3>, ReadOnlySpan\<Quaternion>, InstantiateParameters, CancellationToken)](/engine/6000.5/script-reference/unityengine/object/instantiateasync.md)
* [Object.Instantiate(Object, Vector3, Quaternion)](/engine/6000.5/script-reference/unityengine/object/instantiate.md#instantiate\(object-vector3-quaternion\))
* [Object.Instantiate(Object, Vector3, Quaternion, Transform)](/engine/6000.5/script-reference/unityengine/object/instantiate.md#instantiate\(object-vector3-quaternion-transform\))
* [Object.Instantiate(Object)](/engine/6000.5/script-reference/unityengine/object/instantiate.md#instantiate\(object\))
* [Object.Instantiate(Object, Scene)](/engine/6000.5/script-reference/unityengine/object/instantiate.md#instantiate\(object-scene\))
* [Object.Instantiate\<T>(T, InstantiateParameters)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Instantiate\<T>(T, Vector3, Quaternion, InstantiateParameters)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Instantiate(Object, Transform)](/engine/6000.5/script-reference/unityengine/object/instantiate.md#instantiate\(object-transform\))
* [Object.Instantiate(Object, Transform, bool)](/engine/6000.5/script-reference/unityengine/object/instantiate.md#instantiate\(object-transform-bool\))
* [Object.Instantiate\<T>(T)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Instantiate\<T>(T, Vector3, Quaternion)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Instantiate\<T>(T, Vector3, Quaternion, Transform)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Instantiate\<T>(T, Transform)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Instantiate\<T>(T, Transform, bool)](/engine/6000.5/script-reference/unityengine/object/instantiate.md)
* [Object.Destroy(Object, float)](/engine/6000.5/script-reference/unityengine/object/destroy.md)
* [Object.DestroyImmediate(Object, bool)](/engine/6000.5/script-reference/unityengine/object/destroyimmediate.md)
* [Object.FindObjectsByType(Type)](/engine/6000.5/script-reference/unityengine/object/findobjectsbytype.md#findobjectsbytype\(type\))
* [Object.FindObjectsByType(Type, FindObjectsInactive)](/engine/6000.5/script-reference/unityengine/object/findobjectsbytype.md#findobjectsbytype\(type-findobjectsinactive\))
* [Object.DontDestroyOnLoad(Object)](/engine/6000.5/script-reference/unityengine/object/dontdestroyonload.md)
* [Object.FindAnyObjectByType\<T>()](/engine/6000.5/script-reference/unityengine/object/findanyobjectbytype.md#findanyobjectbytypet\(\))
* [Object.FindAnyObjectByType\<T>(FindObjectsInactive)](/engine/6000.5/script-reference/unityengine/object/findanyobjectbytype.md#findanyobjectbytypet\(findobjectsinactive\))
* [Object.FindObjectsByType\<T>()](/engine/6000.5/script-reference/unityengine/object/findobjectsbytype.md#findobjectsbytypet\(\))
* [Object.FindObjectsByType\<T>(FindObjectsInactive)](/engine/6000.5/script-reference/unityengine/object/findobjectsbytype.md#findobjectsbytypet\(findobjectsinactive\))
* [Object.FindAnyObjectByType(Type)](/engine/6000.5/script-reference/unityengine/object/findanyobjectbytype.md#findanyobjectbytype\(type\))
* [Object.FindAnyObjectByType(Type, FindObjectsInactive)](/engine/6000.5/script-reference/unityengine/object/findanyobjectbytype.md#findanyobjectbytype\(type-findobjectsinactive\))
* [Object.ToString()](/engine/6000.5/script-reference/unityengine/object/tostring.md)
* [Object.name](/engine/6000.5/script-reference/unityengine/object/name.md)
* [Object.hideFlags](/engine/6000.5/script-reference/unityengine/object/hideflags.md)

### Operators

| Operator                                                                           | Description                                                             |
| ---------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| [operator ==](/engine/6000.5/script-reference/unityengine/object/op-equality.md)   | Compares two object references to see if they refer to the same object. |
| [bool](/engine/6000.5/script-reference/unityengine/object/op-implicit.md)          | Determines whether the object exists.                                   |
| [operator !=](/engine/6000.5/script-reference/unityengine/object/op-inequality.md) | Compares if two objects refer to a different object.                    |
