Как настроить ограничение угла поворота объекта?

  • 20 августа 2023 г. 22:56
Ответы на вопрос 3
Если вы хотите ограничить угол поворота только в горизонтальной плоскости (влево и вправо), вы можете использовать Mathf.Clamp для ограничения значения угла. Вот пример кода:

void Update()
{
    Vector3 angle = transform.eulerAngles;
    if (Input.GetKey(KeyCode.W))
    {
        transform.position += transform.forward * Time.deltaTime * _speed;
    }
    if (Input.GetKey(KeyCode.S))
    {
        transform.position -= transform.forward * Time.deltaTime * _speed;
    }
    if (Input.GetKey(KeyCode.A))
    {
        angle.y -= 0.1f;
    }
    if (Input.GetKey(KeyCode.D))
    {
        angle.y += 0.1f;
    }
    
    angle.y = Mathf.Clamp(angle.y, -30f, 30f); // Ограничение угла поворота в пределах -30 и 30 градусов

    transform.eulerAngles = angle;
}

Теперь угол поворота будет автоматически ограничен в пределах -30 и 30 градусов, используя Mathf.Clamp. Если значение угла превышает пределы, оно будет автоматически установлено на ближайшее допустимое значение.
Если угол поворота превышает 30, то он равен 30. 
 Если значение угла поворота больше 30, замените его на 30.
Похожие вопросы