type | The type of Component to retrieve. |
Returns the component of Type type
if the game object has one attached, null if it doesn't.
Using gameObject.GetComponent will return the first component that is found and the order is undefined. If you expect there to be more than one component of the same type, use gameObject.GetComponents instead, and cycle through the returned components testing for some unique property.
using UnityEngine;
public class GetComponentExample : MonoBehaviour { void Start() { HingeJoint hinge = gameObject.GetComponent(typeof(HingeJoint)) as HingeJoint;
if (hinge != null) hinge.useSpring = false; } }
Generic version of this method.
using UnityEngine;
public class GetComponentGenericExample : MonoBehaviour { void Start() { HingeJoint hinge = gameObject.GetComponent<HingeJoint>();
if (hinge != null) hinge.useSpring = false; } }
type | The type of Component to retrieve. |
Returns the component with name type
if the game object has one attached, null if it doesn't.
It is better to use GetComponent with a Type instead of a string for performance reasons. Sometimes you might not be able to get to the type however, for example when trying to access a C# script from Javascript. In that case you can simply access the component by name instead of type.
using UnityEngine;
public class GetComponentNonPerformantExample : MonoBehaviour { void Start() { HingeJoint hinge = gameObject.GetComponent("HingeJoint") as HingeJoint;
if (hinge != null) hinge.useSpring = false; } }
Did you find this page useful? Please give it a rating: