Files
EVEngine/examples/basic/particles/magic_burst.json
T
西风逍遥游 d71b126636 feat(particles): particle system feature set (P0-P2)
Rendering: rotation render fix, additive/opaque blend modes, flipbook animation, gradients and lifetime curves, unified DrawItem2D render path (Vulkan + WebGPU).

Simulation: timed bursts, prewarm, line/ring shapes, gravity, damping, velocity limits/curves, inherit velocity, local/world space, collision (bounds + resolver), CPU noise, sub-emitters, stretched trails, overflow policies, dt caps, offscreen sim skip.

Advanced: radial force fields, custom particle shaders, pooled Light2D particle lights, opt-in GPU-accelerated simulation with automatic CPU fallback.

Fixes: Vulkan pipeline builder lifetime bug (crash on window init), emitter-life emission timing, emit() syncs attachment position.

Tests: new coverage incl. scale regression (128 emitters).
2026-08-17 15:27:43 +08:00

30 lines
847 B
JSON

{
"buffer": 256,
"x": 400,
"y": 300,
"emissionRate": 200,
"emitterLife": 0.3,
"particleLifetime": [0.5, 1.2],
"direction": -1.5708,
"spread": 6.283,
"speed": [40, 160],
"linearAcceleration": [-20, -60, 20, -10],
"emissionArea": { "type": "ellipse", "x": 6, "y": 6 },
"particleSize": [10, 10],
"blendMode": "additive",
"startRotation": [-45, 45],
"colorOverLifetime": [
{ "t": 0.0, "r": 1.0, "g": 0.95, "b": 0.6, "a": 1.0 },
{ "t": 0.35, "r": 1.0, "g": 0.4, "b": 0.1, "a": 0.9 },
{ "t": 0.7, "r": 0.6, "g": 0.1, "b": 0.8, "a": 0.5 },
{ "t": 1.0, "r": 0.2, "g": 0.0, "b": 0.4, "a": 0.0 }
],
"sizeOverLifetime": [[0.0, 0.4], [0.3, 1.0], [1.0, 0.1]],
"rotationOverLifetime": [[0.0, 0.0], [1.0, 180.0]],
"spin": [-3, 3],
"layer": 2,
"visible": true,
"autoStart": true,
"autoReload": true
}