Guild Wars 2: Чак Джекмен «Обновления в диалог-сценах»
Здравствуйте! Меня зовут Чак Джекмен. В Guild Wars 2 я отвечаю за технологию «motion capture» и анимацию в диалог-сценах и я пишу эти строки для того, чтобы вы смогли заглянуть за кулисы и увидеть, как происходит процесс анимации. Что конкретно такое диалог-сценах? Рад, что вы спросили. Если вы играли в демо-версию Guild Wars 2, то видели короткие ролики, в которых участвовал сюжетный НПС и ваш игровой персонаж. Это и есть диалог-сцены.
До сих пор вы видели лишь прототип роликов. Потому что в ArenaNet очень глубоко внедрен процесс разработки многократного тестирования и переделки. Этот способ позволяет разработчикам изменять содержимое игры на разных стадиях готовности проекта. Он дает возможность взглянуть, что где не так работает, а затем попутно отладить, улучшить этот момент. Такой подход к разработке игры принес пользу диалог-сценам. Сценаристы и дизайнеры уже могли понять в каком направлении двигать сюжет, и какие стоило создать события, в то время как наша команда определяла чего хотим добиться в визуальном плане. Время также давало нам возможность улучшить технические средства и овладеть ими.
Как только началась разработка Guild Wars 2, разработчики уже знали, что хотят подать сюжет через большее количество видеороликов, чем в первой Guild Wars. На раннем этапе было принято решение, что в игре будет присутствовать три вида видеороликов.
1й тип – эти видеоролики от начала и до конца в стиле кино (Full Cinematics). Они характеризуются большой насыщенностью действий. Как пример, разрушение Аскалона, исторические моменты нападений драконов. Такие видеоролики рисует удивительно одаренная команда людей, которая произвела на свет те красивые трейлеры, которые вы уже лицезрели. Затем ролики обрабатываются в нашей собственноручно написанной программе Cameo. Таким образом, сплетаются воедино техника рисования в 2-D и 3-D и анимация.
2й тип – это непосредственно сюжетные моменты. Все перипетии, поворотные ходы и разговоры, встречающиеся по ходу развития истории вашего персонажа. Такой тип видеороликов не рендерится заранее. Они расставлены там, где для понимания нужно подать сюжет, а не экшен. Этот вид и есть диалог-сцены.
3-й последний тип называется «Видеовставки»(scenes). Видеовставки представляют собой текст, проговариваемый НПС. Обычно эти ролики дают информацию и указания. Изредка рассказываются сюжетные детали.
Наша команда понимала, что в Guild Wars 2 будет больше разговоров в стиле видеороликов, чем у первой Guild Wars. Однако, нам хотелось больше качества в тех временных версиях, которые уже были созданы. В Прототипах двое персонажей стояли друг напротив друга. Они были анимированы минимально, и анимация проигрывалась случайным образом. Синхронизация губ персонажей с речью была очень условной. Движения губ напоминали скорее клюв утконоса, а не человеческий рот. Так было из-за того, что работ над анимацией как таковой не было совсем. Включили только автоматическую анимацию открытия-закрытия рта. Эти основы и послужили прототипом анимации разговора.
Конечно, такое положение дел не давало персонажам выразить все те красивые и реалистичные эмоции, которых разработчики желали показать. Также невозможным оказалось включить анимацию жестов персонажей, которыми они могли пользоваться в идеальных случаях при разговоре, так как анимация была полностью «деревянной».
Необходимо было уникальное решение, которые позволяло бы использовать и запускать заново цикл анимации из запасника и сюжетных видеовставок со всей игры так, чтобы анимация не казалась избитой и заезженной. Поэтому наша команда встретилась с несколькими техническими художниками, программистами, дизайнерами и сценаристами и пришла к выводу, чего мы хотим и как этого достичь. После нескольких экспериментов, разработчики решили использовать подход наложения слоев в системах анимации диалог-сцены, «motion capture», ручной анимации, аддитивной анимации, а также очень сложной программе по синхронизации губ с речью.
Как только план по введению слоев был разработан, солнце и звезды скрылись с небес, затем туман накрыл офис. Начался шторм, молнии осветили тьму. Разработчики зажгли ритуальные свечи и передали запрос команде по разработке софта. Они, в свою очередь, воспользовались своей самой темной и зловещей магией и изъяли необходимый код из умов древних богов. Программисты заключили код в благословенный набор программ и подарили нам возможность воплотить в реальность наши коварные…эм, нужды для создания диалог-сцен.
Новые возможности в программах позволили создать базу анимационных движений, которые остаются постоянными, основаны на эмоциональном состоянии персонажа, но еще дают разработчикам возможность наложить слои в виде жестов и выражений лиц. Гибкость аддитивной анимации позволяет создать небольшие, быстрые анимационные движения, которые можно добавить или снять с любой другой простой анимации, которая уже используется. К примеру, возьмем анимацию «пожать плечами», ее можно добавить к персонажу, находящемуся в уверенной позе и анимация будет произведена правильно. Можно также задействовать ту же анимацию «пожать плечами» на персонаже уже анимированном, как рассерженный, но все будет выглядеть и работать просто прекрасно.
Разработчики также задействует подход наслоения и аддитивной анимации на лицах, что позволяет анимировать настроение или редактировать «простую анимацию лица» или добавить слой к анимации губ. Затем можно добавить слой выражений лица в нужное время во время разговора персонажей. Например, персонажа можно заставить выглядеть испуганным или застенчивым во время разговора. Возможно, потом произойдет что-то, что должно напугать обоих персонажей. Разработчики добавляют анимацию вздрагивания на лицо, тело или туда и туда. Размещают анимацию в необходимом отрезке времени и персонажи реагируют соответствующе на то, что должно напугать их в видеовставке.
Ниже краткий обзор, как разработчики создают диалог-сцены:
После того как закончена работа над озвучкой, а команда разработчиков по работе со звуком применила свою магию вуду, я проигрываю диалог-сцену несколько раз, чтобы понять эмоциональное состояние персонажа и определить моменты, когда можно добавить жесты, усиливающие внимание в определенных моментах диалога. Затем я беру свои записи и направляюсь в комнату, где мы играем с «motion capture», чтобы встретиться с главой отдела по анимации Героном Прайором и другим парнем из этого отдела – Игорем. Ой, я хотел сказать Андреем. Мы надеваем на выбранных жертв броню «motion capture» и заставляем их скакать и прыгать под нашу дудку пока они не сыграют как должно или не падут духом, оставив нас в разочаровании.
Разработчики используют собственный подход к технологии снятия «motion capture», возможно, немного отличающийся от того, что использовало большинство студий. Мы пользуемся системой захвата движений менее завязанной на камере и называющейся Xsens MVN system. Она состоит из костюма с кучей маленьких сенсоров, которые улавливают постоянные движения тела, инерцию, а затем передают информацию на компьютер. Система такого рода дает разработчикам много гибкости в работе, потому что такой «motion capture» можно использовать не только внутри студии, но и за пределами.
После того как сканирование движение закончится, я, либо один из аниматоров загружает данные в программу Motion Builder. Затем мы проводим экстенсивную очистку от неверных движений, переделываем некоторые позы, а потом отправляем все данные в программу Maya, где анимация будет еще раз отлажена и приведена в идеальное состояние. Так появляются на свет «простые» движения или основа анимации для эмоций персонажей. Представьте себе это как язык тела или всевозможные позы и движения человеческого тела. Разработчики приступают к созданию жестов, когда готовы слои с простыми движениями. При этом используется «motion capture» и анимация, отрисованная вручную. После этого мы с Героном отсматриваем анимацию, чтобы определить куда, если нужно, следует добавить еще движений. Эти мы создаем при помощи традиционной техники ручной анимации.
Давайте посмотрим на пример диалог-сцен в Guild Wars 2:
Если вы посмотрели диалог-сцену между игроком и жрицей Двайны в видео, размещенном выше, то увидели пример анимации: персонаж трет голову или озадаченный взгляд. Изначально вся эта анимация – смесь простых слоев нейтральных эмоций. Движения рукой, которые жрица Двайны проделывает во время разговора с персонажем игрока и есть те маленькие жесты, которые добавляются к простым движениям.
В то время как аниматоры занимаются эмоциями и выражениями лица, синхронизация губ с речью происходит при наличии окончательных вариантов аудио-файлов и тексте от сценаристов в программе FaceFX. В этой программе соединяется речь с движениями губ лица, созданного работниками анимационной команды. Как только работа над всеми аспектами анимации завершается, разрозненные кусочки собираются воедино и накладываются слоями в диалог-сцене. Что-то улучшается, полируется, изменяется, пока разработчиков не устроит результат.
Синхронизация губ с речью – не единственная работа, которая проходит над лицами. Мы также работаем над выражениями и эмоциями лиц. Работа похожа на создание движений тела и жестов, которое описано выше. Однако, главная разница заключается в том, что лицевые движения можно задействовать, как слой на теле персонажа, что дает возможность немного хитрить и повторять движения.
Например, в сцене с разъяренным персонажем, наверняка, вы задействуете на теле и лице анимацию, выражающую агрессию. Если в сцене должен быть суровый персонаж, то непосредственно для него у разработчиков не найдется анимации «суровости», но мы соединим анимацию уверенности, выражающуюся в позе персонажа с насупленными бровями. Придадим лицу злое выражения посредством сдвига мимических углов для того, чтобы отобразить эмоциональное состояние.
Давайте рассмотрим другую диалог-сцену, чтобы увидеть своими глазами описанные улучшения в анимации:
Что ж, все вместе – это и есть процесс анимирования. Если сказать прямо, «короткого» обзора процесса не получилось. Тем не менее, надеюсь, вам понравилось описание диалог-сцен так же, как мне нравится создавать их. Не болейте и, надеюсь увидеть вас в игре!