Сегодня 30 апреля, вторник ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7272
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Всякости
Всякости
Голосов: 1
Адрес блога: http://3d-vsiakosti.blogspot.com/
Добавлен: 2011-12-16 00:44:59 блограйдером cheerful_weasel
 

Решение проблемы «гранёных» поверхностей в Cycles Blender. Terminator problem

2014-12-11 15:10:00 (читать в оригинале)

Проблема эта возникала у меня уже давно и решение я тоже нашёл давно, но с написанием статьи на эту тему я очень сильно затянул. 

Когда изучал рендеринг в Cycles, то столкнулся с одной проблемой. Моя модель получалась «гранёной», будто бы я забыл применить шейдинг Smooth. Но режим шейдинга был включён. Однако модель всё равно рендерилась таким образом, что видны были грани. Проанализировав проблему, я заметил, что возникает этот дефект на границе светотени. Именно в области где освещённая часть переходит в неосвещённую. Вся остальная часть модели, которая освещена или которая не освещена выглядит сглаженной.
Пока есть несколько выходов из ситуации. Первый заключается в том, чтобы подобрать положение объекта и ракурс так, чтобы дефект был заметен как можно меньше. Согласитесь, это не всегда приемлемо. Второй способ – использовать рассеянное освещение. Это тоже не всегда подходит. Третий способ, на мой взгляд наиболее универсален, но может быть чуть более ресурсоёмким. Он заключается в увеличении итераций сабсёрф модификатора. В разделе Subdivisions в поле Render поставьте значение 2 (оно там по умолчанию уже стоит) или больше. Иногда хватает даже одной итерации. Если не хотите, чтобы модель замедляла работу вьюпорта, то значение поля Viewможете поставить на 0. Учтите, что при визуализации в реальном времени будет действовать значение View, так что если у вас там стоит 0, то это будет означать, что модификатор вообще не воздействует на модель. Зато работать со сценой будет быстрее. А вот при финальном рендеринге модель будет сглаживаться столько раз, сколько прописано в поле Render в модификаторе Subdivision Surface.

Это конечно костыль, но пока это единственный универсальный выход из положения. Рад буду узнать, если имеются другие решения этой проблемы. Ещё хочу отметить, что в Internalрендере такой проблемы не должно возникать, поскольку это условный рендер, а Cycles это непредвзятый рендер (Biasedи Unbiasedсоответственно).

Чтобы не перегружать сцену модификаторами сабсёрфа, можно наладить драйвер, который связывает расстояние от камеры до объекта. Т.е. если объект будет далеко, то значение сабсёрфа будет нулевое, но при приближении объекта значение будет увеличиваться. Таким образом, как бы мы сильно не приблизились к объекту, он всегда будет достаточно сглаженным и эффект Terminator problem заметен не будет.

Тэги: blender, cycles, problem, terminator, tricks, гранёные, переходы, советы, хитрости

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по количеству голосов (152) в категории «Истории»
Изменения рейтинга
Категория «Ню»
Взлеты Топ 5
+143
146
IllAIR
+123
143
GetProfit
+116
124
antonesku
+111
126
Melipomena
+108
125
Agnoia
Падения Топ 5


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.