From 82ea34fe37695283aeb1e1879f495ad4eb2349cb Mon Sep 17 00:00:00 2001 From: Krishna Ayyalasomayajula Date: Sat, 30 May 2026 20:59:58 -0500 Subject: [PATCH] docs: add simplification caveat to graphics pipeline model --- docs/concepts/graphics-pipeline.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/concepts/graphics-pipeline.md b/docs/concepts/graphics-pipeline.md index 6b4e535..57bf3d5 100644 --- a/docs/concepts/graphics-pipeline.md +++ b/docs/concepts/graphics-pipeline.md @@ -100,3 +100,9 @@ The rainbow gradient is not programmed. There is no loop, no formula, no color b In wgpu, you compile all of this into a [pipeline](GLOSSARY.md#pipeline): a single opaque render pipeline object encoding your shaders, topology, blend state, vertex layout, and output format. It is created once during initialization and reused every frame. Creating a pipeline up-front saves per-frame compilation and state configuration. The [device](GLOSSARY.md#device) owns the pipeline, and you use the [queue](GLOSSARY.md#queue) to submit draw calls that reference it. The [adapter](GLOSSARY.md#adapter) is the physical GPU or software renderer you select. There may be multiple on a single system — a dedicated NVIDIA card plus integrated Intel graphics. You pick one adapter, create a device from it, and all resources flow from that device. + +## A Note On The Pipeline Model + +The five-stage model presented here is a simplified educational abstraction. The actual WebGPU and Vulkan graphics pipelines define 11 or more stages. Between the programmable stages lie fixed-function hardware stages including clipping, perspective division, and viewport transform that operate automatically. The five stages above capture the essential flow relevant to writing shaders and configuring pipelines for common use cases. + +For the complete specification of the WebGPU rendering pipeline, consult the [WebGPU Specification](https://www.w3.org/TR/webgpu/).