Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Language Skip to content
Important This documentation is a work in progress! Feedback needed!
Learn WebGPU for C++ documentation
Light Logo Dark Logo
  • Learn WebGPU
    • Introduction
    • Getting Started
      • Project setup 🟒
      • Hello WebGPU 🟒
      • Adapter and Device
        • The Adapter 🟒
        • The Device 🟒
      • The Command Queue 🟒
      • Opening a window 🟒
      • First Color 🟒
      • C++ wrapper 🟒
    • Basic 3D Rendering
      • Hello Triangle 🟒
      • Input Geometry
        • Playing with buffers 🟒
        • A first Vertex Attribute 🟒
        • Multiple Attributes 🟒
        • Index Buffer 🟒
        • Loading from file 🟒
      • Shader Uniforms
        • A first uniform 🟒
        • More uniforms 🟒
        • Dynamic uniforms 🟑
      • 3D Meshes
        • A simple example 🟑
        • Depth buffer 🟑
        • Transformation matrices 🟑
        • Projection matrices 🟑
        • Basic shading 🟑
        • Loading from file 🟑
      • Texturing
        • A first texture 🟑
        • Texture mapping 🟑
        • Sampler 🟑
        • Loading from file 🟑
      • Some interaction
        • Refactoring 🟑
        • Resizing the window 🟑
        • Camera control 🟑
        • Simple GUI 🟑
        • Lighting control 🟑🟒
      • Lighting and Material
        • Specularity 🟑
        • Normal mapping 🟑
        • Image-Based Lighting (🟠WIP)
        • Cube Maps (🟠WIP)
        • Physically-Based Materials (🟠WIP)
    • Basic Compute
      • Compute Pipeline 🟑
      • Image Processing
        • Mipmap Generation 🟑
        • Convolution Filters 🟑
        • Cubemap Conversion (🟠WIP)
        • Cubemap Prefiltering (🟠WIP)
      • Procedural Geometry
        • Deformation (🟠WIP)
      • Neural Networks (πŸ”΄TODO)
    • Advanced Techniques
      • Instanced Drawing (πŸ”΄TODO)
      • RAII 🟑
      • Screen capture (🟠WIP)
      • Headless context 🟑
      • High Dynamic Range Textures (🟠WIP)
      • Benchmarking
        • Time 🟑
        • Memory (πŸ”΄TODO)
        • Processing Units (πŸ”΄TODO)
        • Environmental Impact (πŸ”΄TODO)
      • Deferred Shading (πŸ”΄TODO)
      • Render Bundles (πŸ”΄TODO)
      • Multi-Sampling (πŸ”΄TODO)
      • Scene tree (πŸ”΄TODO)
      • Shadow maps (πŸ”΄TODO)
      • Tesselation (πŸ”΄TODO)
      • Raytracing (πŸ”΄TODO)
    • Appendices
      • Teaching native graphics in 2023 🟒
      • Feedback needed 🟒
      • Building for the Web 🟑
      • Using SDL for Window Management 🟑
      • Custom Extensions
        • The extension mechanism (🟠WIP)
        • With wgpu-native (🟠WIP)
        • With Dawn (🟠WIP)
      • Debugging (🟠WIP)
      • Memory Model (πŸ”΄TODO)
      • References (🟠WIP)
      • Temporary page
    • Learn WebGPU
      • Introduction
      • Getting Started
        • Project setup 🟒
        • Hello WebGPU 🟒
        • Adapter and Device
          • The Adapter 🟒
          • The Device 🟒
        • The Command Queue 🟒
        • Playing with buffers 🟒
        • Dealing with errors 🟒
        • Our first shader 🟒
        • Opening a window 🟒
        • First Color 🟒
      • Appendices
        • Futures and asynchronous operations πŸ”΄
  • Learn WebGPU
    • Introduction
  • Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ WebGPU
    • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
    • Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹
      • Настройка ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° 🟒
      • Hello WebGPU 🟒
  • Learn WebGPU
    • 概述
  • Contributing
    • Translation
Back to top
Copyright © 2022-2023, Γ‰lie Michel and contributors
Made with Sphinx and @pradyunsg's Furo
On this page