@Bruh_Bruh

Как сделать поворот плавнее?

Поворот при нажатии кнопки происходит мгновенно, что логично, но как сделать его плавным? Чтобы машина поворачивала не за один кадр, а за одну секунду? Вставить Time.deltaTime как 2-ой аргумент в метод в метод Rotate будет некорректно, так как тогда поворот просто будет маленьким, а не плавным.
public class CarMovement : MonoBehaviour
{ 
    public float speed;
    public float turnAngle;

    private void Update()
    {
        transform.Translate(Vector3.forward * speed * Time.deltaTime);

        if (Input.GetKeyDown(KeyCode.A))
        {
            CarTurnLeft();
        }
        else if (Input.GetKeyDown(KeyCode.D))
        {
            CarTurnRight();
        }
    }

    private void CarTurnRight()
    {
        transform.Rotate(Vector3.up, turnAngle);
    }

    private void CarTurnLeft()
    {
        transform.Rotate(Vector3.up, -turnAngle);
    }
  • Вопрос задан
  • 51 просмотр
Пригласить эксперта
Ответы на вопрос 1
@Lesh48
Советую использовать Vector3.lerp
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы