- Home /
Is it possible to hide certain particles (disable rendering) while still calculating its motion?
I was trying to implement a feature into my game where players can switch between two visions (and therefore some particle systems become invisible and its particles will not collide with the player while others do the reverse).
If only I could make a compromise... I came up with several possibilities:
1.Always render all particles in both visions. When player switched the vision, simply make a particle shader completely transparent. However, this is not a suitable solution since mobile devices will run into a performance issue - If this solution is used, this will result in an estimated amount of average rendered particles in a scene outnumbering 60k in the highest difficulty, and 16k in easy mode.
2.Use Prewarm to simulate particle behavior. But I'm afraid this will bring a large spike to both CPU and GPU profiler. Also, I'm not sure whether Particle Playground 3 is able to reproduce some complex particle event cases.
3.Transform particle systems to different locations when player vision switching is triggered, but that requires local simulation spaces if I want to transform particles as well. And if local spaces are used, what about collision? (since it's a bullet hell game). (Actually, I don't have a proof that offscreen particle motions will be calculated either.)
Ultimately, I want to be able to eliminate negative performance impacts caused by high amount of particles onscreen. Is it possible to hide certain particles (in the best scenario, disable rendering these particles) while still calculating its attributes?
Thanks.
Answer by ifurkend · Jun 20, 2017 at 10:04 AM
You can change the "max particle size" in particle renderer module to zero which effectively hides all particles while retaining the particle meshes in the screen. But I have no experience if it would trigger performance spike.
Answer by JxWolfe · Jun 20, 2017 at 11:30 AM
this would still calculate the particles but not show them, if you put them in a layer, and that layer couldn't be seen by the camera then you wouldn't see them... from that camera
Your answer
![](https://koobas.hobune.stream/wayback/20220612124332im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Optimize Occlusion Culling and Particle Systems in a House sized scene 0 Answers
How to change partcile system's order in layer through script? 1 Answer
Optimize Particle Emitter with Massive # of Particles 0 Answers
How Do I Not Render Objects That My Player Doesn't See 1 Answer
Too much assets for mobile game 0 Answers