HOW TO: Duplicate surface Attach a lambert shader > Ramp in the colour attribute Set the ramp section to the bit you want to emit from Add a bit of noise, add an expression to the noise freq (set a rand(n,n)) -- Do Particle > Emit from object. Drag the ramp from the hypershade to the texture rate swatch, switch on enable texture rate. (Do any fiddling around with surface orientation) Set speed, direction. Attach particle to master_turb, and any other things as necessary. PARTICLE: Set LIFESPANPP Set SPHERES (add radius attribute) Add OpacityPP, lifespanPP, rgbPP, radiusPP OPACITY - create a ramp. LIFESPANPP - RADIUSPP - Creation Expression: full_Lwing_Smk_particleShape1.lifespanPP = 0.9 + rand(0.4); full_Lwing_Smk_particleShape1.radiusPP = rand(1.02, 1.06); Runtime Expression: if ((full_Lwing_Smk_particleShape1.age / full_Lwing_Smk_particleShape1.finalLifespanPP) < 0.5) {full_Lwing_Smk_particleShape1.radiusPP *= 1.03;} else {full_Lwing_Smk_particleShape1.radiusPP += 0.1;} -- Emitter > Particle color - create a noise texture (perlin) set bits, set keys for Time attribute. Drop down the Color gain. Animate the Rate on the emitter (keep pretty high - 10k ish) Check the oversampling - tweak scaling numbers as necessary.