Вот такой эффект мы должны получить в конце.
Открыли Adobe Flash. Создали новый документ.
[показать]
В нашем случае ActionScript 3.0
[показать]
Сначала нужно скачать библиотеку Flint с официального сайта http://flintparticles.org/, или здесь: https://yadi.sk/d/wNUtoMmvc34kK (в уроке используется версия 3.0.1), распаковать и установить её.
Выбираем вкладку "Правка" - Настройки.
[показать]
В открывшемся окне выбираем ActionScript - Параметры ActionScript 3.0 - ОК
[показать]
Во вкладке Дополнительные параметры ActionScript 3.0 выбираем окошко "Путь к библиотеке" и жмём иконку с жёлтой папочкой(перейти к пути)
[показать]
И уже в обзоре папок (там,куда вы её скачали) находим распакованную библиотеку Flint
[показать]
Подготовим сцену для работы. Выбираем иконку "Свойства" и жмём "Изменить"
[показать]
Меняем размеры поля, цвет фона (для удобства), частоту кадров.
[показать]
Импортируем заранее подготовленный текст на прозрачном слое (желательно короткое слово,цвет не имеет значения), или предложенный в оригинальном уроке.
[показать]
[показать]
Выравниваем картинку (текст) в пределах рабочей сцены.
[показать]
Открываем библиотеку программы и, выделив текст, жмём малый треугольничек в правом верхнем углу вкладки(библиотека, свойства).
[показать]
В выпавшем списке выбираем "Свойства"
[показать]
Поставьте галочки на Export for ActionScript и Export in frame 1 , а в поле Класс напишите «Logo» (без кавычек). Далее удалите нашу картинку (текст)со сцены.
[показать]
В первом кадре Слой1 вставьте вот этот код:
CODE
//импортируем классы
import org.flintparticles.common.actions.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.common.easing.Quadratic;
import org.flintparticles.common.events.EmitterEvent;
import org.flintparticles.common.initializers.*;
import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.emitters.Emitter2D;
import org.flintparticles.twoD.initializers.*;
import org.flintparticles.twoD.renderers.*;
import org.flintparticles.twoD.zones.*;
//создатель эффектов(частиц)
var emitter:Emitter2D = new Emitter2D();
//количество частиц
emitter.counter = new Blast( 4000 );
//цвет частиц
emitter.addInitializer( new ColorInit( 0xFF6666, 0xFFFFFF00 ) );
//время «жизни» частиц
emitter.addInitializer( new Lifetime( 6 ) );
//точка создания частиц , их «разброс»
emitter.addInitializer( new Position( new DiscZone( new Point( 5, 0 ), 10 ) ) );
//картинка которая будет состоять из частиц, её размер, место куда полетят частицы
emitter.addInitializer( new Velocity( new BitmapDataZone( new Logo( 500, 500), -250, -500) ) );
//параметры полета частиц
emitter.addAction( new Age( Quadratic.easeIn ) );
emitter.addAction( new Fade( 1.0, 0 ) );
emitter.addAction( new Move() );
emitter.addAction( new LinearDrag( 0.5 ) );
emitter.addAction( new Accelerate( 0, 70 ) );
// слушатель события пустой сцены (когда пропали все частицы)
emitter.addEventListener( EmitterEvent.EMITTER_EMPTY, restart, false, 0, true );
//область отображения частиц
var renderer:PixelRenderer = new PixelRenderer( new Rectangle( 0, 0, 710, 400 ) );
//фильтр для частиц
renderer.addFilter( new BlurFilter( 2, 2, 1 ) );
renderer.addFilter( new ColorMatrixFilter( [ 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0.96,0 ] ) );
//самое главное – показать то, что мы сделали
renderer.addEmitter( emitter );
addChild( renderer );
//точка из которой будут лететь частицы
emitter.x = 350;
emitter.y = 405;
emitter.start( );
//повторение нашего салюта
function restart( ev:EmitterEvent ):void
{
Emitter2D( ev.target ).start();
}
Тестируем ролик и экспортируем,если нас всё устраивает.
Цвет частиц можно изменить в строке:
//цвет частиц
emitter.addInitializer( new ColorInit( 0xFF6666, 0xFFFFFF00 ) )
Размер рабочей сцены меняем в следующей строке кода:
//область отображения частиц
var renderer:PixelRenderer = new PixelRenderer( new Rectangle( 0, 0, 710, 400 )
Изучайте оригинальный код, импровизируйте.
Успехов в вашем творчестве!
Оригинальный урок:
http://demiart.ru/forum/index.php?showtopic=166605