Unity 6.3
0 онлайн 104 гостей 3 в системе
Вход
Освещение Шаг 68 из 173

Световые зонды и движущиеся GameObjects

Лайтмаппинг добавляет значительно к реализму сцены путем захвата реалистичного отраженного света как текстуры которые «изготовлены» на поверхности static Однако, в силу природы lightmapping, оно может быть применено только к недвижущимся объектам, помеченным как Внесение взносов GI.

В то время как в режиме реального времени и смешанного режима огни могут бросить прямые свет на движущиеся объекты, движущиеся объекты не получают отражённый свет от вашего статического окружения, если вы не используете световые зонды. Световые зонды хранят информацию о том, как свет отражается в вашей сцене. Поэтому, когда объекты перемещаются по пространствам в игровой среде, они могут использовать информацию, хранящуюся в световых зондах, чтобы показать приближение отраженного света в их текущем положении.

A simple scene showing bounced light from static scenery.
Простая сцена с отражённым светом от статического окружения.

В сцене выше направленный свет падает на красное и зелёное здания — статические декорации, — отраженный свет Отраженный свет видно как красный и зеленый оттенок на земле прямо перед каждым зданием. Потому что все эти модели являются staticвсе это освещение хранится в карты освещения.

Когда вы добавляете в сцену движущиеся объекты, отражённый свет они автоматически не получают. На изображении ниже видно, что на скорую помощь (динамический движущийся объект) не влияет отражённый красный свет от здания: её борт остаётся плоско-серым. Дело в том, что скорая помощь — динамический объект, который может перемещаться по игре, а значит, не может использовать карты освещения: те по своей природе статичны. Чтобы движущаяся машина получала отражённый свет, сцене нужны Light Probe.

Боковая сторона машины скорой помощи плоская серого цвета, хотя она должна получать отраженный красный свет от передней части здания.
Боковая сторона машины скорой помощи плоская серого цвета, хотя она должна получать отраженный красный свет от передней части здания.

Чтобы использовать функцию светового зонда для проецирования отраженного света на динамические движущиеся объекты, вы должны разместить световые зонды по всей сцене, так чтобы они покрывали области пространства, через которые могут проходить движущиеся объекты в вашей игре.

Сонды, которые вы размещаете в сцене, определяют объем 3D. Освещение в любом месте в этом объеме затем приближается к движущимся объектам путем интерполяции между информацией, выпеченной в ближайших зондах.

Light probes placed around the static scenery in a simple scene. The light probes are shown as yellow dots. They are shown connected by magenta lines, to visualise the volume that they define.
Зонды освещения, размещённые вокруг статических декораций в простой сцене. Зонды показаны жёлтыми точками и соединены пурпурными линиями, чтобы был виден задаваемый ими объём.

После того как вы добавили зонды и запекли свет в сцене, ваши динамические движущиеся объекты начнут получать отражённый свет от ближайших зондов. В том же примере, что и выше, динамический объект (скорая помощь) теперь получает отражённый свет от статических декораций, и борт автомобиля приобретает красноватый оттенок, поскольку машина стоит перед красным зданием, отражающим свет.

Боковая сторона машины скорой помощи теперь имеет красный оттенок, потому что она получает отраженный красный свет от передней части здания, через световые зонды в сцене.
Боковая сторона машины скорой помощи теперь имеет красный оттенок, потому что она получает отраженный красный свет от передней части здания, через световые зонды в сцене.

При выборе динамического объекта, вид Scene нарисует визуализацию того, какие световые зонды используются для интерполяции отраженного света. Ближайшие к динамическому объекту зонды используются для формирования тетраэдрального объема, и свет динамического объекта интерполируется из четырех точек этого тетраэдра.

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

По мере того, как объект проходит через сцену, он перемещается из одного тетраэдрального объёма в другой, и освещение рассчитывается на основе его положения в текущем тетраэдре.

Динамический объект, движущийся по сцене с световыми зондами, показывающий, как он переходит от одного тетраэдрального объема светового зонда к другому.
Динамический объект, движущийся по сцене с световыми зондами, показывающий, как он переходит от одного тетраэдрального объема светового зонда к другому.