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:
@@ -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(())
|
||||
|
||||
Reference in New Issue
Block a user