@@ -92,34 +92,29 @@ static class Styles
9292 private static readonly string kShadingMode = "Shading Mode" ;
9393 private static readonly string kMiscellaneous = "Miscellaneous" ;
9494 private static readonly string kDeferred = "Deferred" ;
95- private static readonly string kGlobalIllumination = "Global Illumination " ;
95+ private static readonly string kLighting = "Lighting " ;
9696 private static readonly string kRealtimeGI = "Realtime Global Illumination" ;
9797 private static readonly string kBakedGI = "Baked Global Illumination" ;
98- private static readonly string kMaterialValidation = "Material Validation" ;
9998
10099 // Map all builtin DrawCameraMode entries
101100 // This defines the order in which the entries appear in the dropdown menu!
102101 public static readonly SceneView . CameraMode [ ] sBuiltinCameraModes =
103102 {
104- new SceneView . CameraMode ( DrawCameraMode . Textured , "Shaded" , kShadingMode ) ,
105- new SceneView . CameraMode ( DrawCameraMode . Wireframe , "Wireframe" , kShadingMode ) ,
106- new SceneView . CameraMode ( DrawCameraMode . TexturedWire , "Shaded Wireframe" , kShadingMode ) ,
103+ new SceneView . CameraMode ( DrawCameraMode . Textured , "Shaded" , kShadingMode , false ) ,
104+ new SceneView . CameraMode ( DrawCameraMode . Wireframe , "Wireframe" , kShadingMode , false ) ,
105+ new SceneView . CameraMode ( DrawCameraMode . TexturedWire , "Shaded Wireframe" , kShadingMode , false ) ,
107106
108- new SceneView . CameraMode ( DrawCameraMode . DeferredDiffuse , "Albedo" , kDeferred ) ,
109- new SceneView . CameraMode ( DrawCameraMode . DeferredSpecular , "Specular" , kDeferred ) ,
110- new SceneView . CameraMode ( DrawCameraMode . DeferredSmoothness , "Smoothness" , kDeferred ) ,
111- new SceneView . CameraMode ( DrawCameraMode . DeferredNormal , "Normal" , kDeferred ) ,
112-
113- new SceneView . CameraMode ( DrawCameraMode . Systems , "Systems" , kGlobalIllumination ) ,
114- new SceneView . CameraMode ( DrawCameraMode . Clustering , "Clustering" , kGlobalIllumination ) ,
115- new SceneView . CameraMode ( DrawCameraMode . LitClustering , "Lit Clustering" , kGlobalIllumination ) ,
116- new SceneView . CameraMode ( DrawCameraMode . RealtimeCharting , "UV Charts" , kGlobalIllumination ) ,
117- new SceneView . CameraMode ( DrawCameraMode . GIContributorsReceivers , "Contributors / Receivers" , kGlobalIllumination ) ,
107+ new SceneView . CameraMode ( DrawCameraMode . GIContributorsReceivers , "Contributors / Receivers" , kLighting ) ,
108+ new SceneView . CameraMode ( DrawCameraMode . ShadowCascades , "Shadow Cascades" , kLighting ) ,
118109
119- new SceneView . CameraMode ( DrawCameraMode . RealtimeAlbedo , "Albedo" , kRealtimeGI ) ,
120- new SceneView . CameraMode ( DrawCameraMode . RealtimeEmissive , "Emissive" , kRealtimeGI ) ,
121110 new SceneView . CameraMode ( DrawCameraMode . RealtimeIndirect , "Indirect" , kRealtimeGI ) ,
122111 new SceneView . CameraMode ( DrawCameraMode . RealtimeDirectionality , "Directionality" , kRealtimeGI ) ,
112+ new SceneView . CameraMode ( DrawCameraMode . RealtimeAlbedo , "Albedo" , kRealtimeGI ) ,
113+ new SceneView . CameraMode ( DrawCameraMode . RealtimeEmissive , "Emissive" , kRealtimeGI ) ,
114+ new SceneView . CameraMode ( DrawCameraMode . RealtimeCharting , "UV Charts" , kRealtimeGI ) ,
115+ new SceneView . CameraMode ( DrawCameraMode . Systems , "Systems" , kRealtimeGI ) ,
116+ new SceneView . CameraMode ( DrawCameraMode . Clustering , "Clustering" , kRealtimeGI ) ,
117+ new SceneView . CameraMode ( DrawCameraMode . LitClustering , "Lit Clustering" , kRealtimeGI ) ,
123118
124119 new SceneView . CameraMode ( DrawCameraMode . BakedLightmap , "Baked Lightmap" , kBakedGI ) ,
125120 new SceneView . CameraMode ( DrawCameraMode . BakedDirectionality , "Directionality" , kBakedGI ) ,
@@ -129,20 +124,22 @@ static class Styles
129124 new SceneView . CameraMode ( DrawCameraMode . BakedCharting , "UV Charts" , kBakedGI ) ,
130125 new SceneView . CameraMode ( DrawCameraMode . BakedTexelValidity , "Texel Validity" , kBakedGI ) ,
131126 new SceneView . CameraMode ( DrawCameraMode . BakedUVOverlap , "UV Overlap" , kBakedGI ) ,
132- new SceneView . CameraMode ( DrawCameraMode . BakedLightmapCulling , "Baked Lightmap Culling" , kBakedGI ) ,
133127 new SceneView . CameraMode ( DrawCameraMode . BakedIndices , "Lightmap Indices" , kBakedGI ) ,
134128 new SceneView . CameraMode ( DrawCameraMode . LightOverlap , "Light Overlap" , kBakedGI ) ,
135129
136- new SceneView . CameraMode ( DrawCameraMode . ValidateAlbedo , "Validate Albedo" , kMaterialValidation ) ,
137- new SceneView . CameraMode ( DrawCameraMode . ValidateMetalSpecular , "Validate Metal Specular" , kMaterialValidation ) ,
130+ new SceneView . CameraMode ( DrawCameraMode . DeferredDiffuse , "Albedo" , kDeferred ) ,
131+ new SceneView . CameraMode ( DrawCameraMode . DeferredSpecular , "Specular" , kDeferred ) ,
132+ new SceneView . CameraMode ( DrawCameraMode . DeferredSmoothness , "Smoothness" , kDeferred ) ,
133+ new SceneView . CameraMode ( DrawCameraMode . DeferredNormal , "Normal" , kDeferred ) ,
138134
139- new SceneView . CameraMode ( DrawCameraMode . ShadowCascades , "Shadow Cascades" , kMiscellaneous ) ,
140135 new SceneView . CameraMode ( DrawCameraMode . RenderPaths , "Render Paths" , kMiscellaneous ) ,
141136 new SceneView . CameraMode ( DrawCameraMode . AlphaChannel , "Alpha Channel" , kMiscellaneous ) ,
142137 new SceneView . CameraMode ( DrawCameraMode . Overdraw , "Overdraw" , kMiscellaneous ) ,
143138 new SceneView . CameraMode ( DrawCameraMode . Mipmaps , "Mipmaps" , kMiscellaneous ) ,
144139 new SceneView . CameraMode ( DrawCameraMode . TextureStreaming , "Texture Streaming" , kMiscellaneous ) ,
145140 new SceneView . CameraMode ( DrawCameraMode . SpriteMask , "Sprite Mask" , kMiscellaneous ) ,
141+ new SceneView . CameraMode ( DrawCameraMode . ValidateAlbedo , "Validate Albedo" , kMiscellaneous ) ,
142+ new SceneView . CameraMode ( DrawCameraMode . ValidateMetalSpecular , "Validate Metal Specular" , kMiscellaneous ) ,
146143 } ;
147144
148145 }
@@ -157,12 +154,12 @@ private float windowHeight
157154 int modes ;
158155
159156 // Hide unsupported items and headers
160- headers = Styles . sBuiltinCameraModes . Where ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) )
157+ headers = Styles . sBuiltinCameraModes . Where ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) && mode . show )
161158 . Select ( mode => mode . section ) . Distinct ( ) . Count ( ) +
162- SceneView . userDefinedModes . Where ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) )
159+ SceneView . userDefinedModes . Where ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) && mode . show )
163160 . Select ( mode => mode . section ) . Distinct ( ) . Count ( ) ;
164- modes = Styles . sBuiltinCameraModes . Count ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) ) +
165- SceneView . userDefinedModes . Count ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) ) ;
161+ modes = Styles . sBuiltinCameraModes . Count ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) && mode . show ) +
162+ SceneView . userDefinedModes . Count ( mode => m_SceneView . IsCameraDrawModeSupported ( mode ) && mode . show ) ;
166163
167164 return UpdatedHeight ( headers , modes , GraphicsSettings . renderPipelineAsset != null ) ;
168165 }
@@ -191,8 +188,8 @@ public override void OnGUI(Rect rect)
191188 return ;
192189
193190 // We do not use the layout event
194- if ( Event . current . type == EventType . Layout )
195- return ;
191+ if ( Event . current . type == EventType . Layout )
192+ return ;
196193
197194 Draw ( rect . width ) ;
198195
@@ -254,6 +251,9 @@ private void Draw(float listElementWidth)
254251 foreach ( SceneView . CameraMode mode in SceneView . userDefinedModes . OrderBy ( mode => mode . section )
255252 . Concat ( Styles . sBuiltinCameraModes ) )
256253 {
254+ if ( ! mode . show )
255+ continue ;
256+
257257 // Draw separators and headers
258258 if ( mode . drawMode != DrawCameraMode . UserDefined && ! m_SceneView . IsCameraDrawModeSupported ( mode ) )
259259 // Hide unsupported items and headers
@@ -318,6 +318,9 @@ private float RecalculateWindowHeight()
318318 foreach ( SceneView . CameraMode mode in SceneView . userDefinedModes . OrderBy ( mode => mode . section )
319319 . Concat ( Styles . sBuiltinCameraModes ) )
320320 {
321+ if ( ! mode . show )
322+ continue ;
323+
321324 if ( mode . drawMode != DrawCameraMode . UserDefined && ! m_SceneView . IsCameraDrawModeSupported ( mode ) )
322325 continue ;
323326
0 commit comments