Skip to content
Part IA Michaelmas Term

MVP Pipeline

Complete Transformation Pipeline

Object coords → World coords → View coords → Clip coords → NDC → Screen coords

Complete pipeline showing coordinate transformations

The MVP Matrix

[xsyszsws]=PVM[xyzw]\begin{bmatrix} x_s \\ y_s \\ z_s \\ w_s \end{bmatrix} = \mathbf{P} \cdot \mathbf{V} \cdot \mathbf{M} \begin{bmatrix} x \\ y \\ z \\ w \end{bmatrix}

Model Matrix (M)

Object coordinates → World coordinates:

  • Places object in the scene
  • Applies scale, rotate, translate

View Matrix (V)

World coordinates → Camera coordinates:

  • Positions camera at origin
  • Orients camera to look down z-z

Projection Matrix (P)

Camera coordinates → Clip coordinates:

  • Projects 3D to 2D (perspective or orthographic)
  • Maps frustum to NDC cube [1,1]3[-1, 1]^3

MVP transformation pipeline with diagrams at each stage

After Projection

  1. Perspective division: Divide by ww
  2. Viewport transform: Map NDC to screen pixels
  3. Rasterisation: Convert to fragments

Summary

  • M: Places object in world
  • V: Places camera at origin
  • P: Projects to 2D and maps to NDC
  • Combined: PVM\mathbf{P} \cdot \mathbf{V} \cdot \mathbf{M} applied to each vertex

Past Paper Questions

2024 Paper 3 Question 4: Explain the purpose of the model, view, and projection matrices. What coordinate system does each transform between?