Clear emitted particles after particle system duration ends without a script

Hello,

My current setup is this:
Duration = 10
Lifetime = 9.3

Emission->Bursts[0]:
Time = 0.7; Count = 1; Cycles = 12; Interval = 0.5; Probability = 1.0

This means that currently the last particle is spawned at 0.7 + 11*0.5 = 6,2 seconds and dies at 6,2 + 9,2(lifetime) = 15,4 seconds.

What I would like to achieve is that once the particle system’s duration reaches 10 and it starts again (it is a looping system), all of the particles would be destroyed, including the last one that spawned at 6,2 seconds.

The idea is to spawn particles one after another and keep them till the end of the duration (that’s why the lifetime is set to 9.3) but then I need to clear all of them and start again from 0.

This is easy to do via a script, but I was wondering if I could do it without it and to just use the particle system settings: to somehow reset all of the particles once the system starts.

Thanks!

I found a way to do this.
I can use a Curve for the Start Lifetime parameter.

In my concrete case since duration is 10 then I’ve set up 2 keys:

  1. First key has time of 0.07 (this corresponds to Burst[0].Time of 0.7, which I just need to divide by 10 (duration)) and value is 0.93. Because the first particle (spawned at 0.7 seconds) needs to last for 9.3 seconds.
  2. The second key has a time of 0.62 (corresponding to 6.2 seconds when last particle is emitted) and value of 0.38 (this last particle needs to last for 3.8 seconds).

This results in the particles being destroyed almost at the same time, which is good enough for me. To have them destroy exactly at the same time, I could add additional keys for every particle emitted at the exact correct time but the linear curve is fine for my case.