Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


TryGetComponent

Retrieves the component of the specified type, if it exists.
Read time 1 minuteLast updated 6 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule

TryGetComponent<T>(T)

Retrieves the component of the specified type, if it exists.
public bool TryGetComponent<T>(out T component)

Parameters

component

T
The
out
parameter that contains the component or
null
.

Returns

Type

Description

boolReturns
true
if the component is found,
false
otherwise.

Remarks

TryGetComponent
attempts to retrieve the component of the given type. The difference between this and GameObject.GetComponent is that this method doesn't allocate memory in the Editor when the requested component does not exist.
Note: This method doesn't search the hierarchy of parent or child GameObjects, but is confined to the GameObject itself. Because it only checks that GameObject,
TryGetComponent
returns the requested component whether the GameObject is active or inactive. The active state affects only the hierarchy-traversing methods such as GameObject.GetComponentInChildren, which take an
includeInactive
parameter.
using UnityEngine;public class TryGetComponentExample : MonoBehaviour{ public GameObject objectToCheck; void Start() { if (objectToCheck.TryGetComponent<HingeJoint>(out HingeJoint hinge)) { hinge.useSpring = false; } }}
Additional Resources: Component, GameObject.GetComponent

TryGetComponent(Type, Component)

The non-generic version of this method.
public bool TryGetComponent(Type type, out Component component)

Parameters

type

The type of component to search for.

component

The
out
parameter that will contain the component or
null
.

Returns

Type

Description

boolReturns
true
if the component is found,
false
otherwise.

Remarks

This version of
TryGetComponent
is not as efficient as the Generic version (above), so you should only use it if necessary.