wgpu/deno_webgpu
Aaron Hill 2b4a8b318f
wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12 (#4116)
* wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12

This error only exists due to an issue with naga's HLSL support:
https://github.com/gfx-rs/naga/issues/1945
The WGPU spec itself allows vertex shader outputs that are
not consumed by the fragment shader.

Until the issue is fixed, we can allow unconsumed outputs on
all platforms other than DX11/DX12.

* Add Features::SHADER_UNUSED_VERTEX_OUTPUT to allow disabling check

* Pick an unused feature id
2023-09-20 21:02:37 -04:00
..
01_webgpu.js update deno (#3808) 2023-06-06 17:08:32 +02:00
02_surface.js update deno (#3808) 2023-06-06 17:08:32 +02:00
binding.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
buffer.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
bundle.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
Cargo.toml Allow workspace to be built on wasm (#3840) 2023-06-06 06:58:20 -04:00
command_encoder.rs feature: Timestamp queries (#3636) 2023-08-02 18:04:24 -04:00
compute_pass.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
error.rs feature: Timestamp queries (#3636) 2023-08-02 18:04:24 -04:00
lib.rs wgpu-core: Only produce StageError::InputNotConsumed on DX11/DX12 (#4116) 2023-09-20 21:02:37 -04:00
LICENSE.md update deno (#3379) 2023-01-14 17:07:46 +01:00
pipeline.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
queue.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
README.md WIP: add cts_runner and deno_webgpu crate (#1859) 2021-09-03 13:23:35 -04:00
render_pass.rs Add support for occlusion queries (#3402) 2023-08-02 19:05:59 +00:00
sampler.rs Fix Metal Mipmap Behvior (#3610) 2023-03-21 16:37:30 +00:00
shader.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
surface.rs update deno (#3808) 2023-06-06 17:08:32 +02:00
texture.rs Update deno (#3562) 2023-03-11 01:24:20 -05:00
webgpu.idl Add support for occlusion queries (#3402) 2023-08-02 19:05:59 +00:00

deno_webgpu

This op crate implements the WebGPU API as defined in https://gpuweb.github.io/gpuweb/ in Deno. The implementation targets the spec draft as of February 22, 2021. The spec is still very much in flux. This op crate tries to stay up to date with the spec, but is constrained by the features implemented in our GPU backend library wgpu.

The spec is still very bare bones, and is still missing many details. As the spec becomes more concrete, we will implement to follow the spec more closely.

In addition, setting the DENO_WEBGPU_TRACE environmental variable will output a wgpu trace to the specified directory.

For testing this op crate will make use of the WebGPU conformance tests suite, running through our WPT runner. This will be used to validate implementation conformance.

GitHub CI doesn't run with GPUs, so testing relies on software like DX WARP & Vulkan lavapipe. Currently only using DX WARP works, so tests are only run on Windows.

Specification: https://gpuweb.github.io/gpuweb/

Design documents: https://github.com/gpuweb/gpuweb/tree/main/design

Conformance tests suite: https://github.com/gpuweb/cts

WebGPU examples for Deno: https://github.com/crowlKats/webgpu-examples

wgpu-users matrix channel: https://matrix.to/#/#wgpu-users:matrix.org