Objetivos móviles
Parte de la sección Física y jugabilidad del Journey de Unity de Coddy. Lección 67 de 71.
Desafío
DifícilPrograma los objetivos: se deslizan a lo largo del rango y una pelota los derriba.
- En
Start(), conservastartX = rb.position.x. EnFixedUpdate(), muévete conrb.MovePositiona lo largo del eje x aspeed, invirtiendodirection(1 o -1) cuando esté arangedestartX. - En
OnCollisionEnter, cuandocollision.gameObject.CompareTag("Ball"), registraname + " hit!"y destruye la pelota y el objetivo.
Pulsa «Jugar» y derriba los tres objetivos. Después, pulsa «Comprobar».
Pruébalo tú mismo
using UnityEngine;
public class Target : MonoBehaviour
{
[SerializeField] private float speed = 2f;
[SerializeField] private float range = 3f;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
// deslízate de lado a lado; una pelota que golpee el objetivo lo derriba
}
Todas las lecciones de Física y jugabilidad
1Cuerpo rígido
Gravedad y masaEmpujar con AddForceSaltar con un impulsoFixedUpdate para físicaVelocidadCuerpos cinemáticosRepaso: plataforma de lanzamiento4Corrutinas
InvocarInvokeRepeating y CancelInvokeTu primera corrutinaBucles en corrutinasDetener corrutinasRepaso: cuenta regresiva10Proyecto: Escape de la arena
La arenaCazadores2Colisiones
OnCollisionEnter¿Qué golpeé?Romper al impactarDe pie sobre el sueloRebote y fricciónFormas de los collidersRepaso: muro destructible5Proyecto: Carrera de Monedas
La pelota rodanteMonedas para recoger3Disparadores
Colisionadores de tipo triggerOnTriggerEnterObjetos coleccionablesLas cajas guardan el restoZonas letalesEntrada y salidaRepaso: llave y puertaPractica por tu cuenta: Playground de Unity