Суббота, 04.05.2024, 14:02
Приветствую Вас Гость RSS
Bloha_1915
Все мои работы
ГлавнаяКаталог статейРегистрацияВход
Меню сайта
Категории раздела
Учебные пособия [4]
Статьи по созданию моделей [12]
Статьи по созданию материалов и текстур [3]
Постобработка изображений [3]
Визуализация, рендер, камеры [18]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа

Облако тэгов

Главная » Статьи » Курс Дизайн интерьера » Визуализация, рендер, камеры

V-Ray - Indirect illumination

Глобальное освещение является одним из алгоритмов современных рендер движков, добавляя в финальное изображение дополнительный рендер элемент. Для простоты понимания работы рендер движка, проще всего условно представить формирование рендерером финального изображения путем наложения отдельно полученных рендер-элементов, таких как тени, цветовая, световая информация, информация о прозрачности, и т.п. друг на друга по определённым правилам. То есть представить финальное изображение как совокупность отдельных изображений с разной информацией. Те, кто знаком Photoshop, могут сравнить этот процесс с накладыванием друг на друга разных слоев с определенным blending режимом. Indirect illumination это один из рендер-элементов, добавляющий в общий результат информацию о вторичном освещении сцены. Чтобы понять, что именно добавляет в финальное изображение этот элемент, давайте рассмотрим, что такое глобальное, вторичное или непрямое освещение в принципе.

Непрямое освещение в природе

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

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

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


Почему так происходит? Почему один объект становится светлее, если рядом с ним появляется другой, светлый объект?

Так происходит из-за явления диффузного отражения. Светлый объект попросту отражает падающие на него, от источника света, лучи. А они, в свою очередь, отражаясь, попадают и освещают неосвещенную сторону другого объекта. Из-за своего происхождения, то есть из-за того, что эти лучи – отраженные от других объектов, а не летящие непосредственно от источника света, их называют вторичными или непрямыми. Соответственно освещение, которое создается этими лучами, называется непрямым, т.е. Indirect illumination.

Несложно догадаться, что отраженные первый раз от одних объектов лучи непрямого освещения, тоже отражаются огромное количество раз от других соседних предметов. Этот процесс лавинообразный и происходит со всеми освещенными объектами, в итоге создавая множество отраженных и переотраженных во все стороны лучей. Каждое последующее отражение светового луча несет в себе меньше энергии, чем предыдущее, так как она частично поглощается объектами, от которых луч отражается. В итоге световой луч полностью затухает. Из-за того, что такой отраженный свет существенно освещает даже те участки, которые не освещаются напрямую источником света, то есть глобально освещает всю среду, эта часть освещения называется глобальной, т.е. – Global illumination или сокращенно GI.
Глобальное освещение в компьютерной графике

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

Давайте посмотрим, как выглядит вторичное освещение в компьютерной графике на конкретных примерах.

Для такого примера была создана простейшая сцена в 3ds Max.


На скриншоте выше видно, что это прямоугольное помещение с оконным проемом, в которое установлен источник света. Внутри помещения перед окном поставлен куб ChamferBox с небольшим Fillet радиусом, и обыкновенная Sphere за ним. Все материалы в сцене полностью матовые, без каких либо отражений, даже размытых. В материалах помещения применены только текстурные карты, материалы куба и сферы – стандартные материалы с белым цветом в слоте Diffuse.


Перед Вами визуализация этой сцены. Обратите внимание, что она освещена только лишь прямыми лучами источника света без использования GI. Для наглядности, один из лучей условно показан салатовой стрелкой.

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

Как было видно из скриншота вьюпорта 3ds Max, за кубом находится полностью белая сфера, тем не менее, ее совершенно не видно.

Конечно же, в реальном мире, в подобной ситуации она будет прекрасно видна, даже если на нее не попадают прямые лучи.


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

Чтобы понять эффект непрямого освещения, посмотрите на условный луч Direct Light от источника прямого света. Как было сказано ранее, вторичное освещение – это явление отражения световых лучей от объектов. Именно это явление и имитирует глобальное освещение в компьютерной графике. Луч прямого света исходит из его источника и попадает на стену, противоположную оконному проему. Затем, эстафету принимает вторичное освещение и лучи не исчезают, а отражаются, отскакивая от стены, попадая на сферу. Это условно показано красной стрелкой. Таким образом, происходит главный отскок прямого света от объекта сцены, который попадает на сферу, разумеется, освещая ее. После этого луч снова отражается, уже от сферы, попадает на нижнюю часть стены за ней и, опять же, освещает и ее. Это условно показано голубой стрелкой.

Количество вторичных отражений луча не ограничивается двумя отскоками. Их может быть намного больше, в зависимости от настроек рендерера. Также, необходимо понимать, что каждый луч от источника прямого света при отражении разбивается на множество лучей вторичного света. Это количество тоже зависит от конкретных настроек. На примере выше множество лучей, на которые разбивается один луч от прямого света, не показаны лишь с целью упрощения схемы. Более подробно, схема диффузного отражения луча напоминает перевернутый одуванчик:


Первичный луч от источника прямого света, показанный салатовым цветом, бьется о поверхность, после чего формируются вторичные лучи, показанные красным. Эти вторичные лучи исходят от поверхности диффузно, т.е. разлетаясь множеством лучей от нее во все стороны. В свою очередь, эти уже отраженные лучи, ударяясь о другие встречающиеся им поверхности, таким же образом снова формируют множество лучей каждый, и так дальше и дальше. Луч вторичного освещения может отскакивать большое количество раз, в зависимости от количества вторичных отскоков, определяемого параметрами рендерера. Опираясь на изображение выше, не составляет труда представить, что они образуют полусферу, похожую на одуванчик. Векторы лучей расходятся на все 180 градусов в разные стороны, то есть по полусфере от точки отражения. Именно так ведут себя лучи в GI движке и именно из-за формы отражения их еще называют Hemispheric Rays, т.е. полусферическими лучами.

Следует отметить, что отскоки лучей вторичного освещения в V-Ray разделяют на основные (первое отражение), названные Primary bounces и дополнительные (все последующие), названные Secondary bounces. Первый по счету отскок луча от объекта сцены неспроста назван Primary bounce, т.е. главным отскоком. Все дело в том, что рендер-движок, имитирующий поведение реального света, устанавливает затухание лучам по мере их переотражения. И, как это случается в реальном мире, первый отскок несет большую долю отраженной световой энергии. Причем энергия этого первого настолько значительная, что в разы превышает световую энергию всех последующих отражений вместе взятых. Т.е. он один влияет на освещенность сцены больше, чем все последующие в сумме. И наоборот, в виду своей меньшей значимости, все отскоки, следующие за первым главным, названы Secondary bounces, т.е. дополнительными.
Практическая настройка GI

Итак, самое время разобраться, как практически управлять глобальным освещением в V-Ray.

Откройте окно Render Scene (клавиша F10) и перейдите на вкладку Indirect illumination.

В данной вкладке главным управляющим свитком является V-Ray:: Indirect Illumination (GI). В нем осуществляется включение глобального освещения, выбор алгоритмов просчета главных и дополнительных отскоков и общие настройки GI.

Прежде всего, для активации глобального освещения в сцене следует установить галочку в чекбокс On. После этого Вам станут доступны параметры глобального освещения V-Ray движка.



В зоне GI caustics можно включить или отключить так называемые рефлективные и рефрактивные каустики для GI лучей.

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



Именно эти эффекты имитирует фотонная карта кустик, находящаяся в свитке V-Ray:: Caustics. Несмотря на то, что этот свиток является самым последним во вкладке Indirect illumination и логично о нем писать в самую последнюю очередь, хотелось бы вкратце написать о нем именно сейчас. Расчет каустик в V-Ray сопровождается появлением большого количества артефактов, чрезмерным потреблением оперативной памяти и сложной предварительной настройкой. Всё это – при минимально заметном, а то и отсутствующем эффекте в подавляющем большинстве сцен. В универсальных стартовых настройках V-Ray просчет каустик включать не следует.

Также, следует понимать, что расчет каустик и GI каустик это разные вещи. Каустики, созданные вышеупомянутой фотонной картой, рассчитываются лишь для первичных лучей от источника света. В то время как GI каустики просчитываются отдельно и настройки зоны GI caustics свитка V-Ray:: Indirect Illumination (GI) отвечают как раз за эти каустики, произошедшие от вторичного освещения. Мало того, GI каустики названы каустиками лишь по некой аналогии с фотонными, на самом деле они таковыми не являются.

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

Учитывая меньшую энергию лучей вторичных отскоков, по сравнению с лучами от источников прямого света, влияние рефлективных каустик на общую освещенность сцены будет незначительное. Кроме того, в виду необходимости просчета Reflective caustics рендерером, их включение увеличит время просчета вторичного освещения, а также в виду сложности сэмплирования этого эффекта, возможно появление нежелательного шума в GI. Учитывая данные недостатки, эту опцию следует номинально оставлять выключенной в универсальных стартовых настройках V-Ray.

Опция Refractive позволяет включать просчет рефрактивных каустик для GI отскоков. Несмотря на схожее название с каустиками от прямых лучей источников света, где имитируются именно каустические световые эффекты, Refractive caustics просто позволяет проходить вторичному освещению через прозрачные поверхности. Например, это применимо в интерьерной сцене, которая освещается вторичным освещением от VRaySky / skylight /Skylight portal, находящимся за окном, а в оконных проемах стоят модели окон со стеклом. Отсутствие просчета Refractive caustics в этой сцене сделает весь рендер черным, просто потому что GI лучи не попадут внутрь интерьера, так как не смогут пройти даже через прозрачное оконное стекло.

Для большинства сцен такое поведение GI неприемлемо и поэтому опцию Refractive в универсальных настройках V-Ray следует активировать, установив чекбокс Refractive.

Следующая зона свитка V-Ray:: Indirect Illumination (GI) это – Post-processing, содержащая три параметра.

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


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

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

Его природа довольно проста. Красный объект – это объект, поглощающий лучи всех цветов и отражающий лишь лучи красного цвета. Именно это эффект отчетливо имитируется на этом изображении. Прямые лучи белого цвета, который, как известно, несет в себе все цвета видимого спектра, падают из окна на поверхность куба, после чего отражаются. Но отражаются они уже не белыми, какими они были изначально, а красными, т.к. красный материал куба поглотил все цвета кроме красного. Таким образом, красный куб освещает собой близлежащие объекты и окрашивает их в красный цвет.

Избавиться от этого, зачастую, чрезмерно выделяющегося, эффекта помогает понижение параметра Saturation. Меньшее значение saturation делает цветное диффузное отражение бледнее, в то время как большее значение делает его насыщеннее.

Вот та же сцена с тем же красным кубом, но со значением Saturation, равным нулю:


В этом изображении уже нет "красных стен", однако следует понимать, что это глобальный параметр, влияющий на абсолютно все диффузные отражения в сцене, уменьшающий цветовую насыщенность всех GI лучей. В большинстве случаев сильное занижение или же завышение этого параметра даст неестественный результат. Оптимальным для подавляющего большинства сцен является значение этого параметра равное 0.7. Именно его следует устанавливать в универсальных стартовых настройках.

Если возникает необходимость исправить эффект колор блидинга от какого-либо конкретного объекта либо материала, то для локального контроля этого аспекта следует использовать VRayOverrideMtl, о чем красноречиво свидетельствует очень удачный пример в V-Ray Help.

Contrast и Contrast base – параметры, которые буквально управляют контрастом GI, используемым рендерером при формировании финального изображения, аналогично как Saturation по сути всего лишь управляет цветовой насыщенностью GI. Параметр Contrast работает совместно с параметром Contrast base. Технически Contrast base – это одна из переменных алгоритма, вычисляющего контраст рендер-элемента GI, смещая диапазон его значений и тем самым влияя на его яркость. При базе Contrast base равной нулю, увеличение значения параметра Contrast осветляет GI; при базе Contrast base большей нуля, увеличивается общая яркость, и увеличение значения параметра Contrast приводит к затемнению GI.

На практике эти параметры проще рассматривать как аналог инструмента Brightness/Contrast растрового редактора Photoshop. В подавляющем большинстве ситуаций совершенно нет никакой необходимости как-либо изменять контрастность GI. Поэтому в универсальных стартовых настройках V-Ray их значения не стоит изменять, оставив 1 для Contrast и 0,5 для Contrast base, как это выставлено по умолчанию.

Следующая зона свитка V-Ray:: Indirect Illumination (GI) это зона выбора движков просчета основных и дополнительных отскоков световых лучей, называемых Primary и Secondary bounces.

У многих 3d визуализаторов количество настроек GI вызывает панику. На самом деле в этих настройках, если все и не сильно просто, то, как минимум, все достаточно логично. Есть основные, есть дополнительные отскоки луча. Просчитываться одни и другие с помощью специальных алгоритмов – GI engine. Всего в V-Ray существует четыре алгоритма просчета отскоков GI. Их выбор можно сравнить с выбором алгоритмов антиалиасинга. Есть грубый алгоритм просчета GI отскоков Brute force и три несколько более гибких алгоритма – Global photon map, Irradiance map и Light cache.

В зонах Primary и Secondary bounces находятся всего два параметра, числовой параметр Multiplier и выпадающий список GI engine.

Multiplier – это величина применения рендер элемента данного светового отскока GI при формировании финального изображения, проще говоря его яркость.

По умолчанию, для Primary и Secondary bounces значения Multiplier установлены равные единице. Однако это не самые удачные значения, потому что в виду излишней яркости лучей GI по сравнению с яркостью лучей от источников прямого света, получаются сильно пересветленные и неконтрастные изображения. Часто это сказывается еще и на тенях, которые становятся более светлыми, что на визуализации сразу вызывает эффект "летающих" объектов, под которыми нет привычной тени.


Внимательно посмотрите на это изображение. Оно достаточно светлое, но при этом слабо видны все делатели сцены, они кажутся смазанными и нечеткими. Это происходит, потому что вторичное освещение очень высветлят тени и тем самым сильно снижает детализацию сцены, делая ее "плоской". В сценах, содержащих объекты насыщенных цветов, величина Color bleeding также увеличится, вследствие большего влияния лучей GI на сцену. Кроме того, не сразу ясно, что же является источником света в этой сцене, так как совершенно нет контраста между ярким светом из окна и столь же ярким вторичным освещением. Создается иллюзия, что где-то внутри помещения присутствует дополнительный источник света. Совершено иная картина наблюдается на изображении с более удачными значениями интенсивности вторичного освещения.


На этом изображении выбран верный баланс интенсивности между первичным освещением от источника света и вторичным освещением в сцене. Посмотрите, как сразу же видно происхождение освещения, не возникает никаких сомнений в том, что его источником является свет из окна, а не импровизированные источники внутри помещения. Также гораздо четче видны детали, сцена становиться сочной и проработанной. Такой подход значительно поднимает контраст изображения, делая его более фотореалистичным. Если изображение Вам покажется недостаточно ярким, то это элементарно решается поднятием значения общего Multiplier в настройках колор мэппинга V-Ray, расположенных в свитке V-Ray: color mapping вкладки V-Ray.

Если требуется лишь незначительная доводка общей яркости визуализации, то гораздо рациональнее осуществлять ее в графическом 2d редакторе. Кроме того, как уже было сказано в первом уроке серии оптимальных настроек V-Ray, адаптивное поведение рендер-движка V-Ray в значительной степени зависит от яркости просчитываемого изображения, откуда следует, что более светлый GI неизбежно приведет к большему времени просчета финального изображения. По этим причинам следует выбирать верное значение яркости GI. Рациональными и наиболее удачными, подходящими для подавляющего большинства сцен и случаев являются значения 0.85 и 0.7 для Primary и Secondary bounces соответственно. Именно их и следует устанавливать в стартовых универсальных настройках V-Ray.

GI engine – выпадающий список, в котором можно выбрать тот или иной алгоритм просчета отскоков лучей. Для того, чтобы понять какие именно алгоритмы следует использовать для Primary bounces и какие для Secondary bounces, необходимо познакомиться поближе с каждым из них.

В этом уроке мы познакомилась поближе с некоторыми важными аспектами настройки V-Ray рендерера, в частности с инструментарием свитка V-Ray:: Indirect Illumination (GI), а также с теоретическими основами вторичного освещения и его сущностью в реальном мире.

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




Источник: http://renderstuff.ru/vray-indirect-illumination-optimalnye-nastrojki-cg-urok
Категория: Визуализация, рендер, камеры | Добавил: bloha_1915 (09.01.2012)
Просмотров: 3190 | Теги: v-ray, Теория | Рейтинг: 5.0/1
Всего комментариев: 0

Поиск

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Ярмарка мастеров
  • Hand Hand

  • Copyright bloha_1915 © 2024
    Бесплатный хостинг uCoz