Освещение
< Ru
Серия Воссоздание окружающей обстановки Выскажите свои мысли — Помогите нам воплотить больше идей |
---|
Снаряжение | Животные и существа | Муравьиные львы | Лучи и лазеры | Кабели и верёвки | Движущиеся облака | Теория цвета | Битвы | Комбайны | Сжатие ресурсов | Двери | Пыль, туман и дым | Лифты | Переключение карт | Внешнее освещение, солнце, погода и окружение | Взрывы | Огонь | Растительность | Стекло и окна | Хэдкраб | Жизнеспособность | Лестницы | Освещение | Оптимизация | Физические объекты | Сканеры сетчатки | Звук и музыка | Спецэффекты | Ландшафт | Поезда | Турели | Вода | Оружие | Зомби |
Contents
Руководства
- Добавление света - Уроки для начинающих о том, как настраивать основные энтити света .
- Вспомогательное освещение - Подробный материал обо всех источниках света.
- Продвинутое освещение
- Константно-Линейно-Квадратичное рассеивание - Простое объяснение старой системы C-L-Q затухания света.
- HDR - Освещение, поддерживающее технологию широкого динамического диапазона.
Виды
Статичные источники света
Совет:Статичный свет компилируется в лайтмапы , освещающие браши , модели , кубмапы и дают статичные отражения .
Это упрощает процесс рендеринга, поскольку источники освещения уже прописаны в карту.
light
- Неподвижный, все-направленный точечный источник света (различные лампы, огонь и др.).
light_spot
- Неподвижный, однонаправленный точечный источник света (например, направленный прожектор). Конический угол луча не должен превышать 90°.
light_environment
- Содержит два связанных источника света:
- Рассеянный 'окружающий' свет (отраженный от облаков и атмосферы в целом), исходящий из всех поверхностей скайбокса.
- Направленный 'яркий' свет (солнечный или лунный), падающий в одном направлении.
- Оба излучаются материалом toolsskybox везде, где он есть на карте. См. также Скайбокс .
env_particlelight
- Освещает частицы, порождаемые
env_smokestack
. Частицы не подвержены нормальному освещению. Используйте не более двух. - Светящиеся текстуры
- Брашевые поверхности со светоизлучающим материалом (определяемым в
game_dir/lights.rad
), который отбрасывает свет на угол 180°.
Статичные светоприёмники
- Браши
- Инструмент Масштаб карты освещения диалогового окна Hammer Face Edit Dialog может быть использован для управления резкостью и размытостью лайтмапа на поверхности браша - эффект наиболее заметен в зонах с повышенной контрастностью, например, в затенённых местах. Обратите внимание, что добавление новых источников света не сильно скажется на производительности, но уменьшение масштаба карты освещения (т.е. увеличение разрешения) сразу увеличит размер карты и объём занимаемой памяти.
prop_static
- В отличие от других моделей, prop_static светится статично: значение освещения сохраняется для каждой вершины , а модель сетки столкновений (или, опционально, reference mesh ) используется для расчёта теней.
- Существуют следующие опции:
disableshadows
- Не отбрасывать тени;disablevertexlighting
- Сохранять только одно значение освещения для всей модели;disableselfshadowing
- Не позволять энтити отбрасывать тень на себя;ignorenormals
- При расчёте освещения игнорировать данные нормалей вершин. Это чрезвычайно полезно для листвы и других тонких типов вершин сетки.
Динамические источники света
Совет:Динамическое освещение вычисляется в процессе игры, что делает рендеринг более дорогим .
light_dynamic
- Простой, однонаправленный динамический свет, который может быть перемещён, повёрнут и отрегулирован.
point_spotlight
- Эффект луча от прожектора с дополнительным динамическим источником света в точке падения на поверхность.
npc_spotlight
- Прожектор NPC , похожий на point_spotlight, но с возможностью отслеживания целей.
env_projectedtexture
- Динамический источник, который светит не однотонным цветом, а определённой текстурой и в то же время 'вычитает' реалистичные динамические тени. Влияет на все поверхности, которые могут принимать свет, и используется в качестве фонарика игрока в Episode Two .
Динамические тени
Совет:Динамические тени отбрасываются только моделями (NPC, физическими пропами и т.д.), и только на брашевые поверхности (от статичных и динамических источников света). Они рассчитываются в реальном времени, поэтому довольно грубы и достаточно затратны для визуализации.
Предупреждение: Это не *настоящие* тени, а процедурные (создаваемые кодом) текстуры, проецируемые объектом. В Left 4 Dead, Portal 2 и Alien Swarm направление теней вычисляется на основе энтити, и обусловлено близостью к ней света. Но не в модах Source2006/2007/2013, если там не используются Динамические RTT углы теней из Source 2007-го года .
Предупреждение:Иногда динамические тени проникают сквозь стены и полы, выдавая местоположение игроков или объектов. Если вы столкнулись с этой проблемой, используйте info_no_dynamic_shadow .
Примечание:Тени "скользят" по визуальной сетке, если только нет shadowlod, задаваемого в QC . Shadow LOD при создании тени используют низкую детализацию. Это не относится к теням на карте (фонарикам, env_projectedtexture )
Примечание:Если динамические тени пересекаются, то они не сливаются друг с другом или освещением карты. Это может приводить к нежелательным эффектам 'удвоения', когда, например, физические пропы находятся на физическом пропе стола. Чтобы обойти эту проблему, вы можете включать и отключать динамические тени требуемых энтити.
Примечание:Динамические тени поддерживают полупрозрачность. Если ваша модель имеет разные уровни прозрачности, они могут отразиться на тени.
shadow_control
- Точечная энтити, использует управление динамическими тенями по всей карте, в том числе максимальное расстояние отбрасывания, направление отбрасывания и резкость/рассеяние.
info_no_dynamic_shadow
- Точечное энтити, использет список брашевых поверхностей, чтобы не отбрасывать динамические тени.
- Энтити
prop_physics
- Имеет значение "shadowcastdist" для переопределения дальности отбрасывания динамических теней.
- Энтити
prop_dynamic
- Имеет значение "disableshadows" и входы "enableshadows" и "disableshadows" для управления отбрасываемыми ими динамическими тенями.
- Энтити NPC
- Имеет управление prop_dynamic shadow, а также "disablereceiveshadows" Нужно сделать: чтобы предотвращать...?
Эффекты Тиндаля
Эффекты Тиндаля вызваны рассеянием света на взвешенных (коллоидных) частицах в прозрачной среде. Например, автомобильные фары в тумане.
- Эффекты Гало (светящийся спрайт) :
env_sprite
- энтити, используемая для создания всенаправленного свечения или засветки.env_lightglow
- асимметричное свечение (для зон с контрастным освещением).env_sun
- добавляет яркое пятно с ореолом в скайбоксе для задания положения Солнца или Луны.
- Эффекты ярких лучей (объёмный свет) :
- Брашевая текстура :
models/effects/vol_light001
- Брашевая текстура :
models/effects/vol_light002
- Модель :
models/Effects/vol_light.mdl
- используется вместе сprop_static
.
- Брашевая текстура :
- См. также Режимы отрисовки для спрайтов, особенно Свечение.
Стандартные значения
Яркость | |
---|---|
Автомобильные фары | 231 223 192
|
Лампа Комбайнов | 147 226 240
|
Вольфрамовая лампа | 254 216 146
|
Флуоресцентная труба | 159 237 215
|
Лампа накаливания | 255 245 145
|
Значения для скайбоксов смотрите в списке .
Примечания
- Указание имени источника делает его гораздо тяжелее для рендеринга. Давайте имена только необходимым источникам света. Несколько источников света с одинаковыми именами движку проще обрабатывать, чем с разными.
- light_dynamic - самый тяжёлый, и на некоторых системах может не отображаться
- Основные энтити света не связаны с видимыми источниками (например, лампочки). Для этого вам нужна модель. Смотрите список моделей освещения .
- Основные энтити света не "отсвечивают", как будто в тумане или сумерках. Чтобы это заработало, скомпилируйте и запустите карту с включённым HDR , или добавьте point_spotlight (с отключенным динамическим освещением, если таковое не нужно) или энтитю env_lightglow .
- Карты не будут освещены, если вы не запустите vrad (или эквивалент). VRAD не сможет работать как надо и не будет рассчитывать реалистичное отражение света, если на карте присутствуют утечки .
- Некоторые текстуры сами отбрасывают свет и могут быть созданы с помощью
lights.rad
в папке мода или вsourcesdk/bin
. - Перемещаемые объекты не меняют свечения. Их освещение будет рассчитываться только в соответствии с их положением в Хаммере (например, браш из тёмной комнаты не станет ярче, если его перенести в освещённую комнату).
Консольные команды
mat_fullbright <0-2>
0
- нормальное освещение.1
- 'полноценное' освещение, когда всё освещено на 100%.2
был введён в Orange Box и отображает 'только освещение'. Он заменяет все текстуры на однотонный цвет, позволяя вам увидеть что, где и как излучает свет.
См. также
- HL2 Light Props
- Теория цвета (дизайн уровней)
- Энтити света - Список энтити света.
- Вспомогательное освещение
- Продвинутое освещение
- Освещение из окна - Как имитировать солнечный свет, исходящий из проёмов.
Внешние ссылки
- Lighting Tutorial - Covers entities & variables with examples
- Quadratic/Linear/Constant in Lights