Phaser AE

3D Smoke Effects

Pro packv3.0.0-43D3D VFX

Twelve smoke, steam and dust effects for 3D games: the soft, slow half of a scene. A wreck smoulders, a chimney leans in the breeze, a valley fills with mist and every footstep on a dirt road kicks up a little dust.

This is a Pro pack. Upgrade to Phaser Pro to use it in your games.See Phaser Pro →

Released October 14, 2026 · updated October 19, 2026

3D Smoke Effects: a screenshot of its demo
A note about these graphics

Expansion packs don't come with graphics. This screenshot is one way of drawing what the pack does, made for its demo: none of the sprites, tiles or backgrounds in it are in the pack.

That's by design. A pack is a game's logic, mechanics and effects, and it works with whatever art you give it. Some packs draw effects, backdrops or 3D scenes of their own, but none carries a game's sprites.

So the look is yours. Make the art on phaser.io, bring your own, or let your agent draw it in code: the same pack can look like anything.

What it does

The pack registers twelve named effects with the 3D particle system. Spawn one with game.particles3d.effect(name, opts); a one-shot removes itself when it has drained, and a loop stays until you kill it.

Unlike fire and sparks, these use normal blending rather than additive, because smoke hides what is behind it rather than adding light, and they take the scene's lighting, so a puff beside a lantern warms. The puffs swell, cool and drift on curl noise. Effects with a direction are aimed as you spawn them: an exhaust follows a car at the tailpipe and blows backwards with yaw, a skidDust kicks out along the car's heading, and a smokeScreen lays its wall along whichever line you turn it to.

Features

  • Columns — smoke, a rising grey column; steam, a white hissing jet for a vent or a kettle; and chimney, thin wisps leaning in a gusting breeze.
  • Ground layers — mist, a pale layer about ten units across, and poisonGas, a sickly green cloud with a glowing pool and bubbles.
  • Event one-shots — puff for a landing, smokeRing rolling across the floor, skidDust and footstepDust.
  • A smoke screen — smokeScreen, a grey wall about seven units wide that hangs and slowly thins.
  • Moving smoke — smokeTrail, puffs left drifting behind whatever it follows, and exhaust, a jet that slows into rising puffs.
  • Few particles — the biggest, smokeScreen, holds about 190 at once and most hold under 90.

Good for

  • Shooters — smoke grenades, burning wrecks and missile trails.
  • Racing and driving games — exhaust from every car, dust from every skid.
  • Adventure and exploration — a cottage chimney, steam vents, a swamp at dawn, a poison-gas trap.
  • 3D action games and platformers — a puff on every heavy landing and dust on every footfall.

Make it yours

scale multiplies every size, speed, distance and zone, so smokeScreen at scale: 0.5 is a smoke bomb and puff at scale: 3 a giant landing; yaw, pitch and roll turn the zones and launch directions, and follow and offset pin an effect to an object. One game spawns footstepDust on every footfall and skidDust on every hard turn; another lays mist at scale: 2.5 across a valley and marks its traps with poisonGas. A black smoke or a purple gas is a copy from game.particles3d.defs registered with registerVfx3d.

A quick look

A column over a wreck, an exhaust on a car and dust on every footstep:

game.particles3d.effect('smoke', { x: 4, y: 0, z: -2 });
const pipe = game.particles3d.effect('exhaust', { follow: car, offset: { x: 0.4, y: 0.3, z: -1.8 }, yaw: 180 });
const step = (x: number, z: number) => game.particles3d.effect('footstepDust', { x, y: 0, z });
pipe.stop();   // engine off: the plume drains away

Works with

Good to know

  • Smoke does not collide, cast shadows or hurt anything: a damaging gas is game logic, and falling grit lands on world y = 0 rather than on the real floor.
  • smokeTrail emits by time, not by distance, so a slow mover lays its puffs close together and a fast one spaces them out.
  • Large soft quads overlap heavily, so a dense column costs fill rate rather than particle count.
  • yaw and pitch do not turn gravity, so an exhaust aimed down still rises once it slows.

More 3D VFX packs

Show all →