Считайте свой персонаж гибкой массой, поскольку и люди не являются "жесткими конструкциями". Поэтому искажение персонажа сделает его более динамичным и акцентирует движения. Принцип сжатия и растяжения является основной методикой отображения веса персонажа.
Сжатое положение позволяет отобразить сплющивание фигуры в результате действия силы тяжести, инерции или соприкосновения тела с каким-то другим объектом, например со стеной. С его помощью можно отобразить общее сжатие объекта, подобно гармошке. Кроме того, при движении персонаж растягивается и таким образом искажается.
Принцип сжатия и растяжения можно также применить при анимации выражений лица. Глаза могут быть широко открытыми или, наоборот, сощуренными в щелочки. Положение рта может изменяться от широко открытого до плотно сжатых губ. Общее выражение лица может меняться от выражения злости до полного умиротворения.
Простой пример действия принципа сжатия и растяжения можно продемонстрироватьнапримере мешка, наполовину заполненного мукой. Посмотрите на рис. 12.1 и 12.2, а также обратитесь к файлам CD 12-1-NoSquash&StretchSack и CD12-2Squash&Stretch-Sack в папке Chapterl2Files/Squash&StretchMovies на компакт-диске. При падении мешок растягивается, а при ударе о землю — сжимается. Когда мешок переворачивается под действием силы удара, он немного растягивается.
В примере анимации без применения принципа сжатия и растяжения мешок выглядит очень жестким и неестественным, а при использовании данного принципа он кажется более выразительным и реалистичным. Кроме того, в последнем случае создается впечатление, что мешок имеет вес и массу, тогда как без применения принципа сжатия и растяжения он кажется неестественной субстанцией.

Рис. 12.1. Изображения, взятые из примера анимации мешка муки, без применения принципа сжатия и растяжения
Способы создания эффекта сжатия и растяжения
Способ 1: динамика мягкого тела. Если ваша программа поддерживает функцию динамики мягких тел, то, применив принцип сжатия и растяжения, вы сможете создать очень интересные примеры анимации. В частности, динамика мягких тел используется при анимации мешка с мукой. Сначала создается целевой объект полотняного мешка (модель упругого тела, на которое воздействуют другие целевые объекты или объекты столкновения). В мешок помещается объект, выполняющий роль муки. Для него задаются свойства неподвижного объекта (тела, которое остается стабильным). Кроме того, неподвижный объект функционирует как объект столкновения. Его геометрия была задана как невидимая камерой. Как еще один объект столкновения добавляется пол (рис. 12.3).
Объект мешка является головным для невидимого объекта муки. В верхней точке при соприкосновении с землей и при перекатывании объект муки заключается в ключевой кадр. Гибкий мешок повторяет движения муки, а динамика мягких тел учитывает действия и столкновения объекта муки и объекта пола.

Рис. 12.2. Изображения, взятые из примера анимации мешка муки, с применением принципа сжатия и растяжения

Рис. 12.3. Настройка динамики мягких тел для мешка с мукой
Способ 2: настройка вручную. Воздействие веса и эффект отскока можно показать с помощью морфических объектов, которые при анимации позволяют либо сделать персонаж более длинным и припавшим к земле, либо растянуть кости его скелета. Самым простым способом является простое растяжение и сжатие всего тела при выполнении определенных движений.
На рис. 12.4 и в папке Chapter 12Files на компакт-диске приведены изображения и примеры анимации с использованием принципа сжатия и растяжения применительно к персонажу человека. Когда толстый мужчина подпрыгивает, его тело удлиняется, а когда он приземляется на землю, тело сжимается. Эти эффекты усиливаются за счет вторичных движений, например подрагивания живота.

Рис. 12.4. Изображения с применением принципа сжатия и растяжения