Анимация персонажей в 3ds max


         

Анимацию, созданную с использованием...



Анимацию, созданную с использованием редактора Motion Flow Editor, можно сохранить с помощью опции Save Segment только как отдельный файл в формате BIP


Выйдите из режима Motion Flow, еще раз щелкнув по кнопке Motion Flow Mode, и загрузите в объект Biped обновленный файл Shotdrop.bip, щелкнув в свитке Biped по кнопке Load File (рис. 8.55).

Использование редактора Motion Flow Editor целесообразно по многим причинам, и функциональности у него гораздо больше, чем описано здесь. В следующей главе об этом будет рассказано подробнее, но сначала нужно научиться объединять ряд анимаций для создания набора анимаций. На данном же этапе достаточно знать, как использовать редактор Motion Flow Editor для выполнения простых изменений ориентации.



Betty вновь примет позу готовности к стрельбе после того, как сохраненная поза будет вставлена



Betty вновь примет позу готовности к стрельбе после того, как сохраненная поза будет вставлена


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



с начальной позой



Ближайшее совпадение с начальной позой - в кадре 26



Бы почти слышите, как персонаж ударяется о пол



бы почти слышите, как персонаж ударяется о пол

Загрузите файл Betty13.max (рис. 8.66).



Betty вернулась, она опять готова кого-нибудь подстрелить



Чтобы импортировать файлы в форматах csm и bvh, щелкните по кнопке load motion capture file



Чтобы импортировать файлы в форматах CSM и BVH, щелкните по кнопке Load Motion Capture File


Когда появится диалоговое окно Open, из трех доступных в выпадающем списке Files of type (Тип файлов) типов файлов выберите формат BVH. Затем загрузите файл Walky.bvh, выделив его и нажав кнопку Open (рис. 8.2).

Когда появится окно Motion Capture Conversion Parameters (Параметры преобразования захвата движения), убедитесь, что в поле Footstep Selection (Выбор следов) выбрано None: Freeform (Нет: Свободная деформация), а в поле Conversion (Преобразование) - No Key Reduction (Без сокращения ключей). Нажмите кнопку ОК (рис. 8.3).



Чтобы изолировать потенциальные циклы - так будет проще их проверить, - воспользуйтесь кнопкой save file





Рис. 8.25 Чтобы изолировать потенциальные циклы - так будет проще их проверить, - воспользуйтесь кнопкой Save File


Убедитесь, что началом отрезка анимации является кадр 0, а концом -26; сохраните отрезок как файл Looptestl.bip (рис. 8.26).



Чтобы преобразовать файл формата csm, нужно выбрать этот тип файла в списке и загрузить файл



Чтобы преобразовать файл формата CSM, нужно выбрать этот тип файла в списке и загрузить файл



Чтобы применить функцию преобразования к определенному ряду ключей, воспользуйтесь функцией set multiple keys



Чтобы применить функцию преобразования к определенному ряду ключей, воспользуйтесь функцией Set Multiple Keys


Иногда кажется, что в результате применения функций Set Multiple Keys и Apply Increments сетка растягивается или деформируется. Чтобы убедиться, что команда Apply Increments привела к желаемому результату, подвигайте ползунок шкалы времени из стороны в сторону либо нажмите клавишу . ( точка) или, (запятая) несколько раз. Не забывайте также, что нужно повернуть или переместить выделенный объект относительно одной оси и воспользоваться функциями Set Multiple Keys и Apply Increment прежде, чем переходить к другой оси или другому типу преобразования. Иначе говоря, если совершить ряд поворотов или перемещений, а затем нажать кнопку Set Multiple Keys, то результата не будет.



Воспроизведите анимацию и посмотрите, нет ли других фрагментов, которые нужно исправить. Во время анимации попробуйте удалить ключи для рук, позвоночника и головы из различных положений, чтобы сделать движения более плавными. На этом превращение Betty, получающей удар, в Betty, отпрянувшей от удара, и наконец в Betty, восстанавливающуюся после сильной отдачи ружья, завершено (рис. 8.88).



Эффект отдачи от оружия Betty



Чтобы скопировать звенья Biped, зафиксируйте



Чтобы скопировать звенья Biped, зафиксируйте их мгновенное положение в кадре 0


Для определения длины цикла необходима своего рода поза-образец, поэтому в кадре 0 было зафиксировано мгновенное положение звеньев Biped. Теперь нужно сгруппировать эти объекты, чтобы в дальнейшем их случайно не выделить поодиночке. Перейдите вперед на несколько кадров анимации, Biped должен переместиться на некоторое расстояние от копий мгновенного начального положения. Выделите копии, откройте меню Group (рис. 8.19, позиция 1) и сгруппируйте выделенные объекты (рис. 8.19, позиция 2), назвав их по умолчанию Group 1 (эта группа потом будет удалена).

Чтобы случайно не выделить скопированные объекты в дальнейшем, сгруппируйте их



Чтобы случайно не выделить скопированные объекты в дальнейшем, сгруппируйте их


Теперь, когда есть мгновенное положение первого кадра анимации и объекты сгруппированы для упрощения выделения, нужно активизировать режим In Place (На месте), чтобы можно было понять, когда цикл повторяется. Еще раз выделите любую часть исходного объекта Biped и в разделе Modes (Режимы) свитка Biped щелкните по кнопке, которая похожа на мишень для стрельбы - она станет фиолетовой (рис. 8.20).

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

Режим In Place можно настроить и так, что движение будет ограничено осями X и Y по отдельности. Для этого выберите в выпадающем графическом меню одну из осей (рис. 8.21).




Чтобы сохранить анимацию при использовании motion flow editor, требуется немного сместить ключи



Чтобы сохранить анимацию при использовании Motion Flow Editor, требуется немного сместить ключи


Измените параметры в окне Time Configuration: в поле End Time введите значение 100, а затем с помощью кнопки Create Layer из свитка Layers добавьте слой. Включите кнопку Auto Key, выделите все объекты Biped Spine и примените к ним команду Set Key в кадрах 0, 10 и 54. Это анимация смерти, значит, нужно подчеркнуть, что удар смертелен, каким бы способом он ни был нанесен. Перейдите в кадр 5 и поверните выделенные объекты Spine на 8° относительно оси Z. Так толчок от удара будет заметнее (рис. 8.57).



Чтобы сократить число ключевых кадров в данных захвата движения, выберите пункт use key reduction



Чтобы сократить число ключевых кадров в данных захвата движения, выберите пункт Use Key Reduction



Чтобы воспользоваться редактором motion flow editor, сначала нужно щелкнуть по кнопке show graph



Чтобы воспользоваться редактором Motion Flow Editor, сначала нужно щелкнуть по кнопке Show Graph


Появится окно Motion Flow Graph. Активизируйте кнопку Create Clip (Создать отрезок)

Чтобы зациклить первый отрезок, воспользуйтесь другим подходом



Чтобы зациклить первый отрезок, воспользуйтесь другим подходом


Воспроизведите анимацию и посмотрите, как она выглядит. В точке сведения цикла все еще есть заметная заминка, вызванная положением туловища, которое начинает немного выпрямляться в конце отрезка. Это не идеально, но, в отличие от первой попытки, с дополнительным кадром цикл выглядит лучше. Затем возьмите второй отрезок и посмотрите, можно ли сделать из него что-нибудь лучше. Сохраните измененный цикл Looptestl.bip как Looptestla.bip и загрузите Looptest2.bip в объект Biped.

Снова включите режим In Place, измените параметры в окне Time Configuration: в поле Start Time введите значение 0, а в поле End Time -26, затем откройте окно Track View. Удалите ключи из кадра 26 и скопируйте ключи из кадра 0 в кадр 27 (рис. 8.29).

Есть заминка, но, вообще говоря, с этой анимацией работать будет проще - чтобы достичь подходящего цикла, нужно приложить меньше усилий, чем в случае с первым отрезком. Сохраните его как Looptest2a.bip -теперь можно продолжать уточнять цикл.



Во втором пробном отрезке удалите ключи последнего кадра и скопируйте ключи первого кадра в кадр 27



Чтобы загрузить файл формата bip в объект biped, щелкните по кнопке load file и укажите путь к файлу



Рис. 8.14 Чтобы загрузить файл формата BIP в объект Biped, щелкните по кнопке Load File и укажите путь к файлу


Выключите кнопку Show Buffer и перейдите в режим показа объектов, а не костей. Активизируйте окно проекции Left (Левый) и перетащите ползунок шкалы времени, чтобы просмотреть анимацию. Положение туловища на протяжении анимации изменяется от наклона вперед в начале до наклона назад ближе к концу. Это указывает на ускорение и замедление движения (рис. 8.15).



Чтобы загрузить файл формата bip в отрезок движения, щелкните по нему правой кнопкой мыши



Чтобы загрузить файл формата BIP в отрезок движения, щелкните по нему правой кнопкой мыши


Теперь нужно сделать то, ради чего все это затевалось, а именно изменить ориентацию данных, чтобы персонаж смотрел вперед. Откройте раздел Script в свитке Motion Flow и введите значение 200 в поле Start Rotation (Начальный поворот) - рис. 8.53.

Ориентация изменится только по оси Z. Теперь персонаж смотрит вперед. Перетащите ползунок шкалы времени и убедитесь, что переориентация проведена правильно, а затем сохраните измененный файл формата BIP, воспользовавшись опцией Save Segment. Чтобы изменить начальный и конечный кадры, в окне Save As щелкните по кнопке Active Time Segment. Затем, так как нас интересует только та часть анимации, в которой персонаж падает, введите в поле Start Frame значение ПО. Назовите новую анимацию Deathanim.bip (рис. 8.54).



Чтобы загрузить файл формата bvh, нужно выбрать этот формат в выпадающем списке files of type



Чтобы загрузить файл формата BVH, нужно выбрать этот формат в выпадающем списке Files of type


После того как 3ds max обработает преобразование, движение будет загружено в объект Biped. И сразу же станут заметными изменения конфигурации и пропорций Biped. Причина этому - место размещения маркеров во время захвата и экспорт в формат BVH (рис. 8.4).

Для преобразования файлов в форматах BVH и CSM всегда используйте Biped общего вида, установленный по умолчанию, а не сам персонаж. Конфигурации датчиков и Biped во время захвата движения и последующего экспорта в файл формата BVH или CSM повлияют на форму и конфигурацию Biped, в который они загружаются, и сильно исказят или разрушат сетку.




Данные, захваченные в середине движения, — пример хорошего бега



Данные, захваченные в середине движения, — пример хорошего бега


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



Держите эти числа под рукой - они вскоре понадобятся



Держите эти числа под рукой - они вскоре понадобятся


При копировании поз в буфер тип записанных данных зависит от того, какая кнопка преобразований активна и какая ось движения является текущей. Если копируются позы Biped целиком и необходимо выбирать между треками анимации Body Horizontal, Body Vertical и Body Rotate, то нажмите кнопку Body Rotate. Эту кнопку нужно использовать и перед выделением всех объектов Biped. Иначе выбор трека вручную отменит выделение всех объектов (рис. 8.68).




Рис. 8.68 Если у объекта СОМ будет только один трек, то используйте кнопку Body Rotate



Добавление слоя - лучший способ внести значительные изменения в анимацию



Добавление слоя - лучший способ внести значительные изменения в анимацию


Прежде чем переместить объект Biped, щелкните по пиктограмме Select and Move в верхней части окна - она станет активной. Затем нажмите кнопку Set Key в кадрах 5 и 27 - и эти положения останутся без изменения.

Производить анимирование при включенной кнопке Auto Key - хорошая привычка, но кнопка Set Key установит ключ, даже если кнопка Auto Key выключена.



Затем перейдите в кадр 8 и поднимите объект СОМ по оси Z, пока он не окажется на ближайшей линии сетки (А). Перейдите в кадр 14 и опустите СОМ, пока он не окажется на линии сетки на одно деление ниже той, которая использовалась в кадре 8 (В). Наконец, перейдите в кадр 21 и опустите СОМ, пока он не окажется на линии сетки, которая использовалась в кадре 14 (С), - рис. 8.36.

Теперь настройте ступни Biped так, чтобы они твердо стояли на плоскости земли. Добавьте еще один слой в анимацию, щелкнув по кнопке Create Layer.

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



Выделите правую ступню и нажмите кнопку Set Key для кадров 11 и 18. Затем в кадре 13 поверните и переместите ее относительно оси Z так, чтобы она своей плоскостью идеально легла на плоскость земли. То же проделайте в кадре 15 (рис. 8.37).



Добавление вторичного движения с помощью слоев



Добавление вторичного движения с помощью слоев



После загрузки Deathanim.bip в объект Biped в файле появился отрезок, который сохранен после редактирования в Motion Flow Editor. Откройте окно Track View и перетащите все ключевые кадры так, чтобы анимация начиналась в кадре 0 (рис. 8.56).



Дополнительное движение головы подчеркивает результат удара и сам удар о землю



Дополнительное движение головы подчеркивает результат удара и сам удар о землю



Если отображается траектория, то источник одной из проблем с циклом становится очевиден



Если отображается траектория, то источник одной из проблем с циклом становится очевиден


Кривая изображает естественное движение центра тяжести персонажа вверх и вниз по мере того, как он бежит. Если воспроизвести анимацию с включенным режимом In Place, то можно увидеть, что ближе к концу движения персонаж на правой ступне поднимается выше, чем на левой. Доказательством этому служит сравнение второй точки максимума траектории с первой. К тому же первая точка минимума в кадре 0 находится ниже, чем вторая в кадре 13. Чтобы анимация была гладкой и не раздражала несимметричностью, две точки минимума должны находиться на одной высоте, то же верно и для двух точек максимума.

Путь любого выделенного объекта Biped можно просмотреть, включив кнопку Trajectory в разделе Display в свитке Biped (рис. 8.34).



Проще всего исправить проблему разницы в высотах траектории с помощью слоев. Выделите объект СОМ и щелкните по кнопке Create Layer, чтобы добавить еще один слой анимации (рис. 8.35).



Если просматривать только кости...



Если просматривать только кости объекта Biped, то разницу между сокращенным и не сокращенным числом ключевых кадров проще увидеть


Наконец, чтобы увидеть исходные данные захвата движения со всеми ключевыми кадрами на своих местах, активизируйте кнопку Show Buffer (Показать буфер), щелкнув по ней (рис. 8.10).

Подвигайте ползунок шкалы времени из стороны в сторону, чтобы увидеть разницу между совершенно красной фигурой и фигурой обычной окраски. Разница между ними очень мала - кроме тех моментов, когда движение более резкое при ударе Biped о землю (рис. 8.11).

Чтобы посмотреть на результат еще более значительного сокращения, можно увеличить значение допусков (tolerance) в разделе Key Reduction Settings (Установки сокращения ключей). Вместо того чтобы снова загружать файл захвата движения с помощью кнопки Load Motion Capture File, щелкните по кнопке Convert from Buffer (Преобразовать из буфера) и тем самым снова вызовите окно Motion Capture Conversion Parameters (рис. 8.12).



Если щелкнуть по отрезку clip 7 в окне motion flow graph, то он появится в списке в свитке motion flow script



Если щелкнуть по отрезку clip 7 в окне Motion Flow Graph, то он появится в списке в свитке Motion Flow Script



Если воспользоваться трехгранником...



Если воспользоваться трехгранником осей и переместить объект СОМ с помощью значка перемещения в углу, можно определить ключи для трека как Body Horizontal, так и Body Vertical


Затем, не выходя из окна проекции Front, перейдите в кадр 90 и снова переместите объект СОМ. пока правая ступня Betty не выровняется со снимком правой ступни (рис. 8.80).

Теперь подвигайте ползунок шкалы времени между кадрами 40 и 60. В кадрах 45-53 персонаж немного подпрыгивает. Перейдите в кадр 45 и опять переместите объект СОМ, пока правая ступня не выровняется с образцом. Затем перейдите в кадр 53 и сделайте то же самое. Подвигайте ползунок шкалы времени из стороны в сторону и везде, где ступня отклоняется от снимка, переместите СОМ - ступня должна быть выровнена во всей анимации. В кадрах 36-39 проигнорируйте положение ступни, потому что в этих кадрах, чтобы выровнять ее, надо перемещать саму ступню, а не объект СОМ. Переместите СОМ в кадре 95, чтобы выровнять ступни, проигнорируйте кадры 91-94 и 96-99 по той же причине.

Теперь просмотрите анимацию в окне проекции Right, переместив СОМ в каждом кадре, где ступня не выровнена, принимая во внимание прыгающее движение в кадрах 45-55 (просто переместите СОМ по оси Y), - рис. 8.81.



Если ввести в поле start rotation значение 200, то персонаж повернется на 200° относительно оси z



Если ввести в поле Start Rotation значение 200, то персонаж повернется на 200° относительно оси Z



Если выпрямить ногу, придать ей пинающее движение, то падение будет выглядеть лучше



Если выпрямить ногу, придать ей пинающее движение, то падение будет выглядеть лучше


Такие незначительные изменения подчеркивают падение, делают его более убедительным. Они устраняют недостатки исполнения, а падение становится более реалистичным. Теперь нужно настроить скорость падения (и его направление) вблизи земли, чтобы падение было более динамичным. Воспроизведите анимацию и посмотрите, как она выглядит. Сравните изменения, внесенные в исходную анимацию, щелкнув по кнопке Previous Layer (Предыдущий слой) и просмотрев неотредактированную версию (рис. 8.62).



Файлы захвата движения



Файлы захвата движения



В 3ds max и character studio можно работать с тремя различными форматами файлов захвата движения: BIP, CSM и BVH. Файлы BIP - это собственно файлы движения Biped, a CSM и BVH - это файлы необработанных данных, состоящие из ASCII-символов, представляющих собой обычные выходные данные, которые были получены в результате захвата движения. Аниматоры на самом деле работают только с законченными файлами BIP, которые были «вычищены» в студии, осуществлявшей захват или продающей данные в библиотеках. В character studio есть возможность подгонять данные захвата движения под персонажей, однако в компаниях, специализирующихся на предоставлении захвата движения, оборудование для настройки данных лучше. Но все же полезно иметь представление о форматах CSM и BVH, потому что в character studio есть возможность преобразовывать эти типы файлов в обычный формат BIP.



Формат bvh



Формат BVH



Формат файлов BVH также основывается на системах оптического захвата движения. Первоначально он был разработан компанией по захвату движения Bio Vision как способ обеспечения своих клиентов данными захвата движения. Название BVH обозначает данные Bio Vision Hierarchical. Этот формат в основном заменил более ранний, разработанный компанией формат BVA, в котором не было возможности предоставления информации об иерархии каркаса в добавление к данным о движении. Формат BVH - отличный многогранный формат, но его недостаток заключается в отсутствии полного описания основной позы. Этот формат до сих пор используется, но популярным форматом файла захвата движения уже не является.



Формат csm



Формат CSM



Формат CSM используется для импорта данных датчиков положения, которые получены от оптических систем захвата движения, в объект Biped. Аббревиатура CSM означает Character Studio Motion Capture file (Файл захвата движения character studio). В формате CSM есть некоторые ограничения - в нем должны использоваться имена, соответствующие ограничениям character studio, иначе он будет несовместим с этим приложением. В нем также должно быть подходящее число датчиков, которые располагаются на теле актера в определенных местах (хотя в character studio 3 и 4 в настоящий момент разрешается использовать несколько дополнительных датчиков). Формат CSM сам по себе способен переносить любой тип данных, полученных от датчиков, но предполагается, что он придерживается конфигурации имен и датчиков, требуемой character studio.



Использование захвата движения



Глава 8. ИСПОЛЬЗОВАНИЕ ЗАХВАТА ДВИЖЕНИЯ

ИСПОЛЬЗОВАНИЕ ЗАХВАТА ДВИЖЕНИЯ Файлы захвата движения Формат CSM Формат BVH Преобразование CSM- и BVH-файлов Использование сокращения ключей Выбор формата файлов захвата движения Плохая анимация бега Хорошая анимация бега Создание циклического бега Определение длины цикла Извлечение лучшего отрезка цикла Сравнение отрезков цикла Удвоение цикла Уточнение цикла с использованием слоев Создание анимации смерти Использование редактора Motion Flow Editor для поворота Biped Добавление вторичного движения с помощью слоев Удаление кадров для усиления эффекта соударения Изменение назначения файла захвата движения Копирование позы Загрузка анимации получения удара Команда Paste Pose/Posture/Track Перемещение объекта COM Создание движения стрельбы Отработка эффекта отдачи Выравнивание правой ступни перемещением объекта СОМ Настройка верхней части тела Внесение изменений с помощью функции Set Multiple Keys Резюме



Хорошая анимация бега



Хорошая анимация бега



Загрузите в объект Biped файл Goodrun.bip.

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



Именно в окне motion flow graph и создаются отрезки движений



Именно в окне Motion Flow Graph и создаются отрезки движений


Поместив отрезок clip1 в окно Motion Flow Graph, в свитке Motion Flow Script в разделе Scripts (Сценарии) щелкните по кнопке Define Script (Определить сценарий) - рис. 8.50.

Щелкнув по кнопке Define Script, укажите, какие отрезки вводить в список отрезков, которые определены сценарием. Щелкните один раз по созданному в окне Motion Flow Graph отрезку clip1. Он станет красным -так обозначается, что отрезок был добавлен в сценарий script 1, а в самом сценарии теперь есть введенные данные (рис. 8.51).

Теперь дважды щелкните правой кнопкой мыши по красному отрезку clip1; появится диалоговое окно clip1, и в нем можно будет загрузить файл формата BIP. Заметьте, что кнопка Define Script стала недоступной. Это произошло, так как вы указали, что определение сценария закончено (рис. 8.52).

Щелкните по кнопке Browse (Обзор) и выберите файл Shotdrop.csm. Нажмите кнопку ОК и закройте окно Motion Flow Graph.

Загрузка файла в редактор Motion Flow Editor не оказывает какого-либо влияния на текущую анимацию, используемую в Biped. Если выключить режим Motion Flow, все параметры и файлы остаются неизменными до возврата в этот режим, даже если сохранить сцену 3ds max и выйти из программы. При следующей загрузке файла вы обнаружите, что данные в Motion Flow Editor никуда не исчезли.




Использование редактора motion flow editor для поворота biped



Использование редактора Motion Flow Editor для поворота Biped



Создайте новый объект Biped или воспользуйтесь тем, который применялся в анимации бега. Загрузите сохраненный ранее, после преобразования из файла формата CSM, файл Shotdrop.bip.

Если по какой-то причине у вас нет этого файла, загрузите в окно Motion Capture Conversion Parameters исходный файл Shotdrop.csm с компакт-диска и преобразуйте его. Загрузив файл, активизируйте окно проекции Front (рис. 8.46).



Использование сокращения ключей



Использование сокращения ключей



Одна из самых полезных функций в окне Motion Capture Conversion Parameters - предоставляемая возможность сокращения числа ключевых кадров анимации при импорте файла захвата движения. Так как у файлов захвата движения обычно есть столбец ключевых кадров для каждого трека анимации в каждом кадре, то фильтрация данных с целью сокращения ключевых кадров упрощает процесс редактирования анимации при подгонке ее к своему персонажу. Однако обычно есть смысл хранить как образец исходного качества по крайней мере одну версию файла захвата движения, в которой присутствуют все ключевые кадры в первоначальном состоянии.



Использование захвата движения



ИСПОЛЬЗОВАНИЕ ЗАХВАТА ДВИЖЕНИЯ
Захват движения (motion capture, или сокращенно mocap) - лучший помощник аниматора. С его помощью любое движение становится реалистичнее и детальнее, а время создания такого движения уменьшается. Фильмы, телевидение, реклама и даже научные исследования пользуются преимуществами захвата движения, а в 3ds max он применяется легко и быстро.










Изменение назначения файла захвата движения



Изменение назначения файла захвата движения



Очень часто данные захвата движения используются совершенно не в тех целей, для которых они предназначались. Объединив даже самые неожиданные данные с анимацией, созданной вручную с помощью ключевых кадров, можно получить нечто полезное и интересное. Чтобы проиллюстрировать такое изменение назначения данных захвата движения, мы определим для Betty особую анимацию стрельбы из самого мощного ее оружия - рельсовой пушки (railgun). Чтобы подчеркнуть для зрителя, какую опасность представляет собой этот вид оружия, при стрельбе из него Betty должна испытать сильную отдачу и затем восстановить позу. Чтобы получить движение такого типа, воспользуемся анимацией персонажа, которому наносят удар, а также применим ручное кадрирование.



Извлечение лучшего отрезка цикла



Извлечение лучшего отрезка цикла



Теперь, когда продолжительность цикла известна, нужно решить, из какой части анимации его выделить. Лучше всего выбирать удобный цикл из середины файла захвата движения, однако это верно, только если данные имеют полный диапазон движения. При использовании данных, которые захватили не вы или которые изменил кто-то другой до вас, лучше всего просто проверить движение, воспользовавшись в качестве ориентира известной длиной цикла. Например, если кадры 0-26 - завершенный цикл, то и кадры 5-31 тоже можно использовать в качестве цикла. Кадры 19-45 - последний отрезок, который можно применить, так как цикл должен целиком лежать внутри исходной анимации.



К сожалению, в этом случае нет возможности для создания циклической анимации



К сожалению, в этом случае нет возможности для создания циклической анимации


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

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



Кадры 0 и 26, 11 и 38 - наиболее близкие



Кадры 0 и 26, 11 и 38 - наиболее близкие


Почему кадр 38, а не 37? Иногда человеческое тело не вписывается в удобное число кадров. Иногда актер бежит не с постоянным темпом. Кадры 0 и 26 совпадают достаточно хорошо, но после кадра 26 актер немного замедлил бег. Даже незначительное замедление скорости добавляет в цикл еще один кадр. Поэтому первые возможные крайние точки цикла находятся на расстоянии 26 кадров, а следующие - на расстоянии 27 кадров.

Чтобы проверить пригодность двух этих точек цикла, воспользуйтесь возможностью сохранения сегмента в окне сохранения файлов типа .bip и изолируйте в отдельные файлы два отрезка цикла. Так будет проще увидеть, какой цикл наилучший. Щелкните по кнопке Save File1 в свитке Biped (рис. 8.25).



Кнопка convert from buffer - еще один способ вызова окна motion capture conversion parameters



Рис. 8.12 Кнопка Convert from Buffer - еще один способ вызова окна Motion Capture Conversion Parameters


Когда появится окно преобразования, увеличьте значения в полях группы Tolerance (Допуск) до 10 для всех треков, кроме Body Horizontal, Body Vertical и Body Rotation. Их значения в полях группы Tolerance оставьте без изменений, равными 1. Измените значения в полях группы Minimum Key Spacing (Минимальное расстояние между ключами) на 6 для всех треков, кроме указанных трех, оставив значения 3, 4 и 3 соответственно (рис. 8.13).

Если у большинства треков одинаковые параметры допуска и промежутка между соседними ключами, то, чтобы изменить одно или оба значения в полях групп Tolerance и Minimum Key Spacing для всех треков сразу, воспользуйтесь строкой Set All (Установить все), которая находится в верхней части раздела Key Reduction Settings. Затем настройте отдельные параметры, которые должны отличаться от других.



Нажмите кнопку OK - и разница, производимая большими значениями, станет очевидна. Значение Tolerance определяет максимальное число единиц (или градусов), на которое может отклоняться трек положения или поворота от своего истинного положения. Как только character studio посчитает реальное значение Tolerance для конкретного трека, число ключевых кадров уменьшится далее с учетом ограничивающего параметра Minimum Key Spacing. Этим значением обычно устанавливается нижняя граница промежутка между соседними ключевыми кадрами, но даже после сокращения промежуток может быть меньше этого значения в зависимости от параметра Tolerance.



Кнопка trajectory отображает траекторию или путь любого выделенного объекта либо звена biped



Кнопка Trajectory отображает траекторию или путь любого выделенного объекта либо звена Biped



Команда paste pose/posture/track



Команда Paste Pose/Posture/Track



Перейдите в кадр 0, включите кнопку Auto Key, убедитесь, что все звенья Biped выделены, и нажмите кнопку Paste Posture/Pose/Track

Копирование позы



Копирование позы



Поза, в которой находится Betty, создана, чтобы держать любой тип оружия, из которого она стреляет. Когда бы она ни использовала рельсовую пушку, ей приходится несколько секунд ждать, пока оружие зарядится. Как только оно достигнет полной мощности, Betty стреляет и проходит анимацию, которая вскоре будет создана. Как же переместить анимацию получения удара на данный объект Biped, не потеряв текущую позу? Очень просто. То, что это всего лишь поза, упрощает задачу. Выделите объект СОМ персонажа Betty, сделайте кнопку преобразования Select and Move

На этот раз в окно motion capture conversion parameters загрузите файл формата bip



На этот раз в окно Motion Capture Conversion Parameters загрузите файл формата BIP


Заметьте, что в нижней части окна Open есть две опции. При загрузке файла BIP, как в этом примере, есть дополнительный выбор: реструктуризировать объект Biped, в который будут загружаться данные, или нет. Это одно из преимуществ сохранения файлов типа BVH и CSM как BIP, и проведение всех настроек осуществляется уже с файлом В IP. Но в этом случае обратиться к данным датчиков в кадре 0 будет невозможно.

Когда появится окно Motion Capture Conversion Parameters, в выпадающем списке Conversion выберите пункт Use Key Reduction (Использовать сокращение ключей) - рис. 8.8.

Нажмите кнопку ОК, то же самое движение теперь оптимизировано и имеет меньше ключевых кадров. В character studio можно легко увидеть разницу между сокращенными ключевыми кадрами, так как начальные, не сокращенные, данные хранятся в буфере захвата движения. Чтобы оценить результат сокращения, сначала откройте в свитке Biped раздел Display и в выпадающем графическом меню выберите вторую кнопку Bones - рис. 8.9.



Настройка верхней части тела



Настройка верхней части тела



Положение персонажа правильно выровнено полностью, теперь нужно настроить туловище, руки и голову, тогда стрельба из ружья будет более реалистичной. В текущий момент ладони после удара поднимаются к лицу, а туловище и голова слишком сильно повернуты вправо. Выделите объекты Spine, руки и голову и примените к ним команду Set Key в кадрах 35 и 100. Затем перейдите в кадр 40 и определите положение верхней части тела так, чтобы оно было больше повернуто вперед и соответствовало движению сразу после выстрела (а не после получения удара). Поверните все объекты Spine, руки и голову. Не забудьте и про ключицы. На эти части рук иногда не обращают внимания, но они играют важную роль в движении руки (рис. 8.82).



Обрежьте анимацию получения удара, удалив первые 69 ключевых кадров



Обрежьте анимацию получения удара, удалив первые 69 ключевых кадров



Очевидно, что персонаж должен смотреть не туда



Очевидно, что персонаж должен смотреть не туда


Правила, предписывающего совершать захват движения при какой-либо особой ориентации - спереди, сзади или сбоку, - не существует. Захват может производиться в позиции под любым углом, слева, справа или с противоположного направления. Что касается именно этих данных, то они были захвачены с неверной ориентацией. Один из способов повернуть объект Biped целиком - применить слой с соответствующей настройкой и повернуть объект СОМ так, чтобы персонаж смотрел вперед. Однако с помощью режима Motion Flow (Поток движения) это сделать гораздо удобнее.

Выделите объект Biped, откройте свиток Biped и щелкните по кнопке Motion Flow Mode (Режим потока движения) - на ней изображена кривая в форме буквы Z, - которая находится справа от кнопки Footstep Mode (Режим следа) - рис. 8.47.



Окно motion capture conversion parameters - отличный инструмент для быстрого преобразования файлов в форматах bvh и csm



Окно Motion Capture Conversion Parameters - отличный инструмент для быстрого преобразования файлов в форматах BVH и CSM


Переместите ползунок шкалы времени в кадр 0, если он еще не в этом кадре. Заметьте, что стали доступны кнопки в нижнем ряду свитка Motion Capture. Так происходит потому, что при загрузке файла в формате BVH или CSM с помощью этих кнопок можно еще раз прокалибровать данные от датчиков. Однако обращаться к ним приходится редко, и лучше всего доверить такие изменения студии захвата движения, которая предоставляет данные.



Окно transform type-in никогда не бывает ненужным



Рис. 8.43 Окно Transform Type-In никогда не бывает ненужным


Если вызвать окно Track View и удалить все ключи типа Horizontal для трека Ыр01, то объект СОМ останется в начале координат, но будут удалены перемещения по осям X и Y. Перемещение из стороны в сторону вдоль оси X очень важно в таких анимациях, как бег и ходьба, - оно моделирует равновесие и перенос веса, поэтому предпочтительнее переместить анимацию вручную в точку с координатой 0 по оси Y.



Как только объект Biped будет перемещен в начало координат во всех кадрах цикла, сохраните анимацию с помощью опции Save Segment. Чтобы автоматически задать отрезок текущим диапазоном анимации, щелкните по кнопке Active Time Segment (Активный временной сегмент), которая находится справа от поля То (До). Сохраните новый файл Biped как Myrun.bip (рис. 8.44).



Опция loop в окне motion capture conversion parameters - удобный инструмент



Опция Loop в окне Motion Capture Conversion Parameters - удобный инструмент



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



Опция save segment at current position and rotation позволяет определить только ту часть анимации, которая нужна



Опция Save Segment at Current Position and Rotation позволяет определить только ту часть анимации, которая нужна


В диалоговом окне Save As (Сохранить как) есть опция сохранения ключа для каждого трека каждого кадра анимации. Это хорошая опция, с помощью которой можно добавить ключи в более длинные анимации, когда это необходимо.



Проделайте то же самое со вторым потенциальным циклом: начальный кадр -11, конечный - 38. Сохраните второй отрезок как файл Looptest2.bip. Сделав это, загрузите Looptestl.bip в объект Biped, включите режим In Place и изучите анимацию дальше.



Определение длины цикла



Определение длины цикла



Выделите все звенья и объекты Biped (кроме маленького круглого объекта Footsteps) и перейдите в кадр 0. Убедитесь, что активно окно проекции Left. Увеличьте масштаб и передвиньте вид так, чтобы Biped оказался слева. Затем выполните команды Tools/Snapshot (рис. 8.18, позиция 1) и создайте копии выделенных объектов Biped для кадра 0 (рис. 8.18, позиция 2).



Отработка эффекта отдачи



Отработка эффекта отдачи



Выстрел произведен, теперь можно извлечь пользу из загруженной ранее в объект Biped анимации. Но сначала выделите ступни и скопируйте их мгновенное положение в качестве образца, на который нужно будет ссылаться при перемещении анимации эффекта отдачи ближе к анимации стрельбы (как во времени, так и на самой сцене). Включите режим каркаса, выделите ступни, в меню Tools выберите пункт Snapshot (рис. 8.75, позиция 1) и, когда появится окно Snapshot, щелкните по кнопке ОК (рис. 8.75, позиция 2).

В поле End Time в окне Time Configuration введите значение ПО и затем откройте окно Track View. Выделите и переместите все ключи, которые составляют анимацию получения удара, влево, чтобы они начинались в кадре 40. Затем выделите ряд ключей в кадре 30 и скопируйте их в кадр 100 (рис. 8.76).



Перемещайте объект сом до тех пор, пока правая ступня не выровняется со снятым мгновенным положением правой ступни



Перемещайте объект СОМ до тех пор, пока правая ступня не выровняется со снятым мгновенным положением правой ступни


В свитке Track Selection кнопки Body Horizontal и Body Vertical использовать одновременно нельзя. Можно нажать только на одну из них. Однако, если выбрать кнопку Restrict to ZX (Ограничить по ZX) или Restrict to YZ (Ограничить по YZ) на панели Axis Constraints (Ограничения по осям), то обе кнопки - Body Horizontal и Body Vertical - будут выделены и теперь можно одновременно определить ключи для обоих треков анимации (рис. 8.78).



Перемещение объекта сом



Перемещение объекта СОМ



Вызовите окно Move Type-In Transform и, сделав активной нужную ось, переместите Betty, введя координаты по осям X, Y и Z, которые показаны на рис. 8.67 (рис. 8.71).



Переместите ключи эффекта отдачи ближе к точке, в которой betty стреляет из ружья



Переместите ключи эффекта отдачи ближе к точке, в которой Betty стреляет из ружья


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



Переместите объект сом так, чтобы точки минимума и максимума траектории были на одном уровне



Переместите объект СОМ так, чтобы точки минимума и максимума траектории были на одном уровне



Переместите объект сом в кадр 90, пока правая ступня не совпадет с мгновенным положением



Переместите объект СОМ в кадр 90, пока правая ступня не совпадет с мгновенным положением



Переместите объект сом в окне проекции right, выровняв ступню должным образом



Переместите объект СОМ в окне проекции Right, выровняв ступню должным образом


Если положение будет неточным, не волнуйтесь. Здесь самое главное -обработать движение получения удара с помощью слоя и поместить ступни в правильное положение, сначала переместив СОМ. Пока не обращайте внимания на то, что ступня проходит сквозь пол.

Не пытайтесь использовать в слое команду Set Planted Key - сначала слои нужно свернуть. Попробуйте проделать это - и вы поймете причину. Ступня и нога будут двигаться неестественно.



Плохая анимация бега



Плохая анимация бега



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

Если не оговорено противное, частота смены кадров для всех анимаций по умолчанию определена как частота, принятая для стандарта NTSС, и равна 30 кадрам в секунду.



Откройте свиток Biped и щелкните по кнопке Load File. Укажите путь к файлу Badrun.bip и загрузите его (рис. 8.14).



После внесения изменений нужно сделать еще один, завершающий анимацию, шаг



После внесения изменений нужно сделать еще один, завершающий анимацию, шаг



Поверните голову, позвоночник и руки так, чтобы betty смотрела вперед



Поверните голову, позвоночник и руки так, чтобы Betty смотрела вперед


Затем, чтобы завершить впечатление того, что Betty сразу же собирается вернуться в исходное состояние и снова выстрелить, перейдите в кадр 0 и поверните верхнюю часть тела так, чтобы оно было немного больше направлено вперед. А позвоночник сильнее согните по оси Y, так как Betty пытается сохранить равновесие. Поверните голову, чтобы она смотрела вперед и немного вниз (рис. 8.83).



Поверните объект spine, чтобы устранить небольшое выпрямление в конце цикла



Поверните объект Spine, чтобы устранить небольшое выпрямление в конце цикла


Сверните стек слоев и перейдите в окно проекции Front, чтобы исправить последнюю проблему (рис. 8.39).



Поверните объекты spine, чтобы уменьшить эффект реакции на падение



Поверните объекты Spine, чтобы уменьшить эффект реакции на падение


Теперь выделите объект Head и примените команду Set Key в кадрах 0, 10, 30 и 50. Затем перейдите в кадр 5 и поверните голову на 50° относительно оси Z так, чтобы она наклонилась вперед под воздействием удара. Затем перейдите в кадр 20 и поверните голову вперед на 40°, чтобы казалось, что персонаж смотрит на атакующего в замешательстве. В кадре 45 поверните голову примерно на 35°, чтобы при падении персонажа назад на время задержать голову, тогда соприкосновение с землей несколькими кадрами позже будет еще более заметным (рис. 8.59).

После того как туловище и голова настроены, нужно исправить движение левой руки: она не должна двигаться назад, чтобы смягчить падение. Выделите объект Bip01 L Upper Arm и примените к нему команду Set Key в кадрах 0 и 55. Перейдите в кадр 45 и поверните левую руку на -120° относительно оси Z, а затем в кадре 50 поверните ее на -35° также относительно оси Z (рис. 8.60).



Поверните руку, чтобы падение было более неожиданным



Поверните руку, чтобы падение было более неожиданным


Наконец исправьте правую ногу: она не должна твердо стоять на поверхности земли в конце падения, иначе падение будет выглядеть неестественным. Выделите звено Bip01 R Calf и примените команду Set Key в кадрах 35 и 65. Перейдите в кадр 50 и поворачивайте икру и ступню, пока они не будут указывать наружу и вверх, как будто нога выброшена при падении назад (рис. 8.61).



Поверните туловище назад, чтобы подчеркнуть движение, вызванное ударом



Поверните туловище назад, чтобы подчеркнуть движение, вызванное ударом


Поскольку ключевые кадры определены в кадрах 0 и 10, то анимация в них останется той же самой, так как изменение происходит в кадрах 1-9. Если перетащить ползунок в разные позиции анимации на шкале времени, то в точке, где Biped ударяется об землю, можно заметить, что левая рука актера выброшена вниз, чтобы предотвратить падение. Такого рода недостатки объясняют, почему для захвата данных важно найти талантливого актера. Во время сессии захвата движения режиссер должен был заметить, что персонаж движется не совсем верно, и исправить исполнение. Однако эту проблему легко решить. Перейдите в кадр 50 и поверните объекты Spine примерно на -10° относительно оси X в противоположном падению направлении (рис. 8.58).



Правая ступня должна находиться на плоскости земли и лежать на ней полностью в те моменты, когда ступня неподвижна



Правая ступня должна находиться на плоскости земли и лежать на ней полностью в те моменты, когда ступня неподвижна


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

В этом случае изменения незначительны. Щелкните по кнопке Set Key для кадров 24 и 27, а затем поверните и поставьте ступню на плоскость в кадрах 25 и 26.

Последний слой, который нужно добавить, решает вопрос с небольшим выпрямлением туловища ближе к концу анимации. Создайте другой слой, выделите первый объект Spine и нажмите кнопку Set Key для кадров 21 и 29. Затем перейдите в кадр 25 и поверните объект Biped Spine на -5° относительно оси Z (рис. 8.38).



Правая ступня поворачивается во время анимации, что обусловлено покрытием пола



Правая ступня поворачивается во время анимации, что обусловлено покрытием пола


Выключите кнопку Auto Key, выделите ступню и поверните ее относительно оси Z так, чтобы она ровно стояла на полу (рис. 8.87, позиция 1). Затем в свитке Keyframing щелкните по кнопке Set Multiple Keys (рис. 8.87, позиция 2) - появится окно Biped Multiple Keys (Несколько ключей Biped). Щелкните по кнопке Apply Increment (Применить инкремент) - рис. 8.87, позиция 3, - и ко всем выделенным в окне Track View ключам будет применена операция вращения.



Преобразование csm- и bvh-файлов



Преобразование CSM- и BVH-файлов



Откройте новый файл 3ds max или сбросьте (reset) старый и создайте объект Biped. Объект СОМ нового Biped будет выделен автоматически, поэтому откройте панель Motion и в свитке Motion Capture (Захват движения) щелкните по кнопке Load Motion Capture File (Загрузить файл захвата движения) - рис. 8.1.



Преобразования поворота ограничены системой координат local



Преобразования поворота ограничены системой координат Local



При увеличении значений в полях...



При увеличении значений в полях групп Tolerance и Minimum Key Spacing число ключевых кадров уменьшается более значительно


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



При загрузке файла в формате bvh или csm конфигурация biped значительно изменяется



При загрузке файла в формате BVH или CSM конфигурация Biped значительно изменяется

Не отменяя выделения объекта Biped, щелкните еще раз по кнопке Load Motion Capture File и на этот раз загрузите файл формата CSM с именем Shotdrop.csm (рис. 8.5).

В окне Motion Capture Conversion Parameters оставьте все параметры без изменений. Когда файл будет преобразован и помещен в сцену для анимации объекта Biped, сохраните его как файл в формате BIP, щелкнув по кнопке Save File в свитке Biped (рис. 8.6).



Пример плохой анимации бега



Пример плохой анимации бега


Очень важна скорость персонажа и направление его движения. Прежде чем принять решение, использовать анимацию бега или нет, нужно найти точки замыкания цикла. Это две наиболее близкие позы в анимации, которые можно соединить, основываясь на близком угле наклона туловища, размещении ступней и положении рук. В загруженном файле захвата движения самые близкие точки, которые можно было бы назвать начальной и конечной точками цикла, находятся соответственно в кадрах 0 и 23 (рис. 8.16).



Расположите верхнюю часть тела так, чтобы betty начала вновь обретать равновесие для следующего выстрела



Расположите верхнюю часть тела так, чтобы Betty начала вновь обретать равновесие для следующего выстрела


Наконец вернитесь в кадр 45 и поверните голову вниз так, чтобы она смотрела вперед. Голова всегда будет опережать тело при подобном восстановлении, потому что глаза обычно смотрят вперед или на цель. Подвигайте ползунок шкалы времени и настройте голову так, чтобы она всегда отчасти смотрела вперед (рис. 8.84).

Настроив голову, сверните слои и исправьте ступни там, где они погружаются в пол в кадрах 35 и 40.



Голова всегда стремится повернуться вперед, чтобы глаза могли видеть цель



и 3ds max можно использовать



Резюме

В character studio и 3ds max можно использовать файлы захвата движения трех типов: в формате CSM, BVH или BIP. Близкое знакомство с первыми двумя типами необходимо только тем, кто профессионально занимается захватом движения, используя данные датчиков и другие калибровочные элементы. Аниматору же нужно главным образом знать, как в character studio преобразовывать форматы CSM и BVH в BIP. Это можно сделать с помощью окна Motion Capture Conversion Parameters, которое вызывается из свитка Motion Capture. Именно в этом окне можно сократить число ключей, составляющих файл захвата движения (по умолчанию ключи созданы для каждого кадра каждого трека анимации), или создать цикл простым повторением данных.

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

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

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



С помощью кнопки active time segment...



С помощью кнопки Active Time Segment начальный и конечный кадры задаются в соответствии с установками в окне Time Configuration


В качестве эксперимента загрузите файл Myrun.bip в окне Motion Capture Conversion Parameters. He используя режимы в списке Footstep Extraction (Извлечение следов), примените сокращение ключей. Снимите отметку с опции Loop, потому что она не нужна, также отмените выделение треков Body Horizontal, Body Vertical, Left Leg и Right Leg в разделе Key Reduction Settings (рис. 8.45).

Поэкспериментируйте со значениями Tolerance и Minimum Key Spacing и добавьте звенья Legs и Body в число объектов для сокращения ключей, чтобы посмотреть, нельзя ли еще больше сгладить анимацию.



Оптимизируйте верхнюю часть туловища во время анимации с помощью окна Motion Capture Conversion Parameters



С помощью кнопки collapse stack (свернуть стек) все анимационные слои сворачиваются



Рис. 8.39 С помощью кнопки Collapse Stack (Свернуть стек) все анимационные слои сворачиваются


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

Поворачивать объекты и звенья Biped при активной кнопке Auto Key можно только в системе координат Local (Локальная). Когда нужно будет переместить звено Biped после поворота, система координат может остаться локальной. В этом случае просто смените ее на систему координат View (Вид) - рис. 8.40.



Теперь можно посмотреть, как внесенные изменения отразились на анимации. Анимации хорошо просматривать, держа персонаж на виду, но при использовании режима In Place в исходном варианте при визуализации анимации в любом виде, кроме вида сбоку, ее воспроизведение не будет точным. Если вы хотите более точно просмотреть анимацию, снова включите для Biped режим In Place, но на этот раз выберите режим In Place Y (рис. 8.41).



С помощью кнопки define script можно установить связь между отрезками движений



С помощью кнопки Define Script можно установить связь между отрезками движений



С помощью кнопки restrict to zx...



Рис. 8.78 С помощью кнопки Restrict to ZX или Restrict to YZ можно определить ключи для обоих треков анимации Body Horizontal и Body Vertical для объекта СОМ


Если для перемещения по осям X, Y и Z вы используете трехгранник осей (axis tripod), то станет проще определить ключ для обоих треков. Просто переместите объект СОМ с помощью значка в углу трехгранника, что вызовет перемещение по двум осям одновременно (рис. 8.79).



С помощью кнопки show buffer можно просмотреть исходные данные захвата движения до сокращения числа ключевых кадров



Рис. 8.10 С помощью кнопки Show Buffer можно просмотреть исходные данные захвата движения до сокращения числа ключевых кадров



С помощью координат, определенных ранее, переместите betty обратно в нужное положение



С помощью координат, определенных ранее, переместите Betty обратно в нужное положение


Если при попытке расположить объект СОМ персонажа путем ввода значений координат в окне Move Type-In Transform ничего не происходит, щелкните по кнопке Body Horizontal или Body Vertical и попытайтесь снова.



Вызовите окно Track View и скопируйте столбец ключей из кадра 0 в кадры 1, 9, 10 и 30. Созданная таким образом «анимация» будет использоваться для временного фрагмента стрельбы, отвечающего за зарядку оружия, а в движении не будет заминки, обусловленной параметром Continuity (рис. 8.72).

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



Скопируйте ключи, чтобы создать неподвижную «анимацию», которая будет использоваться как фрагмент подзарядки оружия



С помощью редактора motion flow editor можно быстро трансформировать данные



Рис. 8.47 С помощью редактора Motion Flow Editor можно быстро трансформировать данные


Когда вы щелкаете по кнопке Motion Flow Mode - ничего не происходит, поскольку сначала нужно открыть файлы в редакторе с помощью окна Motion Flow Graph (Граф потока движения) и сценария Motion Flow Script (Сценарий потока движения). Представьте себе, что Motion Flow Editor (Редактор потока движений) - это отдельная программа внутри character studio. В ней можно объединять файлы в формате BIP и изменять их, создавая более длинные (или просто другие) анимации. Чтобы воспользоваться программой Motion Flow Editor, сначала нужно щелкнуть в свитке Motion Flow по кнопке Show Graph (Показать граф) - рис. 8.48.



Щелкнув по кнопке previous layer, просмотрите изменения, внесенные с помощью последнего слоя



Щелкнув по кнопке Previous Layer, просмотрите изменения, внесенные с помощью последнего слоя


Чтобы вернуться на слой анимации, щелкните по кнопке Next Layer (Следующий слой) с изображением стрелки, указывающей вверх, и сверните слой. Сохраните файл как Deathanim2.bip и переходите к последнему шагу преобразования имеющихся данных захвата движения в эффектную анимацию смерти.



Сначала сохраните файлы захвата движения в форматах bvh и csm как bip-файл без сокращения ключей



Рис. 8.6 Сначала сохраните файлы захвата движения в форматах BVH и CSM как BIP-файл без сокращения ключей


Сохраните файл как Shotdrop.bip и щелкните еще раз по кнопке Load Motion Capture File. Выберите в качестве типа файлов пункт Biped Files и загрузите только что сохраненный файл (рис. 8.7).



Создание анимации смерти



Создание анимации смерти



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



Создание циклического бега



Создание циклического бега



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



Создание движения стрельбы



Создание движения стрельбы



Поза скопирована, теперь нужно создать саму анимацию стрельбы из ружья. Закройте окно Track View, затем выделите и заморозьте все объекты сетки Betty. Активизируйте окно проекции Left, в поле Start Time окна Time Configuration введите значение 30 и щелкните по кнопке Auto Key - она станет активной и приобретет красный цвет. При изменении значения в поле Start Time вы автоматически должны оказаться в кадре 30, если этого не произошло, перейдите в кадр 30. По очереди выделите каждую ступню и заблокируйте ее с помощью кнопки Set Planted Key (из свитка Key Info). При блокировании каждой ступни снимите отметку с опции Join to Prev IK Key (рис. 8.73).



Сравнение отрезков цикла



Сравнение отрезков цикла



Теперь нужно решить, какой цикл выбрать, чтобы превратить его в плавную, улучшенную анимацию. Для этого внесите несколько изменений в каждый цикл и сравните их возможности. Измените параметры в окне Time Configuration: в поле Start Time введите значение 0, а в поле End Time - 25 (заметьте, что последний кадр не включен в диапазон, потому что он больше всего совпадает с первым). Затем откройте окно Track View и измените параметры фильтра, чтобы показывались только анимированные треки. Нажмите сочетание клавиш Alt+Ctrl+H, чтобы скопировать сцену во временный буфер (на всякий случай), затем выделите и удалите все ключи в кадрах 25 и 26. Скопируйте ключи из кадра 0 в кадр 26 (рис. 8.27).



Теперь персонаж смотрит в нужную сторону, он готов правильно умереть



Теперь персонаж смотрит в нужную сторону, он готов правильно умереть



Удаление кадров для усиления эффекта соударения



Удаление кадров для усиления эффекта соударения



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

Начните с первого удара, который наносится персонажу. Откройте окно Track View и удалите все ключи в кадрах 1, 2 и 4. Затем закройте промежуток, созданный удаленными ключевыми кадрами, выделив и переместив остальные влево (рис. 8.63).

Воспроизведите анимацию и посмотрите на результат удаления ключей. Затем то же самое проделайте с точкой, в которой персонаж ударяется о землю. Еще раз откройте окно Track View, выделите и удалите столбцы ключей в кадрах 40, 44, 47, 49 и 50 (рис. 8.64).

Прежде чем заполнять промежутки, оставленные удаленными ключами, изучите расположение ключей между выделенными столбцами. Удалив ключи, вы значительно увеличили ускорение падающего тела при ударе о землю. В точке удара удалены два кадра, за два кадра до этого удален один кадр, и за три кадра до этого удален еще один кадр, и наконец за четыре кадра до этого также удален один кадр. Удаление кадров 49 и 50 добавляет в движение идеальный эффект столкновения. Удаление других ключей, до кадра 49, обеспечивает постепенное увеличение скорости падения к концу движения.

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

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



Если удалить ключи и убрать промежутки, то начальный удар будет резче



Удалите последние два набора ключей



Удалите последние два набора ключей и скопируйте первый набор в кадр 26


Воспроизведите анимацию, чтобы посмотреть, как она выглядит. Теоретически копирование ключей первого кадра в конечный кадр цикла должно обеспечить плавный цикл. Однако, просматривая анимацию шаг за шагом, можно увидеть, что при переходе от последнего кадра цикла к первому происходит заминка. Кажется, что в конце цикла персонаж немного прихрамывает. Это указывает на то, что, возможно, для движения левой ступни широким, ровным шагом, которое описано в кадрах 1-10, 25 и 26 недостаточно кадров. Сравните: правая ступня проходит тот же диапазон движений из кадра 11 до кадра 24, то есть имеется 13 кадров перемещения левой ступни против 14 кадров правой. Заминка может быть вызвана этой разницей в продолжительности движения. В качестве эксперимента (взяв за основу второго цикла больший промежуток) попытайтесь увеличить цикл на один кадр.

Нажмите сочетание клавиш Alt+Ctrl+F, чтобы забрать сцену из временного буфера, или просто загрузите Looptestl.bip обратно в объект Biped. Снова откройте окно Track View, выделите все ключи и переместите их на один кадр вперед. Затем удалите ключи из кадров 1 и 26. Скопируйте ключи, находящиеся вне диапазона, из кадра 27 в кадр 0 (рис. 8.28).

Удерживая выпадающее графическое меню, щелкните по пиктограмме in place y



Удерживая выпадающее графическое меню, щелкните по пиктограмме In Place Y


Теперь персонаж будет слегка двигаться из стороны в сторону, перемещаясь по мере анимации бега, - важное вторичное движение для любого бега или ходьбы. Чтобы получить плавное воспроизведение анимации, в поле End Time окна Time Configuration введите значение 32 (рис. 8.42).

Последнее, что нужно сделать, настраивая анимацию, - вручную переместить объект Biped в начало координат. Режим In Place прекрасно подходит для внесения изменений и просмотра, а также для центрирования объекта Biped вручную - завершающего шага для создания циклических анимаций, таких как бег или ходьба. Выделите объект СОМ, выключите режим In Place и из кадра в кадр перемещайте Biped обратно к кадру 0 по оси Y, используя систему координат View. Безусловно, проще всего переместить объект Biped, вызвав окно Move Transform Type-In и введя значение 0 в поле Absolute:World (Абсолютная:Мировая) - рис. 8.43.



Удвоение цикла



Удвоение цикла



Выбрав хороший отрезок и приблизительно настроив его, чтобы он плавно замыкался, усовершенствуйте его с помощью окна Motion Capture Conversion Parameters. Щелкните по кнопке Load Motion Capture File и загрузите только что сохраненный файл Biped (он уже будет введен в список и выделен в поле File name (Имя файла)). Отметьте опцию Loop (Цикл) в разделе Load Frames (Загрузить кадры) и введите в это поле значение 1 (рис. 8.30).

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

Начальный и конечный кадры исходного цикла совпадали, поэтому в середине анимации есть двойные ключи. Откройте окно Track View, выделите все ключи в кадре 27 (или 28) и удалите их. Затем выделите ключи справа от удаленного столбца и перетащите (slide) их на один кадр влево. Измените значения начала и конца анимации на 0 и 54 соответственно и воспроизведите анимацию. Даже несмотря на то что в кадрах 0 и 54 ключи совпадают, анимация проигрывается плавно (рис. 8.31).



Уточнение цикла с использованием слоев



Уточнение цикла с использованием слоев



Чтобы сделать цикл еще более плавным, нужно внести в анимацию дополнительные уточнения. Сначала измените первый кадр цикла, чтобы он был больше похож на начало бега. Таким образом, когда персонаж остановится, а затем начнет бежать, движение не будет сильно зависеть от того, какая ступня впереди. Для этого в окне Time Configuration в поле Start Time введите значение 0, а в поле End Time - 31.

Затем определите первый фрагмент, который нужно настроить, посмотрев на траекторию объекта СОМ. Выключите режим In Place, щелкнув по соответствующей кнопке, и выделите объект Bip0l. Щелкните по нему правой кнопкой мыши, щелкните по пункту Properties (рис. 8.32, позиция 1) и отметьте опцию Trajectory (Траектория) - рис. 8.32, позиция 2.



В кадре 30 заблокируйте каждую ступню, сняв отметку с опции join to prev ik key



В кадре 30 заблокируйте каждую ступню, сняв отметку с опции Join to Prev IK Key


Еще раз откроите окно Track View и скопируйте столбец ключей из кадра 30 в кадр 35. Перейдите в кадр 35 и создайте позу Betty, которая изображает ее сразу после выстрела. При этом представьте, как вы сами держали бы ружье, подобно Betty, и время от времени стреляли. От выстрела вас дернет влево и назад. Левая рука от удара отбрасывается назад, туловище поворачивается влево, а голова наклоняется вперед и вниз. При определении положения левой руки Betty с оружием постарайтесь, чтобы она при смещении назад указывала вперед, а правую ладонь вынесите вперед, как будто Betty пытается сохранить равновесие (рис. 8.74).



Betty отклоняется назад под воздействием выстрела



В нескольких местах, например в кадре 164, движения немного отличаются друг от друга



В нескольких местах, например в кадре 164, движения немного отличаются друг от друга



В поле current frame отображается...



В поле Current Frame отображается номер текущего кадра, а если в это поле ввести какое-либо число, то анимация перейдет к кадру с введенным номером


Определить, какой отрезок анимации лучше для создания цикла, можно двумя способами: найти ближайшие позы начала и конца цикла или применить различные диапазоны анимации и воспроизвести варианты цикла. Чтобы найти наиболее похожие позы в начальной и конечной точках цикла, воспользуйтесь полем Current Frame (Текущий кадр), которое находится под кнопкой Time Configuration. Удалите сгруппированные копии звеньев Biped, убедитесь, что вы все еще находитесь в окне проекции Left и что активен режим сглаженного или граненого (faceted) затенения. Щелкните дважды по отображаемому числу или кадру, введите значение 36 и нажмите клавишу Enter (рис. 8.23).

Поле Current Frame становится выделенным (синим), когда в него вводится значение, - можно, не снимая пальцы с клавиатуры, вводить номера кадров. Чтобы найти точки цикла с наилучшим совпадением, просто вводите номера кадров, промежуток между которыми равен 26 кадрам, и сравнивайте позы. Если активен кадр 36, введите число 10, снова нажмите клавишу Enter - и текущим станет кадр 10, а поза изменится. Понимаете, как это работает? Теперь пройдитесь по анимации, начав с кадра 0, и вводите наборы номеров, которые представляют возможные крайние точки цикла: 0 и 26, 1 и 27, 2 и 28 и т.д.

С помощью этого метода можно выяснить, что лучше всего совпадают кадры 0 и 26 (А) и 11 и 38 (В), - рис. 8.24.



В режиме in place можно выбрать только ось x или y



В режиме In Place можно выбрать только ось X или Y


Затем перемещайтесь по анимации кадр за кадром, пока не дойдете до первого наилучшего совпадения с зафиксированным мгновенным начальным положением. Ближайший кадр, в котором повторяется мгновенная поза, - кадр 26. Так как снимок Biped сделан в кадре 0, то длина цикла равна примерно 27 кадрам (кадры 0-26) - рис. 8.22.



Включите для объекта biped режим in place, чтобы во время роботы он всегда был на одном месте



Включите для объекта Biped режим In Place, чтобы во время роботы он всегда был на одном месте



Включите опцию trajectory, чтобы увидеть траекторию объекта сом



Включите опцию Trajectory, чтобы увидеть траекторию объекта СОМ


Появится красная пунктирная кривая, соответствующая положению объекта СОМ при прохождении по анимации. И хотя линия обрывается в начале кадра 26, ее точки максимума и минимума можно увидеть. Разница высот этих точек по отношению друг к другу и вызывает одну из проблем с анимацией (рис. 8.33).



Внесение изменений с помощью функции set multiple keys



Внесение изменений с помощью функции Set Multiple Keys



Внести необходимые изменения в файл захвата движения можно не только с помощью слоев, но и используя функцию Set Multiple Keys1 (Установить несколько ключей)

Выберите только ключи для корректного добавления эффекта отдачи



Выберите только ключи для корректного добавления эффекта отдачи



Выбор формата файлов захвата движения



Выбор формата файлов захвата движения



Конечно, нельзя позволить себе записывать сессию захвата движения каждый раз, когда нужно анимировать персонаж. Иногда приходится работать с тем, что уже имеется, или с тем, что можно найти в свободном доступе в приличном виде. В студии House of Males существует огромная коллекция CSM-файлов для мужских и женских персонажей, к которым можно получить доступ как за деньги, так и через систему онлайнового доступа Diva. У студии Modern Uprising есть файлы BVH для мужских и женских персонажей, которые доступны по запросу.

Определяя, подходит вам файл захвата движения или нет, рассмотрите два фактора: качество и возможность его применения для ваших целей. Качество закладывается в момент съемки; вы полагаетесь на актера, на режиссера, затем на конечный результат, предоставляемый компанией после обработки и настройки файла. Остается только загрузить эти файлы в ваш объект Biped и посмотреть на результат. Файл либо хорошо подойдет для ваших целей, либо нет. Возможность применения зависит от длительности полученной анимации и их цикличности, так как персонажи игр в реальном времени должны бегать, прыгать, плавать и стрелять в бесконечно повторяемых циклах. Чтобы получить цикл, в движении должен быть отрезок, начальная и конечная позы которого похожи (или должна быть возможность создать достаточно близкие позы).

Анимация бега - один из лучших примеров для иллюстрации разницы между хорошими и плохими данными захвата движения.



Выделите и удалите ключи рядом с точкой удара о землю, чтобы усилить эффект



Выделите и удалите ключи рядом с точкой удара о землю, чтобы усилить эффект



Выравнивание правой ступни перемещением объекта сом



Выравнивание правой ступни перемещением объекта СОМ



Откройте свиток Layers и щелкните по кнопке Create Layer а, чтобы создать новый слой. Перейдите в окно проекции Front, включите кнопку Auto Key и выделите объект СОМ персонажа Betty. Убедитесь, что активна кнопка преобразований Select and Move, и примените команду Set Key для объекта СОМ в кадрах 35 и 100. Нужно, чтобы движения до и после отдачи совпадали. Перейдите в кадр 40 и переместите объект СОМ так, чтобы ступни выровнялись со снятым ранее мгновенным положением. Больше внимания уделите совпадению зеленой правой ступни, а не синей левой (когда персонаж отходит назад, вес перебрасывается на правую ступню) - рис. 8.77.



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



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



Загрузка анимации получения удара



Загрузка анимации получения удара



Щелкните по кнопке Load File в свитке Biped и загрузите в объект Biped файл Whacked.bip.

Чтобы удалить избыточные ключевые кадры, которые не нужны для анимации, откройте окно Track View. Затем выделите и удалите все ключи из кадров 0-69 и 120-135 (рис. 8.69).

Удаление большого числа ключевых кадров в окне Track View иногда может создать нехватку памяти и ресурсов процессора компьютера, а программа 3ds max может зависнуть. Тогда вместо удаления ключевых кадров сохраните нужную часть анимации с помощью опции Save Segment.