Так что средства трансформационной анимации Flash не так уж и бедны, как вы могли подумать, читая главу 12, где подробно описывались оба вида анимации.
Кроме меньшей трудоемкости, трансформационная анимация имеет еще одно достоинство перед покадровой: она занимает меньше места. В самом деле, вместо того, чтобы хранить все кадры фильма, программа записывает в файл только несколько чисел - параметры функции, реализующей эту анимацию. Сравните объем десятка изображений, пусть даже и векторных, и объем, занимаемый этими числами. Даем гарантию - это сравнение будет отнюдь не в пользу покадровой анимации.
Основным недостатком трансформационной анимации является ее бедность. Хоть Flash и предлагает нам достаточно мощные средства "оживить" изображения "малой кровью", красивые и сложные мультфильмы вы из одних трансформаций не сделаете. Если вы мечтаете о карьере в художественной анимации, то - увы!.. - готовьтесь опять же рисовать бесчисленные кадры, один за другим, один за другим...
Глава 15. Слои
И поговорим о слоях. Поскольку без слоев более-менее сложной трансформационной анимации все равно не создашь. Да и при создании покадровой анимации слои могут стать серьезным подспорьем. Если, конечно, научиться ими пользоваться...
Слой (в терминологии Flash - layer) можно рассматривать как лист прозрачной пленки, лежащий на рабочем листе Flash. Вы можете рисовать на слое, используя изученные в главе 5 инструменты рисования. Кроме того, вы можете класть поверх этого слоя или под ним другие слои, на которых тоже что-то нарисовано. И, наконец, можно легко переключаться между слоями, чтобы работать с нарисованной на них графикой. Каждый слой имеет уникальное имя, с помощью которого он однозначно идентифицируется.
Выясним теперь преимущества, даваемые слоями.
□ В главе 5 вы познакомились с фрагментацией и слиянием графических фрагментов. В качестве борьбы с этим явлением предлагались группировка, преобразование фрагмента графики в образец и "разнесение" фрагментов по разным слоям. В самом деле, если какие-либо графические фрагменты находятся в разных слоях, то они не будут ни фрагментироваться, ни сливаться. А все потому, что они не соприкасаются друг с другом.
□ Вы уже знаете, что методом трансформации движения можно анимировать только один графический элемент в слое. Но если слоев может быть сколько угодно, то и количество анимированных элементов тоже не ограничено. Каждый анимированный элемент находится в своем слое, не мешая, таким образом, другим анимипоняиным элементам. Единственный недостаток такого подхода: в сложных фильмах слоев может быть очень много.
□ Создание некоторых специальных эффектов, таких, как слои-направляющие и маскирующие слои.
Еще нужно сказать, что слои сами по себе не увеличивают размер файла изображения Flash. Увеличивает его размер только графика, расположенная в этих слоях.
Но мы также знаем, что трансформацию движения можно применить над единственным элементом в слое. Выходит, что нам для достижения своей цели нужно "разбросать" все буквы надписи Flash по разным слоям! Но как это сделать? Неужели придется создавать все пять слоев, рисовать на них буквы и следить, чтобы они находились на своих местах? Нет ли другого способа сделать это?
Есть. Flash содержит встроенные средства для распределения выделенных графических элементов по разным слоям. Таким образом, если вы выберете несколько графических элементов, Flash создаст нужное количество новых слоев и поместит в них эти элементы. Распределенные по слоям элементы пропадут с изначального слоя, где они находились до распределения, остальное же содержимое этого слоя останется нетронутым.
Управлениеслоями
Вы можете добавить новый слой, нажав кнопку InsertLayer, расположенную в нижней части списка слоев. Вы также можете выбрать пункт Layer в меню Insertили пункт InsertLayerв контекстном меню выделенного слоя. Новый слой будет вставлен в список сразу же над выделенным слоем.
Вы можете перемещать слои в списке, меняя порядок их перекрытия друг другом. Для этого просто перетащите нужный слой мышью на новое место.
Есть три способа выделить в списке нужный слой. Во-первых, вы можете щелкнуть по нему мышью в списке слоев, после этого все содержимое этого слоя на рабочем листе будет выделено. Во-вторых, вы можете щелкнуть по любому кадру анимации, созданной в этом слое. В-третьих, вы можете просто выделить на рабочем столе один из графических фрагментов, находящихся в этом слое. (Помните: все слои прозрачны, поэтому сквозь пустое пространство слоев вы можете видеть все, что находится под ними.)
Вы можете также выделять сразу несколько слоев в списке. Если вам нужно выделить непрерывную группу слоев, щелкните по первому слою в группе, нажмите клавишу <Shift> и, удерживая ее, щелкните по последнему слою в группе. Если же вам нужно выделить несколько несвязанных слоев, сначала щелкните по первому, а потом продолжайте щелкать по остальным, удерживая нажатой клавишу <Ctrl>. Как видите, здесь работает та же методика, что и в Проводнике Windows.
Слои можно переименовывать. Для этого дважды щелкните по имени нужного слоя. После этого вместо его имени появится небольшое поле ввода, в котором будет поставлено старое имя слоя. Введите новое имя и нажмите клавишу <Enter>. Если же вы передумали менять имя слоя, нажмите клавишу <Esc>.
Удалить ненужный слой вы можете разными способами. Проще всего выделить слой, который вы хотите удалить, и нажать кнопку DeleteLayer(рис. 15.9), расположенную в нижней части списка слоев. Также вы можете перетащить ненужный слой прямо на эту кнопку. Ну и, наконец, вы можете выбрать пункт DeleteLayerв контекстном меню выделенного слоя. Учтите только, что при удалении слоя удаляется также вся расположенная в нем графика.
Слои-направляющие
При создании анимации очень часто бывает нужно, чтобы какой-либо элемент двигался по некоему пути. Таким путем может быть прямая, кривая или ломаная линия, окружность или сложный контур. Обычными средствами, которые мы изучили в главе 14, направить анимированный элемент по пути невозможно. Для этого нужно использовать специальный слой, называемый слоем-направляющей.
Маскирующиеслои
Вероятно, вам встречались изображения Flash, по которым "ползает" своего рода "прожектор" - круглое светлое пятно, "высвечивающее" изображение частями. Такие изображения встречаются довольно часто: иногда это карты звездного неба, иногда - карты земной поверхности, а иногда - какие-то "картины реальной жизни". Такое светлое пятно, "высвечивающее" в один момент времени только часть какого-либо лежащего под ним изображения, совпадающую с его размерами, называется маской, слой, на котором оно находится, - маскирующим слоем, а "высвечиваемое" маской изображение - маскируемым изображением. В случае Flash маскируемое изображение находится в маскируемом слое.
Вы можете думать, что маска - это отверстие в непрозрачном маскирующем слое. (Обычно слои, как вы знаете, прозрачны.) Сквозь это отверстие можно видеть все, что лежит под этим слоем. Отверстие может быть любым графическим фрагментом: геометрической фигурой, экземпляром (только не кнопкой) или текстовым блоком. Наконец, это отверстие может быть ани-мировано методами трансформационной анимации.
Глава 16. Импорт анимации и видео
Об импорте графики мы уже говорили. Также упоминали и о том, что для каждой задачи существует свой идеальный инструмент. Ну и, конечно, мы достаточно подробно разъяснили, какие задачи решает MacromediaFlash. Все это было описано в главе 8, где рассказывалось об импорте статичной графики, и, пожалуй, повторять все это здесь - значит зря расходовать бумагу.
И все же мы кое-что скажем. Как-никак, статичная графика и анимация - вещи очень разные, а во многом - диаметрально противоположные.
Прежде всего, нужно сказать, что Flash позволяет как внедрять импортированное видео в файл документа Flash, так и создавать ссылку на внешний видеофайл. В первом случае говорят о внедренном в документ Flash клипе, а во втором - о клипе, связанном с документом Flash. Маленькие видеофайлы, как правило, внедряются в документ Flash, а большие - связываются с ним. К несчастью, поддерживается только связывание с файлами формата QuickTime.
Теперь поговорим о собственно импорте внешнего видео. И укажем, какие файлы лучше внедрять, а какие - связывать.
Чаще всего приходится импортировать во Flash фильмы, созданные в самом Flash, но другими художниками. Например, вы можете "позаимствовать" удачные анимированные элементы для своего изображения или фигурные кнопки для своей Flash-программы. (О программировании во Flash см. часть 4 этой книги.) Конечно, эти элементы могут быть помещены в обычные или разделяемые библиотеки Flash, но зачастую они просто "лежат" в Сети "россыпью", в виде отдельных SWF-файлов. Поскольку такие файлы имеют небольшой размер, они внедряются в документ Flash, это позволяет сократить до минимума количество файлов, необходимых для показа изображения.
Также Flash поддерживает импорт "анимации", отдельные кадры которой хранятся в пронумерованных файлах. Такие наборы изображений могут быть созданы разными графическими программами, в частности, самим Flash. Подобные файлы также внедряются в документ Flash.
Видеоклипы, сохраненные в других форматах: QuickTime, MPEG и др. (все поддерживаемые Flash видеоформаты описаны в главе 12), внедряют во Flash значительно реже. Причины этому чисто технические, и заключаются они в том, что, как правило, в таких форматах распространяются полнометражные игровые, документальные и музыкальные фильмы. А файлы, содержащие такие фильмы, занимают очень большой объем, что не может не сказаться на размерах результирующего файла Flash, а значит, на времени его загрузки. Поэтому, такие файлы практически всегда связывают с документом Flash. В результате, внешняя анимация загружается только тогда, когда в ней возникнет надобность.