Commit graph

2935 commits

Author SHA1 Message Date
Richard Davey
7d80a7cce0 Added Emitter.getBounds and viewBounds culling 2023-01-05 17:58:20 +00:00
Richard Davey
4e642eb994 Added documentation and sort properties 2023-01-05 14:23:41 +00:00
Richard Davey
1bf231f549 Updated TypeDefs 2023-01-05 14:23:28 +00:00
Richard Davey
493289367e Use sortCallback 2023-01-05 14:23:17 +00:00
Richard Davey
95f3440784 Added sortProperty and sortOrderAsc properties and code. Reworked depthSortCallback. 2023-01-04 16:01:39 +00:00
Richard Davey
32d2f629cb Added matrix docs and destroy them on shutdown 2023-01-03 22:13:41 +00:00
Richard Davey
9c7ca72145 Updated jsdocs 2023-01-03 22:10:57 +00:00
Richard Davey
ada620b522 The add and remove processes can set the manager property. 2023-01-03 21:45:29 +00:00
Richard Davey
73dd13d3a1 * ParticleEmitterManager.addParticleProcessor is a new method that allows you to add a Particle Processor instance to the Emitter Manager. The old createGravityWell method now uses this. * ParticleEmitterManager.removeParticleProcessor is a new method that will remove a Particle Processor from an Emitter Manager. * ParticleEmitterManager.processors is a new List property that contains all of the Particle Processors belonging to the Emitter Manager. * The ParticleEmitterManager.wells property has been removed. You should now use the new processors property instead, they are functionally identical. 2023-01-03 21:31:19 +00:00
Richard Davey
f1c300a3e9 Added t param to jsdocs 2023-01-03 21:28:00 +00:00
Richard Davey
a177b9ecd1 Updated jsdocs and moved lifeCurrent bail out 2023-01-03 21:27:50 +00:00
Richard Davey
bb4e446930 Revised GravityWell config 2023-01-03 21:09:15 +00:00
Richard Davey
425a5340e1 GravityWell now extends the ParticleProcessor 2023-01-03 21:09:05 +00:00
Richard Davey
1850d61011 Created the ParticleProcessor class 2023-01-03 21:08:55 +00:00
Richard Davey
ff3406ea0e Fixed scale override 2023-01-03 21:08:43 +00:00
Richard Davey
965d7a525a Fixed scale setter and added kill method 2023-01-03 18:35:32 +00:00
Richard Davey
91ffc0da74 Fixed scale config 2023-01-03 18:35:18 +00:00
Richard Davey
4ea68e9d12 Added overlap method and fixed iterator order 2023-01-03 17:44:30 +00:00
Richard Davey
87e15a4715 Added Particle.bounds and getBounds method 2023-01-03 17:44:11 +00:00
Richard Davey
9e10ee09ce Added getWorldTransformMatrix 2023-01-03 13:14:40 +00:00
Richard Davey
42b89ae484 Testing getBounds 2023-01-03 13:14:29 +00:00
Richard Davey
bc1bc3baba Destroy the EmitterOps 2023-01-03 12:32:15 +00:00
Richard Davey
4977160222 Call setPosition instead of resetPosition 2023-01-03 12:30:48 +00:00
Richard Davey
afa81ae221 * EmitterOp._onEmit is a new private reference to the emit callback function, if specified in the emitter configuration. It is called by the new EmitterOp.proxyEmit method, to ensure that the Emitter current property remains current. * EmitterOp._onUpdate is a new private reference to the update callback function, if specified in the emitter configuration. It is called by the new EmitterOp.proxyUpdate method, to ensure that the Emitter current property remains current. * EmitterOp.destroy is a new method that nulls all references. This is called automatically when a ParticleEmitter is itself destroyed. 2023-01-03 12:30:34 +00:00
Richard Davey
ad93e05ec4 The Particle.resetPosition method has been renamed to setPosition and it now takes optional x/y parameters. If not given, it performs the same task as resetPosition did in earlier versions. 2023-01-03 12:23:35 +00:00
Richard Davey
799ee5a84d No need for config in constructor
Current property tracks what's going on
Method is cached on creation and doesn't change
onChange method handles value update only without needing to invoke setMethod again
2023-01-02 23:42:49 +00:00
Richard Davey
dccc27b83c Lots of updates, including ...
No need to pass config to EmitterOp constructor
Always call EmitterOp.loadConfig
No need to check if 'config' exists, as it always should
setEmitZone now swaps the active zone
Emit Zones can have -1 total (infinity)
Quantity emit called properly
Getters now use new 'current' property, so they all work properly
2023-01-02 23:41:09 +00:00
Richard Davey
5efed3989c Updated docs 2023-01-02 23:38:06 +00:00
Richard Davey
717367a3f9 Added 'randomRangedIntEmit' and 'int' flag 2023-01-02 18:44:34 +00:00
Richard Davey
b10835d599 Update ParticleEmitter.js 2023-01-02 18:18:40 +00:00
Richard Davey
2ed12f208b Added AlphaSingle and FX components and applied during rendering 2023-01-02 18:18:28 +00:00
Richard Davey
468bf7821d Updated copyright year 2023-01-02 17:36:27 +00:00
Richard Davey
716ca4e784 Added DEATH_ZONE event and removed 'emitter' from event names 2023-01-02 17:32:40 +00:00
Richard Davey
50182bfe13 Refactored counters a little. Added 'resetCounters', added emit zone totals and indexes. 2023-01-02 17:12:11 +00:00
Richard Davey
f848b1dbe6 Added emit zone total property 2023-01-02 16:51:56 +00:00
Richard Davey
77ec0b55b8 Call the new emit and death zone emitter methods. 2022-12-30 18:59:07 +00:00
Richard Davey
4bd740acb4 Allow arrays of emit and death zones. Add emit zone counter. Add methods to get emit and death zones. 2022-12-30 18:58:56 +00:00
Richard Davey
fc046b4d5b Create DeathZoneObject.js 2022-12-30 18:58:30 +00:00
Richard Davey
9f34aa5e14 Create EmitZoneObject.js 2022-12-30 18:58:27 +00:00
Richard Davey
e737db215f Adding support for multiple death and emission zones 2022-12-27 18:54:26 +00:00
Richard Davey
129033a306 Added optional Float32Array 2022-12-27 18:25:36 +00:00
Richard Davey
807945bf60 Added STOP and COMPLETE events 2022-12-23 17:29:18 +00:00
Richard Davey
23d5ee7955 Fixed jsdocs 2022-12-23 17:28:56 +00:00
Richard Davey
cdd1044b03 Added stopAfter property and logic. Added counters typed array. Fixed frequency calculation. 2022-12-22 18:51:40 +00:00
Richard Davey
1d8bcc5408 Added duration to Emitter.start method 2022-12-22 14:57:27 +00:00
Richard Davey
d3ed47b250 Added duration to config def 2022-12-22 14:57:16 +00:00
Richard Davey
264dcc1d8f ParticleEmitter can now interpolate particles, emits 3 new events and has a new duration option 2022-12-22 14:38:33 +00:00
Richard Davey
f0a39d8bd0 Added new Particle Emitter events 2022-12-22 14:38:11 +00:00
Richard Davey
8d0f7ee0f3 Added ability to interpolate particle onUpdate 2022-12-22 12:20:14 +00:00
Richard Davey
5f8c4ddbac Chainable 2022-12-22 11:21:30 +00:00