Nival Interactive - Интервью о технологии LSHead.
Автор: Эва Рухина
На вопросы отвечает Дмитрий Захаров, руководитель проекта "Операция Silent Storm" компании Nival Interactive.
[tr=code]Что за технология LSHEAD, которую вы используете в Silent Storm?[trtd]
LifeStudio: Head от компании Life Mode Interactive, полнофункциональный программный пакет для анимирования голов персонажей, наложения эмоций и синхронизации движения губ с речью и диалогами (lipsynch). В ходе разработки игры Silent Storm технология LSHead сэкономила нам много времени и значительно облегчила процесс генерации внешности наших героев.
[tr=code]Что такое нелинейная анимация лиц?[trtd]
Нелинейность заключается в следующем: художники заранее создают idle анимации лиц и анимации эмоций. Эмоция (выражение лица) может быть сопоставлена по фразе, которую произносит персонаж, или по какому-нибудь действию. Анимации lipsync генерятся автоматически. Во время игры играются idle анимации, которые выбираются случайным образом. Когда персонаж произносит какую-то фразу, играется одновременно анимация lipsync и анимация эмоции (смешиваются). Другими словами, пока персонаж ничего не делает, он может щуриться, улыбаться или внимательно проверять свое оружие. Как только он начинает диалог с NPC, он подкрепляет свою речь соответствующей мимикой - движением губ, подмигиванием или другими движениями лица, которые подчеркивают его отношение к сказанному.
[tr=code]Сколько одновременно анимированных голов может быть на экране компьютера с минимальными требованиями, на которые рассчитана игра? Насколько нагружен процессор и сколько съедает ресурсов анимация в игре? [trtd]
Точно не измерялось, но то количество голов, которое сейчас в среднем используется в игре отнимает довольно мало процессорного времени и проблем с производительностью из-за этих анимаций у нас не было никаких.
[tr=code]Как устроен ваш редактор персонажей? Возможен ли обмен персонажами между разными игроками? Какие другие варианты автоматического липсинка вы рассматривали?
Как работает пакетный липсинк? Он может сохранять файлы под нужными именами? Поддерживается ли липсинк для разных языков? [trtd]
Редактор персонажей позволяет по своему желанию модифицировать и полностью менять внешний облик главного героя. Сначала вы выбираете пол, профессию и сторону, на которой будет воевать персонаж, после чего переходите непосредственно в меню конфигурации внешности. Здесь вы можете подобрать одежду и приступить к тонкой настройке головы и черт лица, включая такие параметры, как возраст, цвет глаз, форма и толщина губ, ширина и расположение бровей, прическа и цвет волос, форма подбородка, носа и челюсти. К слову, выбор внешности напоминает процесс создания трехмерного фоторобота и позволяет добиться значительного сходства с игроком.
Липсинк работает следующим образом: на вход утилите wav2mms подается входной wav файл и указывается выходной файл с анимацией. Существует даже возможность обрабатывать сразу целые директории wav-файлов этой утилитой. Причем, липсинк поддерживается для разных языков, включая и русский.
[tr=code]Как осуществляется позиционирование текстуры на лице? [trtd]
Очень просто - есть шаблон, которому должна соответствовать текстура головы. Т.е., например, художник рисует по координатам в одной области текстуры глаз, в другой области зубы и т.д., а потом совмещает текстуру с моделью головы.
[tr=code]Как синхронизируется движение головы и движение тела? [trtd]
В скелете персонажа есть кость, соответствующая положению головы. Во время движения персонажа мы берем положение этой кости и вешаем туда голову. По командам ИИ персонаж в нужный момент пригибает, поворачивает или наклоняет голову синхронно с соответствующей анимацией тела.
[tr=code]Встречались ли вы с какими-то непредвиденными сложностями, во время разработки? Как вы с ними справились? [trtd]
Каких то серьезных проблем при работе с LSHead у нас не возникало. Программа практически не требовала дополнительной настройки и отлично справлялась со своими задачами.
[tr=code]Много ли вам пришлось переделывать под себя? Анимация лиц в каких играх вам нравится? Или ваша - самая лучшая? Какие еще новые технологии вы использовали в SS? [trtd]
Нам практически не пришлось ничего переделывать, мы использовали LSHead под конкретные задачи, для которых он и был предназначен. Из других технологий, использованных в Silent Storm можно отметить скелетную систему анимации с использованием инверсной кинематики, сглаживания и учетом массы тел: программный просчет движений персонажей в зависимости от окружающих объектов и ландшафта в реальном времени, поточечные тени, основанные на картах глубины, реалистичный просчет блеска неоднородных поверхностей, реалистично изменяющиеся отражения и прозрачные поверхности, 3D звук с поддержкой технологии Dolby Surround 5.1, позволяющий определить расстояние до стреляющего и его месторасположение по звуку выстрела.
Эва Рухина
Компания LifeMode
http://www.lifemi.com/
9 августа 2003