Welcome, Guest
Want to take part in these discussions? Sign in if you have an account, or apply for one below
-
- CommentAuthornewsaint2020
- CommentTimeDec 14th 2009
Hi, I'm very new to particle systems so please bear with me. I'm trying to expand the LogoTween example to Tween 3 images with bitmapdata objects (bitmapdata, bitmapdata2, bitmapdata3) particles. After 8 hours of working on this, when I run the code below I just get the first image that appears then disappears. Can anyone help with figuring out how to alter the LogoTween example to meet these needs? Thanks.
---------
function myImagesLoaded(e:Event):void
{
//Initialize
/*emitter = new Emitter2D();
particles = Particle2DUtils.createRectangleParticlesFromBitmapData(bitmapdata, 10, emitter.particleFactory,0, 0 );
emitter.addExistingParticles( particles, false );
var rect:Rectangle=bitmapdata.rect;
renderer = new BitmapRenderer(rect,false);
renderer.addFilter( new BlurFilter( 1, 1, 100 ) );
renderer.addFilter( new ColorMatrixFilter( [ 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0.99,0 ] ) );
renderer.addEmitter( emitter );
addChild( renderer );
emitter.start();
stage.addEventListener( MouseEvent.CLICK, explode );*/
startEmitter = new Emitter2D();
tween1Emitter = new Emitter2D();
tween2Emitter = new Emitter2D();
tween3Emitter = new Emitter2D();
particles = Particle2DUtils.createRectangleParticlesFromBitmapData(bitmapdata, 20, tween1Emitter.particleFactory,0, 0 );
particles2 = Particle2DUtils.createRectangleParticlesFromBitmapData(bitmapdata2, 20,tween2Emitter.particleFactory, 0, 0 );
particles3 = Particle2DUtils.createRectangleParticlesFromBitmapData(bitmapdata3, 20,tween3Emitter.particleFactory,0, 0 );
//startEmitter.counter = new Blast( 0 );
//startEmitter.addInitializer( new ColorInit( 0xFFFFFF00, 0xCC6600 ) );
startEmitter.addInitializer( new Lifetime( 6 ) );
startEmitter.addInitializer( new Position( new BitmapDataZone( bitmapdata, bitmapdata.width , bitmapdata.height ) ) );
startEmitter.addAction( new Move() );
startEmitter.addAction( new Age( ) );
startEmitter.addAction( new RotateToDirection() );
startEmitter.addAction( new TweenToZone( new BitmapDataZone( bitmapdata, bitmapdata.width , bitmapdata.height ) ) );
tween1Emitter.addInitializer( new Lifetime( 6 ) );
tween1Emitter.addAction( new Move() );
tween1Emitter.addAction( new Age( ) );
tween1Emitter.addAction( new RotateToDirection() );
tween1Emitter.addAction( new TweenToZone( new BitmapDataZone( bitmapdata2, bitmapdata2.width , bitmapdata2.height ) ) );
tween2Emitter.addInitializer( new Lifetime( 6 ) );
tween2Emitter.addAction( new Move() );
tween2Emitter.addAction( new Age( ) );
tween2Emitter.addAction( new RotateToDirection() );
tween2Emitter.addAction( new TweenToZone( new BitmapDataZone( bitmapdata3, bitmapdata3.width , bitmapdata3.height ) ) );
tween3Emitter.addInitializer( new Lifetime( 6 ) );
tween3Emitter.addAction( new Move() );
tween3Emitter.addAction( new Age( ) );
tween3Emitter.addAction( new RotateToDirection() );
tween3Emitter.addAction( new TweenToZone( new BitmapDataZone( bitmapdata, bitmapdata.width , bitmapdata.height ) ) );
startEmitter.addExistingParticles( particles, false );
/*tween1Emitter.addExistingParticles( particles, false );
tween2Emitter.addExistingParticles( particles2, false );
tween3Emitter.addExistingParticles( particles3, false );*/
var rect:Rectangle=bitmapdata.rect;
renderer = new BitmapRenderer(rect,false);
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.95,0 ] ) );
renderer.addEmitter( startEmitter );
renderer.addEmitter( tween1Emitter );
renderer.addEmitter( tween2Emitter );
renderer.addEmitter( tween3Emitter );
addChild( renderer );
startEmitter.addEventListener( ParticleEvent.PARTICLE_DEAD, moveToTween1 );
tween1Emitter.addEventListener( ParticleEvent.PARTICLE_DEAD, moveToTween2 );
tween2Emitter.addEventListener( ParticleEvent.PARTICLE_DEAD, moveToTween3 );
tween3Emitter.addEventListener( ParticleEvent.PARTICLE_DEAD, moveToTween1 );
startEmitter.start();
tween1Emitter.start();
tween2Emitter.start();
tween3Emitter.start();
}
function moveToTween1( event:ParticleEvent ):void
{
var dyingParticle:Particle2D = event.particle as Particle2D;
var newParticle:Particle2D = tween1Emitter.particleFactory.createParticle() as Particle2D;
newParticle.x = dyingParticle.x;
newParticle.y = dyingParticle.y;
newParticle.color = dyingParticle.color;
tween1Emitter.addExistingParticles([newParticle], false );
}
function moveToTween2( event:ParticleEvent ):void
{
var dyingParticle:Particle2D = event.particle as Particle2D;
var newParticle:Particle2D = tween2Emitter.particleFactory.createParticle() as Particle2D;
newParticle.x = dyingParticle.x;
newParticle.y = dyingParticle.y;
newParticle.color = dyingParticle.color;
tween2Emitter.addExistingParticles( [newParticle], false );
}
function moveToTween3( event:ParticleEvent ):void
{
var dyingParticle:Particle2D = event.particle as Particle2D;
var newParticle:Particle2D = tween3Emitter.particleFactory.createParticle() as Particle2D;
newParticle.x = dyingParticle.x;
newParticle.y = dyingParticle.y;
newParticle.color = dyingParticle.color;
tween3Emitter.addExistingParticles( [newParticle], false );
} -
- CommentAuthornewsaint2020
- CommentTimeDec 14th 2009
Oh, I forgot to remove the commenting marks from:
/*tween1Emitter.addExistingParticles( particles, false );
tween2Emitter.addExistingParticles( particles2, false );
tween3Emitter.addExistingParticles( particles3, false );*/
The results I got included this coding without the comment marks.
Thanks.
1 to 2 of 2
