custom-pixi-particles 7.4.0 → 7.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +1000 -20
  2. package/dist/index.d.ts +3 -1
  3. package/dist/index.js +2 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/behaviour/SubEmitterBehaviour.d.ts +0 -0
  6. package/dist/lib/behaviour/SubEmitterBehaviour.js +1 -0
  7. package/dist/lib/behaviour/SubEmitterBehaviour.js.map +1 -0
  8. package/dist/lib/effects/DissolveEffect.d.ts +28 -0
  9. package/dist/lib/effects/DissolveEffect.js +204 -0
  10. package/dist/lib/effects/DissolveEffect.js.map +1 -0
  11. package/dist/lib/effects/GhostEffect.d.ts +32 -0
  12. package/dist/lib/effects/GhostEffect.js +123 -0
  13. package/dist/lib/effects/GhostEffect.js.map +1 -0
  14. package/dist/lib/effects/GlitchEffect.d.ts +25 -0
  15. package/dist/lib/effects/GlitchEffect.js +144 -0
  16. package/dist/lib/effects/GlitchEffect.js.map +1 -0
  17. package/dist/lib/effects/MagneticAssemblyEffect.d.ts +27 -0
  18. package/dist/lib/effects/MagneticAssemblyEffect.js +194 -0
  19. package/dist/lib/effects/MagneticAssemblyEffect.js.map +1 -0
  20. package/dist/lib/effects/MeltEffect.d.ts +27 -0
  21. package/dist/lib/effects/MeltEffect.js +188 -0
  22. package/dist/lib/effects/MeltEffect.js.map +1 -0
  23. package/dist/lib/effects/ShatterEffect.d.ts +40 -0
  24. package/dist/lib/effects/ShatterEffect.js +236 -0
  25. package/dist/lib/effects/ShatterEffect.js.map +1 -0
  26. package/dist/lib/effects/index.d.ts +12 -0
  27. package/dist/lib/effects/index.js +13 -0
  28. package/dist/lib/effects/index.js.map +1 -0
  29. package/dist/lib/emission/RandomEmission.js +3 -3
  30. package/dist/lib/emission/RandomEmission.js.map +1 -1
  31. package/dist/lib/emission/StandardEmission.js +10 -4
  32. package/dist/lib/emission/StandardEmission.js.map +1 -1
  33. package/dist/lib/emission/UniformEmission.js +10 -1
  34. package/dist/lib/emission/UniformEmission.js.map +1 -1
  35. package/dist/lib/emitter/Emitter.js +7 -1
  36. package/dist/lib/emitter/Emitter.js.map +1 -1
  37. package/dist/lib/index.d.ts +2 -0
  38. package/dist/lib/index.js +2 -0
  39. package/dist/lib/index.js.map +1 -1
  40. package/dist/lib/pixi/Renderer.js +17 -13
  41. package/dist/lib/pixi/Renderer.js.map +1 -1
  42. package/dist/lib/pixi/TestRenderer.js +17 -13
  43. package/dist/lib/pixi/TestRenderer.js.map +1 -1
  44. package/package.json +1 -1
@@ -0,0 +1,236 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { ParticleContainer, Rectangle, Sprite, Texture, Ticker } from 'pixi.js';
11
+ import ParticlePool from '../ParticlePool';
12
+ import Random from '../util/Random';
13
+ export default class ShatterEffect extends ParticleContainer {
14
+ constructor(sourceSprite, options = {}) {
15
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
16
+ const cols = (_a = options.gridCols) !== null && _a !== void 0 ? _a : 10;
17
+ const rows = (_b = options.gridRows) !== null && _b !== void 0 ? _b : 10;
18
+ const needsRotation = (_c = options.enableRotation) !== null && _c !== void 0 ? _c : true;
19
+ const needsAlpha = ((_d = options.fadeOutDuration) !== null && _d !== void 0 ? _d : 0.5) > 0;
20
+ const needsTint = options.endTint !== undefined && options.endTint !== 0xffffff;
21
+ super(cols * rows, {
22
+ vertices: true,
23
+ position: true,
24
+ uvs: true,
25
+ rotation: needsRotation,
26
+ alpha: needsAlpha,
27
+ tint: needsTint,
28
+ });
29
+ this.fragments = [];
30
+ this.isExploded = false;
31
+ this.isCleanedUp = false;
32
+ this.sourceSprite = sourceSprite;
33
+ this.options = {
34
+ gridCols: cols,
35
+ gridRows: rows,
36
+ explosionPower: (_e = options.explosionPower) !== null && _e !== void 0 ? _e : 1000,
37
+ friction: (_f = options.friction) !== null && _f !== void 0 ? _f : 0.96,
38
+ gravity: (_g = options.gravity) !== null && _g !== void 0 ? _g : 800,
39
+ turbulence: (_h = options.turbulence) !== null && _h !== void 0 ? _h : 0.2,
40
+ lifetime: (_j = options.lifetime) !== null && _j !== void 0 ? _j : 2.0,
41
+ fadeOutDuration: (_k = options.fadeOutDuration) !== null && _k !== void 0 ? _k : 0.5,
42
+ mode: (_l = options.mode) !== null && _l !== void 0 ? _l : 'radial',
43
+ explosionOrigin: (_m = options.explosionOrigin) !== null && _m !== void 0 ? _m : { x: 0.5, y: 0.5 },
44
+ blastDirection: (_o = options.blastDirection) !== null && _o !== void 0 ? _o : 0,
45
+ swirlStrength: (_p = options.swirlStrength) !== null && _p !== void 0 ? _p : 0,
46
+ randomizeScale: (_q = options.randomizeScale) !== null && _q !== void 0 ? _q : false,
47
+ endTint: (_r = options.endTint) !== null && _r !== void 0 ? _r : 0xffffff,
48
+ enableRotation: needsRotation,
49
+ rotationStrength: (_s = options.rotationStrength) !== null && _s !== void 0 ? _s : 1.0,
50
+ };
51
+ this.x = this.sourceSprite.x;
52
+ this.y = this.sourceSprite.y;
53
+ this.rotation = this.sourceSprite.rotation;
54
+ this.sourceSprite.visible = false;
55
+ }
56
+ createFragments() {
57
+ const texture = this.sourceSprite.texture;
58
+ if (!texture || !texture.valid)
59
+ return;
60
+ const scale = this.sourceSprite.scale.x;
61
+ const texFrame = texture.frame;
62
+ const stepW = texFrame.width / this.options.gridCols;
63
+ const stepH = texFrame.height / this.options.gridRows;
64
+ const anchorX = this.sourceSprite.anchor.x;
65
+ const anchorY = this.sourceSprite.anchor.y;
66
+ const originX = texFrame.width * this.options.explosionOrigin.x;
67
+ const originY = texFrame.height * this.options.explosionOrigin.y;
68
+ for (let row = 0; row < this.options.gridRows; row++) {
69
+ for (let col = 0; col < this.options.gridCols; col++) {
70
+ const x1 = Math.floor(col * stepW);
71
+ const y1 = Math.floor(row * stepH);
72
+ const x2 = Math.min(Math.floor((col + 1) * stepW), texFrame.width);
73
+ const y2 = Math.min(Math.floor((row + 1) * stepH), texFrame.height);
74
+ const currentFragW = x2 - x1;
75
+ const currentFragH = y2 - y1;
76
+ if (currentFragW <= 0 || currentFragH <= 0)
77
+ continue;
78
+ // Create a sub-texture for this fragment
79
+ const fragRect = new Rectangle(texFrame.x + x1, texFrame.y + y1, currentFragW, currentFragH);
80
+ const fragTex = new Texture(texture.baseTexture, fragRect);
81
+ const sprite = new Sprite(fragTex);
82
+ sprite.anchor.set(0.5);
83
+ const finalScale = this.options.randomizeScale ? scale * Random.uniform(0.8, 1.2) : scale;
84
+ sprite.scale.set(finalScale);
85
+ const lx = (x1 - texFrame.width * anchorX + currentFragW / 2) * scale;
86
+ const ly = (y1 - texFrame.height * anchorY + currentFragH / 2) * scale;
87
+ const dx = x1 + currentFragW / 2 - originX;
88
+ const dy = y1 + currentFragH / 2 - originY;
89
+ const dist = Math.sqrt(dx * dx + dy * dy);
90
+ const angleToOrigin = Math.atan2(dy, dx);
91
+ let vx = 0;
92
+ let vy = 0;
93
+ if (this.options.mode === 'radial' || this.options.mode === 'swirl') {
94
+ const force = (1.5 - dist / texFrame.width) * this.options.explosionPower;
95
+ const angle = angleToOrigin + Random.uniform(-this.options.turbulence, this.options.turbulence);
96
+ vx = Math.cos(angle) * force;
97
+ vy = Math.sin(angle) * force;
98
+ if (this.options.mode === 'swirl') {
99
+ const swirl = this.options.swirlStrength;
100
+ vx += Math.cos(angle + Math.PI / 2) * (dist * swirl);
101
+ vy += Math.sin(angle + Math.PI / 2) * (dist * swirl);
102
+ }
103
+ }
104
+ else if (this.options.mode === 'directional') {
105
+ const force = this.options.explosionPower * Random.uniform(0.5, 1.5);
106
+ const angle = this.options.blastDirection + Random.uniform(-this.options.turbulence, this.options.turbulence);
107
+ vx = Math.cos(angle) * force;
108
+ vy = Math.sin(angle) * force;
109
+ }
110
+ const particle = ParticlePool.global.pop();
111
+ particle.reset();
112
+ particle.x = lx;
113
+ particle.y = ly;
114
+ particle.velocity.set(vx, vy);
115
+ particle.acceleration.set(0, this.options.gravity);
116
+ particle.maxLifeTime = this.options.lifetime * Random.uniform(0.8, 1.2);
117
+ particle.lifeTime = 0;
118
+ // tslint:disable-next-line:max-line-length
119
+ particle.radiansPerSecond = this.options.enableRotation
120
+ ? Random.uniform(-12, 12) * this.options.rotationStrength
121
+ : 0;
122
+ this.fragments.push({
123
+ sprite,
124
+ particle,
125
+ initialScale: finalScale,
126
+ vz: Random.uniform(-15, 15),
127
+ z: 0,
128
+ });
129
+ this.addChild(sprite);
130
+ }
131
+ }
132
+ }
133
+ Explode() {
134
+ if (this.isExploded)
135
+ return Promise.resolve();
136
+ this.isExploded = true;
137
+ this.createFragments();
138
+ Ticker.shared.add(this.update, this);
139
+ return new Promise((resolve) => {
140
+ this.explodeResolve = resolve;
141
+ });
142
+ }
143
+ update() {
144
+ if (!this.isExploded || this.isCleanedUp)
145
+ return;
146
+ const dt = Ticker.shared.deltaMS / 1000;
147
+ for (let i = this.fragments.length - 1; i >= 0; i--) {
148
+ const f = this.fragments[i];
149
+ const p = f.particle;
150
+ p.lifeTime += dt;
151
+ p.velocity.x *= this.options.friction;
152
+ p.velocity.y *= this.options.friction;
153
+ p.velocity.y += p.acceleration.y * dt;
154
+ p.x += p.velocity.x * dt;
155
+ p.y += p.velocity.y * dt;
156
+ p.rotation += p.radiansPerSecond * dt;
157
+ f.z += f.vz * dt;
158
+ const progress = p.lifeTime / p.maxLifeTime;
159
+ // Update Sprite Properties
160
+ f.sprite.x = p.x;
161
+ f.sprite.y = p.y;
162
+ f.sprite.rotation = p.rotation;
163
+ const depthScale = Math.max(0.1, 1 + f.z / 200);
164
+ f.sprite.scale.set(f.initialScale * depthScale);
165
+ if (this.options.endTint !== 0xffffff) {
166
+ f.sprite.tint = this.lerpColor(0xffffff, this.options.endTint, progress);
167
+ }
168
+ const fadeThreshold = 1 - this.options.fadeOutDuration / p.maxLifeTime;
169
+ if (progress > fadeThreshold) {
170
+ f.sprite.alpha = Math.max(0, (1 - progress) / (1 - fadeThreshold));
171
+ }
172
+ if (p.lifeTime >= p.maxLifeTime || f.sprite.alpha <= 0) {
173
+ this.removeFragment(i);
174
+ }
175
+ }
176
+ if (this.fragments.length === 0) {
177
+ this.finish();
178
+ }
179
+ }
180
+ lerpColor(start, end, t) {
181
+ // tslint:disable-next-line:one-variable-per-declaration no-bitwise
182
+ const r1 = (start >> 16) & 0xff,
183
+ // tslint:disable-next-line:no-bitwise
184
+ g1 = (start >> 8) & 0xff,
185
+ // tslint:disable-next-line:no-bitwise
186
+ b1 = start & 0xff;
187
+ // tslint:disable-next-line:one-variable-per-declaration no-bitwise
188
+ const r2 = (end >> 16) & 0xff,
189
+ // tslint:disable-next-line:no-bitwise
190
+ g2 = (end >> 8) & 0xff,
191
+ // tslint:disable-next-line:no-bitwise
192
+ b2 = end & 0xff;
193
+ // tslint:disable-next-line:one-variable-per-declaration no-bitwise
194
+ const r = r1 + (r2 - r1) * t, g = g1 + (g2 - g1) * t, b = b1 + (b2 - b1) * t;
195
+ // tslint:disable-next-line:no-bitwise
196
+ return (r << 16) | (g << 8) | b;
197
+ }
198
+ removeFragment(index) {
199
+ const f = this.fragments[index];
200
+ if (f.particle)
201
+ ParticlePool.global.push(f.particle);
202
+ if (f.sprite) {
203
+ this.removeChild(f.sprite);
204
+ // Note: We destroy the unique fragment texture to prevent memory leaks,
205
+ // but NOT the baseTexture.
206
+ f.sprite.texture.destroy(false);
207
+ f.sprite.destroy();
208
+ }
209
+ this.fragments.splice(index, 1);
210
+ }
211
+ finish() {
212
+ var _a;
213
+ Ticker.shared.remove(this.update, this);
214
+ (_a = this.explodeResolve) === null || _a === void 0 ? void 0 : _a.call(this);
215
+ this.explodeResolve = undefined;
216
+ }
217
+ destroy(options) {
218
+ this.isCleanedUp = true;
219
+ Ticker.shared.remove(this.update, this);
220
+ this.fragments.forEach((f, i) => this.removeFragment(i));
221
+ this.fragments = [];
222
+ super.destroy(options);
223
+ }
224
+ static shatter(sprite_1) {
225
+ return __awaiter(this, arguments, void 0, function* (sprite, options = {}) {
226
+ if (!sprite.parent)
227
+ return;
228
+ const effect = new ShatterEffect(sprite, options);
229
+ const index = sprite.parent.getChildIndex(sprite);
230
+ sprite.parent.addChildAt(effect, index);
231
+ yield effect.Explode();
232
+ effect.destroy();
233
+ });
234
+ }
235
+ }
236
+ //# sourceMappingURL=ShatterEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShatterEffect.js","sourceRoot":"","sources":["../../../src/lib/effects/ShatterEffect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export { default as ShatterEffect } from './ShatterEffect';
2
+ export { default as DissolveEffect } from './DissolveEffect';
3
+ export { default as MagneticAssemblyEffect } from './MagneticAssemblyEffect';
4
+ export { default as GhostEffect } from './GhostEffect';
5
+ export { default as GlitchEffect } from './GlitchEffect';
6
+ export { default as MeltEffect } from './MeltEffect';
7
+ export * from './ShatterEffect';
8
+ export * from './DissolveEffect';
9
+ export * from './MagneticAssemblyEffect';
10
+ export * from './GhostEffect';
11
+ export * from './GlitchEffect';
12
+ export * from './MeltEffect';
@@ -0,0 +1,13 @@
1
+ export { default as ShatterEffect } from './ShatterEffect';
2
+ export { default as DissolveEffect } from './DissolveEffect';
3
+ export { default as MagneticAssemblyEffect } from './MagneticAssemblyEffect';
4
+ export { default as GhostEffect } from './GhostEffect';
5
+ export { default as GlitchEffect } from './GlitchEffect';
6
+ export { default as MeltEffect } from './MeltEffect';
7
+ export * from './ShatterEffect';
8
+ export * from './DissolveEffect';
9
+ export * from './MagneticAssemblyEffect';
10
+ export * from './GhostEffect';
11
+ export * from './GlitchEffect';
12
+ export * from './MeltEffect';
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/effects/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,0BAA0B,CAAA;AACxC,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA"}
@@ -30,9 +30,9 @@ export default class RandomEmission extends AbstractEmission {
30
30
  */
31
31
  howMany(deltaTime, particlesCount) {
32
32
  if (particlesCount < this.maxParticles) {
33
- const count = Math.round(Random.uniform(0, Math.ceil(this.emissionRate * deltaTime)));
34
- const total = particlesCount + count;
35
- return total > this._maxParticles ? this.maxParticles - particlesCount : count;
33
+ const potential = Math.ceil(this.emissionRate * deltaTime);
34
+ const count = Math.round(Random.uniform(0, potential));
35
+ return Math.min(count, this.maxParticles - particlesCount);
36
36
  }
37
37
  return 0;
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RandomEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/RandomEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEhC;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,gBAAgB;IAA5D;;QACE;;WAEG;QACH,kBAAa,GAAG,CAAC,CAAA;QAEjB;;WAEG;QACH,kBAAa,GAAG,CAAC,CAAA;QA+CjB;;;WAGG;QACH,YAAO,GAAG,GAAG,EAAE;YACb,OAAO,aAAa,CAAC,MAAM,CAAA;QAC7B,CAAC,CAAA;IACH,CAAC;IApDC;;;;OAIG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,IAAI,cAAc,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;YACrF,MAAM,KAAK,GAAG,cAAc,GAAG,KAAK,CAAA;YACpC,OAAO,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,KAAK,CAAA;QAChF,CAAC;QAED,OAAO,CAAC,CAAA;IACV,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;CASF"}
1
+ {"version":3,"file":"RandomEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/RandomEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEhC;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,gBAAgB;IAA5D;;QACE;;WAEG;QACH,kBAAa,GAAG,CAAC,CAAA;QAEjB;;WAEG;QACH,kBAAa,GAAG,CAAC,CAAA;QA+CjB;;;WAGG;QACH,YAAO,GAAG,GAAG,EAAE;YACb,OAAO,aAAa,CAAC,MAAM,CAAA;QAC7B,CAAC,CAAA;IACH,CAAC;IApDC;;;;OAIG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,IAAI,cAAc,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,CAAA;YAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAA;YAEtD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,CAAA;QAC5D,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;CASF"}
@@ -72,14 +72,20 @@ export default class StandardEmission extends AbstractEmission {
72
72
  * @return {number} - The number of particles to be emitted.
73
73
  */
74
74
  howMany(deltaTime, particlesCount) {
75
+ if (this.emissionRate <= 0)
76
+ return 0;
75
77
  const rate = 1.0 / this.emissionRate;
76
78
  let count = 0;
77
- if (particlesCount < this.maxParticles) {
78
- this._emitCounter += deltaTime;
79
- }
80
- while (particlesCount < this.maxParticles && this._emitCounter > rate) {
79
+ let virtualCount = particlesCount;
80
+ this._emitCounter += deltaTime;
81
+ while (virtualCount < this._maxParticles && this._emitCounter >= rate) {
81
82
  count++;
83
+ virtualCount++;
82
84
  this._emitCounter -= rate;
85
+ if (count > 1000) {
86
+ this._emitCounter = 0;
87
+ break;
88
+ }
83
89
  }
84
90
  return count;
85
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StandardEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/StandardEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEzD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,gBAAgB;IAA9D;;QACE;;;;WAIG;QACH,iBAAY,GAAG,CAAC,CAAA;QAEhB;;;;WAIG;QACH,kBAAa,GAAG,CAAC,CAAA;QAkBjB;;;;WAIG;QACH,kBAAa,GAAG,CAAC,CAAA;QAwCjB;;;WAGG;QACH,YAAO,GAAG,GAAG,EAAE;YACb,OAAO,aAAa,CAAC,OAAO,CAAA;QAC9B,CAAC,CAAA;IACH,CAAC;IApEC;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IASD;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;QACpC,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,cAAc,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC,YAAY,IAAI,SAAS,CAAA;QAChC,CAAC;QAED,OAAO,cAAc,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,EAAE,CAAC;YACtE,KAAK,EAAE,CAAA;YACP,IAAI,CAAC,YAAY,IAAI,IAAI,CAAA;QAC3B,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;CASF"}
1
+ {"version":3,"file":"StandardEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/StandardEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEzD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,gBAAgB;IAA9D;;QACE;;;;WAIG;QACH,iBAAY,GAAG,CAAC,CAAA;QAEhB;;;;WAIG;QACH,kBAAa,GAAG,CAAC,CAAA;QAkBjB;;;;WAIG;QACH,kBAAa,GAAG,CAAC,CAAA;QAiDjB;;;WAGG;QACH,YAAO,GAAG,GAAG,EAAE;YACb,OAAO,aAAa,CAAC,OAAO,CAAA;QAC9B,CAAC,CAAA;IACH,CAAC;IA7EC;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IASD;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC;YAAE,OAAO,CAAC,CAAA;QAEpC,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;QACpC,IAAI,KAAK,GAAG,CAAC,CAAA;QAEb,IAAI,YAAY,GAAG,cAAc,CAAA;QAEjC,IAAI,CAAC,YAAY,IAAI,SAAS,CAAA;QAE9B,OAAO,YAAY,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YACtE,KAAK,EAAE,CAAA;YACP,YAAY,EAAE,CAAA;YACd,IAAI,CAAC,YAAY,IAAI,IAAI,CAAA;YAEzB,IAAI,KAAK,GAAG,IAAI,EAAE,CAAC;gBACjB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;gBACrB,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;CASF"}
@@ -30,11 +30,20 @@ export default class UniformEmission extends AbstractEmission {
30
30
  * @returns {number} The number of particles to emit in the current frame.
31
31
  */
32
32
  howMany(deltaTime, particlesCount) {
33
+ if (particlesCount >= this._maxParticles) {
34
+ this._frames = 0;
35
+ return 0;
36
+ }
33
37
  const ratio = this._emitPerSecond * deltaTime;
34
38
  this._frames += ratio;
35
39
  let numberToEmit = 0;
36
40
  if (this._frames >= 1.0) {
37
- numberToEmit = Math.round(this._frames);
41
+ numberToEmit = Math.floor(this._frames);
42
+ this._frames -= numberToEmit;
43
+ }
44
+ const capacity = this._maxParticles - particlesCount;
45
+ if (numberToEmit > capacity) {
46
+ numberToEmit = Math.max(0, capacity);
38
47
  this._frames = 0;
39
48
  }
40
49
  return numberToEmit;
@@ -1 +1 @@
1
- {"version":3,"file":"UniformEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/UniformEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,gBAAgB;IAA7D;;QACE,kBAAa,GAAG,CAAC,CAAA;QACjB,aAAQ,GAAG,CAAC,CAAA;QACZ,mBAAc,GAAG,CAAC,CAAA;QAClB,YAAO,GAAG,CAAC,CAAA;QAmEX;;;;WAIG;QACH,YAAO,GAAG,GAAG,EAAE;YACb,OAAO,aAAa,CAAC,OAAO,CAAA;QAC9B,CAAC,CAAA;IACH,CAAC;IAzEC;;;;;;OAMG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;QAC7C,IAAI,CAAC,OAAO,IAAI,KAAK,CAAA;QAErB,IAAI,YAAY,GAAG,CAAC,CAAA;QACpB,IAAI,IAAI,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC;YACxB,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAA;IACzD,CAAC;IAED;;;;OAIG;IACH,IAAI,OAAO,CAAC,KAAa;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAClC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACvC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa,CAAC,KAAa;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IAC1C,CAAC;CAUF"}
1
+ {"version":3,"file":"UniformEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/UniformEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,gBAAgB;IAA7D;;QACE,kBAAa,GAAG,CAAC,CAAA;QACjB,aAAQ,GAAG,CAAC,CAAA;QACZ,mBAAc,GAAG,CAAC,CAAA;QAClB,YAAO,GAAG,CAAC,CAAA;QA8EX;;;;WAIG;QACH,YAAO,GAAG,GAAG,EAAE;YACb,OAAO,aAAa,CAAC,OAAO,CAAA;QAC9B,CAAC,CAAA;IACH,CAAC;IApFC;;;;;;OAMG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,IAAI,cAAc,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACzC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;YAChB,OAAO,CAAC,CAAA;QACV,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;QAC7C,IAAI,CAAC,OAAO,IAAI,KAAK,CAAA;QAErB,IAAI,YAAY,GAAG,CAAC,CAAA;QACpB,IAAI,IAAI,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC;YACxB,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,OAAO,IAAI,YAAY,CAAA;QAC9B,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,GAAG,cAAc,CAAA;QACpD,IAAI,YAAY,GAAG,QAAQ,EAAE,CAAC;YAC5B,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;YACpC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAA;IACzD,CAAC;IAED;;;;OAIG;IACH,IAAI,OAAO,CAAC,KAAa;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAClC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACvC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa,CAAC,KAAa;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IAC1C,CAAC;CAUF"}
@@ -71,7 +71,13 @@ class Emitter extends eventemitter3 {
71
71
  for (let i = 0; i < particlesToEmit; ++i) {
72
72
  const particle = this.list.add(ParticlePool.global.pop());
73
73
  this.behaviours.init(particle, this._model, this.turbulencePool);
74
- this.emit(Emitter.CREATE, particle);
74
+ this.behaviours.apply(particle, deltaTime, this._model);
75
+ if (particle.isDead()) {
76
+ this.removeParticle(particle);
77
+ }
78
+ else {
79
+ this.emit(Emitter.CREATE, particle);
80
+ }
75
81
  }
76
82
  }
77
83
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Emitter.js","sourceRoot":"","sources":["../../../src/lib/emitter/Emitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Emitter.js","sourceRoot":"","sources":["../../../src/lib/emitter/Emitter.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import * as controller from './emission';
2
2
  import * as behaviour from './behaviour';
3
3
  import * as parser from './parser';
4
+ import * as effects from './effects';
4
5
  import Particle from './Particle';
5
6
  import ParticlePool from './ParticlePool';
6
7
  import { Duration, Emitter } from './emitter';
@@ -11,6 +12,7 @@ declare const cpp: {
11
12
  parser: typeof parser;
12
13
  controller: typeof controller;
13
14
  behaviour: typeof behaviour;
15
+ effects: typeof effects;
14
16
  Color: typeof Color;
15
17
  Point: typeof Point;
16
18
  Random: typeof Random;
package/dist/lib/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import * as controller from './emission';
2
2
  import * as behaviour from './behaviour';
3
3
  import * as parser from './parser';
4
+ import * as effects from './effects';
4
5
  import Particle from './Particle';
5
6
  import ParticlePool from './ParticlePool';
6
7
  import { Duration, Emitter } from './emitter';
@@ -11,6 +12,7 @@ const cpp = {
11
12
  parser,
12
13
  controller,
13
14
  behaviour,
15
+ effects,
14
16
  Color,
15
17
  Point,
16
18
  Random,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,MAAM,GAAG,GAAG;IACV,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,UAAU;IACV,SAAS;IACT,KAAK;IACL,KAAK;IACL,MAAM;IACN,QAAQ;IACR,OAAO;CACR,CAAA;AAED,eAAe,GAAG,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAA;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,MAAM,GAAG,GAAG;IACV,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,UAAU;IACV,SAAS;IACT,OAAO;IACP,KAAK;IACL,KAAK;IACL,MAAM;IACN,QAAQ;IACR,OAAO;CACR,CAAA;AAED,eAAe,GAAG,CAAA"}
@@ -307,12 +307,14 @@ class Renderer extends ParticleContainer {
307
307
  }
308
308
  getOrCreateSprite() {
309
309
  var _a, _b, _c;
310
- if (this.unusedSprites.length > 0) {
310
+ while (this.unusedSprites.length > 0) {
311
311
  const sprite = this.unusedSprites.pop();
312
- if (this.finishingTextureNames && this.finishingTextureNames.length) {
313
- sprite.texture = Assets.get(this.getRandomTexture());
312
+ if (sprite) {
313
+ if (this.finishingTextureNames && this.finishingTextureNames.length) {
314
+ sprite.texture = Assets.get(this.getRandomTexture());
315
+ }
316
+ return sprite;
314
317
  }
315
- return sprite;
316
318
  }
317
319
  if ((_a = this.emitter) === null || _a === void 0 ? void 0 : _a.animatedSprite) {
318
320
  const textures = this.createFrameAnimationByName(this.getRandomTexture());
@@ -431,21 +433,23 @@ class Renderer extends ParticleContainer {
431
433
  }
432
434
  onRemove(particle) {
433
435
  if (!this._firstParticleHasBeenDestroyed) {
434
- if (this.onFirstParticleDestroy) {
436
+ if (this.onFirstParticleDestroy)
435
437
  this.onFirstParticleDestroy();
436
- }
437
438
  this._firstParticleHasBeenDestroyed = true;
438
439
  }
439
440
  const sprite = particle.sprite;
440
- if (!particle.showVortices && sprite) {
441
- sprite.visible = false;
442
- sprite.alpha = 0;
441
+ if (sprite) {
442
+ if (!particle.showVortices) {
443
+ sprite.visible = false;
444
+ sprite.alpha = 0;
445
+ }
446
+ if (sprite instanceof AnimatedSprite) {
447
+ sprite.stop();
448
+ }
449
+ this.unusedSprites.push(sprite);
450
+ particle.sprite = null;
443
451
  }
444
452
  particle.finishingTexture = 0;
445
- this.unusedSprites.push(sprite);
446
- if (sprite instanceof AnimatedSprite) {
447
- sprite.stop();
448
- }
449
453
  }
450
454
  onRemoveTurbulence(particle) {
451
455
  const sprite = particle.sprite;
@@ -1 +1 @@
1
- {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/lib/pixi/Renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/lib/pixi/Renderer.ts"],"names":[],"mappings":"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"}