Настройка освещения игровых сцен для графики
Мы — сертифицированные специалисты Unity и Unreal Engine. Настраиваем освещение игровых сцен под ключ: работаем с URP/HDRP, обеспечиваем консистентность от редактора до целевых платформ. За 5 лет реализовали световые схемы для более чем 20 проектов — от мобильных казуалок до PC-хорроров. Гарантируем результат, который пройдет Frame Debugger и RenderDoc без сюрпризов.
Почему освещение ломается на мобильных платформах?
В URP-проектах стандартная ошибка — смешение Forward и Deferred Rendering Path без учёта того, что Deferred не поддерживает MSAA и работает иначе с Normal Maps на некоторых платформах. Часть источников света начинает вести себя неожиданно, особенно Point Light с малым Intensity но большим Range — в Forward он попадает в per-object light limit (по умолчанию 8 additional lights), а на мобильных платформах этот лимит жёстче.
Второй классический провал: освещение выглядит нормально в сцене, но после запекания Lightmap все тени смещаются. Это следствие неправильного Shadow Bias на Source Light — когда Directional Light имеет Normal Bias выше 0.4, статические тени от запекания не совпадают с динамическими тенями в Mixed режиме. Результат — «двойная тень» на стыке запечённого и реалтаймового.
Как правильно настроить Color Temperature?
Инженеры часто задают цвет источника напрямую через Color picker. Правильнее — через Color Temperature (Kelvin). 2700K даёт тёплый вечерний свет лампы накаливания, 5600K — нейтральный дневной, 8000K — холодный синий оттенок пасмурного неба. При изменении времени суток через Timeline или Shader достаточно анимировать значение Kelvin, и вся сцена меняет тональность органично, без ручной правки каждого источника.
В URP Color Temperature включается через Additional Light Data → Use Color Temperature. В HDRP это стандартный параметр HD Additional Light Data.
Архитектура света сцены: от крупного к мелкому
Начинать надо с ключевого источника — Sun/Moon для наружных сцен, основной потолочный свет или окно для интерьеров. Directional Light с правильно выставленными Color Temperature и Intensity задаёт тональность всей сцены. В HDRP это удобнее делать через Physically Based Sky + HDRI Sky для получения корректного ambient.
Дальше — контровой свет (rim/back light) для читаемости персонажей на фоне окружения. Отдельный Source Light с небольшим Intensity, направленный против основного — персонаж не сливается с фоном даже в тёмных зонах. В большинстве проектов этот свет делают невидимым для окружения через Light Layers (HDRP) или Culling Mask.
Акцентное освещение — Point Lights и Spot Lights для создания интереса в кадре, подсветки интерактивных объектов, атмосферных эффектов. Здесь важно контролировать количество: каждый дополнительный источник в Forward Rendering добавляет pass для каждого освещаемого объекта. На мобильных устройствах 4 дополнительных источника — уже много.
Сравнение Forward и Deferred для освещения
| Параметр | Forward Rendering | Deferred Rendering |
|---|---|---|
| Количество источников на объект | до 8 (дополнительных) | неограничено |
| MSAA | поддерживается | не поддерживается |
| Прозрачные объекты | корректно | требуется отдельный проход |
| Производительность на мобильных | ниже при множестве источников | выше при многих источниках |
Из нашей практики: horror-игра, слишком яркие тёмные зоны
На одном проекте жанра horror клиент жаловался, что темные коридоры выглядят «мыльно» — тени мягкие, нет контраста. Проблема оказалась в Ambient Light: он был выставлен через Environment Lighting → Source: Color с Intensity 0.8 — фактически Fill Light на всю сцену. После перехода на Source: Gradient с Sky Intensity 0.05, Ground Intensity 0.02 и убранным Equator тёмные зоны стали по-настоящему тёмными, а Light Probes начали корректно передавать разницу между освещёнными и неосвещёнными зонами персонажу.
Освещение и LOD: проблема, которую замечают поздно
При использовании LOD Groups есть нюанс, который регулярно всплывает в середине проекта: источники света с Culling Mask и Light Layers ведут себя по-разному на разных LOD-уровнях только если Renderer'ы на этих уровнях имеют разные Layer настройки. Но чаще проблема в другом — на LOD2 и LOD3 нередко стоят упрощённые Mesh без Normal Map, а шейдер тот же, что и на LOD0. В результате при переключении LOD освещение резко меняется: нормальная модель красиво бликует, а упрощённая лоповка выглядит плоской.
Правильный подход: для LOD2+ использовать упрощённые шейдеры (Lit → Simple Lit или Custom Unlit с запечённым AO), а не полный PBR стек. Это не только визуально корректнее, но и снижает нагрузку на GPU при рендере дальних объектов.
Ещё один момент с Emissive материалами в Baked GI: объект с Emissive может «запечь» своё свечение в окружающие лайтмапы, но только если у него включён Contribute GI и параметр Emission в шейдере проброшен в Lightmap Emissive. В URP/Lit это Emission → Baked Emission. Если этот флаг не включён, объект светится сам по себе, но ничего не освещает в запечённом лайтмапе — распространённая причина того, почему «светящийся» экран или окно не даёт света на пол вокруг.
Инструменты для диагностики освещения
Frame Debugger (Window → Analysis → Frame Debugger) позволяет пройтись по каждому draw call и посмотреть, какой Pass отвечает за конкретный объект. Незаменим, когда нужно понять, почему объект освещается не так, как ожидается.
Rendering Debugger в режиме Lighting → Albedo / Specular / Normal / Direct Diffuse разбирает освещение на компоненты. Если Normal карта не влияет на освещение так, как должна — это сразу видно в режиме просмотра Normal.
GPU Usage Profiler показывает, сколько GPU-времени уходит на Shadow Caster Pass для каждого источника. Если один Spot Light с включённым Shadow Casting съедает 3 мс — это повод либо снизить Shadow Resolution для этого источника, либо перевести его в non-shadow режим и имитировать тень через Blob Shadow текстуру.
Для HDRP-проектов есть отдельный инструмент — Light Explorer (Window → Rendering → Light Explorer). Показывает все источники света в сцене в виде таблицы с режимами, интенсивностью и типом теней. Удобно для аудита сцен, где источников больше 20: не нужно кликать по каждому в Hierarchy.
Что входит в нашу работу
- Аудит текущего освещения и рендер-пайплайна
- Настройка Key, Fill, Back Light с учётом художественного брифа
- Оптимизация под целевые платформы (включая mobile, console)
- Запекание Lightmap и Light Probes
- Документация по световой схеме и рекомендации для команды
- Поддержка в течение двух недель после сдачи
Процесс и сроки
Работа начинается с художественного брифа: референсы, время суток, атмосфера, целевая платформа. Дальше — технический аудит сцены (количество источников, текущие Render Path, версия движка). Затем настройка базового освещения с итерационным согласованием. Финальный этап — оптимизация и проверка на целевых устройствах.
| Тип сцены | Сроки |
|---|---|
| Один небольшой интерьер (до 100 кв.м, URP) | 1–3 дня |
| Средний уровень с несколькими зонами | 3–7 дней |
| Открытая сцена с динамическим циклом суток | 1–3 недели |
| Комплекс сцен с единым световым стилем | 3–5 недель |
Стоимость рассчитывается индивидуально после анализа требований и текущего состояния проекта. Получите консультацию по вашему проекту — свяжитесь с нами.






