2022-01-27 18:33:47 +00:00
![Dawn's logo: a sun rising behind a stylized mountain inspired by the WebGPU logo. The text "Dawn" is written below it. ](docs/imgs/dawn_logo.png "Dawn's logo" )
2021-09-02 09:51:40 +00:00
2018-08-16 11:50:49 +00:00
# Dawn, a WebGPU implementation
2019-12-05 11:01:41 +00:00
Dawn is an open-source and cross-platform implementation of the work-in-progress [WebGPU ](https://webgpu.dev ) standard.
2022-04-19 22:25:45 +00:00
More precisely it implements [`webgpu.h` ](https://github.com/webgpu-native/webgpu-headers/blob/main/webgpu.h ) that is a one-to-one mapping with the WebGPU IDL.
2019-12-05 11:01:41 +00:00
Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
2018-08-16 11:50:49 +00:00
Dawn provides several WebGPU building blocks:
- **WebGPU C/C++ headers** that applications and other building blocks use.
2019-12-05 11:01:41 +00:00
- The `webgpu.h` version that Dawn implements.
- A C++ wrapper for the `webgpu.h` .
2022-08-09 14:09:00 +00:00
- **A "native" implementation of WebGPU** using platforms' GPU APIs: D3D12, Metal, Vulkan and OpenGL. See [per API support ](docs/support.md ) for more details.
2018-08-16 11:50:49 +00:00
- **A client-server implementation of WebGPU** for applications that are in a sandbox without access to native drivers
2022-08-09 14:09:00 +00:00
- **Tint** is a compiler for the WebGPU Shader Language (WGSL) that can be used in standalone to convert shaders from and to WGSL.
2018-08-16 11:50:49 +00:00
2019-12-05 11:01:41 +00:00
Helpful links:
2018-08-16 11:50:49 +00:00
2022-04-28 16:25:43 +00:00
- [Dawn bug tracker ](https://bugs.chromium.org/p/dawn/issues/entry ) if you find issues with Dawn.
- [Tint bug tracker ](https://bugs.chromium.org/p/tint/issues/entry ) if you find issues with Tint.
2019-12-05 11:01:41 +00:00
- [Dawn's mailing list ](https://groups.google.com/forum/#!members/dawn-graphics ) for other discussions related to Dawn.
- [Dawn's source code ](https://dawn.googlesource.com/dawn )
2020-09-11 10:38:46 +00:00
- [Dawn's Matrix chatroom ](https://matrix.to/#/#webgpu-dawn:matrix.org ) for live discussion around contributing or using Dawn.
2020-04-24 12:38:13 +00:00
- [WebGPU's Matrix chatroom ](https://matrix.to/#/#WebGPU:matrix.org )
2022-04-28 16:25:43 +00:00
- [Tint mirror ](https://dawn.googlesource.com/tint ) for standalone usage.
2018-08-16 11:50:49 +00:00
2019-12-05 11:01:41 +00:00
## Documentation table of content
2018-08-16 11:50:49 +00:00
2019-12-05 11:01:41 +00:00
Developer documentation:
2018-08-16 11:50:49 +00:00
2022-01-27 18:33:47 +00:00
- [Dawn overview ](docs/dawn/overview.md )
2022-04-28 16:25:43 +00:00
- [Building ](docs/building.md )
- [Contributing ](CONTRIBUTING.md )
- [Code of Conduct ](CODE_OF_CONDUCT.md )
2022-01-27 18:33:47 +00:00
- [Testing Dawn ](docs/dawn/testing.md )
- [Debugging Dawn ](docs/dawn/debugging.md )
- [Dawn's infrastructure ](docs/dawn/infra.md )
- [Dawn errors ](docs/dawn/errors.md )
2022-04-28 16:25:43 +00:00
- [Tint experimental extensions ](docs/tint/experimental_extensions.md )
2018-11-13 09:10:37 +00:00
2020-10-21 14:37:52 +00:00
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
2018-11-13 09:10:37 +00:00
2019-12-05 11:01:41 +00:00
## Status
2017-04-20 18:38:20 +00:00
2019-12-05 11:01:41 +00:00
(TODO)
2018-10-08 13:51:18 +00:00
2018-08-16 11:50:49 +00:00
## License
2017-04-20 18:38:20 +00:00
2019-12-05 11:01:41 +00:00
Apache 2.0 Public License, please see [LICENSE ](/LICENSE ).
2017-04-20 18:38:20 +00:00
2018-08-16 11:50:49 +00:00
## Disclaimer
2017-04-20 18:38:20 +00:00
2018-08-16 11:50:49 +00:00
This is not an officially supported Google product.