A Flame hi ha la possibilitat de fer aparèixer un efecte d'emissió de partícules al voltant d'un punt. L'aplicació més usual és simular una explosió i es fa que les partícules projectades siguin d'un color adient, com blanc o groc.
Per fer-lo servir, hem d'afegir al joc un ParticleSystemComponent al qual li indiquem la posició i les característiques destitjades. A nivell general cal definir el nombre i la vida (en segons) de les partícules. A més, per a cada partícula definim la velocitat, l'acceleració, el radi (en cas de partícules circulars) i el color.
Si això ho posem dins d'un element del joc, podem agafar-ne fàcilment les coordenades fent:
... position: position.clone(), // Sortiran des del centre de l'element actual ...
A continuació hi ha un exemple:
...
// Efecte de partícules en explosió
void _creaExplosioParticules() {
final random = Random();
// Afegim el sistema de partícules directament al món del joc
game.world.add(
ParticleSystemComponent(
position: position.clone(), // Sortiran des del centre del totxo actual
particle: Particle.generate(
count: 15, // Nombre de partícules de l'explosió
lifespan: 0.4, // Durada de l'efecte en segons
generator: (i) {
// Calculem una direcció i velocitat aleatòria (360 graus)
final angle = random.nextDouble() * 2 * pi;
final velocitat = random.nextDouble() * 120 + 60;
return AcceleratedParticle(
acceleration: Vector2(0, 250), // Gravetat cap avall perquè caiguin
speed: Vector2(cos(angle), sin(angle)) * velocitat,
child: CircleParticle(
radius: 2.0 + random.nextDouble() * 3.0, // Mida aleatòria de la partícula
paint: Paint()..color = Color(0xFFAADDEE),
),
);
},
),
),
);
}
...
En aquest apartat del joc de trencar totxos podem veure un exemple en el qual es fa servir aquest efecte.

Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.