Обзор и описание программы Flash

На вопрос, стоящий в заголовке этого раздела, можно ответить очень кратко. Сказать что-нибудь такое: система Flash - это интегрированная среда для создания интерактивной анимации, ориентированной на World Wide Web. Однако сказать так - все равно, что не сказать ничего. Несколько раз мне приходилось быть свидетелем того, как опытный флэшер (так называют человека, подкованного в использовании технологии Flash) пытался в двух словах объяснить кому-то, чем же он, по сути дела, занимается. На вопрос о том, для чего нужна эта программа, после непродолжительного раздумья следовал лаконичный ответ: «для всего». И, надо сказать, что в этом есть доля правды. Вспомните, например, какие размеры обычно имеют файлы даже относительно коротких видеороликов в формате AVГили MPEG. В самом лучшем случае это как минимум 1-2 мегабайта.

А теперь подумайте о том, что Flash-ролики, как правило, занимают всего несколько десятков килобайт! Величина окна Flash-ролика при этом может достигать чуть ли не полного экрана, хотя большинство из нас привыкло к тому, что увеличение высоты и ширины окна ролика ведет к катастрофическому разрастанию размера файла. Собственно говоря, так и происходит в роликах форматов AVI или MPEG, но для роликов Flash этой проблемы не существует!

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

В четвертой версии QuickTime, правда, есть поддержка интерактивности, но на довольно примитивном уровне. Кстати, она была введена именно для совместимости со средствами Flash. Конечно, не «съедающую» много дискового пространства анимацию на веб-странице можно «сотворить» и другими способами. Наиболее распространенный из них - это перемещение объектов с помощью сценариев JavaScript. Однако в этом случае необходимо стать аскетом и вручную программировать то, для чего в программе Flash требуется сделать движения мыши. Например, чтобы переместить с помощью сценария JavaScript какой-либо объект по окружности, спирали или, тем более, произвольной кривой, придется всерьез вспоминать математику. А в рамках системы Flash можно просто нарисовать на экране траекторию движения любым удобным инструментом. Более того, сами объекты легко заставить изменяться при движении! Таким образом, программу Flash можно использовать и для морфинга (изменения формы объектов). А чего стоит озвучивание пользовательских событий! Один мой знакомый в свое время с ног сбился, отыскивая возможность озвучить нажатие пользователя на клавиши каким-нибудь традиционным методом, например, используя сценарий JavaScript. Надо ли говорить, что у него так ничего толком и не вышло. А будь тогда в его распоряжении Flash, он бы справился с такой задачей за несколько минут!

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

Что можно и что нельзя делать программа Flash.

Итак, давайте вкратце разберемся, какие же возможности, вкратце, предоставляет нам эта удивительная программа под названием Flash. Во-первых, конечно, она позволяет нам легко рисовать изображения. При этом она может брать на себя заботу о ровности линий и вообще всячески «исправлять» неуклюжие движения пользователя (что особенно актуально, если рисовать с помощью мыши, а не с помощью графического планшета). Можно также легко создавать многослойные изображения. Далее, используя программу Flash, можно компоновать текстовую информацию, а также создавать формы, в которые пользователь должен ввести какие-либо данные. Эти пользовательские формы чем-то напоминают формы, создаваемые средствами HTML, и могут действовать подобно им. Текстовые поля способны динамически изменяться. Существуют также различные дополнительные возможности, например, очень удобен инструмент для кернинга и трекинга.

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

Анимация, создаваемая средствами Flash, может сопровождаться звуком, причем можно легко синхронизировать нужные кадры с определенными звуковыми эффектами, даже если первоначальная фонограмма непрерывна. Любое пользовательское событие, например, нажатие кнопки мыши или какой-нибудь клавиши на клавиатуре компьютера также можно озвучить. С помощью программы Flash можно автоматически генерировать код HTML для веб-страниц, в которых используются ролики Flash. Кроме того, результат работы можно экспортировать в другие распространенные форматы, например, получить анимированный GIF-файл или создать отдельный исполняемый файл ролика, который запускается как программа. При таком способе воспроизведения из роликов Flash можно запускать внешние программы.

Однако ни одна программа не вместит в себя все, что можно. Необходимо четко представлять себе, что в системе Flash, несмотря на удобный интерфейс, отсутствуют некоторые типичные возможности специализированных графических редакторов. Например, невозможно наложение теней и применение фильтров, типа тех, что доступны в программе Adobe PhotoShop. Отсутствует также инструментарий для создания трехмерных объектов (как, например, в 3D Studio MAX). Довольно бедны возможности редактирования звука. Итак, если вы хотите использовать в своем ролике трехмерные сцены или хитро отредактированный звук, то соответствующие фрагменты будущего ролика лучше подготовить заранее с помощью специализированных программ. Однако, прежде чем бросаться редактировать объекты в других программах, задумайтесь. Может быть, для вашей цели нет необходимости пользоваться специальными экзотическими средствами? Все-таки, программа Flash (особенно в графическо-анимационной части) предоставляет возможности, очень близкие к профессиональным программным пакетам, а в некоторых случаях даже превосходит их с точки зрения удобства использования. Вообще, мне кажется, что удобство использования было чуть ли не основной задачей создателей этой многосторонней программы. В старых версиях Flash даже команды сценариев были очень развернутыми, чтобы быть с ходу понятными любому непрограммисту (хотя в этом был явный перебор, так что в последней версии сценарии стали более привычны для взгляда программиста). Примечательно, что даже некоторые совсем элементарные операции выполнить в программе Flash гораздо удобнее, чем во многих других программах, за счет продуманности пользовательского интерфейса.