using UnityEngine; public class PlayerLook : MonoBehaviour { [Header("Look Settings")] [SerializeField] private float mouseSensitivity = 150f; [SerializeField] private Transform playerBody; private float xRotation = 0f; private void Start() { // Блокируем курсор в центре экрана и скрываем его Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; } public void ProcessLook(Vector2 input) { float mouseX = input.x * mouseSensitivity * Time.deltaTime; float mouseY = input.y * mouseSensitivity * Time.deltaTime; // Расчет наклона камеры с ограничением, чтобы нельзя было сломать шею xRotation -= mouseY; xRotation = Mathf.Clamp(xRotation, -90f, 90f); // Применяем вращение камеры (вверх/вниз) transform.localRotation = Quaternion.Euler(xRotation, 0f, 0f); // Вращаем само тело игрока (влево/вправо) playerBody.Rotate(Vector3.up * mouseX); } }