Как упоминалось ранее, чтобы создать каркас лица при анимации персонажей с помощью объекта Biped, нужно добавлять кости. В 3ds max добавить кости так же легко, как связать (link) параллелепипед с объектом Biped. Конечно, нужно помнить о контроллерах и других более сложных элементах анимации.
Процедура подбора параметров каркаса персонажа игры в реальном времени сильно зависит от плотности сетки. Можно условно ввести четыре уровня детализации сетки, которые будут характерными для различных степеней сложности анимации лица: низкополигональная сетка, сетка с низким разрешением, высокополигональная сетка, сетка с высоким разрешением. Из-за недостатка общепринятой терминологии назовем их уровнями каркаса лица 1-4 (в этой главе рассказывается о первых трех уровнях).
Когда объекты сетки ориентированы по ней и выровнены с ней, им можно приписать контроллер Spring (Пружина), чтобы придать персонажу в танце добавочное движение (рис. 2.48). Загрузите файл Bikinil.max.
К объекту Biped уже применена танцевальная анимация. Просмотрите ее, щелкнув по кнопке Play Animation (Воспроизвести анимацию)
Поместите курсор в виде стрелки на замороженные ступни сетки Betty, нажмите и удерживайте левую кнопку мыши и перетаскивайте указатель вверх до тех пор, пока упрощенная фигура Biped примерно не совпадет с сеткой персонажа. Отпустите кнопку мыши - объект Biped создан (рис. 2.5).
Если когда-либо у вас и возникал вопрос, зачем нужно снимать галочку напротив опции Arms в структуре Biped, то теперь все встанет на свои места. Представьте, что вы анимируете дельфина, который является млекопитающим. Поскольку дельфины обладают почти таким же развитым интеллектом, как люди, почему бы не моделировать их с помощью объекта Biped (рис. 2.36)?
В character studio можно анимировать персонажа с трехсуставными ногами, такого как Mech (или AT-ST в Return of the Jedi) или Goat-Girl (девушка-коза), дьяволица с козлиными ногами, - ведь в объект Biped можно добавить четвертое звено ноги. Однако использовать этот объект проблематично из-за способа просчета решений обратной кинематики. Предполагается, что с помощью этого четвертого объекта Biped (еще он называется лошадиным звеном - horselink) можно смоделировать механику лошадиной ноги. К сожалению, эта дополнительная кость, которая добавляется к ноге, не может быть родительским элементом прямой кинематики для ступни, она всегда является ведомым элементом при решении обратной кинематики. Сравните конфигурации с тремя суставами, изображенные на рис. 2.37.
Помимо дополнительных лицевых костей к туловищу этого персонажа также прикреплены объекты, которые реалистично моделируют движение груди в танце (рис. 2.47).
С помощью объекта Biped можно создать каркас персонажа практически любого типа: от зловещего чужака до гигантской птицы или маленького муравья. Приведенные в этом разделе примеры персонажей игр, в которых используются нетипичные каркасы Biped, помогут вам создать характерные персонажи.
В случае с Betty объекты m_gun, m_energy и m_fanvent отсоединены от основной сетки, потому что им всем присвоен материал, который использует файл текстуры, отличный от файлов остальных частей персонажа. А объекты m_headarmleg, m_torso и m_gunarm отсоединены исключительно для того, чтобы упростить задание весов персонажа.
Отобразите все скрытые объекты сетки и заморозьте их. Так будет легче изменять созданный объект Biped, ведь возможность случайно выделить сетку, под которую вы его подгоняете, исключается.
На рис. 2.37 в позиции A Biped имеет обычную конфигурацию, в позиции В в Biped используется четвертое звено ноги, а у объекта Biped в позиции С обе ноги повернуты на 180° относительно оси X. При анимировании персонажа с трехсуставными ногами начните с позы, которая является разновидностью положения на корточках (она похожа на букву Z, написанную в обратную сторону). Чем ниже объект присел, тем плотнее зигзаг.
Существует по крайней мере три способа создания каркаса Goat-Girl, при котором ее сетка будет правильно деформироваться. Можно и дальше работать с каркасом Biped при обычной установке, как изображено на рис. 2.38 (А), не обращая внимания на задний сустав, и вместо этого задать веса. Или можно заняться лошадиным звеном и подогнать его по сетке, как показано в позиции В. И наконец, можно воспользоваться установкой Biped в позиции С и зеркально отобразить ноги. В этом случае коленный сустав, который часто трудно заметить, будет проигнорирован. Основа метода, как и в первом случае, - правильное задание весов каркаса.
Преимущество третьего решения - возможность встроить обычный BIP-файл. Оно дает возможность работать не только с коленом. Попробуйте анимировать с помощью этого метода персонаж, который передвигается лишь на руках.
Выберите один из трех способов создания каркаса для демонической женщины с козлиными ногами
Чтобы вызвать список контроллеров, которые можно определить для трека Position объекта, щелкните по пиктограмме рядом с названием трека (рис. 2.50).
Выделите пункт Spring и нажмите кнопку ОК. Вы только что определили контроллер Spring для положения объекта. Теперь в окне Properties задайте какие-нибудь значения в свитке Spring Dynamics (Динамика пружины), которые заставят грудь персонажа колебаться при его перемещении: введите значение 500 в поле Mass (Масса) и 0,3 в поле Drag (Жесткость) - рис. 2.51.
Закройте диалоговое окно и определите контроллер с теми же значениями для трека Position другого объекта.
Щелкните по правой пиктограмме - она называется Paste Posture/Track Opposite (Вставить положение/Трек на противоположную сторону), - и кости левой руки примут позу костей правой руки. Дважды щелкните по правому бедру и повторите те же шаги для ног. Как только позы будут скопированы, на экране появится совершенно симметричная поза (рис. 2.18).
Не нужно подгонять икру под искривленную заднюю часть конечности, стоит лишь выровнять сустав с кончиком конечности. Ступня становится не чем иным, как управляющим элементом (handle) для перемещения ноги, поэтому сделайте ее плоской и увеличьте ширину, чтобы ее было проще выделять. Кисть будет использоваться так же, как и ступня в качестве управляющего элемента для перемещения ноги (рис. 2.32).
Теперь разморозьте объекты сетки и скройте все, кроме объектов Biped Left Arm и m_gunarm. Заморозьте объект сетки снова и поверните точку съемки окна проекции так, чтобы смотреть на локоть левой руки, а на цилиндр оружия - сбоку. Чтобы лучше видеть объекты, выключите сетку, нажав на клавишу G (рис. 2.19).
Каркас лица персонажа, показанного на рис. 2,46, поддерживает возможность показывать только эмоции. У него есть брови, глазные яблоки, веки, челюсть и губы, а язык ему не нужен.
Этому персонажу язык не нужен и по другой причине, а именно из-за существования досадного ограничения визуализации движка. С того расстояния, на котором персонаж виден на экране, можно заметить только один или два розовых пикселя языка. Визуализатор «не знает», что отображать: белый пиксель зубов или более темный пиксель языка. В последнем случае персонаж может выглядеть так, как будто у него нет переднего зуба! Поэтому в танце он лишь слегка приоткрывает рот.
Большинство типичных персонажей игр в реальном времени содержат примерно от 500 до 1500 полигонов. С каждым годом по мере развития аппаратного обеспечения и методов визуализации это число увеличивается, но любого персонажа с числом полигонов более 2000 можно считать персонажем с высоким разрешением. Очевидно, что разрешение влияет на скорость воспроизведения игры, когда персонаж просчитывается игровым движком. Также оно оказывает влияние на тип используемого каркаса.
Для анимации лица создаваемого персонажа обычно используются цели морфинга (morph targets). Цели морфинга - это формы головы и лица, которые уже имеют нужные положения. Они используются в качестве ключевых кадров для анимации мимики и движений губ при произношении фонем. К сожалению, в большинстве игр в реальном времени персонажи могут иметь анимированное лицо, только если используется костная система определенного типа, поскольку игровые движки зачастую не поддерживают морфинг.
Для каркасов лица объекта Biped не существует автоматических решений, поэтому нужно добавить кости и связать их с объектом Head. Сделать это очень просто. Тип используемого каркаса лица зависит от того, насколько детальной должна быть анимация лица и как велико разрешение сетки. Например, на сетке головы собаки, показанной на рис. 2.39, число полигонов достаточно, чтобы поддерживать практически любой уровень анимации лица.
Размеры Biped будут значительно изменены, поэтому не стоит уделять внимание его начальным размерам, гораздо важнее построить правильную структуру. Переведите Biped в режим Figure и введите значения, показанные в свитке Structure на рис. 2.26.
Присваивать объекту Biped название, вообще говоря, необязательно, но если на сцене присутствует не один персонаж, то лучше называть их описательными именами.
Посмотрите на свиток Structure (Структура) и введите значения, показанные на рис. 2.10.
Оставьте галочку напротив опции Arms (Руки), за исключением тех случаев, когда ваш персонаж не имеет рук. Значение в поле Neck Links (Звенья шеи) обычно равно 1, если только у персонажа не змеевидная шея. Значения в поле Spine Links (Звенья позвоночника) могут быть разными, оставьте в нем 4 (более подробно об этом поле - далее) и переходите к следующему полю. По умолчанию в поле Leg Links (Звенья ног) стоит 3 (предполагается, что значение 4 соответствует персонажу с тремя ногами, но об этом позже). В полях Tail Links (Звенья хвоста), Ponytaill Links (Звенья хвоста волос) и Ponytail2 Links оставьте значение 0. Присвойте Betty значения 5 в поле Fingers (Пальцы) и 3 в поле Finger Links (Звенья пальца). А в полях Toes (Большие пальцы ног) и Toe Links (Звенья большого пальца ноги) введите значение 1 (большинству персонажей требуется один палец ноги и одно звено пальца ноги). Любое значение, установленное в поле Ankle Attach (Присоединение лодыжки) по умолчанию, подойдет, однако не бойтесь поэкспериментировать с различными значениями.
Скройте ногу, отобразите скрытые объекты правой руки и подгоните их так же, как и объекты ноги. Помните, что точка, в которой ладонь соединяется с предплечьем (то есть запястье), должна быть выровнена с концом передней конечности (рис. 2.33).
После того как конечности с одной стороны созданы, сделайте видимыми остальные скрытые объекты Biped, скопируйте и зеркально отобразите позы конечностей - и вы получите каркас ужасного чужеродного живого существа. А если вы хотите увидеть его, загрузите файл Widge2.max (рис. 2.34).
В character studio направляющая Nub - это не только конечный объект для цепочки IK, он представляет собой звено в Physique, которому будут приписаны вершины. Преимущество использования объекта-пустышки под именем Nub состоит в том, что он соответствует структуре, которая уже была определена объектом Biped. Также он удобен тем, что его в любой момент можно скрыть вместе с другими пустышками, поставив нужный флажок на панели Display.
Глазное яблоко состоит из жидкости, оно очень пластичное. Чтобы представить вязкую глазную жидкость, потребовалось бы неописуемо большое количество геометрии. Лучший способ представить объект глаза - это придать форму искривленному набору треугольников.
Если кости лица справа и слева симметричны (в том числе и по названиям), то следить за тем, что где находится, будет гораздо проще. Даже несмотря на то что глазные яблоки являются частью объектов, их центры трансформаций совпадают с теми, которые были бы у них при центрировании на целой геосфере.
При работе с сеткой нужно иметь в виду несколько моментов. Во-первых, все ее части должны быть разного цвета, чтобы их можно было быстро отличить друг от друга, а стеки частей тела свернуты.
Предполагается, что объекты сетки не будут существенно изменены. Это очень важно, так как если отсоединить присоединенную к Biped сетку, чтобы внести структурные изменения, то информация о предыдущем задании весов будет потеряна.
Лучше всего полностью текстурироватъ сетку до присоединения ее к каркасу Biped, однако более опытные моделлеры и аниматоры считают, что перед тем, как назначать текстуру, нужно несколько раз протестировать геометрию. Если добавлять геометрию на сетку или удалять ее после определения проекционных координат, то эти координаты впоследствии могут сместиться. Только с ростом опыта вы поймете: не стоит накладывать координаты UVW, пока нет уверенности в том, что геометрия анимирована должным образом.
Заметьте, что частям тела присвоены описательные имена: m_torso (туловище), m_headarmleg (голова, руки и ноги), m_gunarm (рука с оружием), m_gun (оружие), m_energy (мощность) и m_fanvent (воздухоотводящая труба). Символы m_, стоящие перед именем каждого объекта, гарантируют, что объекты будут расположены рядом в отсортированном списке при открытии окна выделения по названию. С помощью этих символов также можно быстро отличить объект сетки от объекта Biped.
Как упоминалось в предыдущей главе, игровые персонажи должны состоять из как можно меньшего числа объектов: так игровой движок быстрее выполнит их просчет. Определенные элементы можно отсоединить (detach) от основной сетки и держать их на некотором расстоянии друг от друга, тогда к ним будет легче получить доступ на этапе задания весов при построении каркаса персонажа. Объект m_headarmleg иллюстрирует, как можно, одним ударом убив двух зайцев, гарантировать наилучший доступ к вершинам. Такой объект сетки создавать нежелательно, но он позволяет сократить число объектов, необходимых для создания сетки персонажа (рис. 2.2).
Группировать определенные элементы (или отделять их друг от друга) нужно также и по другой причине, а именно из-за необходимости поддерживать различные материалы/шейдеры (shader). Некоторые игровые движки не справляются с материалом Multi/Sub-Object (Многокомпонентный/Подобъект), поэтому приходится разделять объекты, присваивая им различные материалы/шейдеры. Иногда это нужно для достижения желаемого эффекта тени или обусловлено тем, что материалы объектов ссылаются на различные файлы текстур (рис. 2.3).
Чтобы объекты Biped выступали в роли ограничителей для решений обратной кинематики, нужно сделать их объектами-пустышками (dummy object), связанными с концами пальцев рук, верхом головы и концами пальцев ног. Всякий раз при создании Biped эти объекты-пустышки автоматически скрыты. Но если по какой-либо причине они отображаются, откройте панель Display
Отобразите все скрытые объекты Biped, затем скройте все, кроме объектов правой ноги. Сначала поверните бедро на 90° относительно оси Y и на 175° относительно оси X (рис. 2.30).
Отобразите скрытые объекты сетки и разморозьте их. Скройте m_gunarm, m_gun, m_energy и m_fanvent, затем снова заморозьте m_headarmleg и m_torso. Скройте все объекты левых конечностей, туловище, объекты шеи и головы Biped. Если персонаж имеет симметричные конечности, то в программе character studio достаточно определить позу только одной стороны, так как в этом модуле есть возможность копировать и зеркально отображать положения объектов. Неплохо также скрыть всю ненужную геометрию, чтобы не загромождать объект. Это позволит вам быстро разместить нужные объекты (рис. 2.13).
В окне проекции Front создайте объект Biped высотой 200 единиц и поместите его сбоку от персонажа Widge (рис. 2.25).
Прежде чем трансформировать отдельные части Biped (то есть применять к ним операции перемещения, вращения или масштабирования), нужно настроить его основную структуру. Начните с присвоения объекту Biped названия. Откройте свиток Biped в режиме Figure. Перейдите в поле Name (Название объекта), выберите имя Bip01 и переименуйте его в Betty (рис. 2.9).
Итак, основная структура определена, теперь можно приступать к выравниванию Biped по сетке. Начните с областей туловища, так как они управляют конечностями, для которых являются родительскими элементами. Скройте объекты рук (за исключением ключиц) и нижних частей ног Biped. Увеличьте масштаб тазовой области, выделите корневой объект Biped и перемещайте его вверх до тех пор. пока тазовая область не выровняется с пахом Betty. Убедитесь, что бедра центрированы относительно ног сетки (рис. 2.11).
Перейдите в окно проекции Тор (Сверху), заморозьте объекты сетки Widge, скройте объекты рук и начните настраивать Biped, определяя и изменяя положение базового объекта СОМ и тазовой области (не скрывайте ноги, чтобы лучше видеть центр трансформаций, в котором они соединяются с тазовой областью). Измените размеры тазовой области так, чтобы верхние точки присоединения бедра совпадали с суставами сетки. Перейдите в окно проекции Right, уложите Biped так, чтобы он оказался внутри сетки, затем слегка наклоните тазовую область, повернув объект СОМ (рис. 2.27).
Затем спрячьте ноги, чтобы они не мешали, и настройте звенья объекта Tail (Хвост) так, чтобы они совпадали с сегментами сетки (рис. 2.28).
Первый объект позвоночника, а также объекты ключицы, пальца ноги и руки можно переместить в любое положение, потому что их центр трансформаций перемещается вместе с ними. Остальные объекты Biped прикреплены к своему родительскому элементу. Поэтому при работе с руками персонажа возникают трудности, ведь, чтобы придать руке правильную позу, приходится выделять, перемещать эти объекты или поворачивать их. Вообще говоря, объекты ключицы лучше всего поворачивать и масштабировать, а не перемещать на некоторое расстояние от шеи.
Отобразите вновь все скрытые объекты, разморозьте все объекты сетки персонажа. А теперь познакомимся с одной из самых интересных функций character studio: копированием и зеркальным отображением положений конечностей. Вот как это работает. Дважды щелкните по правой (зеленой) ключице и выделите тем самым все кости руки. Откройте свиток Copy/Paste на панели Motion и щелкните по пиктограмме Сору Posture (Копировать положение)
Затем в качестве дополнительной страховки выйдите из режима Figure и снова сохраните позу персонажа, на этот раз в файле с расширением .biр. Для этого еще раз щелкните по пиктограмме Save File (рис. 2.23).
Каркас обычного игрового персонажа, такого как Betty, завершен. Теперь посмотрим, какие еще типы персонажей можно сконструировать с помощью Biped.
Завершенный каркас персонажа Widge -еще один четвероногий отрицательный герой
Для многих персонажей поза да Винчи неестественна, вряд ли они ее когда-либо примут. Но несмотря на это очень важно, чтобы модель персонажа находилась в своего рода исходной позе, в которой ее проще текстурировать (не передавайте художнику по текстуре персонаж в его типичной позе, не ждите, что он создаст проекционные координаты для этой позы). Однако, как в приведенном ранее примере с языком, поза да Винчи представляет предельную позу, которую мог бы принять персонаж и из которой можно получить на практике любую позу. На рис. 2.45 показан каркас сетки, приведенной на рис. 2.44.
Каркас сетки с высоким разрешением имеет немного больше элементов, чем у обычного игрового персонажа
Выполняя практические задания из данной главы, вы познакомитесь с этими шагами подробнее:
1. Загрузите законченную сетку персонажа и заморозьте (freeze) ее.
2. Создайте объект Biped и включите режим Figure (Установка позы).
3. Приблизительно выровняйте Biped с сеткой персонажа, выделив и переместив его центр тяжести, который представлен объектом Center of Mass (COM - Центр тяжести). Убедитесь, что тазовая область во всех видах выровнена соответствующе.
4. Задайте название объекта Biped и настройте его структуру.
5. Переместите и поверните объекты типа Spine (Позвоночник) и отмасштабируйте их во всех видах.
6. Скройте все конечности с одной стороны персонажа.
7. Трансформируйте (путем перемещения и вращения) оставшуюся руку, начав с ключицы и перемещаясь сверху вниз.
8. Измените оставшуюся ногу, начав с бедра и перемещаясь сверху вниз.
9. Отобразите все скрытые объекты Biped, затем скопируйте и отобразите положение конечностей на неизмененные конечности.
10. Сохраните позу персонажа в файле с расширением .fig.
11. Выключите режим Figure и сохраните исходное положение Biped в файле с расширением .bip.
12. Теперь каркас можно присоединять к сетке.
Поверните ногу и измените ее размеры так, чтобы она соответствовала геометрии сетки (рис. 2.31).
Демонстрационную версию программы WinAmp можно найти на компакт-диске, прилагаемом к данной книге.
Персонаж с подобным разрешением настраивается именно в такой позе, этим способом лучше всего автоматически задавать значения веса, основанные на оболочках влияния. Другими словами, в этом положении основные кости лежащего в основе сетки каркаса находятся на достаточном расстоянии друг от друга, так что на окружающие вершины влияет правильная кость.
Получить доступ к параметрам контроллера Spring можно двумя способами
Скройте ногу и настройте руку, начав с ключицы и передвигаясь сверху вниз. Ключица является корневым элементом в иерархии руки, поэтому, прежде чем переходить к остальным частям руки, убедитесь, что она находится там, где вы хотите ее видеть. Чтобы настроить ладонь и пальцы, выделите первую, перейдите в окно проекции Perspective и крупно покажите ладонь, щелкнув по пиктограмме Zoom Extents (Масштабировать по границам)
Щелкните дважды по полю оси X, введите значение 0 и нажмите клавишу Enter. Если число не подходит и объект Biped не сдвинется с места, убедитесь, что перемещение не зафиксировано по оси X (нажмите клавишу F5), и попробуйте снова. Объект Biped центрирован, расположен на сетке персонажа - теперь можно двинуться дальше.
Положение левой руки Betty, полученное в результате отображения позы правой руки, не совсем правильное. В ее броню встроена система вооружения, поэтому локтевой сустав заключен в своего рода механическое устройство и предплечью приходится перемещаться, как если бы оно было заблокировано в этом механизме. Таким образом, локтевой сустав должен исходить из центра цилиндра, как видно сбоку на рис. 2.19 и 2.20, а саму руку нужно выровнять точнее с направлением цилиндра. Ладонь и пальцы левой руки анимироваться не будут, поэтому уменьшите их в десятки раз, использовав команду трансформации Uniformly Scale (Однородное масштабирование)
Прежде чем подгонять Biped по замороженной сетке, убедитесь, что параметры рук и ног Biped (в том числе пальцев рук и ног), которые находятся в свитке Structure, не будут меняться. Чтобы понять, зачем это нужно, проделайте следующее. Во-первых, на стадии подгонки под сетку назначьте для объекта Biped режим Figure. Во-вторых, выделите и скройте любую руку или ногу объекта Biped. В-третьих, откройте свиток Structure и измените число пальцев рук или ног. В результате... все объекты Biped исчезнут.
Начните с ноги, так как она состоит из меньшего числа объектов, чем рука. Чтобы масштабировать объекты и повернуть их, воспользуйтесь обычными способами трансформации (рис. 2.14).
Собаки (и другие четвероногие животные) имеют специфическую и уникальную мускулатуру, которую при определении каркаса нужно тщательно изучить. Например, очень сложно увидеть колено, если только собака не согнула его. Собака ходит на пальцах ног. а не на ступнях, и объект Biped должен это отображать (рис. 2.35).
Объект Biped можно использовать для того, чтобы анимировать ротвейлера
Заключительный шаг в построении каркаса персонажа - его сохранение. Это следует сделать двумя способами и в двух форматах файлов character studio. Сначала в режиме Figure откройте свиток Biped и щелкните по пиктограмме Save File (Сохранить файл)
В игре Betty Bad наша отважная полногрудая героиня должна отразить нападение чужака, который пытается захватить горнодобывающий комплекс на астероиде в глубоком космосе и съедает каждого горняка на своем пути. Это жестокое, ни перед чем не останавливающееся существо Widge. Он и его клонированные собратья - главные мишени для оружия ZU88 OmniGun персонажа Betty.
Загрузите файл Widge1.max (рис. 2.24).
Объект Biped прекрасно применим для создания обычного игрового персонажа, но что делать, если нужно сотворить насекомовидное чужеродное создание на четырех ногах, стремящееся подчинить и поглотить человечество?
Переименуйте Biped в Widge. Руки, безусловно, нужны, поэтому оставьте напротив опции Arms галочку. Тело Widge сгибается только в середине, так что в поле Spine Links введите значение 2. В поле Leg Links введите 3. Звенья хвоста необходимы, поэтому укажите в поле Tail Links максимально допустимое для Biped число звеньев, то есть 5. У Widge не будет волос, и тем более их не надо собирать в хвост, поэтому в каждом поле Ponytail введите 0.
В учебных пособиях, руководствах по 3ds max и других книгах по анимации предлагается использовать поля Ponytail Links для анимации челюсти или рта. Но это не самая лучшая идея, так как character studio и так расходует много ресурсов процессора и оперативной памяти. Если добавить дополнительные кости в каркас Biped, то работа программы усложнится. Вместо этого создайте параллелепипед и свяжите его с объектом Head, ведь любой объект в 3ds max можно использовать в качестве кости, а они требуют гораздо меньше ресурсов процессора.
Значение Height (Высота) не существенно, потому что пропорции Biped уже были грубо подогнаны под сетку персонажа, но это хороший способ еще раз проверить размеры персонажа. Заранее решите, насколько большим будет персонаж в игре, и настройте соответствующим образом высоту. Напротив опции Triangle Pelvis (Треугольная тазовая кость) просто оставьте галочку.
Прежде чем присоединять сетку к каркасу Biped, убедитесь, что высота и персонажа, и объекта Biped определена правильно. Если же сначала присоединить объект Biped (особенно когда у него есть дополнительные кости), а потом изменять его высоту, то размер персонажа уменьшится непропорционально: персонаж сожмется неестественным, хотя и забавным, образом.
Загрузите файл Befty05.max, чтобы изучить каркас Biped
В 1490 году Леонардо да Винчи выполнил знаменитый эскиз, в основе которого лежит книга Витрувия об архитектуре. Иллюстрация была попыткой проверить математические формулы, которые предложил Витрувий для описания пропорций человеческой фигуры (рис. 2.43).
При создании каркаса Biped персонажа Betty его поза не совпадала с позой да Винчи из-за разрешения. Персонаж включает в себя около 2000 треугольников, он низкополигональный, и вручную задать веса можно достаточно быстро. Поза Betty не имеет особого значения, поэтому модель была построена в случайной позе. Однако, если бы персонаж имел более высокое разрешение, такое как на рис. 2.44, было бы верно обратное. Персонаж на рис. 2.44 находится в позе да Винчи потому, что состоит из 5663 полигонов. Он построен не для игры, а для приложения в реальном времени с танцем под музыку, воспроизводимую такими программами, как WinAmp.
Система координат Biped уникальна тем, что она остается постоянно ориентированной независимо от выбранной в 3ds max системы координат. Масштабирование большинства частей Biped вдоль оси X удлиняет их, вдоль оси Z - расширяет, а вдоль оси Y - утолщает (если смотреть в окне проекции Front). При повороте относительно оси Z большинство объектов Biped наклоняются вперед или назад, но есть и исключения. В общем, к подобной координатной системе нужно привыкнуть.
Сделайте все возможное, чтобы подогнать размер и угол наклона объектов Head (Голова) и Neck (Шея) по сетке, но не забывайте о том, что центр трансформаций головы находится прямо под ней. Закончив работу над туловищем, можно перейти к рукам и ногам.
На рис. 2.42 язык показан отдельно для ясности: в действительности он находится внутри рта и пересекает геометрию головы. Это сделано из-за того, что соединять сетку со скелетом нужно в вытянутом состоянии. Положение языка определяется только после присоединения к кости. Сравните с хвостом или набедренной повязкой, которые редко бывают совершенно прямыми и вытянутыми.
Чтобы перейти к уровню каркаса лица 4, пришлось бы включить большее число костей, которые можно использовать для деформирования таких областей лица, как щеки, уши, области вокруг бровей и т.д. Но остановимся пока на этом. Чтобы лучше познакомиться с отношениями между связанными костями лица и модулем Biped, загрузите файл Doghead.max.
Руки можно было бы оставить, чтобы, например, управлять плавниками, но все зависит от того, насколько сложной должна быть анимация. На самом же деле необходима лишь одна нога, вторую можно уменьшить практически до нуля. Тазовая область размешается в центре туловища, это упрощает процесс перемещения по воде и изгиба туловища вокруг центра трансформаций. Однако самое сложное в конструировании дельфина или акулы с помощью объекта Biped - это понять, каким образом создаются такие части, как спинной плавник. Можно либо добавить еще одну кость, либо очень строго задавать веса сетки персонажа, чтобы она правильно деформировалась.
В character studio есть другой способ настройки суставов колена, лодыжки, локтя и запястья: это режим Rubber Band (Резиновая лента). Чтобы воспользоваться им, просто щелкните по пиктограмме Rubber Band Mode, активизировав ее, выделите родительскую кость сустава, который вы хотите передвинуть (например, верхнюю часть руки Biped для локтевого сустава), и переместите его в нужное положение (рис. 2.15).
Центр бедер находится в их верхней части, поэтому представьте, что ноги персонажа сгибаются от этих точек. Увеличьте тазовую область, применив к ней команду трансформации Non-Uniformly Scale (Неоднородное масштабирование)
Настройте объекты Spine, Neck и Head, изменив их размеры и повернув в нужное положение. Шея не так уж важна, поэтому уменьшите ее вдоль оси X, чтобы убедиться, что объект Head выровнен с областью головы Widge. Его голова - всего лишь завершение туловища спереди, поэтому пусть она будет смотреть вниз (рис. 2.29).
Странные размеры Biped персонажа Widge продолжают удивлять...
В 3ds max Biped лучше использовать для костей, соответствующих костям реального существа, потому что с их помощью можно быстро и легко создать основу персонажа, дополнить ее обратной кинематикой (inverse kinematics - IK), суставными ограничениями (joint constraint) и всевозможными настраиваемыми параметрами, от числа пальцев до добавления хвоста. Но основное преимущество Biped - совместное использование файлов персонажей. Это относится и к его исходной позе, и к анимации методом ключевых кадров, и к данным захвата движения. Умение создать идеальную позу, шаги, бег или прыжки, а затем использовать любой из этих элементов или все вместе в других персонажах - ценное качество.
Не забывайте закрывать диалоговое окно Properties после того, как значения в диалоговом окне контроллера Spring были введены первый раз. Если этого не сделать и щелкнуть по другому объекту, диалоговое окно останется на экране, и вы можете подумать, что контроллер уже присвоен и этому объекту.
Когда контроллеры Spring будут присвоены обоим объектам, отмените выделение всех объектов, закройте все диалоговые окна и нажмите клавишу / (слэш), которая является «горячей» клавишей для функции Play Animation (рис. 2.52).
Поэкспериментируйте с различными значениями в полях Mass и Drag, но на практике лучше сделать объекты достаточно тяжелыми, иначе их движения не будут заметны (поэтому начните с 500). Чем больше значение в поле Drag (при условии, что в поле Mass введено то же значение), тем меньше будет колебание. Попробуйте ввести различные комбинации, можно даже добавить значения и в поля Tension (Упругость) и Dampening (Демпфирование). Но не забывайте: для того чтобы изменить эти значения, нужно сначала выделить в диалоговом окне строку Self Influence (Самовлияние) - рис. 2.53.
Если контроллер Spring применен к объекту, то можно получить доступ к его диалоговому окну непосредственно из панели Motion или же щелкнуть правой кнопкой мыши по треку Position и выбрать пункт Properties (рис. 2.54).