Skip to content

Commit 0a32bad

Browse files
committed
Add DearImgui labels to command buffer
1 parent 34d05eb commit 0a32bad

1 file changed

Lines changed: 16 additions & 15 deletions

File tree

‎engine/src/renderer/passes/dear_imgui_renderer.rs‎

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@ use crate::renderer::asset::{
33
GraphicsPipelineHandle, PathPipelineShaderStage, RendererAssets, RendererAssetsReadOnly,
44
};
55
use crate::renderer::renderer_resources::RendererResources;
6-
use bytemuck::{Pod, Zeroable, box_bytes_of};
6+
use bytemuck::{Pod, Zeroable};
77
use dear_imgui_rs;
8-
use smallvec::SmallVec;
98
use sourcerenderer_core::gpu::{Texture as _, TexturePlane};
109
use sourcerenderer_core::{Matrix4, Vec2, Vec2I, Vec2UI, Vec3, Vec3UI};
1110
use 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

Comments
 (0)