summaryrefslogtreecommitdiffstats
path: root/examples/integration
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2021-08-04 18:48:19 +0700
committerLibravatar GitHub <noreply@github.com>2021-08-04 18:48:19 +0700
commit63bdbf817e0ecd8ce9162f2b8cc5eaefb5b42e68 (patch)
tree01217e3365733a8c34a2bee980b21197347d6c03 /examples/integration
parentcdd2f247f8c22775a5035be03715775c96cd1037 (diff)
parentf3916decf25063ea23e03e63a65f0342cef09f1a (diff)
downloadiced-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.rs35
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,