@@ -92,34 +92,29 @@ static class Styles
92
92
private static readonly string kShadingMode = "Shading Mode" ;
93
93
private static readonly string kMiscellaneous = "Miscellaneous" ;
94
94
private static readonly string kDeferred = "Deferred" ;
95
- private static readonly string kGlobalIllumination = "Global Illumination " ;
95
+ private static readonly string kLighting = "Lighting " ;
96
96
private static readonly string kRealtimeGI = "Realtime Global Illumination" ;
97
97
private static readonly string kBakedGI = "Baked Global Illumination" ;
98
- private static readonly string kMaterialValidation = "Material Validation" ;
99
98
100
99
// Map all builtin DrawCameraMode entries
101
100
// This defines the order in which the entries appear in the dropdown menu!
102
101
public static readonly SceneView . CameraMode [ ] sBuiltinCameraModes =
103
102
{
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 ) ,
107
106
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 ) ,
118
109
119
- new SceneView . CameraMode ( DrawCameraMode . RealtimeAlbedo , "Albedo" , kRealtimeGI ) ,
120
- new SceneView . CameraMode ( DrawCameraMode . RealtimeEmissive , "Emissive" , kRealtimeGI ) ,
121
110
new SceneView . CameraMode ( DrawCameraMode . RealtimeIndirect , "Indirect" , kRealtimeGI ) ,
122
111
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 ) ,
123
118
124
119
new SceneView . CameraMode ( DrawCameraMode . BakedLightmap , "Baked Lightmap" , kBakedGI ) ,
125
120
new SceneView . CameraMode ( DrawCameraMode . BakedDirectionality , "Directionality" , kBakedGI ) ,
@@ -129,20 +124,22 @@ static class Styles
129
124
new SceneView . CameraMode ( DrawCameraMode . BakedCharting , "UV Charts" , kBakedGI ) ,
130
125
new SceneView . CameraMode ( DrawCameraMode . BakedTexelValidity , "Texel Validity" , kBakedGI ) ,
131
126
new SceneView . CameraMode ( DrawCameraMode . BakedUVOverlap , "UV Overlap" , kBakedGI ) ,
132
- new SceneView . CameraMode ( DrawCameraMode . BakedLightmapCulling , "Baked Lightmap Culling" , kBakedGI ) ,
133
127
new SceneView . CameraMode ( DrawCameraMode . BakedIndices , "Lightmap Indices" , kBakedGI ) ,
134
128
new SceneView . CameraMode ( DrawCameraMode . LightOverlap , "Light Overlap" , kBakedGI ) ,
135
129
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 ) ,
138
134
139
- new SceneView . CameraMode ( DrawCameraMode . ShadowCascades , "Shadow Cascades" , kMiscellaneous ) ,
140
135
new SceneView . CameraMode ( DrawCameraMode . RenderPaths , "Render Paths" , kMiscellaneous ) ,
141
136
new SceneView . CameraMode ( DrawCameraMode . AlphaChannel , "Alpha Channel" , kMiscellaneous ) ,
142
137
new SceneView . CameraMode ( DrawCameraMode . Overdraw , "Overdraw" , kMiscellaneous ) ,
143
138
new SceneView . CameraMode ( DrawCameraMode . Mipmaps , "Mipmaps" , kMiscellaneous ) ,
144
139
new SceneView . CameraMode ( DrawCameraMode . TextureStreaming , "Texture Streaming" , kMiscellaneous ) ,
145
140
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 ) ,
146
143
} ;
147
144
148
145
}
@@ -157,12 +154,12 @@ private float windowHeight
157
154
int modes ;
158
155
159
156
// 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 )
161
158
. 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 )
163
160
. 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 ) ;
166
163
167
164
return UpdatedHeight ( headers , modes , GraphicsSettings . renderPipelineAsset != null ) ;
168
165
}
@@ -191,8 +188,8 @@ public override void OnGUI(Rect rect)
191
188
return ;
192
189
193
190
// 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 ;
196
193
197
194
Draw ( rect . width ) ;
198
195
@@ -254,6 +251,9 @@ private void Draw(float listElementWidth)
254
251
foreach ( SceneView . CameraMode mode in SceneView . userDefinedModes . OrderBy ( mode => mode . section )
255
252
. Concat ( Styles . sBuiltinCameraModes ) )
256
253
{
254
+ if ( ! mode . show )
255
+ continue ;
256
+
257
257
// Draw separators and headers
258
258
if ( mode . drawMode != DrawCameraMode . UserDefined && ! m_SceneView . IsCameraDrawModeSupported ( mode ) )
259
259
// Hide unsupported items and headers
@@ -318,6 +318,9 @@ private float RecalculateWindowHeight()
318
318
foreach ( SceneView . CameraMode mode in SceneView . userDefinedModes . OrderBy ( mode => mode . section )
319
319
. Concat ( Styles . sBuiltinCameraModes ) )
320
320
{
321
+ if ( ! mode . show )
322
+ continue ;
323
+
321
324
if ( mode . drawMode != DrawCameraMode . UserDefined && ! m_SceneView . IsCameraDrawModeSupported ( mode ) )
322
325
continue ;
323
326
0 commit comments