From cd5a479ed50076fcb9d6cbec0daf5d5bf60e5593 Mon Sep 17 00:00:00 2001 From: Filipe Rodrigues Date: Wed, 16 Feb 2022 06:01:16 +0000 Subject: [PATCH] `Wgpu::render` now doesn't return the surface size. --- zsw-renderer/src/lib.rs | 3 ++- zsw-wgpu/src/lib.rs | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/zsw-renderer/src/lib.rs b/zsw-renderer/src/lib.rs index c11deb5..6a8b379 100644 --- a/zsw-renderer/src/lib.rs +++ b/zsw-renderer/src/lib.rs @@ -192,7 +192,8 @@ impl Renderer { let mut surface_lock = wgpu.lock_surface().await.allow::(); // Then render - wgpu.render(&mut surface_lock, |encoder, surface_view, surface_size| { + let surface_size = wgpu.surface_size(&surface_lock); + wgpu.render(&mut surface_lock, |encoder, surface_view| { // Render the panels { // DEADLOCK: Caller ensures we can lock it after the surface diff --git a/zsw-wgpu/src/lib.rs b/zsw-wgpu/src/lib.rs index 85c9160..c2f6368 100644 --- a/zsw-wgpu/src/lib.rs +++ b/zsw-wgpu/src/lib.rs @@ -228,11 +228,10 @@ impl<'window> Wgpu<'window> { /// /// If any resize is queued, it will be executed *before* the frame starts, so the frame will start /// with the new size. - // TODO: Remove size from passed parameters pub fn render( &self, surface_lock: &mut SurfaceLock, - f: impl FnOnce(&mut wgpu::CommandEncoder, &wgpu::TextureView, PhysicalSize) -> Result<(), anyhow::Error>, + f: impl FnOnce(&mut wgpu::CommandEncoder, &wgpu::TextureView) -> Result<(), anyhow::Error>, ) -> Result<(), anyhow::Error> { let surface = surface_lock.get_mut(&self.lock_source); @@ -265,7 +264,7 @@ impl<'window> Wgpu<'window> { let mut encoder = self.device.create_command_encoder(&encoder_descriptor); // And render using `f` - f(&mut encoder, &surface_texture_view, surface.size).context("Unable to render")?; + f(&mut encoder, &surface_texture_view).context("Unable to render")?; // Finally submit everything to the queue and present the surface's texture self.queue.submit([encoder.finish()]);