@@ -143,10 +143,13 @@ impl HighDynamicRangeRenderer {
143143
144144 fn calculate_frame_luminance (
145145 & self ,
146+ server : & dyn GraphicsServer ,
146147 scene_frame : & GpuTexture ,
147148 uniform_buffer_cache : & mut UniformBufferCache ,
148149 renderer_resources : & RendererResources ,
149150 ) -> Result < DrawCallStatistics , FrameworkError > {
151+ let _debug_scope = server. begin_scope ( "CalculateFrameLuminance" ) ;
152+
150153 self . frame_luminance . clear ( ) ;
151154
152155 let frame_matrix = self . frame_luminance . matrix ( ) ;
@@ -184,10 +187,13 @@ impl HighDynamicRangeRenderer {
184187
185188 fn calculate_avg_frame_luminance (
186189 & self ,
190+ server : & dyn GraphicsServer ,
187191 uniform_buffer_cache : & mut UniformBufferCache ,
188192 renderer_resources : & RendererResources ,
189193 luminance_calculation_method : LuminanceCalculationMethod ,
190194 ) -> Result < RenderPassStatistics , FrameworkError > {
195+ let _debug_scope = server. begin_scope ( "CalculateAvgFrameLuminance" ) ;
196+
191197 let mut stats = RenderPassStatistics :: default ( ) ;
192198
193199 match luminance_calculation_method {
@@ -261,10 +267,13 @@ impl HighDynamicRangeRenderer {
261267
262268 fn adaptation (
263269 & self ,
270+ server : & dyn GraphicsServer ,
264271 dt : f32 ,
265272 uniform_buffer_cache : & mut UniformBufferCache ,
266273 renderer_resources : & RendererResources ,
267274 ) -> Result < DrawCallStatistics , FrameworkError > {
275+ let _debug_scope = server. begin_scope ( "Adaptation" ) ;
276+
268277 let ctx = self . adaptation_chain . begin ( ) ;
269278 let viewport = Rect :: new ( 0 , 0 , ctx. lum_buffer . size as i32 , ctx. lum_buffer . size as i32 ) ;
270279 let matrix = ctx. lum_buffer . matrix ( ) ;
@@ -319,6 +328,8 @@ impl HighDynamicRangeRenderer {
319328 ..
320329 } = args;
321330
331+ let _debug_scope = args. server . begin_scope ( "ToneMap" ) ;
332+
322333 let frame_matrix = make_viewport_matrix ( viewport) ;
323334
324335 let color_grading_lut_tex = color_grading_lut
@@ -386,26 +397,35 @@ impl HighDynamicRangeRenderer {
386397 }
387398
388399 pub fn render ( & self , args : HdrRendererArgs ) -> Result < RenderPassStatistics , FrameworkError > {
400+ let _debug_scope = args. server . begin_scope ( "HDR" ) ;
389401 let mut stats = RenderPassStatistics :: default ( ) ;
390402 stats += self . calculate_frame_luminance (
403+ args. server ,
391404 args. hdr_scene_frame ,
392405 args. uniform_buffer_cache ,
393406 args. renderer_resources ,
394407 ) ?;
395408 stats += self . calculate_avg_frame_luminance (
409+ args. server ,
396410 args. uniform_buffer_cache ,
397411 args. renderer_resources ,
398412 args. settings . hdr_settings . luminance_calculation_method ,
399413 ) ?;
400414 if args. settings . hdr_settings . bloom_settings . use_bloom {
401415 stats += self . bloom_renderer . render (
416+ args. server ,
402417 args. hdr_scene_frame ,
403418 args. uniform_buffer_cache ,
404419 args. renderer_resources ,
405420 args. settings ,
406421 ) ?;
407422 }
408- stats += self . adaptation ( args. dt , args. uniform_buffer_cache , args. renderer_resources ) ?;
423+ stats += self . adaptation (
424+ args. server ,
425+ args. dt ,
426+ args. uniform_buffer_cache ,
427+ args. renderer_resources ,
428+ ) ?;
409429 stats += self . map_hdr_to_ldr ( args) ?;
410430 Ok ( stats)
411431 }
0 commit comments