From 0f37c9922d7886d4a9192161284f321e3b6e450a Mon Sep 17 00:00:00 2001 From: Adam Cosner <160804448+Adam-Cosner@users.noreply.github.com> Date: Thu, 20 Feb 2025 04:34:39 -0800 Subject: [PATCH] perf: use cached alpha mode instead of calling surface.get_capabilities every time the window is redrawn --- wgpu/src/window/compositor.rs | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/wgpu/src/window/compositor.rs b/wgpu/src/window/compositor.rs index 27f9a4da..96370655 100644 --- a/wgpu/src/window/compositor.rs +++ b/wgpu/src/window/compositor.rs @@ -397,21 +397,6 @@ impl graphics::Compositor for Compositor { width: u32, height: u32, ) { - let caps = surface.get_capabilities(&self.adapter); - let alpha_mode = if caps - .alpha_modes - .contains(&wgpu::CompositeAlphaMode::PostMultiplied) - { - wgpu::CompositeAlphaMode::PostMultiplied - } else if caps - .alpha_modes - .contains(&wgpu::CompositeAlphaMode::PreMultiplied) - { - wgpu::CompositeAlphaMode::PreMultiplied - } else { - wgpu::CompositeAlphaMode::Auto - }; - surface.configure( &self.engine.device, &wgpu::SurfaceConfiguration { @@ -420,7 +405,7 @@ impl graphics::Compositor for Compositor { present_mode: self.settings.present_mode, width, height, - alpha_mode, + alpha_mode: self.alpha_mode, view_formats: vec![], desired_maximum_frame_latency: 1, },