Простая анимация сеточных моделей
Прямая и обратная кинематика
На рисунке 9.56 показана арматура моделирования руки человека. Кости А, Б и В управляют соответственно плечом, предплечьем и кистью персонажа.
Рис. 9.56
Обычно в модели эти кости связаны отношениями «родитель — потомок»: кость А — это родитель для Б, а Б — родитель для В. Перемещение родителя приводит к перемещению всех потомков, т. е. при перемещении кости А кости Б и В перемещаются вслед за ней. Такая связь называется прямой кинематикой (англ. forward kinematics).
В некоторых случаях прямая кинематика затрудняет построение анимации. Например, пусть персонажу нужно взять что-то в руку. При этом мы знаем точно положение кисти В, тогда как положения остальных костей (А и Б) должны измениться соответственно, чтобы сохранилась связь в цепочке костей. Это значит, что перемещение кости В приводит к согласованному перемещению костей А и Б. Такая связь называется обратной кинематикой (англ. inverse kinematics), потому что движение передается в обратную сторону.
Для построения связи «обратная кинематика» на кость Б нужно наложить ограничение Обратная кинематика (Inverse kinematics). В Blender для этого используется специальная страница свойств Ограничения кости (Bone constraints), которая открывается в режиме просмотра Режим позы (Pose mode). В параметрах этого ограничения нужно указать длину цепочки костей, на которую действует ограничение (параметр Chain length, длина цепи). В рассмотренном случае длина цепочки равна 2 (кости А и Б). Отметим, что в Blender кость В не должна быть связана ни с какой родительской костью.
Следующая страница Физические явления