Search Issue Tracker
Won't Fix
Votes
0
Found in
2019.3.0b12
2020.1
Issue ID
1203219
Regression
No
Particle System Burst Emission timing is not consistent
Reproduction steps:
1. Open Project in "case_1203219-ParticleTest.zip"
2. Notice Particle System's settings
3. Enter Play Mode
Expected result: there will always be only one Particle active
Actual result: sometimes 2 Particles are active at the same time creating a flashing effect
Reproducible in: 2017.4.35f1, 2018.4.14f1, 2019.2.16f1, 2019.3.0f2, 2020.1.0a15
Notes:
1. Visible both in Scene and Game view
2. Settings to notice: Start Lifetime = Duration = 1 & Burst Time = 0, Count = Cycles = 1
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Resolution Note:
I've looked into this, and I think any changes to this code are very high risk.
Floating point accuracy limitations mean that it's going to be very difficult to make this behave robustly. Particle ages are updated in discrete steps as frames advance, and whilst doing this, error accumulates. Eg after 0.8 seconds, the stored lifetimes might be 0.7999999. These kinds of inaccuracies mean that simulations relying on precise and exact numbers may fail in the ways you are seeing.