- •Часть 1. Метод фотонных карт. Final Gathering
- •1. Испускание фотонов
- •2. Трассировка фотонов
- •3. Создание фотонной карты
- •4. Использование фотонной карты при рендеринге
- •Параметры настройки фотонных карт в mental ray для 3ds max, закладка Indirect Illumination
- •Оценка освещения точки поверхности по заданному количеству фотонов
- •Окно настроек фотонных карт
- •Настройка глубины трассировки для фотонов
- •1. Построение Grid сетки в растровом пространстве изображения
- •2. Предварительная стадия расчета fg
- •3. Рендеринг
- •Диагностический рендер fg-расчета. Радиус 10см, fg Samples 1000
- •Интерфейс настройки параметров fg-расчета
- •Часть 2.
- •Интерфейс шейдера Ambient/Reflective Occlusion в 3ds max
- •Сцена освещена двумя стандартными точечными источниками света (omni light)
- •Шейдер ао назначен диффузным свойствам материалов
- •Все тени в сцене рассчитаны ambient occlusion
- •Настройка ambient свойств материала для использования ао
- •Источник света проявляет диффузные характеристики поверхности
- •Ambient occlusion в режиме 1, учитывается цвет окружения
- •Шейдер ambient occlusion назначен точечному источнику света. Другого освещения в сцене нет
- •Простой reflective occlusion с картой отражения на параметре Bright – шейдер "видит" затеняющую геометрию, но не может построить правильные отражения – вместо них мы видим черные пятна
- •Пример диаграммы более сложного материала, позволяющего получить отражения с помощью reflective occlusion
- •Материал с Reflective occlusion, позволяющий получить отражения
- •Еще один пример материала для reflective occlusion
- •Источник света – Skylight, расчет освещения выполнен при помощи Final Gather, время вычислений – 2 часа 15 минут
- •Часть 3. Физическая модель подповерхностного рассеяния в mental ray – sss Physical Material
- •Шейдер miss_physical
- •Скриншот тестовой сцены
- •Слева-направо: камера под углом 90, 45 и 35 градусов к нижней грани
- •Слева - направо: depth 1, 10, 20, 100
- •Слева - направо: depth 1, 10, 20, 100
- •Слева - направо: depth 1, 10, 20, 100
- •Сцена 1. Молоко в стеклянном стакане
- •Сцена 2. Горящая цилиндрическая свеча
- •Сцена 3. Кубическая свеча
- •Часть 4. Упрощенная модель подповерхностного рассеяния sss Fast
- •Рассеянный задней поверхностью свет освещает переднюю поверхность
- •Материал miss_fast_simple_phen
- •Вверху — объект со стандартным материалом (Blinn), внизу — с материалом sss Fast Material
- •Вид интерфейса sss Fast Material по умолчанию в 3ds max Вид интерфейса sss Fast Material со всеми открытыми слотами свойств
- •Для шейдера bump использована растровая карта
- •Рассеяние без и с использованием ambient occlusion (нижнее изображение)
- •Применены растровые карты для bump, overall diffuse coloration и specular
- •Расчет освещения с final gathering, вверху — indirect off, внизу — indirect on
- •Шейдеры группы miss_fast
- •Диаграмма построения материала
- •Стандартный материал (phong) с картами для цвета, отражений и рельефа
- •Материал кожи со значениями по умолчанию
- •"The Final Battle". Автор: Max Kor
- •Создание собственных материалов sss Fast
- •Часть 5. Запекание текстур (render to texture)
- •Интерфейсы шейдеров mib_lightmap_write и mib_lightmap_sample
- •Пример достаточно удачных текстурных координат Неудачные текстурные координаты - множество швов и несвязанных координатных областей. Редактировать их будет довольно сложно
- •Blend - материал, запеченный scanline Запеченная текстура
- •Запеченная текстура
- •Копируем перетягиванием запекаемый материал в сэмплер поверхности
- •Рендер с текстурой, запеченной из blend-материала при помощи mental ray Запеченная текстура теперь выглядит правильно
- •Текстура с освещением
- •Интерфейс rtt
- •Секция параметров General Settings
- •Секция параметров Objects to Bake
- •Секция параметров Output
- •Секция Baked Material
- •Секция Automatic Unwrap Mapping
- •Сцена с caustic-эффектом, рассчитанным по фотонной карте
- •Настройки для запекания caustic фотонной карты
- •Запеченная фотонная карта
- •Рендер с запеченной в текстуру фотонной картой
- •Редактирование вершин Cage
- •Карта нормалей
- •Модель с Normal bump map
- •Высокополигонный источник и низкополигонный объект - цель
- •Часть 6.
- •Сетка модели Рендер сцены с источниками света
- •Две поверхности, на которых будет выращен мех
- •Модификатор Hair and Fur, секция Selection
- •Отображение в видовом окне сгенерированных модификатором волосков
- •Окно редактора Style Hair
- •Окно предварительного просмотра Style Hair
- •Секция параметров Frizz
- •Влияние параметров Frizz
- •Рендер в режиме mp Prim c Shadow map
- •Рендер в режиме mp Prim с ray trace тенями
- •"Лабораторная крыса"
Окно редактора Style Hair
Окно редактора предназначено для стилизации guides и имеет инструменты для выбора элементов, их редактирования, средства навигации и различные дополнительные функции. Подробности можно получить из справки по Style Hair.
Для редактирования меха крысы сначала использовалась "Attenuate the hair length by growth poly size". Эта функция изменяет длину волоска пропорционально размеру полигона, из которого он выращен - меньше полигон, короче волосок. Полезно для мест поверхности, где много складок и изгибов и где волосы естественным образом должны быть короче.
Затем длина всех волос одновременно была отмасштабирована инструментом Brush в режиме Scale до приблизительно нужной длины.
Далее, при включенном расчете столкновений с поверхностью-основой меха (Toggle collisions on), использовалась функция Recomb, которая "прижала" волоски по всей их длине к поверхности-основе и при помощи Brush в режиме Translate выполнено "причесывание" волосков в нужных направлениях. Этот процесс более всего сходен с рисованием, а степень его интерактивности может сделать работу либо удовольствием, либо сущим кошмаром.
Наконец, волоски у основания были немного приподняты от основы при помощи все того же Brush, но в режиме Poof Roots out, который выпрямляет часть волоска по направлению нормали у его корня. Это сделано для придания "прическе" объема, или "распушенности".
В результате всех этих манипуляций было получено следующее:
Редактор Style Hair имеет режим предварительного просмотра, который дает бОльшее представление о конечном результате и считает довольно быстро:
Окно предварительного просмотра Style Hair
Жмем Done, возвращаемся в 3ds max и выполняем рендер.
Волосы образуют излишне однородную, прилизанную массу. Ну так исправим эту однородность! И сделаем это при помощи секции Frizz Parameters:
Секция параметров Frizz
Параметры этой секции позволяют определить завивания (или локоны) элементов-волосков. Для этого нормали двух концевых точек каждого волоска отклоняются на случайный угол. Величина угла определяется заданием в настройках начальных значений углов и по генерируемой внутренним образом карте шума типа Perlin noise. Изгиб вдоль длины волоса рассчитывается интерполяцией нормалей промежуточных точек волоска по нормалям концевых точек.
Frizz Root и Frizz Tip - начальный угол нормалей для корня и верхушки волоска соответственно. Эти величины могут быть постоянны для всех элементов, а их относительная разница определяет отклонение верхушки относительно корня (то есть - степень извилистости волоска). Или могут определяться растровой картой, тогда начальные углы нормалей будут вычисляться по растровой карте. Случайные отклонения, вычисляемые по карте шума, складываются с начальными отклонениями и таким образом получаются результирующие отклонения, свои для каждого элемента.
Можно сказать, что применение Frizz придает каждому волоску уникальную "индивидуальность" - неповторимую форму и положение, а их нулевые значения отключают действие Frizz. Результат изменения параметров Frizz можно наблюдать в видовом окне. Если в секции Dynamics модификатора включен режим Live, изменение параметров Frizz можно анимировать. Выбранные значения для меха крысы - 45 для корней и 50 для верхушек.
Секция Frizz Parameters также позволяет также управлять частотой шума и анимацией шума. Теперь мех выглядит так: