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

Рис. 9.12. Использование прямой кинематики для того, чтобы конечная точка похожей на руку костяной иерархии "прикоснулась" к определенной точке, требу ein индивидуальной настройки каждой кости, а зачастую и нескольких попыток для достижения желаемого результата
Подобный метод анимации чаще всего применяется для механических устройств, которые работают по принципу, отражающему главную концепцию прямой кинематики — "это перемещает то". Для анимации персонажей, например ходьбы, прямую кинематику лучше не использовать, поскольку в первую очередь перемещается тело персонажа, после чего все конечности настраиваются на расположение в новом месте. В результате, проявляется эффект скольжения (skating), при котором ноги персонажа скользят по поверхности, вместо того, чтобы быть неподвижными. Управление движениями рук в прямой кинематике также проходит не совсем благополучно. Например, если при анимации руки персонаж должен прикоснуться пальцем к объекту, то сперва нужно настроить основной объект (плечо), затем предплечье, запястье и, наконец, сам палец (см. рис. 9.12). Все эти операции трудно выполнить, они не очень точны и требуют немало исправлений и корректировок.
Обратная кинематика (inverse kinematics) — это метод управления взаимосвязанными объектами путем перемещения самого дальнего конца цепи и последующего согласования этого движения с остальными элементами, что немного напоминает "хвост, виляющий собакой". Обратная кинематика позволяет перенести палец персонажа непосредственно к объекту, а запястье, рука и даже остальные части тела автоматически сгибаются и слаженно модифицируются для достижения реалистичного эффекта (рис. 9.13).

Рис. 9.13. Обратная кинематика позволяет пользователю перемещать конец той же, похожей на руку, костяной иерархии прямо к желаемой точке — для предотвращения распада цепи кости автоматически повернутся в нужном направлении
Обратная кинематика упрощает анимирование персонажей, поскольку пользователь может сосредоточиться на окончательном местоположении рук и ног, а не настраивать все тело для того, чтобы конечности адекватно перемещались в нужную область пространства. Кроме того, так как движение конечностей при их изменениистановится более натуральным и затрагивает большую часть тела, обратная кинематика осуществляет львиную долю анимации. В результате, пользователю уже не придется корпеть над объектами, пытаясь заставить их перемещаться свободно и естественно. Тем не менее, в этом заключается и недостаток обратной кинематики, так как тело изменяется самостоятельно и не реагирует уже так точно на команды. Зачастую при анимировании объектов приходится использовать как прямую, так и обратную кинематику.
Данный вид кинематики можно использовать с любым нормально соединенным объектом, включая персонажи с сочленениями конечностей и скелеты (см. далее). Как правило, обратная кинематика имеет шесть степеней свободы перемещения (скольжение и смещение по трем осям), что предоставляет неограниченные возможности для анимации, однако некоторые оси придется время от времени блокировать с целью придать движениям персонажа большей естественности (например, чтобы локти не сгибались в обратном направлении).
⇐Создание трехмерных персонажей: интервью с Эриком Рони || Оглавление || Морфинг⇒