I love the new Particle Designer support, thanks guys!
What is the expected behavior when attempting to change the alpha of an emitter? If an emitter is part of a Composer scene, the emitter is not affected by the scene transition (ie: ‘fade’, ‘crossFade’, etc). Using ‘transition.to’ on an emitter’s ‘alpha’ property also does not have an effect.
Here is what I am seeing so far…
- Setting the ‘alpha’ property of an emitter has no effect. Using ‘transition.to’ directly on an emitter also does not affect the alpha of the emitter.
- Adding an emitter to a group, the emitter alpha is only effected by a group alpha setting of 0 or 1 (no group alpha values in-between have an effect on the emitter)
- Using ‘transition.to’ on the ‘alpha’ property of an emitter has not effect
- Using ‘transition.to’ on a group containing an emitter only has an effect when the value reaches ‘0.0’ or ‘1.0’
Here is an example that adds a ‘transition.to’ statement to the Corona sample script ‘Samples/Graphics-Premium/ParticleEffects/One/main.lua’…
local particleDesigner = require( "particleDesigner" ) local emitter = particleDesigner.newEmitter( "fire.json" ) local finished = function(e) print("Animation done") end -- transition the alpha of the emitter transition.to( emitter, { time=5000, alpha=0.0, onComplete=finished } )
Here is another example that shows an emitter added to a group, and how the ‘transition.to’ on the group does not affect the contained emitter, but does affect the contained box in the group…
local particleDesigner = require( "particleDesigner" ) local emitter = particleDesigner.newEmitter( "fire.json" ) -- create a group local group = display.newGroup( ) group.x = display.contentWidth / 2 group.y = display.contentHeight / 2 -- add the emitter to the group group:insert( emitter ) -- add a rectangle to the group local box = display.newRect( 0, 0, 100, 100 ) group:insert( box ) -- define a transition 'onComplete' function local finished = function(e) print("Animation done") end -- transition the alpha of the group transition.to( group, { time=5000, alpha=0.0, onComplete=finished } )
Any insight appreciated. Thanks! Mark