@@ -12,6 +12,9 @@ use bevy_ecs::{
1212 world:: { FromWorld , World } ,
1313} ;
1414use bevy_math:: UVec2 ;
15+ // render diagnostics are not supported on mac; gating to prevent potential flickering (GH Issue #22257)
16+ #[ cfg( not( target_os = "macos" ) ) ]
17+ use bevy_render:: diagnostic:: RecordDiagnostics ;
1518use bevy_render:: {
1619 camera:: ExtractedCamera ,
1720 render_graph:: { Node , NodeRunError , RenderGraphContext } ,
@@ -104,11 +107,13 @@ impl Node for MeshletVisibilityBufferRasterPassNode {
104107 return Ok ( ( ) ) ;
105108 } ;
106109
110+ #[ cfg( not( target_os = "macos" ) ) ]
107111 let diagnostics = render_context. diagnostic_recorder ( ) ;
108112
109113 render_context
110114 . command_encoder ( )
111115 . push_debug_group ( "meshlet_visibility_buffer_raster" ) ;
116+ #[ cfg( not( target_os = "macos" ) ) ]
112117 let time_span = diagnostics. time_span (
113118 render_context. command_encoder ( ) ,
114119 "meshlet_visibility_buffer_raster" ,
@@ -245,6 +250,7 @@ impl Node for MeshletVisibilityBufferRasterPassNode {
245250 "meshlet_visibility_buffer_raster: {}" ,
246251 shadow_view. pass_name
247252 ) ) ;
253+ #[ cfg( not( target_os = "macos" ) ) ]
248254 let time_span_shadow = diagnostics. time_span (
249255 render_context. command_encoder ( ) ,
250256 shadow_view. pass_name . clone ( ) ,
@@ -341,9 +347,11 @@ impl Node for MeshletVisibilityBufferRasterPassNode {
341347 downsample_depth_second_shadow_view_pipeline,
342348 ) ;
343349 render_context. command_encoder ( ) . pop_debug_group ( ) ;
350+ #[ cfg( not( target_os = "macos" ) ) ]
344351 time_span_shadow. end ( render_context. command_encoder ( ) ) ;
345352 }
346353
354+ #[ cfg( not( target_os = "macos" ) ) ]
347355 time_span. end ( render_context. command_encoder ( ) ) ;
348356
349357 Ok ( ( ) )
0 commit comments