Перетащите мышью сплайн из окна Objects в открытый редактор XPresso Editor. Для выходного порта появившегося узла задайте значения пользовательских данных соответствующей руки.
Затем перетащите в выражение два дескриптора PoseMixer этой руки. Для входных портов этих узлов укажите значения морфинга.
Эти порты будут напрямую соединены с выходным портом сплайнового узла, содержащим пользовательские данные для сжатой ладони (см. рис. 4.88).
Перетащите мышью в выражение объект Joint руки и активизируйте входной порт для вращения с углами Р и В.
Убедитесь, что данные порты задействованы для локального, а не глобального вращения. Для этого свяжите их с пользовательскими значениями, соответствующими вращению кисти и предплечья, через два узла Range Mapper.
Напомним, что для создания узла Range Mapper необходимо щелкнуть правой кнопкой мыши в окне XPresso Editor и выбрать команду Range Mapper в контекстном подменю New Node • Xpresso • Calculate.
Соедините порт пользовательских данных для вращения предплечья относительно продольной оси со входным портом узла Range Mapper, а выходной порт этого узла - со входным портом В-вра-щения.
Для узла Range Mapper должен быть установлен входной диапазон от -1 до 1, поскольку в выражениях XPresso пользовательское значение 100% интерпретируется как 1,0.
Выходной диапазон узла Range Mapper зависит от уровня подвижности, разрешенного для предплечья и кисти. Напоминаем, что в данном случае выходные значения - это углы, выраженные в радианах.
Подобным же образом установите пользовательское значение для вертикальных движений кисти и Р-вращения ее сустава.
Затем необходимо создать отдельное выражение для другой руки и ее Пользовательских данных, чтобы обе руки могли участвовать в анимации независимо друг от друга. Таким образом можно управлять и другими свойствами рук.
Кроме того, добавьте бегунки для наклона головы и открытия рта путем вращения сустава челюсти (рис. 4.89).
Как было отмечено выше, пользовательские данные можно сохранять в виде ключевых кадров, а значит их можно задействовать в анимации, щелкая мышью на окружностях слева от названия параметра при нажатой клавише <Ctrl>.
Конечно же, все эти изменения параметров и повороты суставов можно осуществить непосредственно в объектах с последующим сохранением изменений в ключевых кадрах. Это избавляет от необходимости просматривать всю иерархию в поисках требуемых объектов или дескрипторов.
Рис. 4.89. Дополнительные пользовательские данные На этом подготовка персонажа к созданию анимации завершена. Теперь можно подчинить все внешние вспомогательные объекты сплайну позвоночника, чтобы упорядочить иерархию в окне Objects. На верхнем уровне иерархии должны остаться только две группы с целевыми объектами ступней (рис. 4.90).
Рис. 4.90. Окончательный вид иерархии Благодаря этому, наш персонаж может сгибать колени, если сплайновый объект потянуть вниз, но в то же врамя ступни останутся неподвижными на виртуальном полу.
На этом глава завершена. На рис. 4.9)1 показаны несколько возможных поз персонажа, которые стали возможны, благодаря проделанной подготовительной работе. И для того чтобы создать их требуется всего лишь несколько простых операций!