Menu
CoddyTech

Повторение: камера преследования

Часть раздела Физика и игровой процесс путешествия по Unity на Coddy. Урок 51 из 71.

В этом обзоре собраны вместе материалы главы: угол, сглаженный с помощью SmoothDamp, смещение, повёрнутое вокруг цели, и LookAt для точки впереди.

challenge icon

Задание

Средне

Напиши камеру преследования: она поворачивается за машиной с небольшим запозданием.

  1. Храни yaw камеры в поле, задай ему значение car.heading в Start() и плавно изменяй его с помощью Mathf.SmoothDamp(yaw, car.heading, ref yawVelocity, smoothTime) при каждом вызове LateUpdate().
  2. Помести её в точку car.transform.position + Quaternion.Euler(0, yaw, 0) * offset.
  3. Направь её с помощью transform.LookAt(car.transform.position + car.transform.forward * ahead);.

Нажми «Играть» и поездь по кругу. Затем нажми «Проверить».

Попробуйте сами

using UnityEngine;

public class ChaseCamera : MonoBehaviour
{
    public Car car;
    public Vector3 offset = new Vector3(0, 3, -6);
    public float smoothTime = 0.3f;
    public float ahead = 4f;

    void LateUpdate()
    {
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Физика и игровой процесс

Потренируйтесь самостоятельно: Песочница Unity