Unity Mathf.Clamp() работает странно
У меня есть следующий код для управления персонажем:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace PrefabPlayer
{
public class PlayerController : MonoBehaviour
{
public GameObject camera;
public float turnSpeed;
private void Start()
{
}
private void Update()
{
Cursor.visible = false;
}
private void FixedUpdate()
{
float _cameraRotationX = Mathf.Clamp(camera.transform.localRotation.eulerAngles.x - turnSpeed * Input.GetAxis("Mouse Y"), 0f, 180f);
transform.Rotate(0, turnSpeed * Input.GetAxis("Mouse X"), 0);
camera.transform.localRotation = Quaternion.Euler(_cameraRotationX, 0, 0);
}
}
}
В строке, в которой я объявляю _cameraRotationX, Mathf.Clamp() работает неправильно. Я ограничиваю локальное вращение камеры от 0 до 180, однако, когда я выводил значение в консоль, оно не опускалось ниже 90, хотя минимальное ограничение - 0. Почему так происходит?
Обновлено: неправильно написал, оно никогда не поднимается выше 90. Но всё же смысл вопроса не меняет

