This is an implementation of WebGPU API in Rust, targeting both native and the Web. It's written in Rust and is based on gfx-hal with help of gpu-alloc and gpu-descriptor. See the upstream WebGPU specification (work in progress).
The repository hosts the following parts:
- public Rust API for users
- internal Rust API for WebGPU implementations to use
- Rust types shared between
wgpu-core
andwgpu-rs
player
- standalone application for replaying the API traces, useswinit
Rust examples can be found at wgpu/examples
. wgpu
is a default member, so you can run the examples directly from the root, e.g. cargo run --example boids
.
If you are looking for the native implementation or bindings to the API in other languages, you need wgpu-native.
API | Windows 7/10 | Linux & Android | macOS & iOS |
---|---|---|---|
DX11 | ๐ | ||
DX12 | โ | ||
Vulkan | โ | โ | |
Metal | โ | ||
GL ES3 | ๐ง |
โ = Primary support โ ๐ = Secondary support โ ๐ง = Unsupported, but support in progress