@@ -3,9 +3,8 @@ use crate::renderer::asset::{
33 GraphicsPipelineHandle , PathPipelineShaderStage , RendererAssets , RendererAssetsReadOnly ,
44} ;
55use crate :: renderer:: renderer_resources:: RendererResources ;
6- use bytemuck:: { Pod , Zeroable , box_bytes_of } ;
6+ use bytemuck:: { Pod , Zeroable } ;
77use dear_imgui_rs;
8- use smallvec:: SmallVec ;
98use sourcerenderer_core:: gpu:: { Texture as _, TexturePlane } ;
109use sourcerenderer_core:: { Matrix4 , Vec2 , Vec2I , Vec2UI , Vec3 , Vec3UI } ;
1110use std:: collections:: HashMap ;
@@ -118,8 +117,9 @@ impl DearImguiRenderer {
118117 backbuffer_view : & Arc < TextureView > ,
119118 backbuffer_handle : & BackendTexture ,
120119 ) {
121- let mut feedback = Vec :: < dear_imgui_rs :: TextureFeedback > :: new ( ) ;
120+ command_buffer . begin_label ( "DearImgui" ) ;
122121
122+ command_buffer. begin_label ( "Pre-Copy Barriers" ) ;
123123 for texture_request in snapshot. texture_requests ( ) {
124124 match texture_request. operation ( ) {
125125 dear_imgui_rs:: TextureOp :: Create {
@@ -132,8 +132,8 @@ impl DearImguiRenderer {
132132 assert_eq ! ( * row_pitch, imgui_tight_pitch( * format, * width as u64 ) as usize ) ;
133133 if self . textures . contains_key ( & texture_request. texture ( ) ) {
134134 log:: warn!(
135- "DearImgui texture creation request for a texture that already exists: {:?}" ,
136- texture_request. texture( )
135+ "EPOCH: {:?}: DearImgui texture creation request for a texture that already exists: {:?}" ,
136+ snapshot . epoch ( ) , texture_request. texture( )
137137 ) ;
138138 }
139139
@@ -188,15 +188,6 @@ impl DearImguiRenderer {
188188 let imgui_id = dear_imgui_rs:: TextureId :: new ( id | Self :: IMGUI_IDENTIFY_MASK ) ;
189189 self . textures
190190 . insert ( texture_request. texture ( ) , ( imgui_id, view) ) ;
191-
192- match texture_request. uploaded ( imgui_id) {
193- Ok ( f) => {
194- feedback. push ( f) ;
195- }
196- Err ( e) => {
197- log:: error!( "DearImgui error: {:?}" , e) ;
198- }
199- }
200191 }
201192 dear_imgui_rs:: TextureOp :: Update { .. } => {
202193 if let Some ( ( _, texture_view) ) =
@@ -221,7 +212,10 @@ impl DearImguiRenderer {
221212 }
222213
223214 command_buffer. flush_barriers ( ) ;
215+ command_buffer. end_label ( ) ;
224216
217+ command_buffer. begin_label ( "Copies" ) ;
218+ let mut feedback = Vec :: < dear_imgui_rs:: TextureFeedback > :: new ( ) ;
225219 for texture_request in snapshot. texture_requests ( ) {
226220 match texture_request. operation ( ) {
227221 dear_imgui_rs:: TextureOp :: Create {
@@ -231,7 +225,6 @@ impl DearImguiRenderer {
231225 row_pitch,
232226 pixels,
233227 } => {
234-
235228 let ( imgui_id, view) = self . textures . get ( & texture_request. texture ( ) ) . unwrap ( ) ;
236229 let texture = view. texture ( ) . unwrap ( ) ;
237230
@@ -298,6 +291,8 @@ impl DearImguiRenderer {
298291 assert_eq ! ( * width, texture. info( ) . width) ;
299292 assert_eq ! ( * height, texture. info( ) . height) ;
300293 for rect in rects {
294+ log:: warn!( "EPOCH: {:?}: Copy rect to {:?}: {:?}" , snapshot. epoch( ) , texture_request. texture( ) , rect. rect) ;
295+
301296 let data_buffer = command_buffer
302297 . upload_dynamic_data ( device, & rect. data , BufferUsage :: COPY_SRC )
303298 . unwrap ( ) ;
@@ -368,7 +363,9 @@ impl DearImguiRenderer {
368363 }
369364
370365 command_buffer. flush_barriers ( ) ;
366+ command_buffer. end_label ( ) ;
371367
368+ command_buffer. begin_label ( "Post-Copy Barriers" ) ;
372369 for texture_request in snapshot. texture_requests ( ) {
373370 match texture_request. operation ( ) {
374371 dear_imgui_rs:: TextureOp :: Update { .. } => {
@@ -390,9 +387,11 @@ impl DearImguiRenderer {
390387 _ => { }
391388 }
392389 }
390+ command_buffer. end_label ( ) ;
393391
394392 command_buffer. flush_barriers ( ) ;
395393
394+ command_buffer. begin_label ( "Drawing" ) ;
396395 command_buffer. begin_render_pass ( & RenderPassBeginInfo {
397396 render_targets : & [ RenderTarget {
398397 view : backbuffer_view,
@@ -538,6 +537,8 @@ impl DearImguiRenderer {
538537 }
539538
540539 command_buffer. end_render_pass ( ) ;
540+ command_buffer. end_label ( ) ;
541+ command_buffer. end_label ( ) ;
541542
542543 snapshot. commit ( feedback) . unwrap ( ) ;
543544 }
0 commit comments