Metal doesn’t hide the GPU from you β€” it gives you direct access to it. Before writing a single shader, this tutorial builds the mental model you’ll rely on throughout the series: how GPU objects relate, what the render loop actually does each frame, and which setup work belongs in init vs. draw.

MTLDevice CommandQueue PipelineState MTLBuffer MTLTexture CommandBuffer MTLDevice is the GPU β€” it creates every other object

What you’ll learn:

  • The MTLDevice β†’ MTLCommandQueue β†’ MTLCommandBuffer ownership chain
  • How UIViewRepresentable wires up MTKView and MTKViewDelegate
  • Coordinate spaces from model space through NDC to screen pixels
  • Which objects pay a one-time creation cost vs. which are created per frame

Start here β†’