For internal usage.
Angle of each particle setter.
Variation of angle of each particle setter.
Indicate whether the owner node will be auto-removed when it has no particles left.
How many seconds the emitter wil run. -1 means 'forever'.
Emission rate of the particles.
Particles emitter modes.
Ending radius of the particles. Only available in 'Radius' mode.
Variation of the ending radius.
End size in pixels of each particle.
Variation of end size in pixels.
End angle of each particle.
Variation of end angle.
Gravity of the emitter.
Life of each particle setter.
Variation of life.
The node this component is attached to. A component is always attached to a node.
If set to true, the particle system will automatically start playing on onLoad.
Variation of source position.
Play particle in edit mode.
Acceleration of each particle. Only available in 'Gravity' mode.
Variation of the radial acceleration.
Number of degress to rotate a particle around the source pos per second. Only available in 'Radius' mode.
Variation of the degress to rotate a particle around the source pos per second.
Indicate whether the rotation of each particle equals to its direction. Only available in 'Gravity' mode.
Source position of the emitter.
Speed of the emitter.
Variation of the speed.
Starting radius of the particles. Only available in 'Radius' mode.
Variation of the starting radius.
Start size in pixels of each particle.
Variation of start size in pixels.
Start angle of each particle.
Variation of start angle.
The component stencil stage (please do not any modification directly on this object)
Tangential acceleration of each particle. Only available in 'Gravity' mode.
Variation of the tangential acceleration.
The render data assembler
The blend factor enums
The post render data assembler
Returns a value which used to indicate the onLoad get called or not.
Indicate whether the particle system is activated.
Main color for rendering, it normally multiplies with texture color.
Main color for rendering, it normally multiplies with texture color.
If set custom to true, then use custom properties insteadof read particle file.
If set custom to true, then use custom properties insteadof read particle file.
Specifies the destination blend mode.
Specifies the destination blend mode.
Indicates whether this component is enabled or not.
Indicates whether this component is enabled or not.
Indicates whether this component is enabled and its node is also active in the hierarchy.
The plist file.
The plist file.
Indicates whether the object is not yet destroyed. (It will not be available after being destroyed)
When an object's destroy
is called, it is actually destroyed after the end of this frame.
So isValid
will return false from the next frame, while isValid
in the current frame will still be true.
If you want to determine whether the current frame has called destroy
, use isValid(obj, true)
,
but this is often caused by a particular logical requirements, which is not normally required.
The materials of the model.
The materials of the model.
Current quantity of particles that are being simulated.
Particles movement type.
Particles movement type.
SpriteFrame used for particles display
SpriteFrame used for particles display
Specifies the source blend mode, it will clone a new material object.
Specifies the source blend mode, it will clone a new material object.
Indicate whether the system simulation have stopped.
Maximum particles of the system.
Maximum particles of the system.
The uuid for editor.
Clear all references in the instance.
NOTE: this method will not clear the getter or setter functions which defined in the instance of CCObject. You can override the _destruct method if you need, for example: _destruct: function () { for (var key in this) { if (this.hasOwnProperty(key)) { switch (typeof this[key]) { case 'string': this[key] = ''; break; case 'object': case 'function': this[key] = null; break; } } }
If the component's bounding box is different from the node's, you can implement this method to supply a custom axis aligned bounding box (AABB), so the editor's scene view can perform hit test properly.
The rect to store the result bounding rect
Adds a component class to the node. You can also add component to node by passing in the name of the script.
The class of component to be retrieved or to be created
Adds a component class to the node. You can also add component to node by passing in the name of the script.
A string for the class name of the component
Add a particle to the emitter.
Destroy current render data.
Returns the component of supplied type if the node has one attached, null if it doesn't.
You can also get component in the node by passing in the name of the script.
The class of component to be retrieved or to be created
Returns the component of supplied type if the node has one attached, null if it doesn't.
You can also get component in the node by passing in the name of the script.
A string for the class name of the component
Returns the component of supplied type in any of its children using depth first search.
The class of component to be retrieved
Returns the component of supplied type in any of its children using depth first search.
A string for the class name of the component
Returns all components of supplied type in the node.
The class of components to be retrieved
Returns all components of supplied type in the node.
A string for the class name of the components
Returns all components of supplied type in self or any of its children.
The class of components to be retrieved
Returns all components of supplied type in self or any of its children.
A string for the class name of the components
Get the shared material asset of the specified sub-model.
Get the material instance of the specified sub-model.
Get the actual rendering material of the specified sub-model. (material instance if there is one, or the shared material asset)
Whether or not the system is full.
Marks the render data of the current component as modified so that the render data is recalculated.
Marked necessary to update or not
When attaching to an active node or its node first activated.
onLoad is always called before any start functions, this allows you to order initialization of scripts.
This is a lifecycle method. It may not be implemented in the super class.
You can only call its super class method inside it. It should not be called manually elsewhere.
Post render data submission procedure, it's executed after assembler updated for all children. It may assemble some extra render data to the geometry buffers, or it may only change some render states. Don't call it unless you know what you are doing.
Request new render data object.
The new render data
Called to initialize the component or node’s properties when adding the component the first time or when the Reset command is used.
This function is only called in editor.
Kill all living particles.
Schedules a custom task.
If the task is already scheduled, then the interval parameter will be updated without scheduling it again.
The callback function of the task
The time interval between each invocation
The repeat count of this task, the task will be invoked (repeat + 1) times, use macro.REPEAT_FOREVER to repeat a task forever
The delay time for the first invocation, Unit: s
Schedules a task that runs only once, with a delay of 0 or larger.
The callback function of the task
The delay time for the first invocation, Unit: s
Set the shared material asset of the specified sub-model, new material instance will be created automatically if the sub-model is already using one.
Set the material instance of the specified sub-model.
Called before all scripts' update if the Component is enabled the first time.
Usually used to initialize some logic which need to be called after all components' onload
methods called.
This is a lifecycle method. It may not be implemented in the super class.
You can only call its super class method inside it. It should not be called manually elsewhere.
Stop emitting particles. Running particles will continue to run until they die.
Un-schedules a custom task.
The callback function of the task
unschedule all scheduled tasks.
Update is called every frame, if the Component is enabled.
This is a lifecycle method. It may not be implemented in the super class.
You can only call its super class method inside it. It should not be called manually elsewhere.
the delta time in seconds it took to complete the last frame
Render data submission procedure, it update and assemble the render data to 2D data buffers before all children submission process. Usually called each frame when the ui flow assemble all render data to geometry buffers. Don't call it unless you know what you are doing.
Generated using TypeDoc
Particle System base class.
Attributes of a Particle System:
cocos2d also supports particles generated by Particle Designer (http://particledesigner.71squared.com/).
'Radius Mode' in Particle Designer uses a fixed emit rate of 30 hz. Since that can't be guarateed in cocos2d,
cocos2d uses a another approach, but the results are almost identical.
cocos2d supports all the variables used by Particle Designer plus a bit more:
It is possible to customize any of the above mentioned properties in runtime. Example:
emitter.radialAccel = 15; emitter.startSpin = 0;