Contenido del Curso
Juego de Lucha en Unity
Juego de Lucha en Unity
Fondo Generado Aleatoriamente.
La Cámara Sigue al Jugador:
La clase CameraFollow
hace que la cámara siga al jugador a lo largo del eje x mientras mantiene las posiciones iniciales de la cámara en los ejes y y z.
Métodos:
Método Start:
Propósito: Inicializa la variable initialPosition
con la posición inicial de la cámara cuando comienza el juego.
Método LateUpdate:
Propósito: Actualiza la posición de la cámara para seguir el movimiento del jugador en el eje x.
Cómo Funciona: initialPosition.x = player.transform.position.x;
actualiza la coordenada x de initialPosition
para que coincida con la coordenada x del jugador, y transform.position = initialPosition;
establece la posición de la cámara en la initialPosition
actualizada, asegurando que siga al jugador a lo largo del eje x mientras mantiene las posiciones originales en los ejes y y z.
Explicación del ParallaxBackground:
La clase ParallaxBackground
hace que un elemento de fondo, como nubes, se repita infinitamente para crear un efecto de paralaje en un juego 2D. El fondo se reposicionará cuando el jugador salga de sus límites, dando la ilusión de un fondo interminable.
Métodos:
Método Start:
Propósito: Inicializa la variable width
con el ancho del elemento de fondo.
Cómo Funciona:
GetComponent<BoxCollider2D>()
recupera el componente BoxCollider2D
adjunto al elemento de fondo, y .bounds.size.x
obtiene el ancho de la caja delimitadora del colisionador, que luego se almacena en la variable width
para su uso posterior.
Método OnTriggerExit2D:
Propósito: Reposiciona el elemento de fondo cuando el jugador sale de sus límites, creando la ilusión de un fondo de desplazamiento infinito.
Cómo Funciona:
Cuando el jugador sale del colisionador de activación del elemento de fondo (OnTriggerExit2D(Collider2D collision)
), verifica si el colisionador pertenece al jugador (if(collision.tag == "Player")
). Ajusta la posición del elemento de fondo para desplazarse sin problemas desplazándolo a la derecha el doble de su ancho (position.x += width * 2f;
).
Este ajuste asegura que el elemento de fondo reaparezca suavemente después de que su elemento emparejado se desplace fuera de la vista.
Después de calcular la nueva posición, el script actualiza la posición del elemento de fondo (transform.position = position;
). Este mecanismo permite que el fondo mantenga un efecto de desplazamiento continuo en sincronía con los movimientos del jugador dentro del entorno del juego.
Resumen:
- Inicialización: El ancho del elemento de fondo se calcula y almacena cuando el juego comienza;
- Reposicionamiento: Cuando el jugador sale de los límites del elemento de fondo, la posición del elemento se desplaza a la derecha el doble de su ancho, creando un efecto de bucle continuo.
Esta configuración da la ilusión de un fondo de paralaje infinito al reposicionar repetidamente los elementos de fondo a medida que el jugador se mueve, asegurando una experiencia visual suave y continua.
¡Gracias por tus comentarios!