diff options
author | 2021-08-04 18:48:19 +0700 | |
---|---|---|
committer | 2021-08-04 18:48:19 +0700 | |
commit | 63bdbf817e0ecd8ce9162f2b8cc5eaefb5b42e68 (patch) | |
tree | 01217e3365733a8c34a2bee980b21197347d6c03 /examples/integration | |
parent | cdd2f247f8c22775a5035be03715775c96cd1037 (diff) | |
parent | f3916decf25063ea23e03e63a65f0342cef09f1a (diff) | |
download | iced-63bdbf817e0ecd8ce9162f2b8cc5eaefb5b42e68.tar.gz iced-63bdbf817e0ecd8ce9162f2b8cc5eaefb5b42e68.tar.bz2 iced-63bdbf817e0ecd8ce9162f2b8cc5eaefb5b42e68.zip |
Merge pull request #978 from ATiltedTree/use-preffered-format
wgpu: Use the preferred texture format of the surface
Diffstat (limited to 'examples/integration')
-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..b4f580a4 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("Get preferred 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, |