Панель Радиосити        

Top  Previous  Next

27.21. Данная панель содержит настройки параметров режима радиосити.

 

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

Существует 4 режима расчета, настроенных по умолчанию.

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

Расчет 'Расчет 1 (Среднее качество)' уже обнаруживает тени в углах и обозначает тени от рассеянного света.

Расчет 'Расчет 2 (Высокое качество)' формирует форму теней от рассеянного света.

Расчет 'Расчет 3 (Высокое качество)' формирует форму теней от рассеянного света и настроен на удаление возможных визуальных артефактов (ошибок изображения).

Визуально отличие режимов выглядит так:

 

расчет Простой
расчет Простой

Расчет 1 (Среднее качество)
Расчет 1 (Среднее качество)

Расчет 2 (Высокое качество)
Расчет 2 (Высокое качество)

Расчет 3 (Высокое качество)
Расчет 3 (Высокое качество)

 

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

 

Рассмотрим параметры для настройки режима.

 

PreTrace_Start

PreTrace_End

 

Для управления этапом сбора информации при предварительной трассировке радиосити используются ключевые слова pretrace_start и pretrace_end. Значение (от 0.0 до 0.1) определяет размер блоков в предварительном просмотре мозаики в процентах от размера изображения. Эти настройки предварительной трассировки помогают POV-Ray определить, где требуются дополнительные образцы излучения. Для финального высококачественного рендеринга обычно лучше оставить параметр PreTrace_Start около значения по умолчанию (0.08), но иметь гораздо меньшее значение PreTrace_End (например 0,004).

 

Count

 

С помощью Count задается количество лучей, которые посылаются всякий раз, когда необходимо вычислить новое значение яркости. Значение по умолчанию - 50, максимальное - 2000. Count является одним из основных параметров, влияющих на соотношение скорость/качество. Большее количество лучей дает более точные результаты, но значительно увеличивает время рендеринга. Count необходимо сбалансировать с помощью параметра Error_Bound, так как меньшие значения Error_Bound обычно требуют большего Count. Ярким признаком недостаточности параметра Count является неравномерность (пятна) при отображении ровных однотонных поверхностей. Если вы работаете только с 'сильными' (не однотонными) текстурами, то параметр можно уменьшить.

 

Error_Bound

 

Значение Error_Bound является одним из двух основных значений, влияющих на соотношение скорость/качество (другое - Count). Error_Bound предназначена для обозначения доли допустимой ошибки (0.1-2.0). Например, если было установлено значение 1, алгоритм не будет вычислять новое значение до тех пор, пока ошибка последнего не будет оценена в 100%. Значение по умолчанию (1.8) подходит для сглаживания общего эффекта освещения, но может некорректно отображать углы или более мелкие тени. Использование более низких значений более точное, но увеличивает опасность артефактов и, следовательно, требует более высокого значения Count. В теории можно использовать значения ниже 0.1, но тогда время рендеринга и использование памяти могут стать чрезвычайно высокими.

 

Low_Error_Factor

 

Если вы рассчитаете достаточно сэмплов (во время предтрассировки), но не больше, вы получите изображение со слегка пятнистым освещением. Вам нужно всего лишь несколько дополнительных сэмплов, чтобы смешивание было плавным. Решением этой проблемы является предварительный просмотр мозаики, управляемый функцией pretrace: он предварительно просматривает изображение один или несколько раз, вычисляя значения яркости. Чтобы гарантировать получение нескольких дополнительных сэмплов, алгоритм радиосити снижает Error_Bound во время начального прохода или проходов, а затем устанавливает его обратно непосредственно перед последним проходом. Low_error_factor - это значение настройки (0.2-1.0), которое устанавливает величину, на которую уменьшается Error_Bound во время предварительных проходов предтрассировки. Если Low_error_factor равен 0.8, а Error_Bound установлен на 0.4, он будет использовать Error_Bound 0.32 (0.4 x 0.8) во время начальных проходов и 0.4 на последнем проходе. То есть это просто множитель, уменьшающий значение Error_Bound, на этапе предварительной трассировки. Во всех режимах по умолчанию Low_Error_Factor = 0.5.

 

Recursion_Limit

 

Значение Recursion_Limit - число, которое определяет, сколько уровней рекурсии используется для вычисления диффузного взаимного отражения (1-5). Это количество раз, когда свет отражается от объектов, прежде чем достигнет вашего глаза. В реальном мире это может быть очень большое число. В POV-Ray выше не всегда лучше. Значения от 2 до 4 дают хорошие результаты для большинства сцен. Более высокие значения могут привести к значительному снижению скорости. Рекомендуется использовать наименьшее значение, обеспечивающее желаемый вид вашей сцены. Обратите внимание, что количество рекурсий может повлиять как на яркость, так и на контраст ваших освещенных объектов. Во всех режимах по умолчанию Recursion_Limit = 2.

 

Nearest_Count

 

Значение Nearest_Count - это минимальное количество старых значений окружающей среды, смешанных вместе для создания нового интерполированного значения. По умолчанию - 5, максимальное значение - 20. Увеличение Nearest_Count может значительно уменьшить или сгладить пятнистость, поскольку большее количество ближайших значений будет усреднено. Как всегда, это снижает скорость, но использование более высоких значений, таких как 10 или даже 20 для окончательной трассировки, может помочь удалить артефакты. Некоторые артефакты также можно удалить, настроив параметр Count.

 

Minimum_Reuse

 

Minimum_reuse (0.005-0.1) влияет на то, на каком минимальном расстоянии предыдущие сэмплы излучения всегда повторно используются во время расчета, влияя на качество и плавность в укромных местах и углах. Более низкие значения обычно дают более гладкий вид деталей углов, в то время как более высокие значения могут привести к тому, что углы будут выглядеть пятнистыми, если другие параметры (в первую очередь Count и Nearest_count) также не установлены на более высокое качество.

 

Gray_Threshold

 

Рассеянный взаимно отраженный свет является функцией объектов вокруг рассматриваемой точки. Поскольку это рекурсивно определяется миллионами уровней рекурсии в любой реальной сцене, каждая точка освещается, по крайней мере частично, любой другой частью сцены. На рассчитанный окружающий свет влияют цвета объектов рядом с ним. Это называется растеканием цвета, и это действительно происходит, но в небольшой степени. Gray_Threshold немного обесцвечивает цветной свет, чтобы сделать вашу сцену более визуально правильной. Значение 0.6 означает, что значение окружающей среды рассчитывается как 60% от эквивалентного рассчитанного значения серого плюс 40% от фактического рассчитанного значения. При 0.0 эта функция ничего не делает. При 1.0 вы получите 100% чистый белый / серый окружающий свет без оттенка. Во всех режимах по умолчанию Gray_Threshold = 1.0, то есть влияние цвета отраженного света не учитывается.

 

Brightness

 

При изменении Brightness меняется интенсивность эффектов радиосити. Теоретически указание Brightness = 0 означает отсутствие эффектов от радиосити, однако на практике POV-Ray такого не происходит. Как правило Brightness = 1 работает корректно в большинстве случаев. Если эффекты от радиосити слишком сильные, вы можете уменьшить их, изменив Brightness. Но обычно это указывает на то, что, например, текстуры слишком яркие, а освещение слишком тусклое. Во всех режимах по умолчанию Brightness = 1.0.

 

Adc_Bailout

 

В сценах со множеством отражающих и прозрачных поверхностей POV-Ray может увязнуть, отслеживая множественные отражения и преломления, которые очень мало влияют на цвет конкретного пикселя. Программа использует систему под названием Adaptive Depth Control (ADC), чтобы прекратить вычисление дополнительных отраженных или преломленных лучей, когда их вклад незначителен. Вы можете использовать Adc_bailout (0.005-0.05) чтобы указать значение, менее которого вклад луча считается несущественным (значение по умолчанию - 1/255, или примерно 0,0039, поскольку меньшее изменение не может быть видно на 24-битном изображении). Параметр относится к системе определения признаков окончания трассировки, как и параметр Max_Trace_Level.

 

Max_Trace_Level

 

Глобальная настройка Max_Trace_Level определяет максимальное целое число рекурсивных уровней, на которых POV-Ray будет отслеживать луч. Это используется, когда луч отражается или проходит через прозрачный объект, а также когда отбрасываются теневые лучи. Когда луч падает на отражающую поверхность, он порождает другой луч, чтобы увидеть, что отражает эта точка. Это первый уровень трассировки. Если он попадает в другую отражающую поверхность, порождается другой луч, который переходит на второй уровень трассировки. Уровень по умолчанию - пять. Если Max_Trace_Level достигается до того, как будет обнаружена неотражающая поверхность, и если ADC (Adc_bailout) не разрешил ранний выход из дерева лучей, цвет возвращается как черный. Поднимите Max_Trace_Level если вы видите черные области на отражающей поверхности там, где должен быть цвет. Во всех режимах по умолчанию Max_Trace_Level = 5.

 

Обычно параметры Adc_Bailout (0.005-0.01) и Max_Trace_Level (5) устраивают в большинстве сцен.

 

Настройка основных параметров (на что обратить внимание).

 

PreTrace_Start и PreTrace_End

 

Итак, если мы решили получить более реалистичное изображение, то необходимо установить режим предтрассировки, то есть ненулевые значения PreTrace_Start и PreTrace_End. Для начала значение PreTrace_Start = 0.08 и PreTrace_End=0.04 вполне устроит. Если в результате рендеринга вы получаете устойчивые искажения (артефакты) в углах или на углах поверхностей можно уменьшить PreTrace_End в 2 или 4 раза. При этом можно пропорционально уменьшить и PreTrace_Start. Это увеличит время рендеренга, но поможет справиться с искажениями

(значение PreTrace_Start всегда больше PreTrace_End - в противном случае параметры будут считаться нулевыми).

 

Error_Bound и Count

 

Error_Bound - основной параметр, который показывает насколько тщательно рендер будет рассчитывать отраженные лучи (а соответственно собирать рассеяные тени). Параметр эффективен в значениях от 0.8 до 0.2 (чем меньше значение, тем точнее расчет). Сильно влияет на время расчета. Для исключения артефактов - чем меньше значение, тем больше требуется значение Count (эффективны значения 100-800). При увеличении параметра Count также увеличивается время расчета.

 

Допустим у вас нет однотонных поверхностей (краска, обои, плитка) - значение Count может оставаться в пределах 200-300. В противном случае вы заметите неравномерность освещения поверхностей и придется увеличить количество лучей (Count).

 

Для оценки установленных параметров вы может уменьшить картинку (например ширину и высоту пополам) и установить сглаживание в 0 и оценить результат за меньшее время.

 

Nearest_Count

 

Параметр влияет на плавность теней и наличие артефактов. Не надо закручивать его до предела без необходимости - время расчета увеличивается.