Skip to content

Table of Contents

Dzmitry Malyshau edited this page Oct 28, 2019 · 3 revisions

This page aims to track the big picture of what sections the specification is missing.

  • Introduction
    • basic description
    • Conventions
    • Fixed-point data conversions (see Vulkan for example)
    • Type definitions
  • Security considerations
    • anything missing?
  • Programming model
    • CPU and GPU timelines (describes the kinds of timelines we have in the programming model)
    • Memory model (describes the major types of memory WebGPU operates on under the hood and what guarantees we provide on their state)
    • Multi-threading (describes the sharing semantics)
    • Usage rules (describes the usage rules in general and how the synchronization works)
  • Initialization
  • Resources
    • Buffers
    • Textures
    • Texture views
    • Samplers
  • Shaders
    • Language/syntax/format
    • Shader modules
    • Bind groups and their layouts
    • Transformations (describes what we do to shaders in order for them to execute securely)
    • Vertex shaders
    • Fragment shaders
    • Compute shaders
  • Pipelines
    • Layouts
    • Render states
    • Compute states
  • Command buffers
    • Render passes
    • Compute passes
    • Transfers
    • Render bundles
  • Image operations (see Vulkan for example)
    • Texel input operations
    • Texel output operations
    • Texel coordinates (normalized/integer)
  • Rasterization (see Vulkan)
    • Rasterization order
    • Multisampling
    • Barycentric interpolation
    • Line segments
    • Triangles
  • Fragment operations (see Vulkan)
  • Framebuffer
    • Blending
  • Device-generated commands (see Vulkan)
  • Extension mechanism
  • Formats
  • Error handling
You can’t perform that action at this time.