Добрый день. Я занимаюсь web-разработкой и почти всем, что с этим связано.

Microdisplacement

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

Настройки

Использование Microdisplacement

Важно помнить, что при использовании Microdisplacement всё относительно. Если вы уменьшите ваш объект, вам заодно придётся уменьшить и масштаб микродисплейсмента. Например, вы создали сферу диаметром 1 м и применили к ней текстуру, используя Scale=0.01 для смещения на 1 см. Если вы уменьшите сферу в 10 раз, то придётся изменить значение Scale до 0.001 для достижения того же эффекта.

При использовании Microdisplacement смещение рассчитывается как Scale*Value+Offset, где Value — это текстура. Если необходимо инвертировать цвет текстуры для микродисплейсмента, просто используйте отрицательное значение Scale, а Offset отрегулируйте соответствующим образом.

В LuxBlend26 Microdisplacement находится во вкладке Object Data.

Примеры

На рисунках ниже разница лишь в параметре Scale. Объект содержит 500 треугольников с тремя уровнями подразделения Catmull-Clark, применёнными до микродисплейсмента. Когда удваивается значение Scale, скорость визуализации падает линейно, примерно на 40-50 процентов.

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

62976 треугольников, subdivlevels=10, Scale=0.0005, ~100-110 kC/s
62976 треугольников, subdivlevels=10, Scale=0.001, ~50-60 kC/s

А вот и реальный пример того, как можно использовать Microdisplacement. Цифры на шкале радиоприемника были созданы с помощью Microdisplacement. Циферблат имеет 2 уровня подразделения в программе Blender и 50 уровней подразделений Microsubdivision. Значение Scale равно 0.0003.

Автор: Moure

Комментарии