Volver a la página principal
martes 11 febrero 2025
9

Cómo hacer que la cámara siga al personaje sin girar con él en Unity

Para que la cámara siga al personaje en Unity sin girar con él, puedes utilizar un script en C# que actualice la posición de la cámara basándose en la posición del jugador, pero sin modificar la rotación de la cámara.

Pasos:

1. Crear un nuevo script en Unity llamado FollowCamera.

2. Adjuntar el script a la cámara.

3. Asignar el objeto del jugador en el Inspector.

using UnityEngine;

public class FollowCamera : MonoBehaviour
{
    public Transform player; // Asigna el Player en el Inspector
    public Vector3 offset = new Vector3(0, 5, -10); // Ajusta la posición de la cámara

    void LateUpdate()
    {
        if (player != null)
        {
            // Mantiene la posición de la cámara relativa al jugador
            transform.position = player.position + offset;
        }
    }
}
  • player: Referencia al jugador.
  • offset: Define la posición relativa de la cámara respecto al jugador.
  • LateUpdate(): Se usa LateUpdate() en lugar de Update() para asegurarse de que la cámara se actualice después de que el jugador haya cambiado de posición.
  • Mantiene la rotación de la cámara: La cámara solo sigue la posición del jugador y no su rotación.

Si necesitas que la cámara mire siempre hacia el jugador sin girar con él, puedes añadir esta línea dentro de LateUpdate():

transform.LookAt(player);

Prueba el script y ajusta el offset en el Inspector hasta encontrar la posición deseada. 🚀

Etiquetas:
csharp unity
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer