Search Issue Tracker
By Design
By Design in 2023.3.X
Votes
0
Found in
2022.3.8f1
2023.1.9f1
2023.2.0b4
2023.3.0a3
Issue ID
UUM-46393
Regression
Yes
Particle System doesn't play in the Game view without opening Scene view first when playing it through script
Reproduction steps:
1. Open the attached project "repro51549"
2. Open "SampleScene"
3. Enter Play mode
4. Select the Scene view, then the Game view again
Expected result: the red Particle System plays at step 3
Actual result: the red Particle System plays at step 4
Reproducible with: 2022.1.0a13, 2022.3.8f1, 2023.1.9f1, 2023.2.0b4
Not reproducible with: 2021.3.19f1, 2022.1.0a12
Reproducible on: macOS 13.4.1 (Intel)
Not reproducible on: No other environment tested
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:
The issue here is that the particle system is being played every frame, instead of playing it once and let it play.
Under some circumstances, if the particle system is able to spawn a particle during a frame (depending on frame rate), it will look like it is working fine. This is because the particle system wont restart the emitters when there are particles alive, but some other parts will still be reset. The step of switching to scene view just causes a slightly longer frame which is enough to spawn one particle, but it is otherwise unrelated.
The suggested fix to this is to only call Play once, not every frame. You can query ParticleSystem.IsPlaying() to help with this.
Resolution Note (2023.3.X):
The issue here is that the particle system is being played every frame, instead of playing it once and let it play.
Under some circumstances, if the particle system is able to spawn a particle during a frame (depending on frame rate), it will look like it is working fine. This is because the particle system wont restart the emitters when there are particles alive, but some other parts will still be reset. The step of switching to scene view just causes a slightly longer frame which is enough to spawn one particle, but it is otherwise unrelated.
The suggested fix to this is to only call Play once, not every frame. You can query ParticleSystem.IsPlaying() to help with this.