Search Issue Tracker
Fixed in 2018.4.X
Fixed in 2019.1.X, 2019.2.X
System becomes slow when using a Particle System with a Material that has a Shader that uses a Custom Shader GUI
When using a Particle System with a Material that has a Shader that uses a Custom Shader GUI it will end up in a state where every redraw of the Particle System GUI will cause a whole new Instance of the Custom Editor GUI to be created. That causes Windows and macOS to become super slow and gives a bad framerate.
1. Download attached “ShaderGUIBugRepro.zip" project and open in Unity
2. Open "ReproScene" scene
3. Select the "Particle System" gameObject
4. Notice that the ShaderGUI Script logs in the Console once when selected (expected behavior), indicating that a new Instance of the Custom Editor was created
5. Modify any settings in the Shader by the Particle Material Inspector, like starting to drag the "Soft Particle Factor" slider
6. Notice that starts spamming the Console with a debug.log that is written whenever a new Instance of the Custom Editor is created
- This issue appears both on Windows and macOS
- It stops spamming messages if Project is saved
- If this issue does not reproduce after sliding a Slider, then select another gameObject and then select "Particle System" gameObject
- If you still can’t reproduce it with those steps, please try uncompressing a new copy of the project and try again
Reproduced on Unity 2017.4.0f1, 2017.4.27f1, 2018.3.14f1, 2018.4.1f1, 2019.1.4f1, 2019.2.0b3 and 2019.3.0a3
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- OnActiveBuildTargetChanged is not called when changing the build platform
- Silent crash when scripts are recompiled on a specific project
- [Android] Video freezes when built for Android with specific project
- UI element is not displayed when Canvas Render Mode is set to Screen Space-Overlay
- Editor crashes on libetc_init when changing WebGL Texture Format to "RGB + 1-bit Alpha Compressed ETC2 4 bits"