создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

Учебник по Flash MX

Включение в сцену нескольких анимированных объектов

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

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

Для начала рассмотрим простейший случай, когда требуется включить в сцену всего 2 анимированных объекта.

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

Итак, .для анимирования 2-х объектов, которые начинают и заканчивают двигаться одновременно, необходимо выполнить следующие действия (предполагается, что применяется tweened-анимация):

  1. Постройте в 1-й слое (Layer 7) анимационную последовательность для первого объекта (см. подраздел "Автоматическая анимация движения объекта").
  2. Добавьте 2-й слой, например, с именем Layer 2 (см. подраздел "Создание и удаление слоев") и создайте на нем объект, подлежащий анимированию; при этом Flash автоматически построит для этого слоя последовательность простых кадров, равную по длине первой анимированной последовательности (рис.9.27 а), как при создании фонового изображения.
  3. Щелкните правой кнопкой мыши в ячейке первого кадра слоя Layer 2 и выберите в контекстном меню команду Create Motion Tween; при этом между первым и последним кадром появится пунктирная линия (рис.9.27 б).
  4. Щелкните правой кнопкой мыши в ячейке последнего кадра слоя Layer 2 и выберите в контекстном меню команду Insert Keyframe; в результате пунктирная линия будет преобразована в линию со стрелкой (рис.9.27 в).
  5. Переместите объект в позицию, соответствующую последнему кадру анимации.

рис.9.27. Вид временной диаграммы при анимировании 2-х независимых объектов

Замечание

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

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

Процедуру согласования временных диаграмм рассмотрим на примере.

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

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

рис.9.28. Сцена с двумя взаимодействующими объектами

Если требуется сместить по времени движение 2-го объекта относительно движения первого, необходимо выполнить следующие действия:

  1. Установите указатель в любой точке анимированной последовательности слоя Layer 2, нажмите левую кнопку мыши и, не отпуская ее, сместите всю последовательность по временной диаграмме на требуемое количество кадров (рис.9.29).

рис.9.29. Смещение движения 2-го объекта во времени

а)

"пустые" кадры на временной диаграмме

б)

заполнение "пустых" кадров

рис.9.30. Восстановление видимости объектов

  1. В результате смещения образуются "пустые" кадры, на которых 2-й объект не виден до начала движения; в свою очередь, 1-й объект становится невидим после окончания движения (рис.9.30а); чтобы оба объекта были видны на всех кадрах, следует размножить 1-й кадр анимированной последовательности для 2-го объекта и последний кадр - для первого объекта (рис.9.30б); для размножения кадров может быть использована как команда Insert Frame, так и команда Insert Keyframe.

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

Назад | Содержание | Вперёд

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting