-
-
Notifications
You must be signed in to change notification settings - Fork 140
Description
First of all, thanks a lot for creating this superb project. I am really enjoying working with this😀
Description of the bug
The minimal-web example does not work and produces the following error when used with Chromium or Firefox Nightly:
Pixels error: DeviceNotFound(RequestDeviceError { inner: WebGpu(JsValue(OperationError: Failed to execute 'requestDevice' on 'GPUAdapter': The limit "maxInterStageShaderComponents" with a non-undefined value is not recognized.
OperationError: Failed to execute 'requestDevice' on 'GPUAdapter': The limit "maxInterStageShaderComponents" with a non-undefined value is not recognized.
at imports.wbg.__wbg_requestDevice_a420ce594b90ac7c (http://localhost:8000/minimal-web.js:1766:26)
at minimal_web-26813c67351e12ea.wasm.__wbg_requestDevice_a420ce594b90ac7c externref shim (http://localhost:8000/minimal-web_bg.wasm:wasm-function[5227]:0x248b2f)
at minimal_web-26813c67351e12ea.wasm.<wgpu::backend::webgpu::ContextWebGpu as wgpu::context::Context>::adapter_request_device::h0aab6ee78646990d (http://localhost:8000/minimal-web_bg.wasm:wasm-function[633]:0xab5ad)
at minimal_web-26813c67351e12ea.wasm.<T as wgpu::context::DynContext>::adapter_request_device::hea1ff2f44cafe0e4 (http://localhost:8000/minimal-web_bg.wasm:wasm-function[3275]:0x227755)
at minimal_web-26813c67351e12ea.wasm.wgpu::Adapter::request_device::hab6cbb18c1f4445c (http://localhost:8000/minimal-web_bg.wasm:wasm-function[3003]:0x21de1a)
at minimal_web-26813c67351e12ea.wasm.minimal_web::run::{{closure}}::h019c72d4338a1e9a (http://localhost:8000/minimal-web_bg.wasm:wasm-function[596]:0x7dbbf)
at minimal_web-26813c67351e12ea.wasm.wasm_bindgen_futures::queue::QueueState::run_all::hbfb1e1bb638ff566 (http://localhost:8000/minimal-web_bg.wasm:wasm-function[1742]:0x1c5f4d)
at minimal_web-26813c67351e12ea.wasm.wasm_bindgen_futures::queue::Queue::new::{{closure}}::hcd343e20c63bf1b0 (http://localhost:8000/minimal-web_bg.wasm:wasm-function[5117]:0x247e85)
at minimal_web-26813c67351e12ea.wasm.<dyn core::ops::function::FnMut<(A,)>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::hf98ff0a4e83a9aae (http://localhost:8000/minimal-web_bg.wasm:wasm-function[5115]:0x247e56)
at minimal_web-26813c67351e12ea.wasm.closure1263 externref shim (http://localhost:8000/minimal-web_bg.wasm:wasm-function[5469]:0x24a303))) })
To Reproduce
Steps to reproduce the behavior:
- Install the latest version of Chrome or Firefox nightly
- Clone the main branch of the pixels repo
- Build the project and start the local server with
cargo run-wasm --release --package minimal-web - See the above error
Environments
Reproduced in the two different environments.
- Debian GNU/Linux 12 (bookworm), Linux 6.14.6-1-liquorix-amd64
- macOS Sonoma 14.3.1
On the linux environment,--enable-unsafe-webgpu --enable-features=Vulkanis provided to the Chromium to enable webgpu.
Additional context
The example worked on Chromium version 129 without any issues before I updated to the latest version. (I did not test the older versions of Firefox nightly).
I would assume that this came from the removal of the maxInterStageShaderComponents property since chromium v135. Updating the wgpu version should resolve the issue.
Chrome Platform Status | Feature: Remove WebGPU limit maxInterStageShaderComponents (Removed)
Remove `SupportedLimits.maxInterStageShaderComponents` · Issue #6290 · gfx-rs/wgpu