Перенос баз данных с одного SQL Server на другой Изменения в системе защиты SQL Server Новые средства разработки Новые элементы программирования на языке Visual Basic Редактирование и анализ данных с помощью запросов

Компьютерная анимация Компьютерная анимация


Скелет и деформация каркаса

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

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

Иерархические цепочки и анимация персонажа

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

Манипулирование иерархическими цепочками

При манипуляции иерархическими цепочками в результате движения элементов-предков перемещаются элементы-потомки. Такой способ движения называется прямой кинематикой. При использовании инверсной (или обратной) кинематики происходит обратное: потомки приводят в движе-. ние родительские элементы. Данный способ также будет рассмотрен в этой главе.

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

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

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

Рис. 6.1 Базовая иерархия элементов модели человеческого тела случае, вероятно, проще исключить эти объекты из общей иерархической цепочки.

Дизайн, инженерная и Web графика