Global Photons Sampling -
Глобальные Фотоны Сэмплинг
В этом уроке мы будем рассказывать о распределении
фотонов. Фотоны могут показаться сложными для изучения, но когда вы поймете
принципы, фотоны будут первым что вы настроите в GI Сейчас вы можете открыть
сцену из предыдущего урока, это хороший пример действия фотонов.
Вот эта сценка.
Просчитанное изображение без включения ГИ
Фотоны: Что это такое и как они
работают ?
Для получения быстрого светового решения, мы будем
использовать чистое фотонное распределение (photon mapping). Множество
различных настроек и опций может сначала подавить вас, но отрегулировав их один
раз, вы удивитесь, насколько они просты.
Внизу находится свиток "Brazil: Photon Map
Server" окна Render Scene.
Из всех опций, [Photons in Estimate] и [Max Search
Radius] наиболее важные. Эти настройки контролируют как происходит подсчет
фотонов для любых точек(в нашем случае , это будет per-pixel, с настройкой
shade rate - 0/0, но неволнуйтесь, это достаточно быстро).
(для
тестовых рендеров вполне подойдут настройки
shade rate - 4/-1)
Текущая Фотонная карта - "Current Photon
Maps"
Здесь в списке только 2 настройки Global и Caustic. Вам нужно просто выбрать,
что вы хотите использовать: настройки global photon, или caustical photon. В
нашем уроке это будут только Global.
Отскок Фотонов - "Photon Bounces"
Это контроллер количества откоков фотона, которые он может сделать. Глубина
Рассеяния - [Diffuse Depth] величина позволяющая световому потоку отскакивать
от освеженной поверхности (например белой ровной стены). Глубина Отражения -
[Reflected Depth] - количество отскоков отражения фотона, Глубина преломления
[Refracted Depth] количество отскоков преломления фотона, могут быть global
caustics, а также caustics генерируемые освещенными поверхностями.
Общие Параметры - "Common Parameters"
Опция [Active] просто активирует/деактивирует просчет фотонов, даже если
источник света настроен испускать фотоны, деактивация блокирует испускание.
Степень Сияние - "Irradiance Estimate"
Когда просчитывается световой образец с фотонами, эти настройки вступают в
игру. Для задания светового образца, одно или два условия должны быть
выполнены, или световой образец не будет засчитан в финальную карту (final
map)(будет черным). Каждое число фотонов должно быть собрано в [Photons in
Estimate], или все фотоны должны быть собраны в [Max Search Radius]. В случае
когда радиус фотонов слишком мал, или число испускаемых фотонов недостаточное,
образец будет черным. Если величина числа фотонов в настройке search radius больше,чем
величина photons in estimate, будет собрано то число фотонов которое указано в
настройке photons in estimate. Настройка [Energy Multiplier] контролирует
интенсивность излучения самих фотонов.
Фильтрация - "Filtering"
В основном используется для бликов. Это делает границы фотонной карты более
явными. [Enable]
активирует filtering.
И еще одна важная часть, свиток "Photon
Maps" в настройках источника
светаbLight
Снова большой свиток, и
несколько различных общеиспользуемых характеристик. Тип фотонной карты - "Photon Map
Types" Генерация Фотонов - [Generate Photons] [Tweak Emission Params] [View Photons (debug)] Фокусировка фотона - "Photon Focusing" Сейчас прекрасная часть. Первое,зайдите в свиток
"Brazil: Luma Server" в окне Render Scene, и активируйте [Enable] в
группе "Indirect Illumination" и установите [Bounces] на 1. Затем
зайдите в свиток "Brazil: Photon Map Server" и сделайте
"Global" текущей фотонной картой, активируйте ее [Active].
Установите
[Photons in Estimate] на 32, а [Max Search Radius] на 30. Вернитесь в свиток "Photon Maps" в источнике
света bLight и активируйте [Generate Photons], затем активируйте и настройте
[# photons] на 30,000. Активируйте - Enable [Independent Focus], затем
настройте hotspot и falloff to 30 для отправки всех фотонов по заданному
направлению. Нажмите рендер. |
Не слишком хорошо. У нас еще много недостаточно
освещенных мест... Увеличьте [Diffuse Bounces] до 8, и пересчитайте снова.
Та же проблема, пересвеченная сцена, слишком много
отскоков. Вы можете выбрать 2 варианта, либо изменить интенсивность источника
света в сцене, или использовать свиток "Brazil: Exposure / Color Clamping
Чтобы получить правильные световые уровни при
понижении exposure, вы можете установить [Maximum Luminance Per Sample] на
величину выше, чем 1. Снова, эта величина определяется сценой. Итак [Max Luminance Per
Sample] на 2, и [Exposure] на 0.6 см.рисунок ниже
Внимание: задний фон стал темнее.
Сцена стала еще более пятнистая. Это результат
увеличения настройки bounces и интенсивного источника света, который добавляет
контраста в сцену, не пятнистость, только контраст.
Для сглаживания изображения проведем некоторую
регулировку. многие думают, что увеличение числа фотонов может значительно
сгладить сцену, однако что реально сглаживает, это увеличение значения Max
Search Radius]. Это снижает аккуратность просчета фотонной карты, но фотоны не
влияют на аккуратность карты, они добавляют аккуратности рассеянному свету.
Если вам нужна аккуратность, мы поговорим об этом попозже в этом уроке.
Настройте параметры [Max Search Radius] и [Photons
in Estimate], как указано ниже:
[# Photons]
45000
[Photons in Estimate] 1024
[Max Search Radius] 150
Результат очень хороший, но как вы можете видеть
не имеется никакой "вспышки",там где свет отражается от стены / пола,
и свте выглядит не очень аккуратно. Исправить это возможно настройкой
называемой Regathering.
Термин "Regathering" относится к методу GI, включающего просчет обоих Photon Mapping и QMC(обычная) техника GI sampling. С помощтю фотонов, QMC образует "правильное направление, откуда приходит свет-- откуда приходят фотоны-- и как результат не только быстрее, чем обычный QMC sampling, но и более аккуратное фотонное распределение. Сейчас однако сцена перенасыщена фотонами для этого, просчте будет слишком медленный. Результата который мы затем увидим, низкая количество фотонов, покрывающих болшую площадь (высокая настройка [Max Search Distance]) дает сглаженный результат, в то времы как число фотонов малое.
Для активации regathering, установите [Bounces] в свитке "Brazil: Luma Server" на 2.
Затем установите view rate на 4 и пересчитайте сцену.Сейчас мы получили вспышки
света от пола. Вы можете поэкспериментировать с настройками undersampling, для
получения более сглаженного результата, как на изображении внизу.
Вы можете поэкспериментировать с настройками
undersampling, для получения более сглаженного результата, как на изображении
внизу. (Настройки на мой взгляд для получения такого результата должны
бытьследующими shade rate - 0/0; view rate 15; Bounces в свитке "Brazil: Luma Server 2)
На изображении выше имеется проблема с
regathering, и photon mapping вообще. В углах, обычно, вы можете заметить свет,
где его не должно быть. Это распространенная проблема, и единственный способ
это обойти увеличить photon count, однако, это увеличит время рендеринга.В
заключение, вы можете потратить много времени изучая фотоны, и если
использовать их корректно, вы можете получить результаты как при
"regular" QMC GI rendering.
Наслаждайтесь!