Введение.
В этой статье я расскажу о текстурировании Mini-Cooper и уделю
немного внимания Mental ray, хотя я думаю, что есть художники, которые
знают его больше, чем я.
Я давно хотел нарисовать автомобиль, но не мог решить, какую именно
модель автомобиля выбрать. Я увидел несколько новых моделей мини и
подумал, что буду рисовать именно небольшую машину с эффектными
текстурами. Этот мини автомобиль стал моим первым проектом, который
создавался при помощи Maya, не беспокоясь о времени.
Автомобиль был смоделирован из полигонов; каждый элемент был построен
из одного полигона, используя инструменты Connect Poly Shape,
написанные Дирком Биоллучи.
Поскольку хороший референс – это основа хорошего результата, я
решил создать свой автомобиль на основе Mini Cooper. Я нашел несколько
изображений с LRX 827E, который мне больше всех понравился.
Эксперименты с рендерингом.
Когда я начал работу над автомобилем, я только изучал и
экспериментировал с Mental ray для Maya. Если быть честным, это был
довольно скучный и очень медленный процесс. Документация была
бесполезна и я не нашел необходимых туториалов в Интернете. Я не мог
ничего найти и пробовал сам понять Global Illumination и Final
Gathering.
Я
нашел раннюю версию Mental ray для Maya, которая меня не впечатлила, и
я почти бросил в то время, когда Alias разработал новую версию Maya,
которая включала в себя и новую версию Mental ray. Эта версия
понравилась мне гораздо сильнее и работала намного быстрее.
Выбор подхода Я c самого начала решил,
что автомобиль должен выглядеть грязным. Эта грязь должна быть создана
на автомобиле при помощи bitmap-текстур, что означало бы большой размер
файла. Я нуждался в способе, который позволил бы мне повторно
использовать структуры грязи.
Обычное рисование текстур в Photoshop и применение их к автомобилю не давало желаемого результата.
Решение, к которому я пришел, было довольно простым, необходимо было
использовать маски, чтобы определить, как грязь будет лежать на
автомобиле, а затем использовать шейдер грязи в этих областях. Шейдер
грязи был нанесен на карту отдельно и мог быть изменен, позволяя
получить наилучший результат.
Я разделил грязь на два слоя: темную(влажную) грязь и более
светлую(сухую). Каждый слой имел собственную маску для каждой части
объекта. Сама грязь была нанесена на карту всего автомобиля при помощи
tri-planer projection map. С помощью этого способа переход грязи от
одного слоя к другому был более естественным.
Главное в этом способе то, что этот подход подразумевал работу с грязью отдельно от ее непосредственного размещения.
Создание масок
Как только я закончил UV карту всех частей объекта, мне было
необходимо создавать маски для грязи. Я использовал систему трехмерного
рисования в Maya, чтобы нарисовать маски, а затем экспортировал их в
TGA, чтобы в Photoshop'е сделать их более законченными.
Я также экспортировал UV map в том же самом масштабе и помещал их
в файл Photoshop; это помогло мне точно определить, где я создаю грязь
на автомобиле в Maya.
Я тогда работал над двумя масками для каждой части: основной(сухой)
маской грязи и влажной, которая должна быть поверх сухой:
Черные области показывают, где будет грязь, а белый цвет показывает, где будет краска автомобиля.
Все маски были нарисованы мной, я использовал многослойные
текстуры и работал над тем, чтобы создать основные маски грязи. Шейдер автомобильной краски.
Шейдер красной краски на автомобиле довольно прост, хотя
использование final gathering в mental ray требует большего внимания,
чтобы выглядеть реалистично. Все освещение в сцене создано при помощи
HDRI map.
Шейдер - простой красный Blinn с параметром diffuse на 0.4.
Reflectivity и specular color имеют sampler info node, подключенный
через кривую, чтобы выделить specularity, когда металл находится далеко
от камеры. Кривая нарисована на графике:
Этот node переводит линейный график 0 -> 1 от sampler info в
экспоненту 0 -> 2, используемую как значения specularity и
reflectivity.
Можно вместо кривых использовать ramps, что я бы сделал в 3D Studio
Max, но неважно, как мы достигли конечного результата.
Объединение шейдеров.
Поскольку все области грязи были определены масками, фактически я
мог нанести грязи по всему автомобилю, не применяя Photoshop. Я нанес
на карту автомобиля два типа грязи как Tri-planar projection, и затем
экспериментировал с добавлением градиентов, для того, чтобы грязь у
основания автомобиля была более темной, чем сверху автомобиля.
Многие параметры шейдеров были связаны с объектом в сцене, изменяя
значения которых, я мог изменять вид краски и грязи при необходимости.
Этот способ помог мне и сильно ускорил процесс.
Это ранний эксперимент над типом грязи. Напоминает будто на капот вылили бетон.
Рендеринг.
Как вы знаете рендеринг занимает много времени. Рендеринг всех
кадров составлял в среднем один час на моей 3Ghz машине, я закончил
рендеринг приблизительно 1000 фреймов! Я был рад полученному
результату.
При рендеринге через Mental ray возникали небольшие проблемы.
Установка и and max radius final gathering помогало мне предотвратить
проблемы. Изучая информацию о Mental ray я узнал, что радиус максимума
должен быть установлен на 10 % ширины, а радиус минимума должен быть
равным 10 % от максимума. Я закончил с 20max и 2min.
Я также экспериментировал с BSP параметрами, чтобы ускорить процесс
рендеринга. Я не понимаю почему, но я достиг необходимого результата с
BSP size, установленным на 16, BSP depth, установленная на 60 и BSP
max, установленным на 0.
Небольшие проблемы при рендеринге все еще присутствовали и мне
пришлось рендерить отдельно небольшие регионы поверх картинки.
Мы закончили. Вы получили небольшое представление о текстурировании и рендеринге моего Mini-Cooper.
|