Oyun Kütüphanesi

FPS Mouse Look (Kamera Kontrolü)

Kamera Kontrolleri Unity C# 3
FPSMouseLookKameraKontrolü .cs
C#
using UnityEngine;

public class MouseLook : MonoBehaviour
{
    [Header("Hassasiyet")]
    public float mouseSensitivity = 100f;

    [Header("Bağlantılar")]
    public Transform playerBody; // Oyuncu gövdesi (yatay dönüş için)

    private float xRotation = 0f;

    void Start()
    {
        // Fareyi kilitle ve gizle
        Cursor.lockState = CursorLockMode.Locked;
    }

    void Update()
    {
        float mouseX = Input.GetAxis("Mouse X") * mouseSensitivity * Time.deltaTime;
        float mouseY = Input.GetAxis("Mouse Y") * mouseSensitivity * Time.deltaTime;

        // Dikey bakış (X rotasyonu, kamera objesi üzerinde)
        xRotation -= mouseY;
        xRotation = Mathf.Clamp(xRotation, -90f, 90f); // Aşırı yukarı/aşağı engelle
        transform.localRotation = Quaternion.Euler(xRotation, 0f, 0f);

        // Yatay dönüş (Y rotasyonu, oyuncu gövdesi üzerinde)
        playerBody.Rotate(Vector3.up * mouseX);
    }
}

Açıklama

Mouse hareketi ile hem yatay (Y ekseni, karakter döner) hem dikey (X ekseni, kamera yukarı-aşağı bakar) bakış açısı kontrolü.

Etiketler

FPS Mouse Kamera Look Bakış

Nasıl Kullanılır?

1. Bu scripti Camera GameObject'e ekle.

2. 'Player Body' alanına oyuncunun ana GameObject'ini sürükle.

3. Kamera, oyucunun çocuğu (child) olarak hiyerarşide durmalı.

4. Escape tuşuyla fareyi serbest bırakmak için: Cursor.lockState = CursorLockMode.None;

Unity 2022+ ve Unity 6 ile uyumludur.

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