LempoLempo Particle FX Docs

Blend Modes

Seven modes, selectable per emitter from the sidebar dropdown — with the same intent everywhere your effect renders.

At object level in GDevelop, BlendingMode: 'JSON' uses each emitter's own mode; any explicit value forces all emitters.

Mode2D (PixiJS)3D (Three.js)Desktop GL previewBrowser preview
Normalnormalnormal SRC_ALPHA, ONE_MINUS_SRC_ALPHAnormal
Additiveaddadditive SRC_ALPHA, ONEadd
Subtractiveerase 1subtractive reverse-subtracterase 1
Multiplymultiplymultiply DST_COLOR, ONE_MINUS_SRC_ALPHAmultiply
Screenscreen custom (add + ONE, ONE_MINUS_SRC_COLOR) ONE, ONE_MINUS_SRC_COLORscreen
Lighten→ Normal 2custom max-equation max→ Normal 2
Overlayoverlay→ Normal 3 → Normal 3overlay

¹ Pixi core has no subtract · ² Pixi core has no lighten · ³ No fixed-function overlay

Fallback policy. Unsupported combinations fall back to Normal with a single console.warn — never per frame, never throwing. Extension versions before 0.1.2 don't know Screen / Lighten / Overlay and render them as Normal.

Recipes

LookMode
Fire, sparks, magic glowAdditive
Solid opaque debris, smoke over skyNormal
Darkening/shadow motes, inkSubtractive / Multiply
Hazy light through fogScreen
Contrasty highlightsOverlay / Lighten
Blend modes are covered end-to-end by tests: pixel-level GL formulas (tests/test_gl_blend.py), round-trip + sanitize (tests/test_blend_modes.py) and extension mappings with stubbed runtimes (preview/test_blend.mjs). See Testing.