This broad introductory book gives you an overview of the computer graphics field with a focus on two core areas of modern graphics: raytracing and rasterization. Links to interactive demos throughout bring the algorithms alive. Every algorithm is built up without the use of external libraries or APIs and is presented with language agnostic pseudocode, allowing anyone with a basic understanding of programming and high school math to follow along.