GetComponent<T>() busca un componente del tipo indicado en el mismo GameObject.

GetComponent

Rigidbody rb = GetComponent<Rigidbody>();

Si no existe, devuelve null.


Guardar referencias

Conviene obtener una referencia una vez y reutilizarla.

private Rigidbody rb;

void Awake()
{
    rb = GetComponent<Rigidbody>();
}

Evita hacer búsquedas innecesarias constantemente.


TryGetComponent

Permite comprobar y obtener un componente al mismo tiempo.

if (TryGetComponent<Rigidbody>(out Rigidbody rb))
{
    rb.useGravity = false;
}

GetComponentInChildren

Busca también en los hijos.

Renderer render = GetComponentInChildren<Renderer>();

GetComponentInParent

Busca en los padres.