mirror of
https://github.com/gfx-rs/wgpu.git
synced 2026-04-22 03:02:01 -04:00
c7576553ba01eda61c42d2f3f79e1aef70896432
1469: Handle winit exception in web to avoid breaking async executor r=grovesNL a=Frizi This is a continuation of https://github.com/gfx-rs/wgpu-rs/pull/923. I'd still like to fix this on our end, even if the real underlying issue is in winit. The fix is small, and we can migrate to the proper winit solution once it exists. In the mean time, we can continue working on improving webgl support without a major blocker. Co-authored-by: Frizi <frizi09@gmail.com>
wgpu
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-coreandwgpu-rsplayer- 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.
Supported Platforms
| API | Windows 7/10 | Linux & Android | macOS & iOS |
|---|---|---|---|
| DX11 | 🆗 | ||
| DX12 | ✅ | ||
| Vulkan | ✅ | ✅ | |
| Metal | ✅ | ||
| GL ES3 | 🚧 |
✅ = Primary support — 🆗 = Secondary support — 🚧 = Unsupported, but support in progress
Description
Languages
Rust
79.9%
WGSL
16.2%
HLSL
2%
GLSL
1.7%
JavaScript
0.2%