Использование Facial Editor

Материал из CryWiki Russia

Версия от 14:20, 3 октября 2011; DCamer (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Содержание

Использование Facial Editor

Введение

Этот документ описывает начальный процесс создания головы в Facial Editor, и определение её выражений. Кроме того, он описывает настройку джойстика для более удобного создания анимаций.

Настройка головы

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

Первое что надо сделать, это загрузить персонажа в Facial Editor с помощью команды Character > Load в панели основных команд Facial Editor.

Sandbox FacialEditorRefUse image001.jpg

В окне Effectors Sliders находятся основные видимые морфы, которые были экспортированы из 3D-пакета.

Sandbox FacialEditorRefUse image002.jpg

В данном примере у нас два морфа; Brow_lowerer, и Jaw_dropper_01.

Не имеет значения, загрузите ли вы только голову персонажа, или же CDF-файл, в котором голова персонажа присоединена к нему, как кожное прикрепление.

Создание библиотеки выражений

В окне Expression Explorer также показаны два доступного морфа. В верхней панели Expression Explorer, вы можете заметить, что у файла Expression Library уже есть имя, которое он автоматически получил при загрузки персонажа. Заметьте, данный файл в данный момент существует лишь в памяти, и его надо сохранить на жестком диске. Это можно сделать с помощью команды Expression Library->Save as…

Sandbox FacialEditorRefUse image003.jpg

Для поддержания структуры библиотеки в чистоте, мы можем раскидать различные выражения по папкам. Чтобы создать таковую, щелкните правой кнопкой мыши по папке «root», которая по-умолчанию создаётся для каждого персонажа, и выберите «New Folder».

Sandbox FacialEditorRefUse image004.jpg

Sandbox FacialEditorRefUse image005.jpg

Введите желаемое имя в текстовом поле и нажмите «OK».

Щелчок правой кнопкой мыши по созданной папке, даст вам возможность создать новое выражение.

Sandbox FacialEditorRefUse image006.jpg

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

Для того, чтобы добавить морфы, определяющие выражение, переключиться на вид Effectors Sliders, и задайте ползунками из Morph Targets соответствующие значения. Чтобы начать с нуля, вы можете нажать кнопку «Clear All» в основной панели окна Effectors Sliders.

Sandbox FacialEditorRefUse image007.jpg
После завершения, щелкните правой кнопкой мыши по новому выражению в окне Expression Library, выберите «Initialize From Sliders» и подтвердите действие, нажав «Yes». Это действие добавит морфы, имеют значение отличное от нуля под узлом выражения.

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

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

Sandbox FacialEditorRefUse image008.jpg

Фиолетовая линия представляет «нулевое» значение, когда выражение анимировано в окне последовательности, оная подходит к «1» на правой стороне или к «-1» на левой стороне. В примере, приведенном выше, «jaw_dropper_01» будет иметь сильное влияние на ключевом значение «0.5» в окне последовательности, и возвращаться к 50 %, если выражение имеет ключевое значение «1».

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

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

CAL-файл для каждой головы должен быть сохранён в той же папке, где находится голова персонажа. Она содержит относительный путь от каталога игры до файла библиотеки выражений.

head.cal
$facelib = objects/characters/human_male/sdk_example_head.fxl

Окно последовательности (Sequence View)

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

Sandbox FacialEditorRefUse image009.jpg

Выделив своё выражение в окне Expression Library, а затем щелкнув правой кнопкой мыши по одной из папок в окне последовательности, вы можете использовать команду «Add Selected Expression», чтобы добавить выражение в эту папку.

Sandbox FacialEditorRefUse image010.jpg

Теперь можно приступать к анимированию выражений, которые вы добавили, помещая ключи на его кривую, либо дважды щелкнув по нему или же с помощью быстрой клавиши «R», чтобы поставить ключ в положение ползунка на шкале времени. Структура и анимационные кривые из окна последовательности сохраняются вместе в файле последовательности. Чтобы сохранить, выберите команду Sequence->Save as…, в основной панели Facial Editor.

Facial Editor также поддерживает костную (скелетную) анимацию. Если CDF-персонажа присутствуют кости для поворота головы или глаз, то вы также можете настроить их в Facial Editor чтобы контролировать и анимировать с помощью кривых и джойстиков.

Чтобы их настроить, перейдите в Expression Library, и щелкните правой кнопкой мыши по папке, и выберите «New Bone Control».

Sandbox FacialEditorRefUse image011.jpg

Выбрав только что созданный контроллёр костей, вы увидите его настройка в правой части окна Expression Library. В выпадающем списке, рядом с «Attachment/Bone», вы можете выбрать, какой костью управляет выражение. В настройках ниже Position и Rotation, вы можете определить сдвиг для прикреплений и осей, а также ограничения, какие кости выражение может поворачивать.

Настройка джойстика

Еще один удобный метод анимирования выражений — это джойстики. После добавления выражений в окне последовательности, вы можете перейти в окно Joysticks, и настроить джойстики, чтобы контролировать их значения. Нажатие «Edit Layout» в верхнем левом углу окна, переведёт Вас в режим редактирования, так вы сможете создать новый контроллёр, щелкнув правой кнопкой мыши в пустом месте окна. Пока вы находитесь в режиме «Edit Layout», вы можете изменить форму шаблонов, перетаскивая их по бокам или углам, и свободно упорядочивая их в окне. Щелчок правой кнопкой мыши по шаблону, даёт Вам различные варианты для изменения внешнего вида контроллёра, такие как название, цвет и так далее.

Sandbox FacialEditorRefUse image012.jpg

Чтобы активировать джойстик, выберите выражение, которое он должен контролировать в окне последовательности, щелкните правую кнопку мыши по пустому шаблону в окне Joystick и выберите «Set Horizontal/Vertical Joystick Channel» чтобы определить, какие оси нужно анимировать у выражения.

Sandbox FacialEditorRefUse image013.jpg

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

После сохранения настроек джойстика, через пункт Joysticks → Save as… в основной панели инструментов, убедитесь, что вы сохранили последовательность, потому что файл настройки джойстика упоминается в файле последовательности, так что сохраняется связанность с выражениями в окне последовательности.

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