Учебник по Flash MX
Включение в сцену нескольких анимированных объектов
Во всех рассмотренных выше примерах анимации на сцене перемещался или изменял форму только 1 объект. Очевидно, что для привлечения интереса зрителей и повышения "реалистичности" многих фильмов 1 персонажа недостаточно.
При описании общих принципов применения слоев было отмечено, что 1 из их достоинств - возможность анимации нескольких объектов сцены. Чтобы правильно использовать такую возможность, необходимо учитывать ряд факторов, к описанию которых мы и переходим.
Для начала рассмотрим простейший случай, когда требуется включить в сцену всего 2 анимированных объекта.
Если они "по сюжету" фильма никак не взаимодействуют друг с другом, то все достаточно очевидно - требуется разместить каждый объект в отдельном слое и анимировать его. И хотя при этом 1 из них, возможно, будут периодически заслонять другой, никаких дополнительных манипуляций с временной диаграммой слоев не требуется.
Итак, .для анимирования 2-х объектов, которые начинают и заканчивают двигаться одновременно, необходимо выполнить следующие действия (предполагается, что применяется tweened-анимация):
- Постройте в 1-й слое (Layer 7) анимационную последовательность для первого объекта (см. подраздел "Автоматическая анимация движения объекта").
- Добавьте 2-й слой, например, с именем Layer 2 (см. подраздел "Создание и удаление слоев") и создайте на нем объект, подлежащий анимированию; при этом Flash автоматически построит для этого слоя последовательность простых кадров, равную по длине первой анимированной последовательности (рис.9.27 а), как при создании фонового изображения.
- Щелкните правой кнопкой мыши в ячейке первого кадра слоя Layer 2 и выберите в контекстном меню команду Create Motion Tween; при этом между первым и последним кадром появится пунктирная линия (рис.9.27 б).
- Щелкните правой кнопкой мыши в ячейке последнего кадра слоя Layer 2 и выберите в контекстном меню команду Insert Keyframe; в результате пунктирная линия будет преобразована в линию со стрелкой (рис.9.27 в).
- Переместите объект в позицию, соответствующую последнему кадру анимации.
рис.9.27. Вид временной диаграммы при анимировании 2-х независимых объектов
Замечание
По умолчанию Flash пытается "выровнять" моменты окончания анимации для всех слоев. Кроме того, требуется решить, какой из объектов должен располагаться на переднем плане, если в некоторый момент времени они окажутся в 1 позиции на столе.
Если поведение 1 объекта должно зависеть от поведения другого (по крайней мере, визуально), дело обстоит несколько по-иному. В этом случае недостаточно просто анимировать каждый объект в отдельности. Необходимо согласовать между собой их временные диаграммы (точнее, временные диаграммы соответствующих слоев).
Процедуру согласования временных диаграмм рассмотрим на примере.
Предположим, что 1 из объектов начинает двигаться только после того, как в него "врежется" другой. Соответствующая сцена показана на рис.9.28 (в верхней части рисунка приведены временная диаграмма фильма и исходное положение объектов, в нижней - дальнейшее развитие событий).
Вероятно, на основе уже приобретенных к этому моменту знаний и навыков читатель смог бы и самостоятельно догадаться, каким образом можно получить требуемый результат, тем не менее ниже приведены краткие пояснения.
рис.9.28. Сцена с двумя взаимодействующими объектами
Если требуется сместить по времени движение 2-го объекта относительно движения первого, необходимо выполнить следующие действия:
- Установите указатель в любой точке анимированной последовательности слоя Layer 2, нажмите левую кнопку мыши и, не отпуская ее, сместите всю последовательность по временной диаграмме на требуемое количество кадров (рис.9.29).
рис.9.29. Смещение движения 2-го объекта во времени
а)
"пустые" кадры на временной диаграмме
б)
заполнение "пустых" кадров
рис.9.30. Восстановление видимости объектов
- В результате смещения образуются "пустые" кадры, на которых 2-й объект не виден до начала движения; в свою очередь, 1-й объект становится невидим после окончания движения (рис.9.30а); чтобы оба объекта были видны на всех кадрах, следует размножить 1-й кадр анимированной последовательности для 2-го объекта и последний кадр - для первого объекта (рис.9.30б); для размножения кадров может быть использована как команда Insert Frame, так и команда Insert Keyframe.
Повторив описанную выше процедуру, Вы сможете увеличить число взаимодействующих объектов до необходимого количества.
Назад | Содержание | Вперёд