diff options
author | 2020-04-07 05:48:21 +0200 | |
---|---|---|
committer | 2020-04-07 05:48:21 +0200 | |
commit | d807ef367e0257ba54f8cf38708a7a61e28a4acb (patch) | |
tree | 1ee065aa7f47cc9a3e3e642c9b58576dd54d3327 /examples/integration | |
parent | 703beae05ec2988b9a6b15e84291ec818b37bf5b (diff) | |
download | iced-d807ef367e0257ba54f8cf38708a7a61e28a4acb.tar.gz iced-d807ef367e0257ba54f8cf38708a7a61e28a4acb.tar.bz2 iced-d807ef367e0257ba54f8cf38708a7a61e28a4acb.zip |
Update `wgpu` to `0.5` in `iced_wgpu` :tada:
Diffstat (limited to 'examples/integration')
-rw-r--r-- | examples/integration/src/main.rs | 41 | ||||
-rw-r--r-- | examples/integration/src/scene.rs | 8 |
2 files changed, 32 insertions, 17 deletions
diff --git a/examples/integration/src/main.rs b/examples/integration/src/main.rs index 1c544449..7203d4b6 100644 --- a/examples/integration/src/main.rs +++ b/examples/integration/src/main.rs @@ -7,7 +7,9 @@ use scene::Scene; use iced_wgpu::{ wgpu, window::SwapChain, Primitive, Renderer, Settings, Target, }; -use iced_winit::{winit, Cache, Clipboard, MouseCursor, Size, UserInterface}; +use iced_winit::{ + futures, winit, Cache, Clipboard, MouseCursor, Size, UserInterface, +}; use winit::{ event::{Event, ModifiersState, WindowEvent}, @@ -25,21 +27,29 @@ pub fn main() { let mut modifiers = ModifiersState::default(); // Initialize WGPU - let adapter = wgpu::Adapter::request(&wgpu::RequestAdapterOptions { - power_preference: wgpu::PowerPreference::Default, - backends: wgpu::BackendBit::PRIMARY, - }) - .expect("Request adapter"); - let (mut device, mut queue) = - adapter.request_device(&wgpu::DeviceDescriptor { - extensions: wgpu::Extensions { - anisotropic_filtering: false, + let surface = wgpu::Surface::create(&window); + let (mut device, queue) = futures::executor::block_on(async { + let adapter = wgpu::Adapter::request( + &wgpu::RequestAdapterOptions { + power_preference: wgpu::PowerPreference::Default, + compatible_surface: Some(&surface), }, - limits: wgpu::Limits::default(), - }); + wgpu::BackendBit::PRIMARY, + ) + .await + .expect("Request adapter"); + + adapter + .request_device(&wgpu::DeviceDescriptor { + extensions: wgpu::Extensions { + anisotropic_filtering: false, + }, + limits: wgpu::Limits::default(), + }) + .await + }); - let surface = wgpu::Surface::create(&window); let format = wgpu::TextureFormat::Bgra8UnormSrgb; let mut swap_chain = { @@ -168,10 +178,11 @@ pub fn main() { ); } - let (frame, viewport) = swap_chain.next_frame(); + let (frame, viewport) = + swap_chain.next_frame().expect("Next frame"); let mut encoder = device.create_command_encoder( - &wgpu::CommandEncoderDescriptor { todo: 0 }, + &wgpu::CommandEncoderDescriptor { label: None }, ); // We draw the scene first diff --git a/examples/integration/src/scene.rs b/examples/integration/src/scene.rs index efb1921b..22c6812a 100644 --- a/examples/integration/src/scene.rs +++ b/examples/integration/src/scene.rs @@ -69,10 +69,12 @@ fn build_pipeline( let bind_group_layout = device.create_bind_group_layout(&wgpu::BindGroupLayoutDescriptor { + label: None, bindings: &[], }); let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { + label: None, layout: &bind_group_layout, bindings: &[], }); @@ -108,8 +110,10 @@ fn build_pipeline( write_mask: wgpu::ColorWrite::ALL, }], depth_stencil_state: None, - index_format: wgpu::IndexFormat::Uint16, - vertex_buffers: &[], + vertex_state: wgpu::VertexStateDescriptor { + index_format: wgpu::IndexFormat::Uint16, + vertex_buffers: &[], + }, sample_count: 1, sample_mask: !0, alpha_to_coverage_enabled: false, |