Skip to content

mikbry/awesome-webgpu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

72 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Awesome WebGPU Awesome

Lovely curated list of WebGPU resources, libraries and tools.

WebGPU is a work in progress Web standard from W3C for modern 3D and GPU computing. Its purpose is to get the best performances on recent GPUs from desktop to mobile. Unlike WebGL, WebGPU is not a port of an existing native API. It borrows concepts from Metal, Vulkan and Direct3D12.

Contents

Websites

Official websites

WebGPU Specifications

WGSL (WebGPU Shading Language) Specifications

API documentations

Misc

Browser support

This is an experimental technology

Chrome

Chrome and Blink/Chromium based browsers support WebGPU

  • Desktop - WebGPU supported by default on Windows and macOS.
  • Android - WebGPU is supported by default.
  • Edge - WebGPU is supported by default.

Firefox

WebGPU support is still experimental

Safari

WebGPU support is still experimental

  • macOS Safari TP - WebGPU is enabled by default since 190.
  • macOS Safari - Soon available.
  • iOS - You can enable WebGPU in Settings β†’ Safari β†’ Advanced β†’ Feature Flags β†’ WebGPU.

Articles

Tutorials

Books

Libraries

  • Babylon.js - Open game and rendering engine.
  • Three.js - Easy-to-use, lightweight, general-purpose 3D library.
  • Dawn - Google implementation that powers WebGPU in Chromium, can be used as a standalone package.
  • wgpu - Mozilla implementation used in Firefox. Like Dawn, can be used as a standalone package.
  • webgpu-headers - C/C++ headers.
  • sokol - Simple STB-style cross-platform libraries for C and C++.
  • RedGPU - JavaScript WbeGPU library, by @redcamel.
  • WebGPU .NET - .NET bindings, built on top of wgpu.
  • Deno - Runtime for JavaScript, TypeScript, and WebAssembly based on the V8 engine.
  • RedCube - glTF viewer based on a WebGPU backend.
  • hwoa-rang-gpu - Micro WebGPU rendering & compute library.
  • wgsl_reflect - A WebGPU Shading Language parser and reflection library for JavaScript.
  • Arche Graphics - WebGPU Graphics Engine.
  • WebGPU-C++ - A single-file zero-overhead C++ idiomatic wrapper, by @eliemichel.
  • Use.GPU - Reactive/declarative WebGPU runtime.
  • GEngine - A basic rendering engine based on WebGPU, by junwei.gu.
  • Thimbleberry - Reusuable WebGPU shaders and support functions.
  • WebRTX - WebGPU Ray Tracing Extension.
  • SWGPU - A Simple WebGPU Game Engine.
  • React Native WebGPU - React Native implementation of WebGPU using Dawn.
  • TypeGPU - TypeScript API for constructing, writing to and reading from GPU buffers with inferred type-safety.
  • WESL - WGSL extensions for import, @if, and more.

Debuggers and Profilers

Gists

Demos

Right now, demos work best on Chrome/Edge.

Videos

Presentations

Community

Bug reporting


To the extent possible under law, Mik Bry has waived all copyright and related or neighboring rights to this work.

Contributions welcome! Read the contribution guidelines first.