Настройка инверсной кинематики

Когда мы создаем иерархию объектов так, чтобы одни объекты (потомки) оказывались подобъектами других (предков), происходит их связка, которая осуществляется сверху вниз. Это значит, что при изменении, деформировании или анимации объектов-предков все эффекты передаются потомкам. Обратного действия не происходит, изменения объектов-потомков остаются локальными изменениями. В некоторых случаях такой тип связывания бывает полезным,. но его нельзя использовать для имитации цепочек костей, которые применяются для анимации живых существ. В этом случае перемещение одного объекта приводит к изменению всех связанных с ним объектов на основе их положений и свойств их суставов. Поэтому в таких случаях используется инверсная кинематика (Inverse Kinematics).

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

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

Как вы уже знаете, цепочки инверсной кинематики определяются с помощью костей, которые создаются с помощью инструмента Bone. Если вы выберете инструмент Inverse Kinematics, нажав на кнопку Use Inverse Kinematics Tool (Использовать инструмент инверсной кинематики) или вызвав команду Tools → Inverse Kinematics (Инструменты → Инверсная кинематика), рис. 5.24, то, перемещая любую из костей последовательности, вы увидите ее воздействие на остальные кости, связанные с ней.

http://samoucka.ru
Рис. 5.24. Для работы с цепочками костей в инверсной кинематике нажмите на кнопку Use Inverse Kinematics Tool

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

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

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

Для создания ограничения вращения используется тег Kinematic (Кинематика). Вы можете назначить ограничиваемому объекту этот тег двумя способами: щелкнув по нему правой кнопкой мыши в менеджере объектов и выбрав в контекстном меню Cinema 4d Tag → Kinematic (Тег Cinema 4d → Кинематика), или выделив объект и выбрав команду меню File → Cinema 4d Tag → Kinematic (Файл → Тег Cinema 4d → Кинематика). В результате в менеджере объектов справа от названия объекта появится значок, обозначающий тег кинематики.

Настройка тега осуществляется в группе параметров Tag (Тег) окна Attributes, которая открывается при щелчке мышью по значку тега – рис. 5.25. Здесь находятся три флажка Heading (Курс), Pitch (Тангаж) и Bank (Крен), соответствующие трем направлениям вращения в системе координат объекта. При установке флажка возле одного из них становятся доступными поля Minimum (Минимальный) и Maximum (Максимальный), позволяющие задать предельные углы для вращения объекта относительно выбранной оси.

http://samoucka.ru
Рис. 5.25. Настройки тега Kinematic