Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript
Шрифт:
Рисунок 1.14. Диалоговое окно Bitmap Properties позволяет задавать степень сжатия растра, включить и отменить сглаживание и повторить импорт при помощи кнопки Update (Обновить)
Для того чтобы преобразовать растровое изображение в векторное, выделите его на рабочем поле и выберите команду Modify → Trace Bitmap (Изменить → Трассировать растр). При этом на экране появится диалоговое окно, показанное на рис. 1.15.
Функция Trace Bitmap заменяет растровое изображение набором закрашенных векторных областей. В большинстве случаев это приводит к ухудшению качества рисунка
Совет
Многие художники преобразуют растровое изображение в векторное на одном из этапов его создания. Например, можно нарисовать что-нибудь на бумаге, отсканировать изображение в файл, а затем трассировать полученный растр в векторное изображение. Многие художники используют для преобразования не Flash, а программы типа Adobe Streamline. Затем изображение импортируется во Flash. После этого художник должен довольно много потрудиться, чтобы изображение выглядело так, как было задумано.
Звуки
Импорт звуковых файлов во Flash осуществляется способом, аналогичным импорту растровых изображений. Flash импортирует стандартные звуковые форматы: AIFF, MP3, Sun AU и Wave.
После того как файл импортирован во Flash, двойным щелчком мыши по его имени в библиотеке можно открыть диалоговое окно Sound Properties (Свойства звука) – см. рис. 1.16.
Рисунок 1.16. Диалоговое окно Sound Properties позволяет задавать степень сжатия звукового файла при включении его в конечный Flash-ролик
Обычно звуковые элементы перетаскивают на временную шкалу и помещают в ключевой кадр. Когда начинает воспроизводиться ключевой кадр, запускается воспроизведение соответствующего звукового файла. Параметры звукового файла, прикрепленного к кадру, можно настроить, вызвав соответствующую ему панель Sound (Звук).
Совет
Настройка степени сжатия звукового файла в диалоговом окне Sound Properties необходима в случае, если для вас важно качество звука в конечном ролике. Например, использование компрессии MP3 со скоростью воспроизведения 16 Кб/с даст звук среднего качества, подходящий для специальных эффектов и т. п. Однако, если вы используете качественную музыку, вам понадобится скорость 32 Кб/с или даже 64 Кб/с. Советуем поэкспериментировать с различными настройками и подобрать их таким образом, чтобы получить звук хорошего качества и одновременно занимающий как можно меньше места. При сохранении ролика вы можете также установить настройки по умолчанию, которые будут применяться для всех звуков ролика.
Показанная на рис. 1.17 панель Properties позволяет установить способ запуска звукового файла, его повторение и даже применить эффект его постепенного исчезновения. Так как в нашу задачу не входит использование этих свойств звука, не будем рассказывать о них подробно.
Рисунок 1.17. Панель Properties служит для настройки звуковых файлов, находящихся на временной шкале
Вместо этого рассмотрим, как с помощью команд ActionScript запустить звуковой файл, а также настроить время и способ его воспроизведения.
В случае, если на временной шкале звук отсутствует, Flash не включит его в конечный файл, и попытка ActionScript запустить его не удастся.
Чтобы обеспечить включение звука в конечный файл, необходимо установить свойства связи (см. рис. 1.6). Для ссылок на звуковой файл в ActionScript следует использовать имя, назначенное данному файлу в диалоговом окне Linkage Properties.Организация ролика
Процесс организации ролика более важен для программиста на Action Script, чем для Flash-аниматоров. Символам в библиотеке должны быть присвоены содержательные имена. При необходимости их надо систематизировать по каталогам. Слои на главной временной шкале должны обеспечивать легкий доступ к различным элементам рабочего поля.
Библиотека
Организация библиотеки осуществляется посредством создания каталогов внутри палитры Library. Каталоги выполняют такие же функции, как и каталоги (директории) вашей операционной системы. Вы можете создавать каталоги и хранить в них различные элементы библиотеки. Например, если у вас есть 52 графических изображения для представления колоды из 52 карт, вы можете поместить их в папку под названием cards (карты). Это значит, что все 52 карты будут отображаться как один элемент библиотеки (если содержащая их папка закрыта). Развернув данный элемент, вы получите доступ к имеющимся в нем графическим изображениям.
Для того чтобы создать каталог, откройте палитру Library и из всплывающего меню в правом верхнем углу выберите команду New Folder (Новая папка). Доступ к содержимому папки осуществляется очень просто (нажатием на ее изображение мышью). При этом вам не придется ссылаться на имя каталога ни при помощи инструментов анимации, ни
в программе ActionScript.Палитра Library включает еще несколько инструментов для организации библиотеки. Например, вы можете упорядочить ее содержимое по любому параметру, указанному в заголовках столбцов. На рис. 1.18 показана полностью развернутая палитра Library. Если вы хотите упорядочить библиотеку по дате последнего изменения (вариант Date Modified), просто щелкните мышью по заголовку столбца. Небольшая кнопка с изображением в форме пирамиды, расположенная справа от заголовков столбцов, позволяет упорядочить содержимое по возрастанию или по убыванию.
Рисунок 1.18. Развернутый каталог в палитре Library
Благодаря такой организации вы можете узнать, какие элементы библиотеки используются и как часто. Здесь, конечно, не учитывается их использование в программах ActionScript.
Кадры
Маркировка кадров в ролике необходима программисту на ActionScript для того, чтобы задать в программе нелинейный переход ролика с одного кадра на другой. Присвоить имена кадрам можно в панели Properties.
В ActionScript имеется возможность ссылаться на номера кадров, однако мы не советуем этого делать. Почему? Предположим, вы написали программу, задающую переход от кадра 7 на кадр 13, а затем на кадр 8. После этого решили добавить кадр перед кадром 1. Кадры, которые раньше имели номера 7, 13 и 8, получат номера 8, 14 и 9, и вам придется менять программу в трех местах.
Присвоив кадрам имена, вы можете ссылаться на эти имена в программе. При этом вне зависимости от количества добавленных и удаленных кадров вы всегда будете уверены, что ключевой кадр сохранил свое имя.
Слои
Хотя в большинстве случаев программы, написанные на ActionScript, не манипулируют слоями, слои являются ценным инструментом для организации ролика. Вы можете и должны использовать разные слои для меток, кода ActionScript и графических объектов. На рис. 1.19 показан пример правильной организации ролика при помощи слоев.
Двойным щелчком мыши по небольшой пиктограмме слева от каждого слоя можно вызвать диалоговое окно Layer Properties (Свойства слоя) – см. рис. 1.20. Слою можно задать, например, свойство Outline (Контур), тогда все изображения данного слоя будут отображаться в виде контуров. Данный режим действует только в процессе работы в среде Flash; при просмотре swf-файла изображение примет обычный вид.
Применяйте слои для организации не только главной временной шкалы, но и клипов, графических изображений и кнопок.
Сцены
Сцены являются более высоким уровнем организации роликов во Flash. Каждый Flash-ролик состоит из одной или нескольких сцен. В большинстве примеров, рассматриваемых в данной книге, используется лишь одна сцена, поэтому вы можете просто забыть об их существовании.
Тем не менее, сцены могут служить прекрасным организационным инструментом. Они представляют собой последовательное сочетание нескольких роликов, образующих одно целое. Каждая сцена имеет свою временную шкалу. На рис. 1.21 показана панель Scene (Сцена), которая включает три сцены. Они воспроизводятся точно в указанном порядке, хотя ActionScript может игнорировать его и воспроизводить сцены в любой последовательности и даже переходить с кадра одной сцены на кадр другой сцены.
Рисунок 1.21. Панель Scene позволяет создавать и по-разному организовывать сцены вашего ролика
Нерабочая область
Существует одна область интерфейса Flash, чрезвычайно полезная программисту на ActionScript, однако редко упоминаемая в книгах, подобных этой. Это область, которая находится за пределами рабочего поля. Взгляните на рис. 1.1 и обратите внимание на серую область вокруг рабочего поля, расположенного в центре окна. В эту область вы можете помещать элементы. При воспроизведении ролика в браузере пользователя или в программе Flash Player данная область не будет видна.
В нерабочей области можно, например, разместить небольшой клип с написанным для него кодом ActionScript. В отличие от кода в главной временной шкале, выполняющегося один раз, ActionScript-код клипа будет выполняться в каждом кадре.Внимание!
Вероятность того, что пользователь увидит нерабочую область, все же существует. Если изменение масштаба ролика выполняется во Flash Player, окне предварительного просмотра Flash или в браузере, ролик старается сохранить свои пропорции, и некоторые области, расположенные выше или ниже рабочего поля, могут быть видны. Этого не произойдет, если поместить ролик в Web-страницу, используя правильные тэги (об этом рассказывается ниже).