In my game I have the client simulating a large number of particles to help decrease visual latency, but since the client won’t actually be seeing most of these particles most of the time, I’m worried that simulating all of the particles is consuming valuable compute power.
So does simulating a large number of particle emitters, even if they are offscreen, decrease performance? Would it help to just outright not simulate them?
Anything you put into your game can potentially cause performance issues. Making it client sided will help with performance but it really depends on how many particles are emitting at once.
To answer your question specifically, I believe they still emit when off screen.
When utilizing particles, it is important to keep in mind that there is a cutoff point, and they do stop spawning when super far away. However, you are certainly correct in your suspicion of its ability to impact performance.
If you uploaded a high res image to be used for your particles, and set the emission rate to 200, you are spawning in that high res image 200 times a second. In short, not good!
A general rule of thumb I follow for performance is:
- I keep the particle image small resolution?
- I stick to under a rate of 10 as often as I can. I use very few particle emitters when possible.
there’s no particle culling in roblox