https://eliemichel.github.io/LearnWebGPU/ [ ] [ ] Hide navigation sidebar Hide table of contents sidebar Important This documentation is a work in progress! Feedback needed! Toggle site navigation sidebar Learn WebGPU for C++ documentation Toggle Light / Dark / Auto color theme Toggle table of contents sidebar Light Logo Dark Logo [ ] * Introduction * Getting Started[ ] Toggle child pages in navigation + Project setup + Opening a window + Hello WebGPU + The Adapter + The Device + The Command Queue + First Color + C++ wrapper * Basic 3D Rendering[ ] Toggle child pages in navigation + Hello Triangle + Input Geometry[ ] Toggle child pages in navigation o Playing with buffers o A first Vertex Attribute o Multiple Attributes o Index Buffer o Loading from file + Shader Uniforms[ ] Toggle child pages in navigation o A first uniform o More uniforms o Dynamic uniforms + 3D Meshes[ ] Toggle child pages in navigation o A simple example o Depth buffer o Transformation matrices o Projection matrices o Basic shading o Loading from file + Texturing[ ] Toggle child pages in navigation o A first texture o Texture mapping o Sampler o Loading from file + Some interaction[ ] Toggle child pages in navigation o Refactoring o Resizing the window o Camera control o Simple GUI + Lighting and Material[ ] Toggle child pages in navigation o Recap o Specularity o Normal mapping (WIP) o Image-Based Lighting (WIP) o Physically-Based Materials (WIP) * Basic Compute[ ] Toggle child pages in navigation + Compute Pipeline + Image Processing[ ] Toggle child pages in navigation o Mipmap Generation o Convolution Filters o Cubemap Conversion (TODO) + Procedural Geometry (TODO)[ ] Toggle child pages in navigation + Neural Networks (TODO) * Advanced Techniques[ ] Toggle child pages in navigation + High Dynamic Range Textures (WIP) + Deferred Shading (TODO) + Benchmarking (TODO) + Multi-Sampling (TODO) + Scene tree (TODO) + Screen capture (WIP) + Shadow maps (TODO) + Tesselation (TODO) + Raytracing (TODO) * Appendices[ ] Toggle child pages in navigation + Teaching native graphics in 2023 + Feedback needed + Debugging (WIP) + Building for the Web (WIP) + Memory Model (TODO) + References (WIP) + Temporary page Back to top Edit this page Toggle Light / Dark / Auto color theme Toggle table of contents sidebar Learn WebGPU# For native graphics in C++. This documentation walks you through the use of the WebGPU graphics API to create native 3D applications in C++ from scratch, for Windows, Linux and macOS. Contents# * Introduction * Getting Started + Project setup + Opening a window + Hello WebGPU + The Adapter + The Device + The Command Queue + First Color + C++ wrapper * Basic 3D Rendering + Hello Triangle + Input Geometry o Playing with buffers o A first Vertex Attribute o Multiple Attributes o Index Buffer o Loading from file + Shader Uniforms o A first uniform o More uniforms o Dynamic uniforms + 3D Meshes o A simple example o Depth buffer o Transformation matrices o Projection matrices o Basic shading o Loading from file + Texturing o A first texture o Texture mapping o Sampler o Loading from file + Some interaction o Refactoring o Resizing the window o Camera control o Simple GUI + Lighting and Material o Recap o Specularity o Normal mapping (WIP) o Image-Based Lighting (WIP) o Physically-Based Materials (WIP) * Basic Compute + Compute Pipeline + Image Processing o Mipmap Generation o Convolution Filters o Cubemap Conversion (TODO) + Procedural Geometry (TODO) + Neural Networks (TODO) * Advanced Techniques + High Dynamic Range Textures (WIP) + Deferred Shading (TODO) + Benchmarking (TODO) + Multi-Sampling (TODO) + Scene tree (TODO) + Screen capture (WIP) + Shadow maps (TODO) + Tesselation (TODO) + Raytracing (TODO) * Appendices + Teaching native graphics in 2023 + Feedback needed + Debugging (WIP) + Building for the Web (WIP) + Memory Model (TODO) + References (WIP) + Temporary page Next Introduction Copyright (c) 2022-2023, Elie Michel and contributors Made with Sphinx and @pradyunsg's Furo On this page * Learn WebGPU + Contents