Unity C#

Camera в Unity C#: настройка камеры и параметры отображения

Класс Camera в Unity отвечает за отображение сцены — это «глаз», через который игрок видит игровой мир. Камера есть практически в любом проекте: она задаёт ракурс, управляет отображением объектов и визуальными эффектами.

Каждая сцена должна содержать хотя бы одну камеру — без неё в окне Game ничего не отрисуется. Unity добавляет камеру автоматически при создании сцены, но ты можешь добавлять и настраивать дополнительные — например, для разделения экрана или видов от первого и третьего лица.

Что умеет камера

  • Управляет видимостью объектов через слои и область видимости.
  • Поддерживает ортографическую (2D) и перспективную (3D) проекцию.
  • Применяет эффекты постобработки: фильтры, цветокоррекцию, размытие и другое.

Пример кода

Камера плавно следует за целевым объектом с заданным смещением и смотрит на него. Метод LateUpdate нужен, чтобы камера обновляла позицию уже после того, как объект закончил движение в текущем кадре:

using UnityEngine;

public class CameraController : MonoBehaviour
{
    public Transform target;
    public float smoothSpeed = 0.125f;
    public Vector3 offset;

    void LateUpdate()
    {
        // Следим за целевым объектом с заданным смещением
        Vector3 desiredPosition = target.position + offset;
        Vector3 smoothedPosition = Vector3.Lerp(transform.position, desiredPosition, smoothSpeed);
        transform.position = smoothedPosition;

        // Поворачиваем камеру в направлении цели
        transform.LookAt(target);
    }
}