# learn-wgpu An educational book teaching Rust graphics programming with wgpu 29 + winit 0.30. Built for backend/systems Rust developers who know Rust thoroughly but have zero graphics programming experience. Every sentence teaches GPU concepts — not Rust syntax. ## Required Reading Order 1. [The Graphics Pipeline](concepts/graphics-pipeline.md) — GPU vs CPU, the 5-stage pipeline 2. [Coordinate Systems](concepts/coordinate-systems.md) — NDC, homogeneous coordinates, viewport 3. [Shader Basics](concepts/shader-basics.md) — WGSL, vertex/fragment shaders, interpolation 4. [Build a Rainbow Triangle](01-rainbow-triangle.md) — The complete step-by-step guide 5. [Troubleshooting](TROUBLESHOOTING.md) — Common errors and fixes (reference as needed) 6. [Glossary](concepts/GLOSSARY.md) — Every term defined (reference as needed) > **Reading order matters:** Coordinate systems must be understood before shader basics, > because the shader walkthrough references NDC coordinates. ## Guides - **01 — Rainbow Triangle** — The minimal complete program: one triangle, smooth color interpolation - More guides coming soon (textures, lighting, compute) ## Prerequisites - Rust stable (edition 2024) - Linux x86_64 with Vulkan drivers (`libvulkan1`)