I have recently noticed that particle systems that I made on my 120 Hz laptop look very slow when viewed on my 60Hz monitor (2x slower). So it seems that particles are frame rate dependant. I looked through the source code and did not find any delta time adjustments. So am I missing something, or is it actually the expected behaviour?
I tried with few examples here:
https://playcanvas.vercel.app/#/graphics/particles-spark
and they seem to visually look the same between laptop screen (120fps) and external (60).
Can you see the issue here as well?
I see no difference on that example indeed
However, I clearly see it on my own particle system
Check out the videos
60 FPS: https://youtu.be/m_tg1clSl0I
120 FPS: https://youtu.be/Z6WD7R286cs
those links give me:
Video unavailable
This video is private
are you able to set up a super simple repro project with just a single particle system in it?
I am very sorry, check again please, it must be ok now
Sure, I will try to make a reproducible demo
Here’s the demo (click on the red buttons to start particles)
the 120 FPS animates faster, at least on my devices.
So I managed to reproduce the issue on 120Hz screen in the demo. It requires 2 particle systems to be playing at the same time, but starting at different times. They weird timing glitches happen on both: they get slower and faster over time. When only one is playing, or both starting at the same time, I could not catch that behaviour. Only when you start them at different times.
Use the buttons to start or stop both particle systems.
https://playcanvas.com/editor/scene/2240572
I looked at the code and probably found the reason, possible fix here: [Fix] Fixed particles update speed on high refresh screens by mvaligursky · Pull Request #7675 · playcanvas/engine · GitHub