Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Серия уроков по CS3 - Автор и Перевод серии Але...doc
Скачиваний:
4
Добавлен:
14.08.2019
Размер:
2.62 Mб
Скачать

Пример № 7 Покрытие скелета оболочкой с помощью модификатора Physique

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

Урок 7.1: Покрытие скелета оболочкой с помощью модификатора Physique

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

В этом уроке Вы научитесь следующему:

·        присоединять сетчатую оболочку к скелету

·        настраивать огибающие для корректного изменения сетки

·        создавать выпуклости с помощью Sub-Object Bulge

·        масштабировать персонаж

·        использовать другие средства для привязки персонажа к скелету.

Урок 1: Подгонка скелета к сетчатой (Mesh) модели

Персонаж, с которым вы будете работать создан с помощью лоскутного моделирования. Лоскутное моделирование - популярная альтернатива сетчатым и NURBS объектам. Перед подгонкой скелета к телу нужно настроить структуру скелета.

 

Начало.

Файлы для этого примера расположены в директории cstudio\tutorials\tutorial_7, который находится в Вашем 3ds max 4 директории.

 

Загрузка персонажа.

1.      Загрузите файл Tut_DrX_01.max.

2.      Выберите сетку в любом окне.

3.      На панели Display, в свитке Freeze, нажмите кнопку Freeze Selected.

Это заморозит сетку с тем, чтобы Вы могли ее видеть, но не могли случайно изменить.

 

Создание скелета.

1.      На панели Create > Systems нажмите кнопку Biped.

2.      В окне Front поставьте курсор между ступней персонажа и перемещайте его, удерживая левую кнопку мыши, пока зеленый прямоугольник не сравняется высотой с персонажем.

Когда Вы отпустите кнопку, программа автоматически создаст скелет с параметрами, заданными по умолчанию.

3.      На панели Motion, в свитке General, нажмите кнопку Figure mode.

В этом режиме Вы можете изменять структуру скелета и подгонять его к сетке.

4.      На свитке Structure установите число пальцев (fingers) равное двум и количество суставов пальцев ( finger links ) также равное двум.

Пока все, в чем Вы нуждаетесь, это большой палец и еще один, который имитирует работу всех остальных (нечто похожее на рукавицу).

5.      Установите количество пальцев на ноге (toes) равным единице и количество суставов пальцев ног (toe links) тоже единице.

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

6.      Установите количество звеньев в косичке (Ponytail 1 links) равное трем.

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

7.      Установите количество позвонков в спине (spine links) и шее (neck links) равными двум.

 

Выравнивание скелета по сетке.

Центр масс, приведенный к тазу персонажа.

1.      При включенной кнопке Figure mode, выберите центр масс скелета и используя стандартные средства перемещения 3ds max 4, подгоните центр масс скелета к центру персонажа.

2.      Смасштабируйте таз скелета так, чтоб бедренные кости скелета проходили по середине ног персонажа.

 

Подгонка ног скелета по сетке.

1.      Выберите одно из бедер скелета.

2.      На панели Motion, в свитке Track Selection нажмите кнопку Symmetrical Tracks.

Выберется второе бедро. При этом любые преобразования, примененные к одному бедру, применятся и к другому.

3.      Выберите на инструментальной панели 3ds max 4 инструмент Select and Non-Uniform Scale и подгоните длину бедренных костей скелета по оси X, чтобы колени скелета совпали с коленями персонажа.

4.      Нажмите PAGE DOWN, чтобы выбрать Bip01 L Calf и Bip01 R Calf (голени).

Используйте клавиши PAGE UP и PAGE DOWN, чтобы перейти к объектам, родительским или дочерним по отношению к выбранным.

PAGE DOWN выделяет все дочерние объекты при передвижении вниз по иерархической цепочке. Например, таз является родительским объектом по отношению к бедрам и нижней части спины.

5.      Выбрав голени смасштабируйте их по оси X с помощью средства Non-Uniform Scale. Концы голеней при этом должны заканчиваться в лодыжках.

6.      В окне Left поверните бедра и голени скелета,для лучшей центровки костей внутри тела.

Используйте Symetrical Tracks для выбора обоих бедер и клавишу PAGE DOWN для перехода к голеням.

7.      В окне Front поверните бедреннные кости скелета относительно оси Y, чтобы уточнить их положение внутри ног.

8.      Выберите обе ступни скелета.

9.      В окне Left с помощью Non-Uniform Scale, подгоните ступни скелета так, чтобы они грубо соответствовали профилю ступней персонажа.

10.  Выберите палец любой ноги и нажмите кнопку Symmetrical Tracks.

11.  Все тем же Non-Uniform Scale настройте пальцы ступней так, чтобы они были чуть длиннее и той же ширины, что и пальцы персонажа.

Средства Physique могт использовать масштабы скелета для определения размеров огибающих. Масштабирование длины и ширины пальца будет использовано при определении размеров огибающих для подгонки их к параметрам скелета.

12.  В окне Front Поверните обе ступни по оси Y, чтобы выровнять их относительно ступней оболочки.

 

Подгонка позвоночника по сетке.

1.      В окне Front настройте звенья позвоночника внутри сетчатого объекта.

При этом кость основания шеи должна быть внутри сетки.

 

Подгонка шеи и головы персонажа.

1.      В окне Left выберите шейные позвонки и смасштабируйте их. Ориентируйтесь по подбородку: подбородок скелета должен быть чуть выше подбородка оболочки.

2.      Смасштабируйте голову скелета, подгоняя ее под оболочку.

3.      Перемещая, масштабируя и поворачивая звенья косички, разместите ее внутри шляпы.

 

Подгонка рук и ладоней к сетке.

1.      Выберите Bip01 L UpperArm.

Вы можете либо выбрать Symmetrical Tracks, перед тем, как изменять положение рук, либо подогнать одну руку, а затем, используя Copy Posture и Paste Posture Opposite установить положение второй руки таким же, что и первой.

2.      На свитке Track Selection нажмите кнопку Symmetrical Tracks.

3.      В окне Front разверните верхнюю часть рук относительно оси Y так, чтобы они соответствовали сетке.

4.      В окне Top поверните руки относительно оси Z , чтобы подогнать их к сетке.

5.      Используйте Non-Uniform Scale, чтобы кости рук свпадали с оболочкой в локтях и запястьях.

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

Используйте режим просмотра с закраской для позиционирования ладони скелета внутри оболочки. При точном позиционировании пальцев, их грани могут выходить за сетку. Это нормально. Включите Bones на свитке Display, чтобы посмотреть связи рук. Эти связи покажут Вам, где Physique создаст огибающие. Очень важно точно расположить связи внутри каждого пальца, а волноваться относительно того, что ладонь скелета при этом выпирает из сетки, не стоит.

 

 

Копирование положения правой ладони на левую.

На текущий момент правая ладонь скелета подогнана к сетке полностью.

1.      В окне Top выберите всю ладонь и пальцы, обведя вокруг них прямоугольник.

2.      На свитке Keyframing нажмите кнопку Copy Posture.

3.      На свитке Keyframing нажмите кнопку Paste Posture Opposite.

Вся Ваша работа с правой рукой будет применена к левой руке. Левая рука скелета теперь тоже подогнана к сетчатой оболочке.

Предупреждение: Модели персонажей чаще всего симметричны. Для несимметричных моделей можно использовать процедуры копирования и применение позитуры для грубой настройки, а точную выполнять для каждой руки отдельно.

4.      Сохраните Вашу работу, как файл *.max.

5.      При включенной кнопке Figure mode, используйте кнопку Save на свитке General, чтобы сохранить фигуру как файл *.fig. Назовите его MyDrX.fig

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

Предупреждение: Кнопка Save, расположенная на свитке General сохраняет .fig файлы только если кнопка Figure mode нажата.

В следующем уроке к сетчатому объекту будет применятся средство Physique. Вы будете использовать Attach to Node, чтобы привязать суставы скелета к конкретным точкам фигуры.

Урок 7.2: Применение и настройка модификатора Physique.

В этом уроке Вы примените модификатор Physique. Для применения этого модификатора режим Figure mode должен быть включен.

Совет: Структуру фигуры и ее параметры лучше настроить до применения Physique, чтобы окончательно соединить скелет с сетчатой оболочкой. Изменение масштаба или структуры скелета при примененном модификаторе Physique приведет к изменению сетчатой оболочки. Если все же нужно изменить параметры скелета, следует реинициализировать Physique, чтобы настроить новые параметры и структуру скелета.

 

Начало.

Продолжайте Вашу работу с Tut_DrX_01.max или откройте Tut_DrX_02.max. Файлы для этого примера находятся в директории cstudio\tutorials\tutorial_7, который расположен в главном директории 3ds max 4.

 

Применение Physique.

Скелет должен быть в режиме Figure mode.

1.      Выберите сетчатую оболочку персонажа в любом окне.

2.      Выберите Physique из списка модификаторов.

3.      Максимизируйте окно Front.

4.      Увеличьте окно обзора в области таза.

5.      На панели Modify, в свитке Physique нажмите кнопку Attach to Node.

6.      Когда курсор позиционируется над тазом, он примет вид белого крестика. Нажмите левую кнопку мыши.

Появится диалог Physique Initialization

ВНИМАНИЕ: Таз скелета изображен бледно-оранжевым прямоугольник. Если Вы случайно выберите центр масс, то программа автоматически выберет таз.

7.      На свитке Vertex-Link Assignment, диалога Initialization, должны быть установлены следующие, выбранные по умолчанию настройки.

·        Deformable (Означает возможность изменения огибающих для каждой связи)

·        N Links (Все пересекающиеся огибающие действуют на вершины)

·        Create Envelopes (Создание огибающих для связей.)

·        Object Bounding Box (Масштаб конечностей скелета используется при определении размеров огибающих)

8.      Нажмите кнопку Initialize внизу диалога.

После некоторой паузы на экране появится серия связей Physique, изображенных оранжевым цветом. Эти связи составляют Physique Deformation Spline (сплайн деформации телосложения). Каждая связь имеет огибающую, которая влияет на вершину сетчатой оболочки, заставляя ее перемещаться вслед за частями скелета. Таким образом, оболочка теперь закреплена на скелете.

9.      Сохраните результат Вашей работы как файл .max.

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

Урок 7.3: Настройка огибающих и определение веса вершин.

Большая часть работы в Physique - настройка размеров и пересечений огибающих для соответствия изменений сетчатой оболочки движениям персонажа. Каждая область оболочки требует индивидуального подхода.

·        Голова минимально подвержена деформации, следовательно, ей надо назначить твердую огибающую.

·        Три огибающих таза должны быть настроены для наилучшей деформации.

·        Огибающие рук и плеч должны покрывать подмышки.

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

Совет: При настройке огибающих используйте режим In Place mode на панели Motion, в свитке General. Этот режим будет удерживать Вашего персонажа в центре окна, ограничивая его движения по осям X и Y.

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

 

Начало.

Продолжайте работу с файлом Tut_DrX_02.max, или загрузите Tut_DrX_03.max. Файлы для этого примера находятся в директории cstudio\tutorials\tutorial_7, который расположен в главном директории 3ds max 4.

 

Загрузка файла движения.

1.      Выберите скелет персонажа.

2.      На панели Motion, в свитке General, выключите Figure mode.

3.      Персонаж примет позу в соответствии с анимацией. Огибающие нуждаются в доработке.

 

Настройка огибающих.

1.      Выберите сетку.

2.      На панели Modify, в свитке Physique Level of Detail, включите Hide Attached Nodes.

Скелет исчезнет и Вам будет лучше видно сетчатую оболочку.

3.      Переместите ползунок в кадр 27. Левая рука поднимется вверх.

4.      В кадре 27 включите Sub-Object Envelopes на модификаторе Physique.

5.      Увеличьте окно Front, чтобы хорошо видеть левую руку.

6.      Выберите предплечье, ладонь и пальцы. Увеличивайте Radial Scale и Parent\Child overlap пока искажения оболочки не исчезнут.

7.      Переместитесь в кадр 51, теперь поднимется правая рука.

8.      В кадре 51, на правой руке выберите связи предплечья, ладони и пальцев по очереди. Меняйте Radial Scale и Parent\Child overlap, пока искажения сетки не исчезнут.

Из-за связи косички у головы имеется две лишние связи. Надо выключить лишнюю связь.

9.      Выберите связь, которая не входит в косичку. На свитке Blending Envelopes в области Active Blending выключите Deformable.

10.  На голове выберите связь, которая входит в косичку и замените ее огибающую на твердую. Для этого выключите Deformable и включите Rigid.

11.  Увеличивайте масштаб твердой огибающей, пока лицо и нос не перестанут искажаться.

Лицо не должно меняться, когда персонаж поворачивает голову. Поэтому для головы применяются твердые огибающие.

12.  Изменяйте Parent\Child overlap косичек, чтобы сгладить эту область сетки

13.  В кадре 51 настройте огибающие ступней так, чтобы башмаки не деформировались.

Если Вам надо настроить огибающие ступни, а они при этом захватывают точки противоположной ступни, включите Control Point в области Selection Level и перемещайте контрольные точки огибающих для корректировки деформации.

Совет: Для того чтобы лучше видеть огибающие, можно включить Initial Skeleton Pose на свитке Blending Envelopes. При этом в качестве подобъекта должны быть выбраны огибающие (envelopes). В этом положении хорошо видно, какая часть сетки охватывается огибающими.

14.  Сохраните результат работы в .max файл

Урок 7.4: Работа с проблемными областями: плечи и таз

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

 

Начало

Загрузите Tut_DrX_04.max. В нем содержится некоторая анимация. Используйте ползунок, чтобы посмотреть, как ведет себя оболочка персонажа в разных кадрах. Файлы для этого примера находятся в директории cstudio\tutorials\tutorial_7, который расположен в главном директории 3ds max 4.

 

Корректировка пересечений огибающих

1.      Убедитесь, что огибающие плеч охватывают область подмышек. Огибающая верхней части руки должна иметь большую область пересечения с огибающей плеча.

2.      Связи от позвоночника к бедрам должны быть достаточно велики, чтобы перекрыть ягодицы. Убедитесь, что огибающие этих связей пресекаются с огибающими бедер.

3.      Огибающие бедер должны перекрывать область ягодиц.

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

Урок 7.5: Анимация мускулов с помощью редактора выпуклостей

Добавляя углы выпуклости, Вы можете имитировать напряжение мускулов в соответствии с углом сгибания. Например, при сгибании руки на 90 градусов бицепс увеличивается в размерах. Для этого примера Вы будете использовать сеточную модель доктора Икс, которая обсчитывается быстрее, чем модель из лоскутов.

Файлы для этого примера содержатся в директории cstudio\tutorials\tutorial_7, который расположен в главном директории 3ds max 4.

 

Создание угла выпуклости

Создадим выпуклость бицепса на правой руке персонажа.

1.      Загрузите файл Tut_DrX_Mesh.max.

2.      Переместите ползунок на кадр 50.

Правая рука согнется под углом 90 градусов.

3.      Выберите сетку.

4.      В панели Modify включите Sub-Object Bulge.

5.      Выберите связь на правом бицепсе.

6.      На свитке Bulge в области Bulge Angle Parameters, нажмите Insert Bulge Angle и Set Bulge Angle. В списке Current Bulge Angle добавится название угла выпуклости. Вы создали новый угол выпуклости величиной в 90 градусов.

Теперь переместим кросс-секцию бицепса на середину руки.

7.      На свитке Bulge, в области Selection Level нажмите кнопку Cross Section.

8.      В окне переместите кросс-секцию на середину области бицепса.

Выберите из главной инструментальной панели инструмент Select and Move, для перемещения кросс-секции в окне.

9.      Масштабирование кросс-секции удобно делать с помощью средства Select and Uniform Scale из главной инструментальной панели.

Сетка вокруг бицепса несколько раздуется. Если выпуклость мала, или не появляется вовсе, увеличьте значение Weight в области Bulge Angle Parameters.

10.  Переместите ползунок и исследуйте руку под разными углами. Когда рука прямая, выпуклости быть не должно. При сгибе руки на 90 градусов, выпуклость появляется.

Имеется много средств управления, позволяющих более тонко настроить выпуклости. Вы можете использовать Insert для добавления дополнительных кросс-секций и ограничения выпуклости некоторой областью. Вы можете использовать Power, чтобы задать угол, при котором выпуклость начинает появляться. Большое значение Power приведет к тому, что выпуклость появится при углах, близких к 90 градусов.

Урок 7.6: Масштабирование персонажей с Physique

Файлы для этого примера находятся в директории cstudio\tutorials\tutorial_7, который расположен в главном директории 3ds max 4.

1.      Загрузите Tut_DrX_05.max.

Персонаж уже находится в Figure mode. При масштабировании персонажа это необходимо.

2.      Выберите скелет.

3.      На панели Motion, в свитке Structure, поменяйте значение Height.

Скелет и его сетчатая оболочка изменят размеры одновременно.

 

Реинициализация масштабированной сетчатой оболочки

Данный шаг не обязателен. Используйте его, если реинициализация необходима по какой-либо другой причине.

1.      Отключите модификатор Physique или опуститесь по стеку модификаторов ниже него.

2.      Масштабируйте и перемещайте сетку, пока не подгоните ее под скелет Biped или систем костей (Bones).

3.      Включите или вернитесь в стеке к Physique. Сетка увеличится, поскольку она масштабировалась два раза.

4.      Реинициализируйте ее с помощью Initial Skeleton Pose.

Сетка вернется к желаемому размеру.

Урок 7.7: Упрощенное связывание тела со скелетом

В некоторых случаях нужно связать тело со скелетом быстрее и проще, чем с использованием модификатора Physique. Для этого используется инструмент Link, расположенный на главной инструментальной панели 3ds max 4, который позволяет напрямую связывать объекты с частями скелета Biped. Персонажей, которые задуманы как механические существа, одеты в доспехи или скафандр или имеют жесткие сочленения в суставах гораздо проще связывать со скелетом с помощью стандартных средств 3ds max 4.

Коммерчески распространяемы персонажи часто распространяются в двух видах – суставчатые и безсуставные. Суставчатый персонаж имеет отдельные объекты для каждой части тела с шаровым суставом на конце. Тело безсуставного представляет собой один сетчатый объект и присоединяется к скелету с помощью средств Physique.

Процедура привязки объектов, составляющих Ваш персонаж, к скелету очень проста. Загрузите объекты тела персонажа, создайте скелет, включите Figure mode, подгоните скелет под тело персонажа и используйте стандартное средство Link, расположенное на инструментальной панели для привязки каждого объекта к соответствующей кости скелета. Например, бедро персонажа привязывается к бедренной кости скелета. После этого любая анимация, примененная к скелету, оживит и Вашего персонажа.

В этом уроке Вы научитесь процессу привязки простой человеческой фигуры с низким разрешением.

 

Начало

Перезапустите 3ds max 4. Все .max файлы для этого урока находятся в директории cstudio\tutorial\tutorial_7, который расположен в главном директории 3ds max 4.

 

Привязка объектов к скелету

Все сетчатые объекты, кроме рук, уже привязаны.

1.      Загрузите файл Joe2.max.

Режим Figure mode, уже включен.

2.      Нажмите кнопку Select and Link на главной инструментальной панели.

3.      В окне Front выберите верхнюю часть руки и удерживая левую кнопку мыши, переместите курсор к соответствующей части скелета. Когда Вы отпустите кнопку, связь установится.

4.      Таким же способом привяжите все части рук к скелету.

5.      Выберите скелет и на свитке General отключите Figure mode.

6.      Минимизируйте окно Front.

7.      Нажмите кнопку Play.

Персонаж бежит. Все части тела следуют за соответствующими частями скелета