Метод излучательности (Radiosity) без обычного освещения

22 марта 2012 - Админ

    Следующая информация - выборка из интерактивной справки POV-Ray, которую Вы получаете, когда Вы нажимаете F1 после запуска POV-Ray. Кроме того, Вы найдете подробную информацию на http://www.povray.org.

    Вы можете также не включать все источники света и получить освещение чистым методом излучательности. Ситуация тогда подобна облачному дню снаружи, когда свет не исходит ни из какого конкретного направления, но от всего неба.
    Следующие два рисунка показывают, как изменяется сцена использованная в части 1, когда источник света удален (заданный по умолчанию метод излучательности, но recursion_limit 1 и error_bound 0.2)

с источником света   без источника света
с источником света                                 без источника света

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

recursion_limit 1 recursion_limit 2
recursion_limit 1 recursion_limit 2
recursion_limit 3  
recursion_limit 3  

    Это выглядит намного хуже, чем в первой части, потому что настройки по умолчанию главным образом выбраны для использования с условными источниками света.
    Следующие три рисунка показывают эффект error_bound. (здесь recursion_limit 1 ) Без источников света этот параметр даже более важен, чем с источниками света; хорошие значения очень зависят от пейзажа и других параметров настройки, более низкие значения не обязательно приводят к лучшим результатам.

error_bound 1.8 error_bound 0.4
error_bound 1.8 error_bound 0.4
error_bound 0.02  
error_bound 0.02  

    Если есть искажения изображения, то для их удаления способствует увеличение count, это действительно воздействует на качество вообще и часто помогает их удалению (следующие три рисунка используют error_bound 0.02).

count 2 count 50
count 2 count 50
count 200  
count 200  

    Следующий ряд показывает эффект nearest_count, разница - не очень сильная, но большие значения всегда приводят к лучшим результатам (максимум - 20). С этого момента все рисунки используют error_bound 0.2

nearest_count 2 nearest_count 5 (по умолчанию)
nearest_count 2 nearest_count 5 (по умолчанию)
nearest_count 10  
nearest_count 10  

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

minimum_reuse 0.001 minimum_reuse 0.015 (по умолчанию)
minimum_reuse 0.001 minimum_reuse 0.015 (по умолчанию)
minimum_reuse 0.1  
minimum_reuse 0.1  

    В большинстве случаев нет необходимости изменять low_error_factor. Этот коэффициент уменьшает значение error_bound в течение конечного шага предварительной трассировки. pretrace_end был снижен до 0.01 в этих рисунках, вторая строка показывает разницу для значения по умолчанию. Изменение этого значения может иногда помочь удалить устойчивые искажения изображения.

low_error_factor 0.01 low_error_factor 0.5 (по умолчанию)
low_error_factor 0.01 low_error_factor 0.5 (по умолчанию)
low_error_factor 1.0  
low_error_factor 1.0  


low_error_factor 0.01  low_error_factor 1.0
low_error_factor 0.01             low_error_factor 0.5 (по умолчанию)

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

gray_threshold 0.0 (по умолчанию) gray_threshold 0.5
gray_threshold 0.0 (по умолчанию) gray_threshold 0.5
gray_threshold 1.0  
gray_threshold 1.0  

    Другой важный параметр - pretrace_end. Вместе с pretrace_start он определяет шаги предварительной трассировки, которые сделаны. Более низкие значения приводят к большему количеству шагов предварительной трассировки и более точным результатам, но также и к значительно более медленному тонированию.

pretrace_end 0.2 pretrace_end 0.02
pretrace_end 0.2 pretrace_end 0.02
pretrace_end 0.004  
pretrace_end 0.004  

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

<i>ambient 3</i> вместо <i>ambient 0</i> для одного объекта <i>ambient 0.5</i> вместо <i>ambient 0</i> для всех объектов неба: <i>ambient 0</i> <i>error_bound 0.04 recursion_limit 2</i>
ambient 3 вместо
ambient 0 для
одного объекта
ambient 0.5 вместо
ambient 0 для всех
объектов неба: ambient 0
error_bound 0.04
recursion_limit 2


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

желто-синий градиент слева направо светло-темный градиент слева направо светло-темный градиент снизу вверх
желто-синий градиент
слева направо
светло-темный градиент
слева направо
светло-темный градиент
снизу вверх


    Действительно хорошие результаты очень зависят от конкретной ситуации и как сцена подготовлена для просмотра. Вот - “высококачественное” тонирование этой частной сцены, но требования могут быть очень различны в других ситуациях.

global_settings {
   radiosity {
     pretrace_start 0.08
     pretrace_end 0.01
     count 500
     nearest_count 10
     error_bound 0.02
     recursion_limit 1
     low_error_factor 0.2
     gray_threshold 0.0
     minimum_reuse 0.015
     brightness 1
     adc_bailout 0.01/2
   }
}

Более высокое качество тонирования
Более высокое качество тонирования

Рейтинг: 0 Голосов: 0 3822 просмотра
Комментарии (0)