Работаем в Pixologic ZBrush

Нужно сказать, что инструментарий современного 3D-моделера не ограничивается стандартными пакетами уровня 3ds MAX, Maya, Cinema4D или XSI. Да, в них великолепно решено множество вопросов, касающихся стандартного моделирования, текстурирования, анимации, освещения, работы с частицами и так далее. Но… иногда бывают ситуации, когда рабочий процесс, так, как он там организован, подразумевает очень трудоемкую работу. Это касается создания сложных по рельефу поверхностей (например лепнина), природных форм, ландшафтов и персонажей, близких к реальности. Можно сказать, что в одно время очень помогали NURBS-модификаторы, и этот тип моделирования используется и поныне, но примерно пять-шесть лет назад появился абсолютно новый пласт программ с другими принципами работы. Моделирование в них основывается на лепке (скульптинге), вернее, ее эмуляции. Первыми такие алгоритмы оценили профессионалы из мира кино, после активно присмотрелись игроделы и 3D-моделеры различных специализаций. На данный момент мы имеем две конкурирующие программы в этом сегменте — Pixologic ZBrush и Alias MudBox. Хотя есть и несколько продолжателей, и даже по-своему уникальных, как например российская 3d-coat.

Причем, если вы решили серьезно заняться 3D-моделированием или уже занимаетесь им, новые технологии моделирования знать фактически обязательно, поскольку за окном 2010 год, большинство специалистов активно использует «лепку», она очень быстра, результаты получаются достоверными и красивыми, на очень высоком профессиональном уровне. Для разработки подобного стандартными методами уходит гораздо больше времени.

Что касается конкуренции Pixologic ZBrush и Alias MudBox, то в данном случае нельзя сказать, какая из программ лучше; за MudBox стоит хорошее продвижение со стороны известной Alias, а вокруг ZBrush собралось большое сообщество. Каждая из программ по-своему хороша. Причем ZBrush появилась первой. Изначально она развилась из весьма интересного 2D-пакета, в котором можно было рисовать кистью с выдавливанием, то есть фактически 2,5D. Затем было введено ключевое понятие — пиксолы, подразумевающие трехмерные пиксели с хранением данных о материале. А после появилась полноценная 3D-реализация.

Alias MudBox появилась в арсенале моделеров несколько позже, причем изначально она откатывалась на кинопроизводстве. Затем ее приобрела Alias, которая сейчас активно занимается развитием и продвижением продукта.

Что касается интеграции с другими 3D-пакетами, то она есть в полной мере у обеих программ, правда, ZBrush отличается большим разнообразием поддержки с учетом специфик импорта/экспорта.

Интерфейс ZBrush

Программа осваивается равно быстро как новичками, так и специалистами, изучавшими стандартные 3D-пакеты. Дело в том, что у ZBrush абсолютно своя концепция и организация интерфейса, рабочая область не включает окна проекций, а сразу демонстрирует все в 3D. Сам принцип моделирования специфичен. Причем разработчики пошли с экспериментами гораздо дальше в плане новаций пользовательского интерфейса, в результате чего мы можем наблюдать удивительный трансформер, который изначально даже пугает множеством элементов меню и т.п. Отдельное неудобство составляет отсутствие привычных названий в том же главном меню. Например, вместо File используется слово Documents и так далее. Сами пункты меню расставлены не по функциональности, а в алфавитном порядке. И в рамках терминологии программы это и не пункты меню, а палитры (palettes). Например, «палитра Документы». Все остальное часто именуется приспособлениями/инструментами (Tools).

Таким образом, довольно много времени уходит на перевод с «языка» ZBrush на обычный и привыкание к интерфейсу.

На освоение ключевых возможностей пакета, так, чтобы можно было создавать свои собственные осознанные модели, например, гуманоидов, уйдет день, при условии наличия какого-нибудь урока под рукой. Полноценное изучение требует гораздо больше времени. В рамках программы имеется множество тонкостей. Для начала давайте расшифруем основные пункты меню.

Палитры (пункты меню)

Перед тем как начать расшифровку, следует отметить довольно сложную для описания иерархию кистей в рамках ZBrush. На самом деле их несколько типов. Первые рисуют, если выражаться просто, трехмерными объектами. В стандартном варианте мы выбираем нужный объект (Tool), шаблон штриха (Stroke), по которому будет производиться рисование, и создаем трехмерную модель. Второй тип кистей предназначен уже не для создания, а для скульптинга (лепки).

Теперь переходим к пунктам меню (палитрам)…
. Alpha Palette — управление альфа-каналами (прозрачности) в различных аспектах, начиная от работы с текстурами до кистей и тому подобного. . Brush Palette — управление 3D-кистями для скульптинга.
. Color Palette — выбор цвета.
. Document Palette — работа с файлами проектов (открытие, сохранение, закрытие, изменение размеров рабочей области и т.п.).
. Draw Palette — управления параметрами рисования с большим количеством нужных и полезных настроек.
. Edit Palette — Undo/Redo и больше ничего.
. Layer Palette — управление слоями.
. Light Palette — управление светом.
. Macro Palette — запись текущих настроек интерфейса с тем, чтобы их можно было загружать после.
. Marker Palette — запоминание различных рабочих аспектов для объектов, таких как, например, цвета, расположение, ориентация и т.п. После вы можете использовать эти настройки для повтора созданных моделей, а также для создания некоей общей модели из нескольких различных.
. Material Palette — редактор материалов.
. Movie Palette — запись производимых в ZBrush действий в видеофайл для создания обучающих мини-фильмов (формат Quicktime .mov).
. Picker Palette — управление кистью с точки зрения пиксол.
. Preferences Palette — пользовательские настройки интерфейса.
. Render Palette — управления настройками визуализации.
. Stencil Palette — управление трафаретом.
. Stroke Palette — управление шаблонами кисти. В программе их больше десятка, в основном это упорядоченные массивы из выбранных элементов. Параметры можно менять.
. Texture Palette — управление текстурами.
. Tool Palette — выбор и настройки для кистей, рисующих 3D-объектами.
. Transform Palette — трансформация 3D-объектов в различные формы, скульптинг и так далее.
. Zoom Palette — управление масштабом.
. ZPlugin Palette — плагины (ZScript).
. ZScript Palette — скрипты (ZScript).

Рабочая область

Отдельного внимания, конечно же, заслуживает рабочая область и организация работы в ее рамках. В ней нет ни проекций, ни очевидного указания осей и координат как таковых. Вокруг рабочей области расположена основная панель управления, которая включается и отключается нажатием кнопки Tab.

Основными кнопками, которыми вы будете пользоваться для перемещений и масштабирования по рабочей области, являются те, которые расположены справа, среди них для начала следует разобраться с основными: Scroll (перемещение экрана), Zoom (масштаб), Actual (реальный размер), AAHalf (уменьшенный размер вдвое), Move (переместить объект), Scale (изменить размеры объекта), Rotate (вращать объект). Причем сами кнопки работают весьма интересно. То есть, например, для осуществления скроллинга по рабочей области вы нажимаете кнопку Scroll и, удерживая левую кнопку мыши, двигаете ее в разные стороны — так реализована прокрутка. На самом деле очень удобно, если привыкнуть, потому как в ряде 3D-пакетов для этого используется вариант клавиатура+мышь.

Переходим к практике

Итак, теория без практики не совсем хороша, тем более когда мы говорим о ZBrush. Создавать мы будем, по существу, то, для чего эту программу используют чаще всего — персонажа для игры или кино. Само действие будет происходить в три этапа:

1. Моделирование персонажа с помощью Z-сфер.
2. Переход в полигональный вид и скульптинг.
3. Текстурирование.

Для начала опишем модель (в принципе, рисовать ее на бумаге не будем, а попробуем просто придумать). В общем, создадим орка, знакомого нам как по играм, так и по кинематографу.

Zsphere

Zsphere, которые мы будем дальше называть для простоты Z-сферами — это особый вид объектов, благодаря которым производится ключевое моделирование в ZBrush. Суть их можно объяснить довольно просто: с помощью сфер различных (или одинаковых) диаметров формируется каркас, на который нанизывается оболочка перетекания (мы ее будем называть просто сеткой или же, как это названо в программе, — Adaptive Skin (адаптивная кожа)). Нечто подобное можно встретить в стандартных пакетах 3D-моделирования на примере модификатора Loft (либо в более продвинутых вариантах Metaball, который мы описывали для Cinema4D).

Каркас из Z-сфер строится по принципу родитель -> потомок, причем у одного родителя может быть много потомков.

Чтобы добавить ZSphere, выберите пункт ZSphere в меню Tool и затем поместите ее в рабочую область. Если программа загрузилась впервые или вы не делали серьезных новаций с интерфейсом, то меню Tools должно отображаться в правой части экрана. После того как Z-сфера установлена, нам нужно перейти в режим редактирования, что делается по нажатии одноименной кнопки в основной панели управления над рабочей областью либо просто клавиши «Т».

Режим редактирования (Edit) подразумевает несколько ключевых действий: рисование (Draw), перемещение (Move), увеличение размеров (Scale) и вращение (Rotate). Мы выбираем вариант Draw.

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

Теперь нажимаем на родительскую Z-сферу и, удерживая левую кнопку мыши, начинаем вытягивать из нее дочернюю. Сделали. Из режима Draw переходим в Move и теперь мы можем двигать в любых направлениях как родительскую, так и дочернюю Z-сферы. Также попробуйте Scale и Rotate. Удаление сферы происходит в режиме Draw при нажатой клавише Alt, добавление такой же по размерам в нем же при Shift. Также перейдя опять в режим Draw, мы можем «вытянуть» новых потомков из обеих.
Натешившись вволю, возвращаемся к исходному состоянию, где у нас расположена только одна Z-сфера и режим Edit с Draw. Начинаем создавать каркас нашей будущей модели.

Что характерно для большинства видов обитателей нашей планеты? Правильно, они симметричны. Это мы можем использовать и в нашем случае. Для того чтобы включить симметрию, откройте пункт меню (палитру) Transform, нажмите кнопку Activate Symmetry и среди предложенных вариантов выберите «>Х<». Все, теперь можно заниматься созданием каркаса. Отдельно стоит сказать, что симметрия вступает в силу только при условии того, что дочерние Z-сферы довольно удалены от центра симметрии; если они находятся на нем, то данная опция недействительна, и Z-сферы сливаются в одну, что довольно удобно.

Итак, родительская Z-сфера у нас будет основанием позвоночника. Первым делом вытягиваем из нее дочернюю, от которой сформируются бедра (см. рисунок). Затем продолжаем от нее формировать новые сферы, пока не доходим до колена (для масштабирования используем режим Scale, для смещения — режим Move), после делаем голень и ступню. Кстати, довольно удобным является вариант того, что курсор мыши, выходя за пределы объекта, начинает выполнять функцию «вращателя». Не забываем вращать модель и смотрим за тем, чтобы основные пропорции были соблюдены.

Следующим этапом идет создание торса из Z-сферы, которая у нас является основанием позвоночника. Поскольку в центре симметрии она (эта симметрия не срабатывает), все получается довольно легко и быстро, затем формируем плечи и предплечья, добавляем шею, голову. Создавая голову, нужно предусмотреть специальные отверстия для глазниц и рта, делается это стандартным способом, только при определенном смещении дочерние сферы становятся субтрактивными (вычитающими) для родительских. И в конце самый ответственный этап — кисти.

При моделировании каркаса необходимо сверять направление полигонов, поэтому я сразу не рекомендовал использовать режим Rotate для поворота сфер. Что такое скручивание, знают многие пользователи обычных 3D-пакетов, работавшие с модификатором Loft. Как проверить наличие скручивания? Включить режим низкополигонального просмотра поверхности, нажав «А». Если есть элементы скручивания сетки поверхности, исправляем эти артефакты с помощью Rotate. Само скручивание очень плохо скажется в последующих этапах, а именно, значительно усложнит скульптинг и работу с текстурами. Создав каркас модели, сохраняем его как Tool через палитру Documents или Tools ->Save As.

Переходим к полигонам — Adaptive Skin

Находясь в режиме Edit, нужно проверить включение режимов Quick (быстрое отображение, обычно стоит по умолчанию) и Frame (если он неактивен -> включить). Все эти пункты наглядно также можно увидеть в меню-палитре Transform.

Еще раз проверяем скручивание сетки, нажав A и прокрутив модель каркаса.

Для преобразования ZSpheres к полигональной модели мы будем использовать инструмент Tools -> Adaptive Skin.

Производим следующие настройки параметров для него:
. Density (плотность полигонов в сетке). Оставляем стоящую по умолчанию двойку.
. Ires (Intersection Resolution, разрешение в местах пересечения), актуально для случаев, когда у одной Z-сферы есть несколько дочерних (улучшает сетку), как раз наш вариант. Устанавливаем значение 30.
. Mbr (Membrane Curvative, кривизна мембраны). Управление созданием мембран в местах L- и T-образных пересечений. Устанавливаем значение 40.
. МР (Minimal Skin to Parent, минимальная сетка для родительской сферы). Скругление пересечений. Оставляем пока эту настройку неактивной. По нажатии кнопки Create Adaptive Skin создается новая полигональная модель с префиксом Skin, доступная для вызова из палитры-меню Tools. Старый вариант с Z-сферами нам уже не нужен, поэтому очищаем рабочий стол (выходим из режима Edit, меню Layers -> Clear).

Загрузив полигональный вариант, вы увидели, если не обнаружили этого раньше, что все части модели окрашены в различные цвета. Это разделение делается автоматически в ключевых местах пересечения сетки, причем в последствии окажется очень удобным.

Следует отметить, что представленная модель является низкополигональным прототипом, впоследствии количество полигонов может дойти до миллионов, и очень многое будет зависеть от производительности вашего ПК. Причем нужно сказать о том, что ZBrush очень хорошо оптимизирована и с большим количеством полигонов справляется достаточно легко. Например, стандартные профессиональные 3D-пакеты в таких случаях буквально «трещат по швам».

Для начала нам нужно научиться отделять зерна от плевел. Загрузив низкополигональную модель, переходим в режим редактирования (Edit). Затем проделываем хитрую операцию: удерживая нажатыми Ctrl+Shift, нажимаем левую кнопку мыши и очерчиваем курсором область, необходимую для выделения. Затем отжимаем Shift, а после этого (!) левую кнопку мыши. Выделенные полигоны исчезают из поля зрения. А если вы первой отпустите кнопку мыши, то ситуация будет обратной — выделенные полигоны остаются, а все остальные становятся скрытыми. Тут главное не запутаться. Если мы хотим вернуться к полной модели обратно, достаточно нажать Ctrl+Shift и кликнуть указателем мыши в пустом пространстве рабочей области. Теперь стоит рассказать об увеличении числа полигонов, которые программа делает фактически автоматически. Как мы знаем, большее количество примитивов — лучшее качество и гладкость форм, но при этом увеличивается расчетная нагрузка. Именно поэтому и следует разбивать модель на зоны, ведь в некоторых фрагментах требуется повышенная детализация, а в других ее развивать не стоит.

Для начала перейдем на самый низкий уровень разбиения сетки. Кстати, на данном этапе мы имеем уровень ниже его, поэтому: Tool -> Geometry -> Del Lower.
Теперь нам необходимо подготовить модель для ювелирной лепки. Поэтому в том же подразделе Geometry мы нажимаем Divide (это операция увеличения числа полигонов) и с помощью кистей в режиме Draw с включенной симметрией доводим фигуру модели до более совершенной формы с учетом мышц и так далее.

Скульптинг (лепка)

Начинаем работать с туловищем. Уровень разбиения Div 4. Отключаем режимы Quick и Frame. Устанавливаем Tool -> Display Properties -> Dsmooth = 1, что запускает режим периодической визуализации сглаживания. Затем, выделяя каждый элемент по отдельности (туловище, руки, ноги, голова), делаем тщательнейшую прорисовку, используя кисти Standart, Nudje и Inflant. Отдельно укажем, что кисти могут работать как выдавливая, так и с вдавливанием, для переключения режимов нужно использовать в меню Draw кнопки переключения Zadd (добавление) и Zsub (вычитание).

Для создания представителей живой природы, если вы не знаете, как что устроено, лучше приобрести анатомический атлас.

Подытожим

Итак, предварительная работа проведена, осталось текстурирование и т.п., о чем мы поговорим в отдельном материале, посвященном этой теме. На самом деле, работать с ZBrush очень легко и даже увлекательно. Результаты вы видите сами. Программа используется не только для создания всевозможных персонажей, но и в качестве основного инструмента для реализации элементов футуристических пейзажей.

Кристофер http://itcs.3dn.ru


Компьютерная газета. Статья была опубликована в номере 36 за 2010 год в рубрике soft

©1997-2024 Компьютерная газета