🤟 Metal Tutorials
A hands-on series covering Apple’s Metal GPU API in Swift — from a single triangle to a fully GPU-driven deferred renderer.
Each tutorial builds on the previous one. All source code is on GitHub.
Tutorials
- Preparation Project setup, Xcode, and the SwiftUI–Metal application structure.
- Hello Triangle Metal device, pipeline state, vertex and fragment shaders, and the render loop.
- Sample Object Buffers, vertex descriptors, Model I/O, uniforms, depth, and GGX shading.
- Deferred Rendering G-buffer attachments, multiple render targets, and a separate lighting pass.
- Shadows Shadow maps, depth textures, percentage-closer filtering, and bias.
- Tiled Rendering Apple Silicon TBDR, memoryless attachments, and tile shaders.
- GPU Rendering Indirect command buffers, argument buffers, heaps, and GPU-generated draws.