Меню
Бесплатно
Главная  /  Стиль жизни  /  Движение по заданной траектории. Урок для Adobe Flash. Основы анимации: как нарисовать движение и действия

Движение по заданной траектории. Урок для Adobe Flash. Основы анимации: как нарисовать движение и действия

Как создать анимацию движения в Фотошопе?

В данном уроке мы научимся создавать простую анимацию движения объекта в Фотошопе .

Создадим новый документ размером 200 на 200 пикселей с прозрачным фоном. Для того, чтобы создать новый документ, выберем пункты меню «Файл» - «Новый», зададим ему ширину и высоту, и прозрачный фон. На панели инструментов выберем инструмент «Кисть», зададим ей главный диаметр – 15 пикселей и любой цвет. Теперь при помощи данного инструмента нарисуем траекторию, по которой будет двигаться наш объект.

Затем создадим новый слой.

При помощи инструмента «Кисть» аналогичным образом нарисуем насекомое, уменьшив немного размер кисти и изменив её цвет.

Теперь следует изменить положение насекомого таким образом, чтобы оно соответствовало направлению его движения. Для этого выберем пункты меню «Редактировать» - «Трансформирование» - «Поворот».

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

Теперь будем повторять следующие действия: создание дубликата предыдущего слоя и изменение положения нашего насекомого таким образом, чтобы он «продвигался» вперёд по своей траектории. Данные действия будем повторять такое количество раз, пока не будет заполнена вся траектория движения.

Когда вся траектория будет «заполнена», перейдём к созданию анимации. Для этого выберем «Окно» - «Анимация».

В появившемся окне «Animation» на данный момент находится один кадр.

Сделаем все слои, кроме слоя с траекторией и слоя с насекомым, находящимся в начальном положении, невидимыми. Для того, чтобы сделать слой видимым или невидимым, нужно щёлкнуть мышью на «глаз», находящийся перед слоем в палитре слоёв. По умолчанию все слои являются видимыми.

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

Теперь выберем все имеющиеся кадры, зажав предварительно клавишу «Ctrl». Зададим время задержки для каждого кадра 0,2 секунды и сделаем слой с траекторией невидимым.

Анимация движения готова. Теперь сохраним полученное анимированное изображение. Для этого выберем пункты меню «Файл» - «Сохранить для web» и зададим файлу любое имя.

(0)
1. Простая текстовая анимация 1:48 1 4175
2. Переливающийся текст 2:44 0 5811
3. Мигание картинки 1:51 0 2494
4. Сверкающие фары 2:26 0 4242
5. Анимация дождя 2:12 0 2095
6. Падающий Снег 2:33 0 5332

В качестве первого шага при создании анимации движения создаем для нее отдельный слой (правило "каждому анимированному объекту - отдельный слой" остается в силе). Затем в пустой ключевой кадр этого слоя (такой кадр можно создать клавишей F7 в любом месте слоя) помещаем или создаем объект анимации: группу, текстовый блок или экземпляр символа.

На достаточном удалении по линейке кадров (простой подсчет: частота кадров, умноженная на секунды. Т е. если анимация будет идти 3 секунды, надо найти 36-й кадр) с помощью клавиши F6 создаем копию этого ключевого кадра. Здесь будет конечная фаза анимации.

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

Перейдем к первому ключевому кадру, щелкнув в ячейке кадра. В панели свойств выберем из списка "Анимация - Движение". Такой выбор, как хорошо видно на рис. 7.3, немедленно определяет сиреневый цвет промежуточных кадров временной шкалы, и появляется стрелка, соединяющая начало и конец анимации. Если вместо стрелки появляется штриховая линия, значит, что-то сделано не так и анимации скорее всего не будет. Даже если анимация и получится, очевидно, сбой произойдет позднее. Вот некоторые причины ошибки: в кадре находится неподходящий объект (например, просто несгруппированный рисунок), в кадре сохранились "остатки" каких-то объектов, движение применяется, например, к двум группам сразу. Взгляните на панель свойств кадра: если там появилась желтая треугольная кнопка с предупреждающим знаком (!), то Flash пытается сообщить вам об ошибке.

Рис. 7.3. Временная линейка с раскадровкой анимации движения

При выборе "Движение" в панели свойств открываются дополнительные параметры настройки "анимации движения" (рис. 6 4).

Рис. 7.4. Панель свойств при выборе анимации движения

  • Чтобы анимация шла корректно, проследим за тем, чтобы был установлен флажок "Масштаб", иначе не будет возможности изменения пропорций.
  • При выборе положительных значений параметра "Замедлить" анимация будет идти замедленно, а при выборе отрицательных - ускоренно.
  • В списке "Поворот" можно предусмотреть принудительный поворот по часовой стрелке или против. В окошке рядом можно задать количество таких принудительных оборотов объекта в процессе анимации.

Изменение положения центра вращения можно изменить инструментом "Свободное преобразование".

Заставим объект двигаться по кругу.

  1. Начнем с того, что нарисуем в первом кадре квадрат (звезду, круг…). Удалим у фигуры контур (если он нарисован).
  2. Сгруппируем рисунок. Зачем? У нас всего один объект? Но этот объект - не группа, не текстовый блок и не экземпляр символа. Поэтому - группируем.
  3. Выделим группу инструментом преобразования и перенесем центр будущего вращения на некоторое расстояние, а сам объект-группу сдвинем от центра монтажного стола.
  4. Оценим длительность анимации - если наша анимация будет длиться в течении 4-6 кадров, даже компьютер не сможет сделать ее плавной. Условимся, что в данном случае нам "хватит" 30 кадров.
  5. Перейдем в тридцатый кадр. Вставим ключевой кадр - копию первого кадра - с помощью клавиши F6.
  6. Вернемся в первый кадр.
  7. В панели свойств кадра выберем анимацию движения. В дополнительном списке "Поворот" обязательно выберем принудительное вращение либо по часовой, либо против часовой стрелки. Количество принудительных оборотов - один.

Вот и все. Просмотрим (протестируем) фильм. Если требуется, внесем изменения. Да, внесем. Причем такие: в некоторой точке наш объект должен уменьшиться, а потом вернуться в первоначальный размер. Для этого:

  1. поставим считывающую головку в середину "сиреневой полоски" на временной шкале;
  2. на монтажном столе видим некоторое промежуточное положение нашего объекта. В этом месте нет ключевого кадра, но его легко сделать, просто выполнив одним из способов вставку ключевого кадра;
  3. во вновь созданном ключевом кадре изменим масштаб нашего объекта;
  4. можно тестировать фильм.

Можно создать анимацию движения двумя способами:

o с помощью панели свойств кадра;

o с помощью команды "Создать анимацию движения" контекстного меню по правой кнопке мыши на кадре.

Для анимации движения с помощью команды контекстного меню выполняем следующие действия:

o Рисуем или вставляем любой объект в ключевой кадр.

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

o Создаем последний ключевой кадр в анимации движения и перемещаем, трансформируем объект.

Чтобы задать траекторию движения, используется специальный слой, управляющий движением: путеводитель, на котором рисуется линия - направляющая или траектория движения.

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

17. Создать ключевые кадры с начальным и конечным положениями объекта, задать между ними анимацию движения.

18. Щелкнуть правой кнопкой мыши на имени слоя, содержащего анимацию движения. В контекстном меню выбрать "Добавить путеводитель" или щелкнуть по соответствующей пиктограмме внизу слева.

19. В результате в списке слоев появится новый слой, помеченный специальным значком (рис. 7.5), а имя слоя с анимацией сдвинется вправо - признак того, что этот слой стал ведомым.

20. Щелкнуть на имени слоя-путеводителя, чтобы сделать его активным.

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

22. Выделить ключевые кадры анимации и в панели свойств кадра (включив анимацию движения) задать:

23. "Ориентировать по пути", если нужно сориентировать ось симметрии объекта по направляющей линии;

24. "Привязать", так как надо привязать точку регистрации объекта к направляющей движения (Без этого параметра объект не захочет двигаться по кривой!).

Протестировать фильм.

Рис. 7.5. Создание траекторий движения

Основные ошибки при направлении объекта по заданному пути две: учащиеся не привязывают объект во втором ключевом кадре или направляющая линия имеет мелкие (видимые только при большом увеличении) разрывы.

Выполним еще одно мини-упражнение - движение карандаша по бумаге. Для этого:

  1. В первом ключевом кадре нарисуем карандаш или импортируем его изображение из клип-арта в векторном формате.
  2. Сгруппируем изображение карандаша, инструментом "Свободное преобразование" повернем карандаш так, как он выглядит со стороны при письме (можно расположить карандаш в левой части монтажного стола, поскольку пишем мы слева направо).
  3. В данном случае очень важно расположение точки регистрации нашего объекта - поставим ее на кончик грифеля карандаша.
  4. Через 30-40 кадров создадим последний ключевой кадр анимации.
  5. В нем перенесем изображение карандаша в другое место монтажного стола, Можно чуть-чуть повернуть его.
  6. Выделим все кадры одновременно, "протянув" курсор мыши вдоль полоски кадров, и в панели свойств выберем анимацию движения и поставим "галочки" рядом с параметрами "Ориентировать по пути" и "Привязать".
  7. Добавим слой, управляющий движением, - путеводитель.
  8. В ключевом кадре этого слоя нарисуем траекторию движения. Проверим, что полоска промежуточных кадров совпадает с длиной нашей анимации; ключевого кадра в конце не нужно.
  9. Протестируем фильм.
  10. Возможно, вы все сделали аккуратно и карандашик начал движение по нарисованному пути, но наш карандаш вертится вокруг кривой как ненормальный. Отключим галочку около параметра "Ориентировать по пути" - движение карандаша стало реалистичней.

Обратите внимание: траектория пути объекта невидима в режиме тестирования фильма и не будет видна в готовом фильме. Если вы хотите видеть траекторию в фильме, ее надо скопировать и вставить на любой другой (видимый) слой (в меню редактирования существует команда "Вставить на место").

Вот и все! Основы автоматической анимации в программе Flash нами изучены. Осталось только познакомиться с более сложными приемами, чтобы стать настоящими профессионалами.

Примерные вопросы для контроля

  1. Как отредактировать текст?
  2. Как превратить текст в "нарисованные буквы"?
  3. Для каких целей применяют анимацию движения?
  4. Чем анимация движения отличается от анимации формы?
  5. Чем анимация движения отличается от пошаговой анимации?
  6. Для каких объектов можно создать анимацию движения?
  7. Каким образом задаются настройки анимации движения?
  8. Для чего и как создается слой-путеводитель?

8. Практическая работа: Пляшущие человечки:

Жизнь - движение. Можно анимировать шарики, круги, прямоугольники, линии и другие фигуры… Но давайте замахнемся на грандиозную задачу: заставим двигаться (танцевать) "человечка".

Что надо знать и уметь, чтобы выполнить задание: уметь пользоваться инструментами рисования, уметь редактировать векторные объекты, знать основы создания покадровой анимации и анимации движения.

Урок 4. Создание анимации

Macromedia Flash MX 2004 предоставляет несколько способов создания анимационных последовательностей:

Анимационные эффекты - программа сама создает последовательность кадров, имитирующую тот или иной эффект применительно к некоторому объекту;

Покадровая анимация - пользователь создает каждый кадр будущей анимации;

Автоматическая tweened-анимация, или анимация трансформации, - пользователь задает начальный и конечный кадр, а программа сама создает промежуточные кадры на основе программной интерполяции.

Анимационные эффекты

Flash MX 2004 включает предварительно подготовленные анимационные эффекты (timeline-эффекты), которые позволяют создавать сложные анимации, используя минимальное количество действий. Вы можете применять функцию Timeline Еffects к следующим объектам:

Графические объекты, включая формы, сгруппированные объекты и графические символы;

Растровые изображения;

Когда вы добавляете анимационные эффекты к объекту, Flash автоматически создает соответствующий слой и все трансформации движения и формы, необходимые для данного эффекта, реализуются в этом слое. Новый слой автоматически получает то же имя, что и эффект.

В качестве примера создадим эффект «взрыв» применительно к тексту. Для этого напечатаем некоторую фразу или слово (рис. 1), выделим его с помощью инструмента Arrow и выполним команду Insert => Timeline Effects => Effects => Explode .

Рис. 1. Выделенный текстовый объект

В результате появится одноименная панель (рис. 2), предоставляющая возможность настройки целого ряда параметров эффекта.

Рис. 2. Панель Explode

Наличие окна предпросмотра позволяет анализировать разные вариации эффектов, не покидая панели Explode . После того как вы выберете необходимые параметры, нажмите кнопку ОК и получите примерно такую анимацию .

Аналогично эффекты можно применить к растровому изображению. Рассмотрим пример с плавным исчезновением растровой картинки. Импортируем растровое изображение на сцену по команде File => Import => Import to stage (рис. 3) и применим эффект Вlur по команде Insert => Timeline Effects => Effects => Blur ролик .

Рис. 3. Растровое изображение, импортированное на сцену

Для того чтобы отредактировать анимационный эффект, выделите на сцене объект, ассоциированный с эффектом, и в появившемся окне Properties нажмите кнопку Edit (рис. 4) - в результате появится панель Blur .

Рис. 4. Кнопка Edit находится внизу на панели Properties

В панели Blur можно вновь поменять параметры эффекта и сохранить новые настройки (рис. 5).

Рис. 5. Панель Blur позволяет поменять настройки эффекта

Покадровая анимация

Рассмотрим простейший пример - листочек перемещается из одной точки экрана в другую с поворотом вокруг своей оси.

Рис. 6. Первый ключевой кадр анимации

Нарисуем кленовый листочек, например такой, как показано на рис. 6, - соответствующий кадр на панели Timeline окрасится в серый цвет и внутри него появится точка, указывающая на то, что это ключевой кадр. Ключевой кадр - это кадр, в котором происходит помещение содержимого или его изменение.

Рис. 7. Второй кадр создадим перетаскиванием и трансформацией первого

Затем щелкнем правой кнопкой мыши по соседнему кадру и вставим еще один ключевой кадр, используя команду Insert Keyframe . В результате в этом кадре появится копия листочка; переместим ее вниз (пользуясь инструментом Arrow) и повернем, используя команду Modify => Transform => Free Transform (рис. 7).

Повторим процедуру таким образом, чтобы в 6-м кадре лист занимал конечное положение (рис. 8).

Рис. 8. Последний кадр анимации

Обратите внимание на панель Properties (рис. 8) - в левой ее части указывается тип объекта. В каждом кадре листок является объектом типа Shape (форма), о других типах объектов будет рассказано чуть позже.

Для того чтобы экспортировать фильм в виде SEF-файла (родной формат Macromedia для Flash-фильмов), выполним команду File => Export => Export Movie . В результате получим следующий фильм leave1.fla). Просмотреть получившийся фильм можно не покидая программы Flash по команде Control => Test Movie . Причем для того, чтобы просмотреть, какой объем занимают отдельные кадры фильма, следует выполнить команду . В результате мы увидим, что каждый из шести кадров занимает около 600 Кбайт (рис. 9). Таким образом, объем всего фильма составляет 3686 байт.

Рис. 9. Просмотр фильма в режиме Bandwidth Profiler

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

Автоматическая анимация

Рис. 10. Объект автоматически превращается в графический символ

Рассмотрим, как можно сделать ту же анимацию и получить более компактный результирующий файл. Выделим на экране нарисованный листок инструментом Arrow и выполним команду Insert => Timeline => Create Motion Tween , в результате листочек будет помещен в рамочку, а в панели Properties появится сообщение, что выделенный объект имеет свойства Grafic (рис. 10). Это означает, что анимируемый объект автоматически преобразован в графический символ. Теперь его уже невозможно произвольно редактировать инструментом Arrow как объект типа Shape. Использование символов является важным понятием во Flash. Однажды создав символ, его можно использовать несколько раз в фильме, не увеличивая размер результирующего файла. Символы делятся на графические (graphic), символы-кнопки (button) и символы-мувиклипы (movie clip). В данном уроке рассмотрим графический символ, а к другим типам символов вернемся позднее. Каждый новый символ сразу становится частью библиотеки текущего документа (рис. 11).

Рис. 11. Каждый новый символ становится частью библиотеки

Если выполнить команду Window => Library , то можно убедиться, что в библиотеке появился символ и ему по умолчанию присвоено имя Tween 1. Для того чтобы присвоить символу другое имя, достаточно дважды щелкнуть по названию и заменить его на желаемое. После того как мы сформировали графический символ, перейдем в конечный кадр нашей анимации (пусть это будет 15-й кадр) и вставим ключевой кадр (по команде Insert Keyframe ). В этом кадре появится копия символа, которую мы переместим и повернем вокруг оси (по команде Modify Transform=>Free Transform ), как в предыдущем примере. Как видно из рис. 12, все кадры между двумя ключевыми окрасились в голубой цвет и от первого ключевого кадра к последнему протянулась стрелка, что указывает на создание анимации Motion Tween .

Рис. 12. Стрелка на голубом фоне свидетельствует о создании анимации Motion Tween

Выполнив команду Control => Test Movie , получим информацию, представленную на рис. 13.

Рис. 13. Просмотр фильма в режиме Bandwidth Profiler

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

Для того чтобы проиллюстрировать падение листа с поворотом вокруг плоскости листа, повторим предыдущий пример, только при модификации последнего ключевого кадра добавим команду Modify => Transform => Flip Horizontal. В результате получим следующий фильм .

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

Рис. 14. Выберем максимальное ускорение объекта Ease = –100

Для этого выставим значение параметра Ease равным –100 (рис. 14). В результате получим фильм . Отметим, что первый кадр можно поместить и за сценой, тогда мы получим фильм, в котором листок будет влетать в кадр и двигаться навстречу зрителю. Можно моделировать вращение листа вокруг смещенного центра симметрии. Надеюсь, читатель сам сможет поэкспериментировать, усложняя модификацию конечного кадра и изменяя таким образом характер движения листа.

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

Движение по заданной траектории

Flash позволяет задать движение объекта вдоль заданной траектории. Для того чтобы задать эту траекторию, выполните команду Insert => Timeline => Motion Guide .

В результате над текущим слоем появится специальный слой, который по умолчанию будет иметь имя Guide Layer 1 .

Щелкнем мышью по слою траектории и с помощью инструмента «карандаш» нарисуем линию, вдоль которой планируется перемещение листка (рис. 15).

Рис. 15. Пример задания траектории движения

Теперь перейдем в первый кадр (щелкнем по нему мышью) и в появившейся панели Properties установим флажок Snap (задает режим привязки к траектории движения) - рис. 16.

Рис. 16. Параметр Snap задает режим привязки к траектории движения

После того как вы поставите флажок Snap , центр листа совместится с траекторией движения. Пользуясь инструментом Arrow, можно переместить листочек вдоль кривой движения, но если вы попробуете оторвать листок от траектории и расположить его рядом с ней, он будет притягиваться назад и вновь «прилипать» к траектории движения (рис. 17).

Рис. 17. Объект как бы прилипает к траектории движения своим центром

Перейдите на последний кадр и аналогично привяжите листок к конечной точке траектории движения. Для придания фильму объемности добавим трансформацию Flip Horizontal , - в результате получим фильм .

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

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

Рис. 18. Если поставить флажок Orient to Path , птица будет лететь головой вперед

Необходимо поставить флажок Orient to Path , и движение птицы изменится на вполне привычное (исходник к данному ролику - полет птицы.fla).

Рис. 19. Добавление одноцветного фона

Если вы хотите добавить одноцветный фон, щелкните мышью по фону и в появившейся панели Properties (рис. 19) в поле Background выберите необходимый цвет фона.

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

Расположив фоновое изображение и каждый анимируемый объект на своем слое, добиться контроля над ними гораздо проще. Итак, для того чтобы добавить фоновый рисунок, создадим для него новый слой. Для этого щелкнем правой кнопкой мыши по слою, который на рис. 19 обозначен как layer 1, и в выпадающем меню выберем строку Insert layer. В добавленном слое нарисуем солнце. Чтобы не запутаться в номерах слоев, дадим слою название «фон». Для этого необходимо щелкнуть на текущем названии и ввести необходимое имя (рис. 20).

Рис. 20. На новом слое создадим неподвижный фоновый объект

Как видно из рис. 20, птица находится за солнцем, что противоречит здравому смыслу. Для того чтобы поменять местами слои, достаточно в режиме drag-and-drop перетащить слой с именем «фон» вниз.

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

Рис. 21. Для анимации облака создадим отдельный слой

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

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

Ключевые кадры — это кадры, в которых размещаются статические картинки, "оживающие" при анимации. Нажатие клавиши приводит к созданию нового кючевого кадра. Нажатие клавиши приводит к появлению справа от ключевого кадра дублирующего кадра. Дублирующий кадр — это кадр, не имеющий собственного содержания, а заключающий в себе лишь ссылку на содержание стоящего слева от него ключевого кадра. Создание дублирующего кадра облегчает работу над анимацией, избавляя от необходимости рисования одного и того же сюжета в соседних кадрах. На линейке кадров пустой ключевой кадр обозначается полым кружочком, если он содержит графический объект, то обозначается чёрным кружочком. Последний кадр в цепочке дублирующих кадров обозначается белым прямоугольником.

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

Основные возможности временной шкалы:

  1. Чтобы сделать слой активным, его надо выделить. Рисовать и редактировать можно только на активном слое. Активный слой подсвечивается на Монтажной линейке, и значок с изображением карандаша показывает, что его можно редактировать (Layer 3).
  2. Содержимое слоёв, которые находятся сверху на Монтажной линейке, отображается поверх содержимого слоёв, находящихся под ними. Для обмена слоёв местами надо перетащить название слоя на нужное место на Монтажной линейке.
  3. Для создания нового слоя надо выбрать позицию на Монтажной линейке для нового слоя и нажать кнопку "Добавить слой".
  4. Для удаления слоя достаточно перетащить его в корзину.
  5. Для переименования слоя дважды щелкните мышью по нему на Монтажной линейке.
  6. При создании многослойного изображения используйте элементы управления слоями. Щелчок в колонке под изображением замка заблокирует любое редактирование, а в колонке под изображением глаза сделает слой невидимы.

Ниже приводится пример анимационного ролика, в котором в разных слоях со сдвигом в 25 кадров, помещён разный фон (пейзаж) с соответствующим текстовым блоком. Пейзаж получен заливкой фона растровым изображением Color Mixer->Bitmap с последующей обработкой инструментом Трансформатор заливок.

  • Шкала кадров — поле, где можно добавлять и удалять простые и ключевые кадры. Если вызвать контекстное меню (правая клавиша мыши) на каком-либо кадре, вы увидите перечень действий, которые можно совершить. На шкале отображается информация о кадрах, которые являются ключевыми (такие кадры помечаются черными кружочками), содержат действия (буковка "а" над кружочком) или метку (красный флажок, после которого идет название метки). Цвет тоже говорит о типе кадров. Серый цвет — это кадры, которые в точности повторяют ключевой кадр (keyframe). Синеватая или зеленоватая подсветка говорит о том, что кадры сгенерированы Flash. И, наконец, белое или "пустое" полосатое пространство говорят о том, что на этих кадрах ничего нет.
  • Кнопки управления тенями — это кнопки, позволяющие отображать соседние кадры как бы через кальку, чтобы видеть разницу между предыдущими и последующими кадрами. Можно задавать глубину такого отображения по обе стороны от маркера. Анимация состоит из последовательности кадров. Кадр может быть как составленным вручную, так и сгенерированным Flash. Это относится к кадрам одного слоя. Так как сцены Flash состоят обычно из нескольких слоев, то итоговые "многослойные" кадры, могут содержать, как сгенерированные, так и "самодельные" слои. В компьютерной анимации существует понятие — ключевые кадры (keyframes). Их название говорит само за себя. Это кадры, которые Flash не вправе изменять в процессе создания анимации. Вы задаете эти ключевые кадры, а промежуточные кадры между ними выстраивает Flash. Существует два типа промежуточных кадров — кадры, построенные на основе изменения геометрии (shape tweening) или кадры, построенные на изменении символов (motion tweening). И, конечно же, кадры могут быть пустыми, т.е. ничего не содержать.
  • Символы — одно из ключевых понятий во Flash. Символом может быть, как простейший геометрический примитив или их объединение, так и целая анимация (movie). Это позволяет использовать символы, как мощный механизм создания абстракций во Flash. Существует три вида символов: анимация (movie clip) , кнопка (button) и изображение (graphic) :
    1. Изображение (graphic) , представляет собой символ, состоящий из единственного кадра. Отсюда следует его статичное название. Если символ действительно представляет собой статичный (не анимирующийся) объект, лучше сделать его изображением (graphic).
    2. Кнопка (button) . Во Flash есть специально приспособленный под функции кнопки вид символа. В нем имеется 4 кадра: Up, Over, Down, Hit, которые содержат следующие состояния кнопок:
      • Hit — обычное состояние, для кнопки, содержащей ссылку, которую пользователь уже посещал.
    3. Анимация (movie clip) . Это самый "полноценный" тип символа. В нем может быть любое количество кадров. Символ этого типа может восприниматься как объект типа Movie в ActionScript (встроенный язык Flash).
    Символы можно создавать как "с нуля" (Insert->New Symbol, Ctrl+F8), так и используя текущее выделение, поместив его сразу в символ (Insert->Convert to Symbol, F8). Второй прием используется гораздо чаще, чем первый, т.к. уже не надо символ позиционировать и изменять под нужный размер.
  • В Macromedia Flash существуют два принципиально разных способа анимировать что-либо:

    1. Прорисовать каждый кадр самому, используя Flash только для пролистывания кадров.
    2. Заставить Flash автоматически просчитывать промежуточные кадры.

    Пошаговая (покадровая) анимация

    Это анимация, полностью составленная из ключевых кадров. Т.е. Вы сами определяете, как содержимое кадра, так и его "длительность" (т.е. сколько таких статических кадров будет занимать изображение). Перед тем как нарисовать очередной кадр надо вставить пустой ключевой кадр (), если Вы хотите получить копию ключевого кадра, то нажимайте , а затем редактируйте полученную копию. Когда Вы хотите использовать готовые изображения в качестве основы, то это можно сделать следующим образом — File, Import… На временной шкале покадровая анимация выглядит таким образом:

    К достоинствам этого способа можно отнести:

    1. Покадровая анимация даёт, в некотором смысле, больший контроль над анимацией, и если Вы опытный аниматор, то Вы можете выгодно ею пользоваться.
    2. Это единственный способ организовать смену абсолютно независимых изображений — слайд-шоу (например, создавая обычный баннер средствами Flash).
    3. И все остальное, что вытекает из возможности прорисовывать каждый кадр вручную.

    К недостаткам можно отнести следующее:

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

    Элементарные операции с кадрами:

    • Вставить пустой ключевой кадр — Insert -> Blank keyframe, .
    • Ключевой кадр, повторяющий содержание предыдущего — Insert -> Keyframe, .
    • Очистить ключевой кадр — Insert -> Clear keyframe, +.
    • Вставить обычный кадр — Insert Frame, .
    • Удалить кадр — Insert -> Remove Frames, +.

    Элементарные операции с роликом:

    • Просмотр ролика — Control, Test movie.
    • Изменение высоты и ширины ролика — Modify, Movie.
    • Преобразование Flash-ролика в HTML-документ File, Publish Setting, вкладка HTML.
    • Просмотр HTML-документа — File, Publish Preview.

    Создадим многослойный фильм с пошаговой анимацией «Жизнь цветка». 1-й слой — рамка, 2-й слой — горшок, 3-й слой — цветок. Можно 3-й слой представить тремя слоями: лист, стебель, соцветие.

    Горшок и рамка находятся всё время перед нашими глазами, а цветок за 25 ключевых кадров успевает вырасти и увять. В слое «цветок» каждый кадр отличается от предыдущего, но можно сделать изменение состояния цветка чере один кадр.

    Публикация ролика происходит с помощью File->Publish Setting. На вкладке Formats выбираются варианты публикации, их можно выбрать несколько, на соответствующих вкладках задаются параметры для выбранного варианта публикации, затем нажимается кнопка Publish. При этом, созданные файлы сохраняются в той же папке, что и исходный файл с расширением.fla. В нашем примере для публикации выбран вариант Gif-анимированный файл, как и во всех последующих примерах.

    Второе задание попробуйте выполнить самостоятельно, используя ниже приведённый алгоритм. Это будет создание анимации «Движущийся автомобиль»:

    • создаим слой «Пейзаж»;
    • выполним команду File/Import и импортируем картинку с изображением пейзажа или создадим фон "асфальт";
    • выделим на линейке 30-й кадр и нажмём F5. создадим цепочку дублирующих кадров для пейзажа;
    • создадим новый слой «Авто»;
    • нарисуем в первом ключевом кадре автомобиль без колёс;
    • сгруппируем нарисованный автомобиль и нажав F8 создадим библиотечный образец — клип automobile;
    • сдвинем автомобиль, выделим второй кадр и нажмём F6;
    • будем перемещать автомобиль и создавать новые ключевые кадры до тех пор, пока, автомобиль не скроется за пределами рабочего поля;
    • создадим новый слой и назовём его «Колесо1»;
    • нарисуем в первом кадре колесо и создадим из него библиотечный образец wheel;
    • создадим новый ключевой кадр и передвинем в нём колесо за передвинутым автомобилем и т.д. во всех остальных кадрах, поворачивая колесо при этом на небольшой угол;
    • заблокируем слой «Колесо1» и скопируем в буфер всю полученную последовательность кадров;
    • создадим новый слой и назовём его «Колесо2»;
    • выделим первый кадр и скопируем из буфера всю последовательность кадров;
    • для зацикливания просмотра нажмём +.

    В качестве ещё одного самостоятельного задания можно предложить создать пошаговую анимацию "Горение спички":

    Во Flash существует два варианта построения промежуточных изображений — motion tweening (построение анимации на основе модификации символов) shape tweening (построение анимации на основе изменения формы). Эти способы отличаются в корне.

    Анимация движения

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

    Скорость и плавность анимации зависят от количества кадров, которые отведены под движение и скорости Flash фильма (movie). Скорость фильма можно изменить следующим образом: Modify->Movie…, + — там параметр Frame Rate задает количество кадров в секунду. Для качественной анимации скорость должна быть не меньше 25-30 кадров в секунду. Плавность и длительность задается количеством кадров, отведенных на анимацию (ее фрагмент).

    Рассмотрим анимацию с построением промежуточных кадров (tweened motion). Это наиболее часто используемая техника анимации во Flash. В этом случае анимация строится на основе модификации символов, т.е. объектом анимации является символ. Как и в анимации shape tweening, на каждый объект в один момент времени, нам нужен один слой. На этом слое должен находиться один символ, с которым и будут происходить все изменения.

    При использовании Motion Tweening модифицируются следующие параметры:

    1. размер (как пропорционально, так и непропорционально — отдельно высоту и ширину);
    2. наклон;
    3. расположение;
    4. угол поворота;
    5. цветовые эффекты;
    6. можно использовать направляющие слои для задания траектории движения объекта.

    Включить motion tweening можно несколькими способами (а отключить, к сожалению, только одним). Для того, чтобы включить motion tweening, нужно сделать активным начальный кадр вашего перехода, затем, нажав правую клавишу мыши, в контекстном меню выбрать Create motion tween (это же можно сделать, выбрав Insert->Create motion tween). Универсальный способ включения/выключения motion tweening — с помощью панели Frame, выбрав Motion в поле Tweening. Там же можно контролировать параметры анимации:

    • Easing — обратное экспоненциальное ускорение, работает абсолютно так же, как и в shape tweening.
    • Rotate позволяет управлять вращением. Auto — Flash автоматически пытается определить количество витков. CW (Clockwise, по часовой стрелке) и ССW (Counter Clockwise — против часовой стрелки). При этом рядом в поле справа появляется возможность ввести количество оборотов. Можно использовать только целые значения. Можно отключить вращение, выбрав None.
    • Orient to path — поворачивает символ в соответствии с направляющей линией. Snap привязывает символ к этой направляющей.

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

    Слои, которые содержат кривую, по которой должен двигаться объект называются направляющими слоями (guide layers) (т.е. они содержат траекторию движения объекта). Для того, чтобы добавить направляющий слой, нужно Выбрать слой, на котором находится ваш символ; затем Нажав правую клавишу мыши, в контекстном меню выбрать Add Guide. При этом исходный слой становится направляемым (guided layer). Это далеко не единственный способ создать направляющий слой (guide layer). Любой слой можно сделать направляющим, указав это в его свойствах, или направляемым, перетащив нужный слой мышкой, так, чтобы он находился под направляющим.

    Далее, нужно нарисовать траекторию движения. Траекторией может быть любая кривая, не являющаяся областью заливки. Всё! Управляющий слой готов. Вы можете его запретить для редактирования, чтобы было удобней работать, а в дальнейшем и вовсе сделать его невидимым.

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

    Далее все по знакомому сценарию — ключевые кадры, включаем motion tweening… Если нужно, чтобы объект поворачивался согласно траектории, а не просто двигался по ней, то на панели Frame нужно включить флажок Orient to path.

    Motion tweening позволяет использовать различные цветовые эффекты применительно ко всему символу. Эта возможность отсутствует в shape tweening. Для того, чтобы применить эффект к символу, нужно выделить этот символ, и на панели эффектов (Windows ->Panels ->Effects), выбрать нужный эффект, установив яркость, цветовое смещение, оттенок.


    Создайте самостоятельно очень простой пример анимации движения шара по кругу, пользуясь ниже приведённым алгоритмом:

    • нарисуем в первом кадре круг и зальём его радиальной градиентной заливкой;
    • сгруппируем рисунок;
    • выделим его инструментом Трансформатор и перенесём центр вращения на некоторое расстояние;
    • перейдём в 30 кадр, нажмём , т.е. сделаем его копией первого кадра;
    • вернёмся в первый кадр и откроем панель Properties и в списке Tween выберем Motion;
    • в дополнительном списке Rotate выберем принудительное вращение по часовой стрелке (CW) или против часовой стрелки (CCW).

    Следующий пример несколько сложнее — это создание анимации движения букв текста:

    • с помощью инструмента Текст создадим текстовый блок;
    • выделим написанное слово и разобьём его на отдельные буквы (Modifi/Break Apart);
    • разведём буквы по отдельным слоям Modify/Distribute to Layers;
    • преобразуем каждую букву в каждом слое в рисунок, повторим команду Modifi/Break Apart. Выдели каждую букву и сгруппируем её;
    • на линейке кадров на некотором удалении создадим копии первого кадра, для этого нажмём ;
    • по очереди будем выделять первые кадры для каждой буквы, выносить её за пределы рабочей области, изменяя пропорции буквы, центр вращения и т.д.;
    • в панели Properties в списке Tween выберем Motion. В дополнительном списке Rotate выберем один поворот по часовой стрелке;
    • просмотрим анимацию в окне просмотра + .

    Анимация формы — это плавное изменение объекта анимации на рабочем поле. Под объектом понимаем здесь не группу или текстовый блок, как при анимации движения, а обычный многоцветный рисунок, который может состоять из нескольких фрагментов. Более того, количество таких фрагментов в начале и в конце анимации может быть различным.

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

    Как обычно, Вы задаете два ключевых кадра на некотором расстоянии друг от друга. В этом варианте анимации есть жесткое ограничение: анимация должна занимать отдельный слой и быть единой нарисованной фигурой (не должно быть групп или символов). После того как есть два ключевых кадра, надо сделать активным первый из них (просто переходите на него), и выбирать на панели Frame (Windows->Panels->Frame, +) в списке Tweening строку Shape. Кадры на временной шкале должны окраситься в зеленоватый цвет и от первого кадра ко второму должна протянуться стрелочка. В результате получается ряд промежуточных кадров, которые будут отражать переход от первой фигуры ко второй.

    При использовании shape tweening необходимо задать два параметра:

    • Easing задает обратное экспоненциальное ускорение. Величина этого параметра может изменяться от - 100 до + 100. Это означает, что если вы зададите отрицательный easing, движение будет происходить с положительным ускорением, скорость будет увеличиваться. И наоборот, если easing будет положительным, анимация будет замедляться;
    • Параметр Blend, определяет алгоритм перехода:
      • Distributive — сглаживает переход от одной фигуры к другой.
      • Angular (угловатый) — пытается сохранить пропорции углов.

    Последний инструмент в анимации shape tweening — контрольные точки (shape hints, дословно — подсказки для форм). Это точки, с помощью которых Вы помогаете Flash правильно осуществить переход. Без них не обойтись в случае сложных форм. Пользоваться ими очень легко. На первом ключевом кадре (с которого начинается анимация) Вы добавляете контрольную точку (Modify->Transform->Add shape hint,

    Удалить все точки можно с помощью Modify->Transform->Remove All Hints. Удалить же единственную точку можно, нажав на ней правую кнопку мыши, и в контекстном меню выбрав Remove Hint. Так как контрольные точки обозначаются буквами латинского алфавита, то их может быть максимум 27.

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

    Если вам нужно отключить shape tweening, в панели Frame выберите Tweening: None.

    При использовании shape tweening могут модифицироваться следующие параметры фигуры:

    • форма;
    • расположение;
    • размер (любые пропорции);
    • цвет;
    • угол поворота.

    Ниже приводится на этот способ анимации пример «превращения» слона в овцу и обратно.

    Попробуйте самостоятельно создать анимацию формы "превращения" змеи в орла и обратно:

    Направляющий слой и слой траекторий

    Часто в процессе анимации необходимо, чтобы объект двигался не по прямой, а по заданной траектории. Анимация в этом случае создаётся обычным образом, а траектория рисуется в отдельном слое. Слой траекторий может обслуживать несколько разных анимаций, каждая из которых размещена в отдельном слое, но все эти слои с анимацией должны располагаться под слоем траекторий. Для рисования траектории можно использовать различные инструменты: Карандаш, Кисть, Перо, Эллипс, или Прямоугольник. Чтобы привязать движущийся объект к этой траектории нужно в начальном и конечном ключевых кадрах анимации просто перенести этот элемент на траекторию. При этом в панели Properties следует подкорректировать параметры анимации таким образом, чтобы был включён флажок Snap (привязать). Для этого нужно предварительно выделить первый ключевой кадр анимации, полезно также выбрать команду View/Snap to Objects.


    Для примера, создадим ролик «Полёт бабочки над цветком», по ниже приведённому алгоритму:

    • импортируем рисунок цветка в первый слой;
    • в первом ключевом кадре второго слоя нарисуем бабочку (можно получить бабочку путём векторизации её растровой фотографии Modify/Trace Bitmap);
    • выделим бабочку, нажмём , создав её библиотечный образец;
    • оставаясь во втором слое, перейдём, например, в 48 кадр и нажмём , создав завершающий анимацию ключевой кадр;
    • в нём перенесём бабочку на другую сторону рабочего поля;
    • выделим 60-й кадр и нажмём , создав цепочку дублирующих кадров;
    • выделим первый кадр и в панели Properties в списке Tween выберем Motion;
    • выделим слой с анимацией и выбирем в контекстном меню команду Add Motion Guide;
    • нарисуем на рабочем поле этого слоя кривую для движения бабочки, начало и конец которой расположены рядом;
    • выделим первый ключевой кадр анимации, посадим бабочку на один конец траектории;
    • затем выделим другой ключевой кадр анимации, посадим бабочку на другой конец траектории;
    • выделим первый ключевой кадр анимации, откроем панель Properties и вкючим флажок Orient to Path;
    • создадим эффект взмахивания крылышек бабочки при полёте. Откроем библиотечный образец + ;
    • дважды щёлкнем мышкой по изображению бабочки в окне просмотра;
    • создадим новый ключевой кадр, например, третий, чтобы движение крылышек бабочки было естественным;
    • в новом ключевом кадре приподнимим сначало одно крылышко бабочки, а затем второе;
    • вернёмся в основную сцену и запустим просмотр.

    Маскируемый слой и слой-маска

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


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

    • в первом кадре слоя вставим статический текстовый блок и напишем какое-нибудь слово;
    • выделим 40-й кадр и нажмём , определяя тем самым длину будущей анимации;
    • создадим новый слой и сделаем его слоем-маской (выделим слой и из контекстного меню выберем пункт Mask) и снимим с него блокировку;
    • в первом кадре слева от слова нарисуем небольшой прямоугольник и сгруппируем его;
    • оставаясь в слое-маске, выделим 40-й кадр и нажмём ;
    • оставаясь в 40-м кадре, с помощью инструмента Трансформатор растянем нарисованный прямоугольник так, чтобы он закрывал всё слово;
    • выделим 1-й кадр и открыв панель Properties, выберем Motion;
    • запустим анимацию.

    Ниже приводится gif-анимированный файл, в котором используется анимация формы букв текста "С Новым Годом", а затем появившийся текст "стирается", с использованием слоя-маски, прямоугольника с градиентной заливкой, поэтому получается эффект "переливчатости" букв. Фоном является фрагмент растровой графики.

    Следующий пример демонстрирует «вырастание» из точки слова, где в качестве маскируемого слоя используется импортированная растровая графика, а в слое-маске создана анимация, в которой из точки вырастает слово, а затем оно опять уменьшается. В данном примере также используется анимация формы.

    Создание кнопок

    Кнопка — специальный вид символа, предназначенный для реагирования на действия пользователя, например, нажатия на саму кнопку, её клавишный аналог или активную область в фильме. Временная шкала кнопки содержит следующие четыре кадра:

    • Up — обычное состояние кнопки;
    • Over — когда курсор мышки находится над кнопкой;
    • Down — когда курсор находится над кнопкой и нажата клавиша мыши;
    • Hit — обычное состояние, для кнопки, содержащей ссылку, которую пользователь уже посещал;

    Если необходимо создать несколько одинаковых кнопок, то в этом случае достаточно создать только один образец кнопки. А далее нанести на него необходимые надписи, менять цвет или размер. Если кнопка должна содержать анимированные объекты, для этого необходимо заранее создать символы Movie clip, а затем просто разместить их в соответствующем кадре кнопки.

    Основные типы действий:

    1. Go to — переход к заданной сцене или кадру;
    2. Play — запуск остановленного фильма;
    3. Stop — остановка фильма;
    4. Toggle High Quality — переключатель качества отображения фильма (режим сглаживания);
    5. Spot All Sounds — выключение звука;
    6. Get URL — переход по указанному адресу;
    7. FC Command — передача проигрывания фильма другим приложениям;
    8. Load/Unload Movie — простейший вариант использования данной команды, это загрузка фильма с указанного адреса;
    9. Tell Target — выбор фильма для дальнейшего управления (задание цели);
    10. If Frame Is Loaded — выполнение команды в случае загрузки указанного кадра;
    11. If — проверка на истинность;
    12. Loop — цикл;
    13. Call — вызов;
    14. Set Property — задание свойств фильма;
    15. Set Variable — значение переменной;
    16. Duplicate/Remove Movie Clip — создание или удаление экземпляра клипа;
    17. Drag Movie Clip — включает режим перетаскивания клипа;
    18. Trace — вывод сообщений при выполнении действий;
    19. Comment — комментарии;

    Алгоритм создания кнопки (алг1):

    • создайте заготовку для кнопки;
    • выделите кнопку с помощью инструмента и преобразуйте её в символ (Insert\Convert to Symbol…). Укажите название (например, but), выбрав тип Button;
    • перейдите в режим редактирования символа, выполнив двойной щелчок по изображению символа «Кнопка»;
    • перейдите в кадр Over на Монтажной линейке, вставьте пустой кадр Insert\Keyframe, отредактируйте кнопку, поменяв её цвет;
    • перейдите в кадр Down, вставьте пустой кадр Insert\Keyframe, отредактируйте кнопку, изменив её цвет;
    • перейдите в кадр Hit, вставьте пустой кадр Insert\Keyframe, отредактируйте кнопку;
    • выйдите из режима редактирования символа (в левом верхнем углу фильма перейти к Scene1).

    Алгоритм создания кнопки для перехода на указанную Web-страницу:

    • создайте кнопку (алг1);
    • задайте действие, для этого выберите Window\Actions. В выпадающем меню Basic Actions выберите действие Get URL, дважды щёлкнув по нему в левом окне панели. Щёлкнув в правом окне по выбранному действию, укажите его параметры (например, URL: http:\\www.ya.ru);
    • протестируйте получившийся клип Control\Test Movie.

    Алгоритм создания кнопки для остановки клипа:

    • создайте кнопку (алг1);
    • добавьте новый слой;
    • создайте в нём анимацию;
    • постройте в нём изображение (например, круг);
    • изображение преобразуйте в символ (Insert\Convert to Symbol…);
    • выделите в обоих слоях 30 кадр и вставьте ключевой кадр Insert\Keyframe;
    • перенесите изображение символа в 30 кадре на другое место;
    • вернитесь на 1 кадр и выберите Insert\Create Motion Tween;
    • выделите слой с изображением кнопки и задайте для неё действие Window\Actions. Выберите действие Stop;
    • просмотрите получившийся клип Control\Play.

    В качестве примера создадим кнопку со встроенной анимацией по ниже приведённому алгоритму:

    • нажмём сочетание клавиш + , создадим новый образец типа Button и зададим имя knopka;
    • нажмём OK и попадём в редактор образцов;
    • в первом кадре (Up) на рабочем поле нарисуем овал и зальём его радиальной градиентной заливкой;
    • три раза нажмём клавишу , это скопирует содержимое первого кадра во все остальные;
    • выделим второй кадр (Over) и немного увеличим в нём изображение кнопки, обведём его жёлтым контуром;
    • импортируем из библиотеки файл с анимацией (например, бег человека или любой другой клип);
    • наложим этот клип на изображение кнопки, приведём все масштабы в соответствие;
    • выделим третий кадр (Down) и немного уменьшим в нём изображение кнопки;
    • вернёмся на основную сцену, откроем библиотеку + , если она закрыта, извлечём созданную кнопку.

    Публикация данного объекта выполнена в режиме HTML с указанием на соответствующий swf-файл.

    Создание сценариев с помощью языка ActionScript

    Создадим кнопки, управляющие работой слайд-шоу:

    • подготовим несколько растровых картинок (слайдов);
    • импортируем их вновый фильм;
    • на основе каждого из них создадим библиотечные образцы () типа Button (кнопка), создавая образец будем удалять изображение с рабочего поля;
    • первый слой фильма назовём Buttons, выделим первый кадр и в нём расположим созданные кнопки, так, чтобы они не мешали просмотру;
    • создадим слой для размещения слайдов Images;
    • в нём с помощью клавиши создадим пустые ключевые кадры, столько, сколько слайдов;
    • выделим первый пустой ключевой кадр и поместим в него библиотечный слайд (+ — открытие библиотеки);
    • привяжем к этому кадру сценарий. Для этого, оставаясь в первом кадре, откроем панель Actions и двойным щелчком мыши выведем из папки Actions/Movie Control сценарий Stop (), который останавливает просмотр слайдов в ожидании команды пользователя;
    • два последних пункта алгоритма повторим для остальных пустых ключевых кадров;
    • кадр с первым вставленным слайдом назовём begin, а с последним end (имена задаются в панели Properties, как метка кадра);
    • вернёмся в слой с кнопками, где располагаются миниатюры наших слайдов;
    • привяжем к каждой кнопке сценарий, отсылающий программу в тот кадр, где располагается соответствующий слайд;
    • для этого кнопку надо выделить и с помощью панели Actions ввести следующий сценарий:
    • On (release) {

      GotoAndStop(k); — цифра в скобках указывает на номер соответствующего кадра.

    • в первом кадре слоя с кнопками можно разместить и кнопки альтернативного выбора слайдов. В нашем примере это "Начало", "Вперёд", "Назад" и "Конец";
    • выделим первую альтернативную кнопку начало (Begin) и привяжем к ней сценарий:
    • On (press) {

      GotoAndStop("begin)";

    • к кнопке назад (Previous} привяжем такой сценарий:
    • On (press) {

      Root.prevFrame ();

    • к кнопке вперёд (Next} привяжем такой сценарий:
    • On (press) {

      Root.nextFrame ();

    • к кнопке конец (End}, задающей переход к последнему кадру, привяжем такой сценарий:
    • On (press) {

      GotoAndStop("end");

    Ниже приводится результат нашей работы:

    При создании анимаций с использованием языка ActionScript часто используется трёхкадровый цикл. В первом кадре (подготовка) записываются начальные данные, во втором кадре размешаются элементы тела цикла, а втретьем кадре пишется команда вернуться во второй кадр gotoAndPlay (2);. Работа трёхкадрового цикла заключается в попеременном просмотре кадров, участвующих в цикле, до тех пор пока не будет выполнено условие выхода из цикла.

    Рассмотрим использование трёхкадрового цикла на примере создания движения маски. Наш фильм будет состоять из трёх слоёв:

    • Импортируем в первый слой, который назовём Masked, растровую картинку. На основе её создадим библиотечный образец типа "клип". Удалим его с рабочего поля и вынесем экземпляр этого клипа на рабочее поле.
    • В панели Properties назовём его Masked.
    • Во втором слое расположим экземпляр клипа, представляющий собой маску оригинальной формы. Имя второго слоя и имя этого экземпляра будут Mask.
    • В третьем слое, который назовём Actions, создадим трёхкадровый цикл.
    • В первом кадре используем метод setMask объекта MovieClip, который позволяет маскировать любой клип другим клипом, находящимся на другом слое. Формат метода:
    • <маскируемый клип>.setMask (<клип-маска>)

    • Откроем панель Actions и к первому кадру третьего слоя привяжем однострочный сценарий Masked.setMask (mask);.
    • Используя свойства (Priperties) объекта MovieClip, ко второму пустому ключевому кадру добавим вращение маски Mask._rotation += 2;. Можно также добавить изменение размеров и координат маски. Например, mask._x -= 1; mask._y += 1; mask._height -= 1; mask._width += 1;
    • К третьему кадру привяжем обычный сценарий gotoAndPlay (2);

    При каждом обращении ко второму кадру клип Mask будет поворачиваться на 2°. Перед глазами пользователя вращается окно, имеющее форму клипа Mask, сквозь которое видна часть клипа Masked.

    Научимся управлять цветом экземпляра библиотечного клипа. Создадим фильм, в котором на фоне восходящего солнца разнонаправленно вращаются звёзды, изменяя свой цвет.

    Экземпляр объекта Color создаётся с помощью конструктора в среде ActionScript и имеет следующий формат:

    <имя экземпляра объекта Color> = new Color (<имя экземпляра клипа>)

    • Выделим первый ключевой кадр и импортируем в него растровое изображение восходящего солнца.
    • Соэдадим второй слой и в первом кадре нарисуем три произвольных звёздочки.
    • Будем выделять их по очереди и создавать клипы под именами Star, Star1, Star2.
    • Экземпляру первого клипа присвоим имя St, второго St1, а третьего St2.
    • Привяжем к каждому образцу свой сценарий. Отличие в сценариях состоит в том, что каждому экземпляру клипа присваивается разный начальный цвет, разный угол поворота, а также разные условия изменения текущего цвета в операторах if.
    • Передача цвета экземпляру клипа, например для Star1, осуществляется с помощью такой строки в сценарии Star1Color.setTransform(colorTransform);.
    • Будем выделять поочерёдно клипы со сценарием, нажимать и создавать новые клипы, например, с именами ClipStar, ClipStar1, ClipStar2.
    • Можно вывести на рабочее поле несколько образцов каждого клипа.
    • Пример сценария для Star1 приводится ниже:

    OnClipEvent (load) {

    Star1Color = new Color(this);

    ColorTransform = {rb:0, gb:255, bb:255};

    G = 255;

    B = 255;

    Step = 5;

    OnClipEvent (enterFrame) {

    G -= step;

    ColorTransform.gb = g;

    If (r >=0 && b == 255 && g == 0) {

    R += step;

    ColorTransform.rb = r;

    If (g == 0 && r == 255 && b

    B -= step;

    ColorTransform.bb = b;

    If (b == 0 && r == 255 && g >=0) {

    G += step ;

    ColorTransform.gb = g;

    If (g == 255 && b == 0 && r

    R -= step;

    ColorTransform.rb = r;

    If (r == 0 && g == 255 && b>=0) {

    B += step;

    ColorTransform.bb = b;

    Star1Color.setTransform(colorTransform);

    This._rotation -= 3;


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

    • Нарисуем кнопку с названием "Примеры".
    • Нажмём клавишу и создадим библиотечный образец типа Button с именем primery.
    • Перейдём в режим редактирования и изменим заливку кнопки и цвет текста для состояний Over и Down, в каждый из этих кадров попадаем нажимая клавишу .
    • В кадре Hit, который не будет отражаться в режиме анимации, удалим изображение кнопки и нарисуем закрашенный прямоугольник несколько большего размера, чем кнопка.
    • Преобразуем текст "Примеры" в библиотечный символ типа Graphic. Для этого перейдём в состояние кнопки Up выделим текст и нажмём клавишу . Библиотечный образец назовём "примеры". Таким образом мы осуществили вложение в символ Button символ другого типа — Graphic.
    • Повторим выше изложенную процедуру для состояний кнопки Over и Down, создавая библиотечные образцы "примеры1" и "примеры2" типа Graphic.
    • Щёлкнем правой кнопкой мыши по библиотечному образцу primery и выберем пункт дублирование. Сохраним копию под именем news. Это будет библиотечный образец для будущей кнопки "Новости".
    • Аналогично получим дубли образцов "примеры", "примеры1" и "примеры2". Назовём их соответственно "новости", "новости1" и "новости2".
    • Отредактируем содержимое полученных образцов, изменив текст "примеры" на текст "новости" соответствующих цветов.
    • Войдём в режим редактирования библиотечного образца news. Выделим состояние кнопки Up, а в библиотеке образец "примеры".
    • Посмотрим на паналь Properties. Нажмём копку Swap (заменить) и в открывшемся диалоговом окне выберем образец "новости", нажмём OK. Таким путём мы поменяем для состояния кнопки Up название "Примеры" на название "Новости".
    • Повторим подобные действия для двух других состояний кнопки библиотечного образца news. При этом заменим "примеры1" на "новости1", а "примеры2" на "новости2". Подобные манипуляции приводят к получению совершенно одинаковых кнопок, но с разным названием.
    • Вынесем из библиотеки экземпряр кнопки "Новости" на рабочее поле.
    • Подобным образом получим третью кнопку — "Контакты".
    • Включим панель Align (выравнивание). Выделим все три кнопки и выберем нужное для них расположение, например, на одном уровне с одинаковыми расстояниями друг от друга.
    • Откроем панель Actions и привяжем к каждой кнопке скрипт, указывающий какая веб-страница будет загружаться при щелчке на ней мышью. Можно также указать в какое окно будет загружаться выбранная страница, например, в текушее окно браузера (_self), в новое окно (_blank) и т.д. К первой кнопке привяжем такой сценарий:
    • on (release) {getURL ("1.html", "_self");}

    • К остальным кнопкам привяжем сценарии, указывающие на соответствующие веб-страницы. В ниже приведённом Flash-меню привязка веб-страниц не реализована из соображений удобства просмотра страницы.

    В качестве первого шага при создании анимации движения создаем для нее отдельный слой (правило "каждому анимированному объекту - отдельный слой" остается в силе). Затем в пустой ключевой кадр этого слоя (такой кадр можно создать клавишей F7 в любом месте слоя) помещаем или создаем объект анимации: группу, текстовый блок или экземпляр символа.

    На достаточном удалении по линейке кадров (простой подсчет: частота кадров, умноженная на секунды. Т е. если анимация будет идти 3 секунды, надо найти 36-й кадр) с помощью клавиши F6 создаем копию этого ключевого кадра. Здесь будет конечная фаза анимации.

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

    Перейдем к первому ключевому кадру, щелкнув в ячейке кадра. В панели свойств выберем из списка "Анимация - Движение". Такой выбор, как хорошо видно на рис. 7.3 , немедленно определяет сиреневый цвет промежуточных кадров временной шкалы, и появляется стрелка, соединяющая начало и конец анимации. Если вместо стрелки появляется штриховая линия, значит, что-то сделано не так и анимации скорее всего не будет. Даже если анимация и получится, очевидно, сбой произойдет позднее. Вот некоторые причины ошибки: в кадре находится неподходящий объект (например, просто несгруппированный рисунок), в кадре сохранились "остатки" каких-то объектов, движение применяется, например, к двум группам сразу. Взгляните на панель свойств кадра: если там появилась желтая треугольная кнопка с предупреждающим знаком (!), то Flash пытается сообщить вам об ошибке.


    Рис. 7.3.

    При выборе "Движение" в панели свойств открываются дополнительные параметры настройки "анимации движения" (рис. 6 4).

    • Чтобы анимация шла корректно, проследим за тем, чтобы был установлен флажок "Масштаб", иначе не будет возможности изменения пропорций.
    • При выборе положительных значений параметра "Замедлить" анимация будет идти замедленно, а при выборе отрицательных - ускоренно.
    • В списке "Поворот" можно предусмотреть принудительный поворот по часовой стрелке или против. В окошке рядом можно задать количество таких принудительных оборотов объекта в процессе анимации.

      Изменение положения центра вращения можно изменить инструментом "Свободное преобразование".

      Заставим объект двигаться по кругу.

      1. Начнем с того, что нарисуем в первом кадре квадрат (звезду, круг…). Удалим у фигуры контур (если он нарисован).
      2. Сгруппируем рисунок. Зачем? У нас всего один объект? Но этот объект - не группа, не текстовый блок и не экземпляр символа. Поэтому - группируем.
      3. Выделим группу инструментом преобразования и перенесем центр будущего вращения на некоторое расстояние, а сам объект-группу сдвинем от центра монтажного стола.
      4. Оценим длительность анимации - если наша анимация будет длиться в течении 4-6 кадров, даже компьютер не сможет сделать ее плавной. Условимся, что в данном случае нам "хватит" 30 кадров.
      5. Перейдем в тридцатый кадр. Вставим ключевой кадр - копию первого кадра - с помощью клавиши F6.
      6. Вернемся в первый кадр.
      7. В панели свойств кадра выберем анимацию движения. В дополнительном списке "Поворот" обязательно выберем принудительное вращение либо по часовой, либо против часовой стрелки. Количество принудительных оборотов - один.

      Вот и все. Просмотрим (протестируем) фильм. Если требуется, внесем изменения. Да, внесем. Причем такие: в некоторой точке наш объект должен уменьшиться, а потом вернуться в первоначальный размер. Для этого:

      1. поставим считывающую головку в середину "сиреневой полоски" на временной шкале;
      2. на монтажном столе видим некоторое промежуточное положение нашего объекта. В этом месте нет ключевого кадра, но его легко сделать, просто выполнив одним из способов вставку ключевого кадра;
      3. во вновь созданном ключевом кадре изменим масштаб нашего объекта;
      4. можно тестировать фильм.

      Можно создать анимацию движения двумя способами:

      • с помощью панели свойств кадра;
      • с помощью команды "Создать анимацию движения" контекстного меню по правой кнопке мыши на кадре.

      Для анимации движения с помощью команды контекстного меню выполняем следующие действия:

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

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

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

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

      1. Создать ключевые кадры с начальным и конечным положениями объекта, задать между ними анимацию движения.
      2. Щелкнуть правой кнопкой мыши на имени слоя, содержащего анимацию движения. В контекстном меню выбрать "Добавить путеводитель" или щелкнуть по соответствующей пиктограмме внизу слева.
      3. В результате в списке слоев появится новый слой, помеченный специальным значком (рис. 7.5), а имя слоя с анимацией сдвинется вправо - признак того, что этот слой стал ведомым.
      4. Щелкнуть на имени слоя-путеводителя, чтобы сделать его активным.
      5. В ключевом кадре этого слоя любым инструментом рисования контуров нарисовать траекторию движения объекта. Эта линия не должна содержать пересекающиеся участки, разрывы и не должна быть замкнутой.
      6. Выделить ключевые кадры анимации и в панели свойств кадра (включив анимацию движения) задать:
      7. "Ориентировать по пути", если нужно сориентировать ось симметрии объекта по направляющей линии;
      8. "Привязать", так как надо привязать точку регистрации объекта к направляющей движения (Без этого параметра объект не захочет двигаться по кривой!).
    • Протестировать фильм.

    Основные ошибки при направлении объекта по заданному пути две: учащиеся не привязывают объект во втором ключевом кадре или направляющая линия имеет мелкие (видимые только при большом увеличении) разрывы .

    Выполним еще одно мини-упражнение - движение карандаша по бумаге. Для этого:

    1. В первом ключевом кадре нарисуем карандаш или импортируем его изображение из клип- арта в векторном формате.
    2. Сгруппируем изображение карандаша, инструментом "Свободное преобразование" повернем карандаш так, как он выглядит со стороны при письме (можно расположить карандаш в левой части монтажного стола, поскольку пишем мы слева направо).
    3. В данном случае очень важно расположение точки регистрации нашего объекта - поставим ее на кончик грифеля карандаша.
    4. Через 30-40 кадров создадим последний ключевой кадр анимации.
    5. В нем перенесем изображение карандаша в другое место монтажного стола, Можно чуть-чуть повернуть его.
    6. Выделим все кадры одновременно, "протянув" курсор мыши вдоль полоски кадров, и в панели свойств выберем анимацию движения и поставим "галочки" рядом с параметрами "Ориентировать по пути" и "Привязать".
    7. Добавим слой, управляющий движением, - путеводитель.
    8. В ключевом кадре этого слоя нарисуем траекторию движения. Проверим, что полоска промежуточных кадров совпадает с длиной нашей анимации; ключевого кадра в конце не нужно.
    9. Протестируем фильм.
    10. Возможно, вы все сделали аккуратно и карандашик начал движение по нарисованному пути, но наш карандаш вертится вокруг кривой как ненормальный. Отключим галочку около параметра "Ориентировать по пути" - движение карандаша стало реалистичней.

    Обратите внимание: траектория пути объекта невидима в режиме тестирования фильма и не будет видна в готовом фильме. Если вы хотите видеть траекторию в фильме, ее надо скопировать и вставить на любой другой (видимый) слой (в меню редактирования существует команда "Вставить на место").

    Вот и все! Основы автоматической анимации в программе Flash нами изучены. Осталось только познакомиться с более сложными приемами, чтобы стать настоящими профессионалами.

    Примерные вопросы для контроля

    1. Как отредактировать текст?
    2. Как превратить текст в "нарисованные буквы"?
    3. Для каких целей применяют анимацию движения?
    4. Чем анимация движения отличается от анимации формы?
    5. Чем анимация движения отличается от пошаговой анимации?
    6. Для каких объектов можно создать анимацию движения?
    7. Каким образом задаются настройки анимации движения?
    8. Для чего и как создается слой-путеводитель?