I don’t know if this is by design, when I move a particle system that uses “Rate Over Distance” emission during the LateUpdate phase, it won’t emit particles.
In order for the emission to work, the particle system needs to be moved during Update instead.
I’m using Unity 2018.4.27f1 and my test project is attached to this post. In the test project select “GameObject” in the Hierarchy and toggle the “Use LateUpdate” option.
Hi,
This is due to how we calculate the velocity of the particle system.
PS.Update2 captures the old position.
Ps.Update1 takes the current position and compares against the old
So only movement that is between these 2 updates will be detected.
We cant change how the velocity is calculated as its incredibly fragile code however we have added a new feature in 2021.1 that lets you set a custom velocity to the ParticleSystem, this lets you control the velocity and avoid these issues.
Looks like this issue has been fixed but there was a mistake on the backporting info.
The fix has landed in 2018.4.29f1, I just verified it myself against your bug.