jairogarcíarincón
Introducción
En este ejercicio aprenderemos a detectar cuando un objeto es atravesado por otro, tal y como suele ocurrir cuando recogemos coleccionables en un juego o pisamos ciertas trampas o puntos de tele transportación dentro de un juego.
Empezaremos por duplicar la escena Movimiento y añadiremos un tercer sprite (por ejemplo amarillo). El resultado podría ser el siguiente:
La opción Is Trigger
A continuación debemos añadir un Box Collider 2D a ese sprite, y activar su propiedad Is Trigger desde la Inspector window.
Esta propiedad indica que nuestro objeto es un disparador de eventos, en concreto:
- OnTriggerEnter2D: se dispara cuando un objeto entra en un collider con la propiedad Is Trigger activada.
- OnTriggerExit2D: se dispara cuando un objeto sale de un collider con la propiedad Is Trigger activada.
- OnTriggerStay2D: se dispara mientras un objeto permanece en un collider con la propiedad Is Trigger activada.
Además, con esta propiedad nuestro objeto se convierte en traspasable por otros, tal y como podrás comprobar si ejecutas el juego.
Atravesar y ocultar el sprite
Para conseguir que el sprite que se mueve sea capaz de ocultar el recién creado cuando lo atraviese, debemos crear y asociarle un nuevo script llamado Trigger con el siguiente código. Fíjate bien en los comentarios y atiende a las explicaciones del profesor para entenderlo correctamente:
Antes de probar el funcionamiento, recuerda guardar el script y asociarlo al sprite que se mueve.
NOTA: El funcionamiento sería idéntico si el script se lo asociamos al sprite traspasable. Dependerá del diseño del juego el escoger a quién se lo asociamos.
Publicado el 05 de Febrero de 2025
unityvideojuegos2d