diff options
author | 2021-08-01 20:38:34 +0200 | |
---|---|---|
committer | 2021-08-03 11:30:45 +0200 | |
commit | d7975a9de591a57b265c2d62078a65ffb9209696 (patch) | |
tree | 1dc26f557bc84f059de82f436895858642f635e8 /examples | |
parent | a08e4ebccbb72f9cf6fca01047e0b46a482ca9ea (diff) | |
download | iced-d7975a9de591a57b265c2d62078a65ffb9209696.tar.gz iced-d7975a9de591a57b265c2d62078a65ffb9209696.tar.bz2 iced-d7975a9de591a57b265c2d62078a65ffb9209696.zip |
wgpu: Use the preferred texture format of the surface
Signed-off-by: Tilmann Meyer <me@atiltedtree.dev>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/integration/src/main.rs | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/examples/integration/src/main.rs b/examples/integration/src/main.rs index b57c73d8..ffa3bf48 100644 --- a/examples/integration/src/main.rs +++ b/examples/integration/src/main.rs @@ -34,7 +34,7 @@ pub fn main() { let instance = wgpu::Instance::new(wgpu::BackendBit::PRIMARY); let surface = unsafe { instance.create_surface(&window) }; - let (mut device, queue) = futures::executor::block_on(async { + let (format, (mut device, queue)) = futures::executor::block_on(async { let adapter = instance .request_adapter(&wgpu::RequestAdapterOptions { power_preference: wgpu::PowerPreference::HighPerformance, @@ -43,21 +43,24 @@ pub fn main() { .await .expect("Request adapter"); - adapter - .request_device( - &wgpu::DeviceDescriptor { - label: None, - features: wgpu::Features::empty(), - limits: wgpu::Limits::default(), - }, - None, - ) - .await - .expect("Request device") + ( + adapter + .get_swap_chain_preferred_format(&surface) + .expect("Preffered format"), + adapter + .request_device( + &wgpu::DeviceDescriptor { + label: None, + features: wgpu::Features::empty(), + limits: wgpu::Limits::default(), + }, + None, + ) + .await + .expect("Request device"), + ) }); - let format = wgpu::TextureFormat::Bgra8UnormSrgb; - let mut swap_chain = { let size = window.inner_size(); @@ -65,7 +68,7 @@ pub fn main() { &surface, &wgpu::SwapChainDescriptor { usage: wgpu::TextureUsage::RENDER_ATTACHMENT, - format: format, + format, width: size.width, height: size.height, present_mode: wgpu::PresentMode::Mailbox, @@ -85,7 +88,7 @@ pub fn main() { // Initialize iced let mut debug = Debug::new(); let mut renderer = - Renderer::new(Backend::new(&mut device, Settings::default())); + Renderer::new(Backend::new(&mut device, Settings::default(), format)); let mut state = program::State::new( controls, |