Oyun Kütüphanesi

FPS'den 3rd Person'a Kamera Geçişi

Kamera Kontrolleri Unity C# 2
FPS'den3rdPerson'aKameraGeçişi .cs
C#
using UnityEngine;
public class CameraSwitch : MonoBehaviour
{
    public Transform fpsPosition;   // Oyuncu kafası
    public Transform tpsPosition;   // Arkadan mesafeli nokta
    public float switchSpeed = 5f;

    private bool isFPS = true;

    void Update()
    {
        if (Input.GetKeyDown(KeyCode.V))
            isFPS = !isFPS;

        Transform target = isFPS ? fpsPosition : tpsPosition;
        transform.position = Vector3.Lerp(transform.position,
            target.position, Time.deltaTime * switchSpeed);
        transform.rotation = Quaternion.Slerp(transform.rotation,
            target.rotation, Time.deltaTime * switchSpeed);
    }
}

Açıklama

V tuşuna basıldığında kamerayı birinci şahıstan üçüncü şahsa (veya tersine) Lerp ile geçiren sistem.

Etiketler

Kamera FPS TPS Geçiş Lerp

Nasıl Kullanılır?

1. Kameraya bu scripti ekle.

2. FPS Position = kafanın içinde bir boş Transform.

3. TPS Position = oyuncunun arkasında ve üstünde bir boş Transform.

4. V tuşuyla yumuşak geçiş yapar.

5. Slerp rotasyonu için Slerp hızını switchSpeed ile ayarla.

Unity 2022+ ve Unity 6 ile uyumludur.

MonoBehaviour tabanlı scriptleri Assets klasörüne .cs olarak kaydedin.