Наверняка многие пользователи Mental Ray в 3ds Max сталкивались с проблемой засветов связаной с низкими настройками Final Gathering. На рисунке ниже приведен пример двух рендеров выполненых с абсолютно одинаковыми настройками FG в режиме пресета Draft. О том, что способствует появлению засветов на рисунке справа, и о том, как получить результат подобныый тому что находится на рисунке слева мы поговорим далее.
Сцена для примера очень проста: ящик без боковой стенки внутри которого находится лампочка и который, в свою очередь, слегка "завис" над плоскостью.
Выполним рендер используя пресет Draft для Final Gathering
В результате под коробкой на изображении видны засветы.
Почему это происходит и как это все работает?
В корне этой проблемы лежит FG интерполяция.
Сетка из FG точек генерируется в 2d пространстве (на поверхности самой картинки), и каждая
FG
точка рассчитывается методом Монте-Карло. Алгоритм распределения точек настроен таким образом, что плотность точек будет выше в тех местах, где объекты ближе расположены друг к другу, где кривизна поверхностей больше, а так же в местах изменения контраста. Увеличивая Initial FG points Density сетка не уплотняется равномерно по всему изображению и больше точек появляется в местах с кривизной поверхности, на краях геометрии, и там где меняется контраст. В нашей сцене значение Initial FG points Density равно 0,1. Сетка имеет не достаточную плотность и 30 точек между которыми должна произойти интерполяция занимают достаточно большую площадь (на самой картинке), так как точки находятся на достаточно удаленном растоянии друг от друга.
рендер выполненый в режиме диагностики точек FG
Далее, предположим что точка, которая находится на плоскости у основания коробки, и относительно которой
интерполяция
должна произойти, не в состоянии насобирать 30 точек только лишь на темном участке. Поэтому в расчет интерполяции так же берутся точки, которые находятся на паралельных нормалях геометрии. В нашем случае, в расчете освещенности пола в интерполяции участвуют точки, которые находятся на "дне" коробки. А так как яркость в этом месте в разы выше, то из 30 находящихся рядом в этом месте точек, между которыми происходит интерполяция, возможно 29 из них находится на темном участке и имеет яркость равную, например, 5, а одна точка находится на освещенном участке и имеет яркость равную, например, 90. Так вот эта одна, самая яркая, точка внесет самую весомую лепту в расчет интерполяции между всеми 30 точками и в результате мы получим засвет. Обратите внимание что увеличивая пресеты FG от draft до high, параметр Interpolate Over Num. FG Points остается равным 30. Это значит что сетка уплотняется и площадь точек на картинке между которыми должна произойти интерполяция уменьшается. Соответственно засвет
уменьшается или исчезает вовсе. Поэтому при увеличении настроек FG засветы исчезают в ущерб затраченому на расчеты времени.
Как решить проблему не увеличивая настройки FG?
Начиная с версии 3.10.0.3 в Mental Ray был введен экспериментальный режим анализа точек FG. Принцип его работы заключается в том, что из точки относительно которой должна произойти интерполяция, оценивается видимость точек кандидатов для участия в интерполяции. Если точка кандидат не находится в зоне прямой видимости, то она не проходит отбор и взамен нее для интерполяции анализируется другая точка. Анализ точек кандидатов продолжается до тех пор пока не насобирается необходимое количество соответствующих критерию отбора точек. В нашем случае это означает что точки, которые находятся на плоскости, никогда не смогут быть интерполированы с точками которые находятся на "дне" коробки. Включается этот режим с помощью команды стринг опшенс "finalgather points test" on в свитке String options
рендер выполненый с включенным режимом
анализа точек FG c использованием пресета Draft.
О, круто! Спасиб за такой найденый способ борьбы с ватой )))
ОтветитьУдалитьМужик!!! Спасибище.
ОтветитьУдалитьБудь все же осторожней. Эта функция увеличивает кол-во Probe лучей для определения видимости точек. В некоторых сценах время рендера может улететь в небеса. Так что это не панацея на все случаи жизни, но иногда выручает.
УдалитьПодскажите пжлста,у меня 14 max стоит,но свиток String options пустой ни одной строчки : (,просто пустое поле, что делать? и как включить режим о котором вы говорите? спасибо.
ОтветитьУдалитьвот в этом пустом поле и пишете: "finalgather points test" on
УдалитьСпасибо большое. сейчас попробую.
Удалитьне помогло...: ( наверно ччо то не так я делаю
Удалитьв случае сложной геометрии типа ткани, получается очень не очень.
ОтветитьУдалить