custom-pixi-particles 5.2.0 → 7.1.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.
- package/README.md +120 -82
- package/dist/index.d.ts +5 -1
- package/dist/index.js +19 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/Particle.d.ts +15 -1
- package/dist/lib/Particle.js +29 -0
- package/dist/lib/Particle.js.map +1 -1
- package/dist/lib/behaviour/AngularVelocityBehaviour.d.ts +10 -6
- package/dist/lib/behaviour/AngularVelocityBehaviour.js +45 -14
- package/dist/lib/behaviour/AngularVelocityBehaviour.js.map +1 -1
- package/dist/lib/behaviour/AttractionRepulsionBehaviour.d.ts +42 -0
- package/dist/lib/behaviour/AttractionRepulsionBehaviour.js +78 -0
- package/dist/lib/behaviour/AttractionRepulsionBehaviour.js.map +1 -0
- package/dist/lib/behaviour/BehaviourNames.d.ts +13 -2
- package/dist/lib/behaviour/BehaviourNames.js +13 -1
- package/dist/lib/behaviour/BehaviourNames.js.map +1 -1
- package/dist/lib/behaviour/CollisionBehaviour.d.ts +86 -0
- package/dist/lib/behaviour/CollisionBehaviour.js +140 -0
- package/dist/lib/behaviour/CollisionBehaviour.js.map +1 -0
- package/dist/lib/behaviour/ColorBehaviour.d.ts +22 -0
- package/dist/lib/behaviour/ColorBehaviour.js +122 -6
- package/dist/lib/behaviour/ColorBehaviour.js.map +1 -1
- package/dist/lib/behaviour/EmitDirectionBehaviour.d.ts +14 -8
- package/dist/lib/behaviour/EmitDirectionBehaviour.js +53 -12
- package/dist/lib/behaviour/EmitDirectionBehaviour.js.map +1 -1
- package/dist/lib/behaviour/EmitterBehaviours.d.ts +6 -0
- package/dist/lib/behaviour/EmitterBehaviours.js +11 -0
- package/dist/lib/behaviour/EmitterBehaviours.js.map +1 -1
- package/dist/lib/behaviour/ForceFieldsBehaviour.d.ts +53 -0
- package/dist/lib/behaviour/ForceFieldsBehaviour.js +80 -0
- package/dist/lib/behaviour/ForceFieldsBehaviour.js.map +1 -0
- package/dist/lib/behaviour/GroupingBehaviour.d.ts +57 -0
- package/dist/lib/behaviour/GroupingBehaviour.js +143 -0
- package/dist/lib/behaviour/GroupingBehaviour.js.map +1 -0
- package/dist/lib/behaviour/LifeBehaviour.d.ts +0 -20
- package/dist/lib/behaviour/LifeBehaviour.js +0 -20
- package/dist/lib/behaviour/LifeBehaviour.js.map +1 -1
- package/dist/lib/behaviour/LightEffectBehaviour.d.ts +59 -0
- package/dist/lib/behaviour/LightEffectBehaviour.js +94 -0
- package/dist/lib/behaviour/LightEffectBehaviour.js.map +1 -0
- package/dist/lib/behaviour/NoiseBasedMotionBehaviour.d.ts +28 -0
- package/dist/lib/behaviour/NoiseBasedMotionBehaviour.js +50 -0
- package/dist/lib/behaviour/NoiseBasedMotionBehaviour.js.map +1 -0
- package/dist/lib/behaviour/PositionBehaviour.d.ts +0 -13
- package/dist/lib/behaviour/PositionBehaviour.js +3 -53
- package/dist/lib/behaviour/PositionBehaviour.js.map +1 -1
- package/dist/lib/behaviour/RotationBehaviour.d.ts +20 -12
- package/dist/lib/behaviour/RotationBehaviour.js +50 -16
- package/dist/lib/behaviour/RotationBehaviour.js.map +1 -1
- package/dist/lib/behaviour/SizeBehaviour.d.ts +33 -3
- package/dist/lib/behaviour/SizeBehaviour.js +105 -20
- package/dist/lib/behaviour/SizeBehaviour.js.map +1 -1
- package/dist/lib/behaviour/SoundReactiveBehaviour.d.ts +58 -0
- package/dist/lib/behaviour/SoundReactiveBehaviour.js +132 -0
- package/dist/lib/behaviour/SoundReactiveBehaviour.js.map +1 -0
- package/dist/lib/behaviour/SpawnBehaviour.d.ts +89 -0
- package/dist/lib/behaviour/SpawnBehaviour.js +705 -0
- package/dist/lib/behaviour/SpawnBehaviour.js.map +1 -0
- package/dist/lib/behaviour/StretchBehaviour.d.ts +30 -0
- package/dist/lib/behaviour/StretchBehaviour.js +59 -0
- package/dist/lib/behaviour/StretchBehaviour.js.map +1 -0
- package/dist/lib/behaviour/TemperatureBehaviour.d.ts +47 -0
- package/dist/lib/behaviour/TemperatureBehaviour.js +64 -0
- package/dist/lib/behaviour/TemperatureBehaviour.js.map +1 -0
- package/dist/lib/behaviour/TimelineBehaviour.d.ts +73 -0
- package/dist/lib/behaviour/TimelineBehaviour.js +100 -0
- package/dist/lib/behaviour/TimelineBehaviour.js.map +1 -0
- package/dist/lib/behaviour/TurbulenceBehaviour.d.ts +2 -1
- package/dist/lib/behaviour/TurbulenceBehaviour.js +6 -1
- package/dist/lib/behaviour/TurbulenceBehaviour.js.map +1 -1
- package/dist/lib/behaviour/index.d.ts +12 -1
- package/dist/lib/behaviour/index.js +12 -1
- package/dist/lib/behaviour/index.js.map +1 -1
- package/dist/lib/customPixiParticlesSettingsInterface.d.ts +1 -0
- package/dist/lib/emitter/Emitter.d.ts +4 -1
- package/dist/lib/emitter/Emitter.js +40 -1
- package/dist/lib/emitter/Emitter.js.map +1 -1
- package/dist/lib/parser/BehaviourParser.js +1 -1
- package/dist/lib/parser/BehaviourParser.js.map +1 -1
- package/dist/lib/pixi/Renderer.d.ts +14 -5
- package/dist/lib/pixi/Renderer.js +128 -70
- package/dist/lib/pixi/Renderer.js.map +1 -1
- package/dist/lib/pixi/TestRenderer.d.ts +125 -0
- package/dist/lib/pixi/TestRenderer.js +560 -0
- package/dist/lib/pixi/TestRenderer.js.map +1 -0
- package/package.json +7 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpawnBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/SpawnBehaviour.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Behaviour } from './index';
|
|
2
|
+
import Particle from '../Particle';
|
|
3
|
+
export default class StretchBehaviour extends Behaviour {
|
|
4
|
+
enabled: boolean;
|
|
5
|
+
priority: number;
|
|
6
|
+
baseScale: number;
|
|
7
|
+
stretchFactor: number;
|
|
8
|
+
minStretch: number;
|
|
9
|
+
maxStretch: number;
|
|
10
|
+
init: (particle: Particle) => void;
|
|
11
|
+
apply: (particle: Particle, deltaTime: number) => void;
|
|
12
|
+
/**
|
|
13
|
+
* Gets the name of the behaviour.
|
|
14
|
+
* @return {string} The name of the behaviour.
|
|
15
|
+
*/
|
|
16
|
+
getName(): string;
|
|
17
|
+
/**
|
|
18
|
+
* Retrieves the properties of the behaviour.
|
|
19
|
+
* @returns {object} The properties of the behaviour.
|
|
20
|
+
*/
|
|
21
|
+
getProps(): {
|
|
22
|
+
enabled: boolean;
|
|
23
|
+
priority: number;
|
|
24
|
+
baseScale: number;
|
|
25
|
+
stretchFactor: number;
|
|
26
|
+
minStretch: number;
|
|
27
|
+
maxStretch: number;
|
|
28
|
+
name: string;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Behaviour, BehaviourNames } from './index';
|
|
2
|
+
export default class StretchBehaviour extends Behaviour {
|
|
3
|
+
constructor() {
|
|
4
|
+
super(...arguments);
|
|
5
|
+
this.enabled = true;
|
|
6
|
+
this.priority = 200;
|
|
7
|
+
this.baseScale = 1; // Base scale for Y-axis
|
|
8
|
+
this.stretchFactor = 0.1; // Factor to scale X-axis based on speed
|
|
9
|
+
this.minStretch = 1; // Minimum X scale
|
|
10
|
+
this.maxStretch = 10; // Maximum X scale
|
|
11
|
+
this.init = (particle) => {
|
|
12
|
+
if (!this.enabled)
|
|
13
|
+
return;
|
|
14
|
+
// Initialize scale and rotation
|
|
15
|
+
particle.size.x = this.baseScale;
|
|
16
|
+
particle.size.y = this.baseScale;
|
|
17
|
+
particle.rotation = 0;
|
|
18
|
+
};
|
|
19
|
+
this.apply = (particle, deltaTime) => {
|
|
20
|
+
if (!this.enabled)
|
|
21
|
+
return;
|
|
22
|
+
// Calculate effective velocity by combining movement and velocity changes
|
|
23
|
+
const combinedX = particle.velocity.x + (particle.movement.x - particle.x) / deltaTime;
|
|
24
|
+
const combinedY = particle.velocity.y + (particle.movement.y - particle.y) / deltaTime;
|
|
25
|
+
const speed = Math.sqrt(Math.pow(combinedX, 2) + Math.pow(combinedY, 2));
|
|
26
|
+
// Stretch factor based on speed
|
|
27
|
+
const stretch = Math.min(this.maxStretch, Math.max(this.minStretch, this.baseScale + speed * this.stretchFactor));
|
|
28
|
+
// Apply scaling
|
|
29
|
+
particle.size.x = stretch; // Stretch along movement direction
|
|
30
|
+
particle.size.y = this.baseScale; // Maintain constant height
|
|
31
|
+
// Update rotation to align with movement direction
|
|
32
|
+
const angle = Math.atan2(combinedY, combinedX);
|
|
33
|
+
particle.rotation = angle;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Gets the name of the behaviour.
|
|
38
|
+
* @return {string} The name of the behaviour.
|
|
39
|
+
*/
|
|
40
|
+
getName() {
|
|
41
|
+
return BehaviourNames.STRETCH_BEHAVIOUR;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Retrieves the properties of the behaviour.
|
|
45
|
+
* @returns {object} The properties of the behaviour.
|
|
46
|
+
*/
|
|
47
|
+
getProps() {
|
|
48
|
+
return {
|
|
49
|
+
enabled: this.enabled,
|
|
50
|
+
priority: this.priority,
|
|
51
|
+
baseScale: this.baseScale,
|
|
52
|
+
stretchFactor: this.stretchFactor,
|
|
53
|
+
minStretch: this.minStretch,
|
|
54
|
+
maxStretch: this.maxStretch,
|
|
55
|
+
name: this.getName(),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=StretchBehaviour.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StretchBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/StretchBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGnD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,SAAS;IAAvD;;QACE,YAAO,GAAG,IAAI,CAAA;QACd,aAAQ,GAAG,GAAG,CAAA;QACd,cAAS,GAAG,CAAC,CAAA,CAAC,wBAAwB;QACtC,kBAAa,GAAG,GAAG,CAAA,CAAC,wCAAwC;QAC5D,eAAU,GAAG,CAAC,CAAA,CAAC,kBAAkB;QACjC,eAAU,GAAG,EAAE,CAAA,CAAC,kBAAkB;QAElC,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YAEzB,gCAAgC;YAChC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAA;YAChC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAA;YAChC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAA;QACvB,CAAC,CAAA;QAED,UAAK,GAAG,CAAC,QAAkB,EAAE,SAAiB,EAAE,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YAEzB,0EAA0E;YAC1E,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;YACtF,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;YAEtF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAA,SAAS,EAAI,CAAC,CAAA,GAAG,SAAA,SAAS,EAAI,CAAC,CAAA,CAAC,CAAA;YAExD,gCAAgC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;YAEjH,gBAAgB;YAChB,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,CAAA,CAAC,mCAAmC;YAC7D,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAA,CAAC,2BAA2B;YAE5D,mDAAmD;YACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAC9C,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAA;QAC3B,CAAC,CAAA;IAyBH,CAAC;IAvBC;;;OAGG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,iBAAiB,CAAA;IACzC,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Behaviour } from './index';
|
|
2
|
+
import Particle from '../Particle';
|
|
3
|
+
import { Color, Point } from '../util';
|
|
4
|
+
/**
|
|
5
|
+
* TemperatureBehaviour adjusts particle velocity and color
|
|
6
|
+
* based on whether they are in a hot or cold zone.
|
|
7
|
+
*/
|
|
8
|
+
export default class TemperatureBehaviour extends Behaviour {
|
|
9
|
+
enabled: boolean;
|
|
10
|
+
priority: number;
|
|
11
|
+
zones: {
|
|
12
|
+
center: Point;
|
|
13
|
+
radius: number;
|
|
14
|
+
velocity: Point;
|
|
15
|
+
color: Color;
|
|
16
|
+
}[];
|
|
17
|
+
/**
|
|
18
|
+
* Initializes the particle. This behavior does not require
|
|
19
|
+
* per-particle initialization, but it's included for extensibility.
|
|
20
|
+
*/
|
|
21
|
+
init(particle: Particle): void;
|
|
22
|
+
/**
|
|
23
|
+
* Applies temperature-based adjustments to the particle's velocity and color.
|
|
24
|
+
*/
|
|
25
|
+
apply(particle: Particle): void;
|
|
26
|
+
/**
|
|
27
|
+
* Checks if a particle is within a specified zone.
|
|
28
|
+
*/
|
|
29
|
+
isInZone(particle: Particle, center: Point, radius: number): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Returns the name of the behavior.
|
|
32
|
+
*/
|
|
33
|
+
getName(): string;
|
|
34
|
+
/**
|
|
35
|
+
* Returns properties for serialization or debugging.
|
|
36
|
+
*/
|
|
37
|
+
getProps(): {
|
|
38
|
+
enabled: boolean;
|
|
39
|
+
priority: number;
|
|
40
|
+
zones: {
|
|
41
|
+
center: Point;
|
|
42
|
+
radius: number;
|
|
43
|
+
velocity: Point;
|
|
44
|
+
color: Color;
|
|
45
|
+
}[];
|
|
46
|
+
};
|
|
47
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Behaviour } from './index';
|
|
2
|
+
import behaviourNames from './BehaviourNames';
|
|
3
|
+
/**
|
|
4
|
+
* TemperatureBehaviour adjusts particle velocity and color
|
|
5
|
+
* based on whether they are in a hot or cold zone.
|
|
6
|
+
*/
|
|
7
|
+
export default class TemperatureBehaviour extends Behaviour {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.enabled = true;
|
|
11
|
+
this.priority = 150;
|
|
12
|
+
this.zones = [];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Initializes the particle. This behavior does not require
|
|
16
|
+
* per-particle initialization, but it's included for extensibility.
|
|
17
|
+
*/
|
|
18
|
+
init(particle) {
|
|
19
|
+
// Optionally, initialize particle-specific data here
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Applies temperature-based adjustments to the particle's velocity and color.
|
|
23
|
+
*/
|
|
24
|
+
apply(particle) {
|
|
25
|
+
if (!this.enabled || !this.zones || !this.zones.length)
|
|
26
|
+
return;
|
|
27
|
+
// Check if the particle is in any hot zone
|
|
28
|
+
for (const zone of this.zones) {
|
|
29
|
+
if (this.isInZone(particle, zone.center, zone.radius)) {
|
|
30
|
+
particle.velocity.x *= zone.velocity.x;
|
|
31
|
+
particle.velocity.y *= zone.velocity.y;
|
|
32
|
+
particle.color.r = zone.color.r;
|
|
33
|
+
particle.color.g = zone.color.g;
|
|
34
|
+
particle.color.b = zone.color.b;
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Checks if a particle is within a specified zone.
|
|
41
|
+
*/
|
|
42
|
+
isInZone(particle, center, radius) {
|
|
43
|
+
const dx = particle.movement.x - center.x;
|
|
44
|
+
const dy = particle.movement.y - center.y;
|
|
45
|
+
return Math.sqrt(dx * dx + dy * dy) < radius;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Returns the name of the behavior.
|
|
49
|
+
*/
|
|
50
|
+
getName() {
|
|
51
|
+
return behaviourNames.TEMPERATURE_BEHAVIOUR;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Returns properties for serialization or debugging.
|
|
55
|
+
*/
|
|
56
|
+
getProps() {
|
|
57
|
+
return {
|
|
58
|
+
enabled: this.enabled,
|
|
59
|
+
priority: this.priority,
|
|
60
|
+
zones: this.zones,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=TemperatureBehaviour.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TemperatureBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TemperatureBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAGnC,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAE7C;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,SAAS;IAA3D;;QACE,YAAO,GAAG,IAAI,CAAA;QACd,aAAQ,GAAG,GAAG,CAAA;QAEd,UAAK,GAAuE,EAAE,CAAA;IAuDhF,CAAC;IArDC;;;OAGG;IACH,IAAI,CAAC,QAAkB;QACrB,qDAAqD;IACvD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAkB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAM;QAE9D,2CAA2C;QAC3C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtD,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;gBACtC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;gBACtC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAkB,EAAE,MAAa,EAAE,MAAc;QACxD,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAA;IAC9C,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,qBAAqB,CAAA;IAC7C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import Particle from '../Particle';
|
|
2
|
+
import Behaviour from './Behaviour';
|
|
3
|
+
export default class TimelineBehaviour extends Behaviour {
|
|
4
|
+
enabled: boolean;
|
|
5
|
+
priority: number;
|
|
6
|
+
timeline: {
|
|
7
|
+
time: number;
|
|
8
|
+
properties: {
|
|
9
|
+
size?: number;
|
|
10
|
+
color?: {
|
|
11
|
+
r: number;
|
|
12
|
+
g: number;
|
|
13
|
+
b: number;
|
|
14
|
+
alpha: number;
|
|
15
|
+
};
|
|
16
|
+
rotation?: number;
|
|
17
|
+
};
|
|
18
|
+
}[];
|
|
19
|
+
init(particle: Particle): void;
|
|
20
|
+
apply(particle: Particle, deltaTime: number): void;
|
|
21
|
+
interpolateProperties(particle: Particle, before: {
|
|
22
|
+
size?: number;
|
|
23
|
+
color?: {
|
|
24
|
+
r: number;
|
|
25
|
+
g: number;
|
|
26
|
+
b: number;
|
|
27
|
+
alpha: number;
|
|
28
|
+
};
|
|
29
|
+
rotation?: number;
|
|
30
|
+
}, after: {
|
|
31
|
+
size?: number;
|
|
32
|
+
color?: {
|
|
33
|
+
r: number;
|
|
34
|
+
g: number;
|
|
35
|
+
b: number;
|
|
36
|
+
alpha: number;
|
|
37
|
+
};
|
|
38
|
+
rotation?: number;
|
|
39
|
+
}, progress: number): void;
|
|
40
|
+
setProperties(particle: Particle, properties: {
|
|
41
|
+
size?: number;
|
|
42
|
+
color?: {
|
|
43
|
+
r: number;
|
|
44
|
+
g: number;
|
|
45
|
+
b: number;
|
|
46
|
+
alpha: number;
|
|
47
|
+
};
|
|
48
|
+
rotation?: number;
|
|
49
|
+
}): void;
|
|
50
|
+
/**
|
|
51
|
+
* Linear interpolation (lerp) function
|
|
52
|
+
*/
|
|
53
|
+
lerp(start: number, end: number, t: number): number;
|
|
54
|
+
getName(): string;
|
|
55
|
+
getProps(): {
|
|
56
|
+
enabled: boolean;
|
|
57
|
+
priority: number;
|
|
58
|
+
timeline: {
|
|
59
|
+
time: number;
|
|
60
|
+
properties: {
|
|
61
|
+
size?: number;
|
|
62
|
+
color?: {
|
|
63
|
+
r: number;
|
|
64
|
+
g: number;
|
|
65
|
+
b: number;
|
|
66
|
+
alpha: number;
|
|
67
|
+
};
|
|
68
|
+
rotation?: number;
|
|
69
|
+
};
|
|
70
|
+
}[];
|
|
71
|
+
name: string;
|
|
72
|
+
};
|
|
73
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import BehaviourNames from './BehaviourNames';
|
|
2
|
+
import Behaviour from './Behaviour';
|
|
3
|
+
export default class TimelineBehaviour extends Behaviour {
|
|
4
|
+
constructor() {
|
|
5
|
+
super(...arguments);
|
|
6
|
+
this.enabled = true;
|
|
7
|
+
this.priority = 0;
|
|
8
|
+
this.timeline = [];
|
|
9
|
+
}
|
|
10
|
+
init(particle) {
|
|
11
|
+
if (!this.enabled)
|
|
12
|
+
return;
|
|
13
|
+
// Set initial properties based on the first timeline entry
|
|
14
|
+
if (this.timeline.length > 0) {
|
|
15
|
+
const initialProperties = this.timeline[0].properties;
|
|
16
|
+
if (initialProperties.size !== undefined) {
|
|
17
|
+
particle.size.x = particle.size.y = initialProperties.size;
|
|
18
|
+
}
|
|
19
|
+
if (initialProperties.color) {
|
|
20
|
+
particle.color.r = initialProperties.color.r;
|
|
21
|
+
particle.color.g = initialProperties.color.g;
|
|
22
|
+
particle.color.b = initialProperties.color.b;
|
|
23
|
+
particle.color.alpha = initialProperties.color.alpha;
|
|
24
|
+
}
|
|
25
|
+
if (initialProperties.rotation !== undefined) {
|
|
26
|
+
particle.rotation = initialProperties.rotation;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
apply(particle, deltaTime) {
|
|
31
|
+
if (!this.enabled)
|
|
32
|
+
return;
|
|
33
|
+
const { lifeTime, maxLifeTime } = particle;
|
|
34
|
+
if (maxLifeTime <= 0)
|
|
35
|
+
return;
|
|
36
|
+
const normalizedTime = lifeTime / maxLifeTime;
|
|
37
|
+
// Find the timeline entries surrounding the normalizedTime
|
|
38
|
+
const before = this.timeline
|
|
39
|
+
.slice()
|
|
40
|
+
.reverse()
|
|
41
|
+
.find((entry) => entry.time <= normalizedTime);
|
|
42
|
+
const after = this.timeline.find((entry) => entry.time > normalizedTime);
|
|
43
|
+
if (before && after) {
|
|
44
|
+
const progress = (normalizedTime - before.time) / (after.time - before.time);
|
|
45
|
+
this.interpolateProperties(particle, before.properties, after.properties, progress);
|
|
46
|
+
}
|
|
47
|
+
else if (before) {
|
|
48
|
+
this.setProperties(particle, before.properties);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
interpolateProperties(particle, before, after, progress) {
|
|
52
|
+
// Interpolate size
|
|
53
|
+
if (before.size !== undefined && after.size !== undefined) {
|
|
54
|
+
particle.size.x = particle.size.y = this.lerp(before.size, after.size, progress);
|
|
55
|
+
}
|
|
56
|
+
// Interpolate color
|
|
57
|
+
if (before.color && after.color) {
|
|
58
|
+
particle.color.r = this.lerp(before.color.r, after.color.r, progress);
|
|
59
|
+
particle.color.g = this.lerp(before.color.g, after.color.g, progress);
|
|
60
|
+
particle.color.b = this.lerp(before.color.b, after.color.b, progress);
|
|
61
|
+
particle.color.alpha = this.lerp(before.color.alpha, after.color.alpha, progress);
|
|
62
|
+
}
|
|
63
|
+
// Interpolate rotation
|
|
64
|
+
if (before.rotation !== undefined && after.rotation !== undefined) {
|
|
65
|
+
particle.rotation = this.lerp(before.rotation, after.rotation, progress);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
setProperties(particle, properties) {
|
|
69
|
+
if (properties.size !== undefined) {
|
|
70
|
+
particle.size.x = particle.size.y = properties.size;
|
|
71
|
+
}
|
|
72
|
+
if (properties.color) {
|
|
73
|
+
particle.color.r = properties.color.r;
|
|
74
|
+
particle.color.g = properties.color.g;
|
|
75
|
+
particle.color.b = properties.color.b;
|
|
76
|
+
particle.color.alpha = properties.color.alpha;
|
|
77
|
+
}
|
|
78
|
+
if (properties.rotation !== undefined) {
|
|
79
|
+
particle.rotation = properties.rotation;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Linear interpolation (lerp) function
|
|
84
|
+
*/
|
|
85
|
+
lerp(start, end, t) {
|
|
86
|
+
return start + (end - start) * t;
|
|
87
|
+
}
|
|
88
|
+
getName() {
|
|
89
|
+
return BehaviourNames.TIMELINE_BEHAVIOUR;
|
|
90
|
+
}
|
|
91
|
+
getProps() {
|
|
92
|
+
return {
|
|
93
|
+
enabled: this.enabled,
|
|
94
|
+
priority: this.priority,
|
|
95
|
+
timeline: this.timeline,
|
|
96
|
+
name: this.getName(),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=TimelineBehaviour.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimelineBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TimelineBehaviour.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { Point } from '../util';
|
|
|
4
4
|
import TurbulencePool from '../util/turbulencePool';
|
|
5
5
|
import Model from '../Model';
|
|
6
6
|
export default class TurbulenceBehaviour extends Behaviour {
|
|
7
|
+
priority: number;
|
|
7
8
|
position: Point;
|
|
8
9
|
positionVariance: Point;
|
|
9
10
|
velocity: Point;
|
|
@@ -66,7 +67,7 @@ export default class TurbulenceBehaviour extends Behaviour {
|
|
|
66
67
|
emitPerSecond: number;
|
|
67
68
|
duration: number;
|
|
68
69
|
maxLifeTime: number;
|
|
69
|
-
|
|
70
|
+
effect: number;
|
|
70
71
|
name: string;
|
|
71
72
|
};
|
|
72
73
|
}
|
|
@@ -4,6 +4,7 @@ import { Point } from '../util';
|
|
|
4
4
|
export default class TurbulenceBehaviour extends Behaviour {
|
|
5
5
|
constructor() {
|
|
6
6
|
super(...arguments);
|
|
7
|
+
this.priority = 1000;
|
|
7
8
|
this.position = new Point();
|
|
8
9
|
this.positionVariance = new Point();
|
|
9
10
|
this.velocity = new Point();
|
|
@@ -23,11 +24,15 @@ export default class TurbulenceBehaviour extends Behaviour {
|
|
|
23
24
|
this.turbulence = false;
|
|
24
25
|
this.vortexOrgSize = 128;
|
|
25
26
|
this.init = (particle, model, turbulencePool) => {
|
|
27
|
+
if (!this.enabled)
|
|
28
|
+
return;
|
|
26
29
|
particle.showVortices = this.showVortices;
|
|
27
30
|
particle.turbulence = this.turbulence;
|
|
28
31
|
this.turbulencePool = turbulencePool;
|
|
29
32
|
};
|
|
30
33
|
this.apply = (particle) => {
|
|
34
|
+
if (!this.enabled)
|
|
35
|
+
return;
|
|
31
36
|
if (particle.turbulence)
|
|
32
37
|
return;
|
|
33
38
|
this.turbulencePool.list.forEach((vortex) => {
|
|
@@ -120,7 +125,7 @@ export default class TurbulenceBehaviour extends Behaviour {
|
|
|
120
125
|
emitPerSecond: this.emitPerSecond,
|
|
121
126
|
duration: this.duration,
|
|
122
127
|
maxLifeTime: this.maxLifeTime,
|
|
123
|
-
|
|
128
|
+
effect: this.effect,
|
|
124
129
|
name: this.getName(),
|
|
125
130
|
};
|
|
126
131
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,20 @@ import Behaviour from './Behaviour';
|
|
|
4
4
|
import LifeBehaviour from './LifeBehaviour';
|
|
5
5
|
import PositionBehaviour from './PositionBehaviour';
|
|
6
6
|
import ColorBehaviour from './ColorBehaviour';
|
|
7
|
+
import AttractionRepulsionBehaviour from './AttractionRepulsionBehaviour';
|
|
7
8
|
import SizeBehaviour from './SizeBehaviour';
|
|
8
9
|
import AngularVelocityBehaviour from './AngularVelocityBehaviour';
|
|
9
10
|
import EmitDirectionBehaviour from './EmitDirectionBehaviour';
|
|
10
11
|
import RotationBehaviour from './RotationBehaviour';
|
|
11
12
|
import TurbulenceBehaviour from './TurbulenceBehaviour';
|
|
12
|
-
|
|
13
|
+
import CollisionBehaviour from './CollisionBehaviour';
|
|
14
|
+
import NoiseBasedMotionBehaviour from './NoiseBasedMotionBehaviour';
|
|
15
|
+
import ForceFieldsBehaviour from './ForceFieldsBehaviour';
|
|
16
|
+
import SpawnBehaviour from './SpawnBehaviour';
|
|
17
|
+
import TimelineBehaviour from './TimelineBehaviour';
|
|
18
|
+
import GroupingBehaviour from './GroupingBehaviour';
|
|
19
|
+
import SoundReactiveBehaviour from './SoundReactiveBehaviour';
|
|
20
|
+
import LightEffectBehaviour from './LightEffectBehaviour';
|
|
21
|
+
import StretchBehaviour from './StretchBehaviour';
|
|
22
|
+
import TemperatureBehaviour from './TemperatureBehaviour';
|
|
23
|
+
export { EmitterBehaviours, Behaviour, SpawnBehaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, CollisionBehaviour, AttractionRepulsionBehaviour, NoiseBasedMotionBehaviour, ForceFieldsBehaviour, TimelineBehaviour, GroupingBehaviour, SoundReactiveBehaviour, LightEffectBehaviour, StretchBehaviour, TemperatureBehaviour, BehaviourNames, };
|
|
@@ -4,10 +4,21 @@ import Behaviour from './Behaviour';
|
|
|
4
4
|
import LifeBehaviour from './LifeBehaviour';
|
|
5
5
|
import PositionBehaviour from './PositionBehaviour';
|
|
6
6
|
import ColorBehaviour from './ColorBehaviour';
|
|
7
|
+
import AttractionRepulsionBehaviour from './AttractionRepulsionBehaviour';
|
|
7
8
|
import SizeBehaviour from './SizeBehaviour';
|
|
8
9
|
import AngularVelocityBehaviour from './AngularVelocityBehaviour';
|
|
9
10
|
import EmitDirectionBehaviour from './EmitDirectionBehaviour';
|
|
10
11
|
import RotationBehaviour from './RotationBehaviour';
|
|
11
12
|
import TurbulenceBehaviour from './TurbulenceBehaviour';
|
|
12
|
-
|
|
13
|
+
import CollisionBehaviour from './CollisionBehaviour';
|
|
14
|
+
import NoiseBasedMotionBehaviour from './NoiseBasedMotionBehaviour';
|
|
15
|
+
import ForceFieldsBehaviour from './ForceFieldsBehaviour';
|
|
16
|
+
import SpawnBehaviour from './SpawnBehaviour';
|
|
17
|
+
import TimelineBehaviour from './TimelineBehaviour';
|
|
18
|
+
import GroupingBehaviour from './GroupingBehaviour';
|
|
19
|
+
import SoundReactiveBehaviour from './SoundReactiveBehaviour';
|
|
20
|
+
import LightEffectBehaviour from './LightEffectBehaviour';
|
|
21
|
+
import StretchBehaviour from './StretchBehaviour';
|
|
22
|
+
import TemperatureBehaviour from './TemperatureBehaviour';
|
|
23
|
+
export { EmitterBehaviours, Behaviour, SpawnBehaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, CollisionBehaviour, AttractionRepulsionBehaviour, NoiseBasedMotionBehaviour, ForceFieldsBehaviour, TimelineBehaviour, GroupingBehaviour, SoundReactiveBehaviour, LightEffectBehaviour, StretchBehaviour, TemperatureBehaviour, BehaviourNames, };
|
|
13
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/behaviour/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/behaviour/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,4BAA4B,MAAM,gCAAgC,CAAA;AACzE,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,kBAAkB,MAAM,sBAAsB,CAAA;AACrD,OAAO,yBAAyB,MAAM,6BAA6B,CAAA;AACnE,OAAO,oBAAoB,MAAM,wBAAwB,CAAA;AACzD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,oBAAoB,MAAM,wBAAwB,CAAA;AACzD,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AACjD,OAAO,oBAAoB,MAAM,wBAAwB,CAAA;AAEzD,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,4BAA4B,EAC5B,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,GACf,CAAA"}
|
|
@@ -4,7 +4,7 @@ import eventemitter3 from 'eventemitter3';
|
|
|
4
4
|
import { EmitterParser } from '../parser';
|
|
5
5
|
import List from '../util/List';
|
|
6
6
|
import Particle from '../Particle';
|
|
7
|
-
import { BLEND_MODES } from 'pixi.js
|
|
7
|
+
import { BLEND_MODES } from 'pixi.js';
|
|
8
8
|
import Model from '../Model';
|
|
9
9
|
import TurbulencePool from '../util/turbulencePool';
|
|
10
10
|
export default class Emitter extends eventemitter3 {
|
|
@@ -110,4 +110,7 @@ export default class Emitter extends eventemitter3 {
|
|
|
110
110
|
* Removes all the particles from the list
|
|
111
111
|
*/
|
|
112
112
|
removeParticles(): void;
|
|
113
|
+
pause(): void;
|
|
114
|
+
resume(): void;
|
|
115
|
+
destroy(): void;
|
|
113
116
|
}
|