Introduction

Project Introduction

This project is the first part of my Graphics Programming self-taught master program where I learn all the basics on computer graphics.

The first project consists on building a CPU-based rasterizer software from scratch to learn what GPU APIs are doing under-the-hood to render pixels with optimal performance. With this project I want to solidify my knowledge of coordinate transformations, and triangle rendering algorithms. I also want to expand my knowledge on color theory and simple vertex shading.

Objective

Build a CPU-based rasterizer from scratch (no GPU APIs). Implement:

Deliverable: Render a rotating 3D cube with proper depth sorting.

Squared Wave SVG