1
0
mirror of https://github.com/emilk/egui.git synced 2026-08-29 04:40:03 -04:00

wgpu: add support for user-level command buffers + viewport clarification (#2230)

* wgpu: add support for user-level command buffers
* updated wgpu demo app
This commit is contained in:
Clement Rey
2022-11-04 09:54:29 +01:00
committed by GitHub
parent 4d1e858a52
commit fcb00723bc
5 changed files with 88 additions and 42 deletions

View File

@@ -148,7 +148,8 @@ impl WebPainter for WebPainterWgpu {
size_in_pixels,
pixels_per_point,
};
{
let user_cmd_bufs = {
let mut renderer = render_state.renderer.write();
for (id, image_delta) in &textures_delta.set {
renderer.update_texture(
@@ -165,8 +166,8 @@ impl WebPainter for WebPainterWgpu {
&mut encoder,
clipped_primitives,
&screen_descriptor,
);
}
)
};
{
let renderer = render_state.renderer.read();
@@ -201,8 +202,12 @@ impl WebPainter for WebPainterWgpu {
}
}
// Submit the commands.
render_state.queue.submit(std::iter::once(encoder.finish()));
// Submit the commands: both the main buffer and user-defined ones.
render_state.queue.submit(
user_cmd_bufs
.into_iter()
.chain(std::iter::once(encoder.finish())),
);
frame.present();
Ok(())