← Назад к вопросам

Какие типы источников света существуют в Unity?

2.3 Middle🔥 162 комментариев
#C# и ООП

Комментарии (2)

🐱
deepseek-v3.2PrepBro AI7 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Типы источников света в Unity

В Unity существует несколько основных типов источников света (Light Components), каждый из которых служит для создания различных световых эффектов и оптимизации рендеринга. Они являются ключевыми инструментами для создания атмосферы, глубины и визуальной четкости в проектах. Основные типы включают:

1. Directional Light (Направленный свет)

Этот источник имитирует солнечный свет — он освещает всю сцену одинаково, независимо от позиции. Его световые лучи параллельны и направлены в одну сторону. Наиболее часто используется для создания основного освещения (например, дня или ночи).

Ключевые особенности:

  • Не имеет позиции в мире — только направление.
  • Влияет на все объекты в сфере.
  • Часто используется в сочетании с системой Global Illumination (GI) для создания мягких теней и атмосферного освещения.
// Пример добавления Directional Light через код (редко требуется, обычно размещается в редакторе)
Light directionalLight = gameObject.AddComponent<Light>();
directionalLight.type = LightType.Directional;
directionalLight.intensity = 1.0f;
directionalLight.color = Color.white;

2. Point Light (Точечный свет)

Источник, излучающий свет из одной точки во всех направлениях, подобно лампе или свече. Его влияние ограничено радиусом (Range), и интенсивность света уменьшается с расстоянием (Falloff).

Ключевые особенности:

  • Имеет позицию и радиус освещения.
  • Создает мягкие, рассеянные тени.
  • Подходит для локального освещения объектов (например, светильники в комнате).
Light pointLight = gameObject.AddComponent<Light>();
pointLight.type = LightType.Point;
pointLight.intensity = 2.0f;
pointLight.range = 10.0f;
pointLight.color = new Color(1.0f, 0.9f, 0.7f); // теплый желтый свет

3. Spot Light (Прожектор)

Свет, излучаемый из точки в определенном направлении, формируя конус освещения (как у прожектора или настольной лампы). Управляется параметрами угла (Spot Angle) и радиуса.

Ключевые особенности:

  • Создает четко ограниченную область освещения.
  • Имеет направление и позицию.
  • Используется для эффектов фонарей, театральных светильников или освещения конкретных объектов.
Light spotLight = gameObject.AddComponent<Light>();
spotLight.type = LightType.Spot;
spotLight.intensity = 5.0f;
spotLight.range = 15.0f;
spotLight.spotAngle = 45.0f;

4. Area Light (Площадный свет)

Этот источник представляет собой прямоугольную или плоскостную область, излучающую свет. Часто используется для создания мягкого, рассеянного освещения (например, от световых панелей или окон). Area Light обычно влияет только на статические объекты и работает в сочетании с Global Illumination.

Ключевые особенности:

  • Не освещает динамические объекты напрямую в реальном времени (зависит от GI).
  • Создает очень мягкие, естественные тени.
  • Используется для архитектурного и атмосферного освещения.

5. Ambient Light (Окружающий свет)

Не является отдельным компонентом, но часть окружающего освещения сцены. Определяется через настройки Lighting Window (Ambient Source). Этот свет заполняет тени и создает базовую освещенность всей сцены, даже там, где нет прямых источников.

Ключевые особенности:

  • Устанавливается глобально для сцены.
  • Может быть цветом, градиентом или текстурой (Skybox).
  • Критически важен для предотвращения полностью черных теней.

6. Emissive Materials (Светоизлучающие материалы)

Не источник света в классическом понимании, но материалы с высоким значением Emissive Color могут светиться и влиять на освещение через GI. Это позволяет объектам (например, мониторам или неоновым знакам) быть частью системы освещения.

Ключевые особенности:

  • Не требует отдельного Light Component.
  • Работает с Global Illumination для мягкого рассеянного света.

Выбор типа света и оптимизация

На практике выбор типа зависит от задачи:

  • Directional Light — для основного освещения сцены.
  • Point Light и Spot Light — для локального, динамического освещения (подвижные объекты, интерактивные элементы).
  • Area Light — для статических, атмосферных сцен (интерьеры, архитектура).

Важно помнить об оптимизации: количество активных источников света сильно влияет на производительность, особенно в реальном времени. Используйте Light Baking для статических источников, чтобы запечь освещение в текстуры и снижать нагрузку на рендеринг. Также учитывайте Render Pipelines (Built-in, URP, HDRP), поскольку в URP и HDRP доступны дополнительные варианты (например, дополнительные типы для HDRP).

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

Какие типы источников света существуют в Unity? | PrepBro