summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2023-04-13 06:15:03 +0200
committerLibravatar GitHub <noreply@github.com>2023-04-13 06:15:03 +0200
commitcf35c85f8cb16fb3c02f1eeb27b9a7736d35ef59 (patch)
tree8113e7980fa54e76d6cb3f7ce8d341b4c619b395 /examples
parent2be79d7b6be377c26f2d328058177179377fba46 (diff)
parentdb4b899fd215f0607474006a9aef0361e74d481f (diff)
downloadiced-cf35c85f8cb16fb3c02f1eeb27b9a7736d35ef59.tar.gz
iced-cf35c85f8cb16fb3c02f1eeb27b9a7736d35ef59.tar.bz2
iced-cf35c85f8cb16fb3c02f1eeb27b9a7736d35ef59.zip
Merge pull request #1789 from ElhamAryanpur/master
Update `wgpu` to `0.15`
Diffstat (limited to 'examples')
-rw-r--r--examples/integration_wgpu/Cargo.toml2
-rw-r--r--examples/integration_wgpu/src/main.rs35
2 files changed, 23 insertions, 14 deletions
diff --git a/examples/integration_wgpu/Cargo.toml b/examples/integration_wgpu/Cargo.toml
index eaa1df7e..c0e4fd81 100644
--- a/examples/integration_wgpu/Cargo.toml
+++ b/examples/integration_wgpu/Cargo.toml
@@ -8,7 +8,7 @@ publish = false
[dependencies]
iced_winit = { path = "../../winit" }
iced_wgpu = { path = "../../wgpu", features = ["webgl"] }
-env_logger = "0.8"
+env_logger = "0.10"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.7"
diff --git a/examples/integration_wgpu/src/main.rs b/examples/integration_wgpu/src/main.rs
index 2a56b6fa..3ac458b3 100644
--- a/examples/integration_wgpu/src/main.rs
+++ b/examples/integration_wgpu/src/main.rs
@@ -23,11 +23,11 @@ use web_sys::HtmlCanvasElement;
#[cfg(target_arch = "wasm32")]
use winit::platform::web::WindowBuilderExtWebSys;
-pub fn main() {
+pub fn main() -> Result<(), Box<dyn std::error::Error>> {
#[cfg(target_arch = "wasm32")]
let canvas_element = {
- console_log::init_with_level(log::Level::Debug)
- .expect("could not initialize logger");
+ console_log::init_with_level(log::Level::Debug)?;
+
std::panic::set_hook(Box::new(console_error_panic_hook::hook));
web_sys::window()
@@ -45,11 +45,10 @@ pub fn main() {
#[cfg(target_arch = "wasm32")]
let window = winit::window::WindowBuilder::new()
.with_canvas(Some(canvas_element))
- .build(&event_loop)
- .expect("Failed to build winit window");
+ .build(&event_loop)?;
#[cfg(not(target_arch = "wasm32"))]
- let window = winit::window::Window::new(&event_loop).unwrap();
+ let window = winit::window::Window::new(&event_loop)?;
let physical_size = window.inner_size();
let mut viewport = Viewport::with_physical_size(
@@ -61,7 +60,6 @@ pub fn main() {
let mut clipboard = Clipboard::connect(&window);
// Initialize wgpu
-
#[cfg(target_arch = "wasm32")]
let default_backend = wgpu::Backends::GL;
#[cfg(not(target_arch = "wasm32"))]
@@ -70,8 +68,12 @@ pub fn main() {
let backend =
wgpu::util::backend_bits_from_env().unwrap_or(default_backend);
- let instance = wgpu::Instance::new(backend);
- let surface = unsafe { instance.create_surface(&window) };
+ let instance = wgpu::Instance::new(wgpu::InstanceDescriptor {
+ backends: backend,
+ ..Default::default()
+ });
+
+ let surface = unsafe { instance.create_surface(&window) }?;
let (format, (device, queue)) = futures::executor::block_on(async {
let adapter = wgpu::util::initialize_adapter_from_env_or_default(
@@ -91,11 +93,16 @@ pub fn main() {
#[cfg(not(target_arch = "wasm32"))]
let needed_limits = wgpu::Limits::default();
+ let capabilities = surface.get_capabilities(&adapter);
+
(
- surface
- .get_supported_formats(&adapter)
- .first()
+ capabilities
+ .formats
+ .iter()
+ .filter(|format| format.describe().srgb)
.copied()
+ .next()
+ .or_else(|| capabilities.formats.first().copied())
.expect("Get preferred format"),
adapter
.request_device(
@@ -120,6 +127,7 @@ pub fn main() {
height: physical_size.height,
present_mode: wgpu::PresentMode::AutoVsync,
alpha_mode: wgpu::CompositeAlphaMode::Auto,
+ view_formats: vec![],
},
);
@@ -214,7 +222,8 @@ pub fn main() {
width: size.width,
height: size.height,
present_mode: wgpu::PresentMode::AutoVsync,
- alpha_mode: wgpu::CompositeAlphaMode::Auto
+ alpha_mode: wgpu::CompositeAlphaMode::Auto,
+ view_formats: vec![]
},
);