Hi, I’m having some problems playing and emitting particles through script.
I have a projectile particle as top parent and then 2 other particle systems and a point light as children.
The projectile and flash particle just emits 1 while sparks emit a burst of 25. The thing is when I call Play() on the projectile, I only get the sparks to play. If i run Emit on the projectile I only see that one and no other. I also tried calling them as seperate particles as well and that didnt solve it either.
I’m quite new to particles so its highly likely that I have completly missed something.
I tried google’ing a bunch, but no luck finding an answer to my problem.
I’m currently running Unity 2017.1.0b5 but I had the same problem with Unity 5.6.1f1
If you’ve read Unity - Scripting API: ParticleSystem.Play and are using the withChildren parameter correctly, then it seems like it ought to work.
Hard to say much more without understanding your setup though. Perhaps attach a small package showing your problem.
1 Like
Hmm tried that as well and it didnt work.
Sorry, here is my setup 
Hi,
In some effects, your emission rate is set to 1.0, and your Duration is also 1.0. (eg FX_Muzzle_Flash)
This means that the effect ends before it has chance to emit its first particle.
Either increase the duration, or the emission rate, to ensure particles are generated before emission stops. (Or perhaps use Burst Emission for precise control over one-shot effects like muzzle flashes)
2 Likes
Thank you that solved it! Such a simple solution…
Kinda feel stupid for not thinking of this…
Well you live and you learn I guess 
3 Likes