RequireComponent
Parte de la sección Fundamentos de scripting en Unity del Journey de Unity de Coddy. Lección 33 de 67.
[RequireComponent(typeof(Rigidbody))], escrito encima de la clase de un script, le indica a Unity que el script no puede funcionar sin un Rigidbody en el mismo objeto:
[RequireComponent(typeof(Rigidbody))]
public class Jumper : MonoBehaviour
{
Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
}Unity actúa cuando se añade el script a un objeto, desde el Inspector o con AddComponent: si el objeto no tiene un Rigidbody, Unity añade uno. Mientras Jumper esté en el objeto, el Inspector no permite eliminar ese Rigidbody. Así que GetComponent siempre encuentra uno, y Jumper no necesita ninguna comprobación.
El atributo no tiene efecto retroactivo: los objetos que ya tenían Jumper antes de que se escribiera la línea no reciben un Rigidbody hasta que se elimina y se vuelve a añadir el script. Un atributo puede indicar hasta tres tipos, como en [RequireComponent(typeof(Rigidbody), typeof(BoxCollider))], y una clase puede tener varios de ellos.
Pruébalo tú mismo
Esta lección no incluye un desafío de código.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos de scripting en Unity
1Tu primer script
Hola, UnityColoca el cuboMuévete en cada fotogramaGira cada segundoDirige con las teclasRepaso: conduce el cubo4Vectores
Sumar vectoresDireccionesEspacio local y globalVelocidad diagonalDistancia entre objetosVector3 es una estructuraRepaso: piloto de dron7Proyecto: Atrapa la estrella
El atrapadorUna estrella fugaz10El ciclo de vida de los scripts
Awake y StartUpdate y LateUpdateOnEnable y OnDisableEl orden del ciclo de vidaRepaso: registrador del ciclo de vida2El Inspector
Campos del InspectorSerializeFieldNúmeros decimales y MathfAtributos del InspectorRepaso: Ascensor5Transformaciones y jerarquía
Padres e hijosEscalaMirar objetosMoverse hacia un puntoRepaso: Luna en órbita8Encontrar cosas
Buscar por nombreEtiquetasBuscar por tipoLas referencias superan a FindEl valor nulo de UnityRepaso: la moneda más cercana11Proyecto: Esquiva los bloques
El corredorBloques que caen6GameObjects y componentes
Referencias en el InspectorObtener un componenteComponentes faltantesAñadir un componenteRequireComponentMostrar y ocultarRepaso: interruptor de luz