Search Issue Tracker
Feature Request
Votes
0
Found in [Package]
12.1.10
15.0.4
16.0.0
Issue ID
SGB-468
Regression
No
ShaderGraph window is redrawn every frame when the window is visible and idling
How to reproduce:
1. Open the project “IN_33213”
2. Open “New Shader Graph” Shader Graph
3. Select the “Custom Shader” Node in the New Shader Graph window
4. Make sure the Graph Inspector tab is visible the same as the “Custom Shader” Node
5. Press Windows → Analysis → Profiler
6. Set “Target Selection” to “Edit Mode”
7. Make sure GPU is enabled in the Profiler Modules
8. Record the Profiler for 3-5 sec
9. Search for “MaterialGraphEditorWindow.Paint” in Overview
Expected result: Shader Graph window is not redrawn every frame
Actual result: Shader Graph window is redrawn every frame
Reproducible with: 2021.3.19f1, 2022.2.8f1, 2023.1.026
Not reproducible with: 2023.1.0b6, 2023.2.0a3
Couldn't reproduce with: 2020.3.45f1, 2021.2.0a21 (due to compiler errors)
Fixed in: 2023.1.0b1
Reproducible on: Windows 10 Pro
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
- Screen Space Ambient Occlusion is ignored when toggling "Post Processing" visibility in the Scene window overlay
- “RenderTexture.Create failed: requested size is too large.” errors are thrown and the Inspector window is black when selecting a CubemapArray texture
- Crash on AMDUnityPlugin.DLL in specific built project when using FSR2 upscaler
- RenderObjects does not have any Depth texture bound when Event is set to AfterRenderingPostProcessing
- Prefab override popup is cropped/positioned incorrectly when more than one display is used and a higher display Scale is set
Resolution Note:
Custom Function Nodes represent a black box of user defined functionality. For us to be able to faithfully represent the logic they encapsulate, we must assume that the preview will always dirty. This works exactly the same way for any nodes downstream of the Time Node.
By default, we update these timed nodes every 30 fps when subgraph editor window is focused (selected), every 10 fps when it is not selected but still visible, and 2 fps when it is neither.
There's clearly some further improvements we should make here, but doing so would require us to look harder at how ShaderGraph like tools leverage the editor UI's rendering capabilities.
I'm marking this as a feature request, as we have ideas on how to improve it, but it's outside of the scope of a bug fix or incident.