This document discusses algorithms for rendering lines in raster graphics. It begins by introducing common line primitives in OpenGL and reviewing basic line drawing math. It then describes the Digital Differential Analyzer (DDA) line algorithm and its limitations. The document introduces Bresenham's midpoint line algorithm as a faster alternative that uses integer arithmetic. It explains how Bresenham's algorithm works by tracking the sign of a decision variable to select the next pixel along the line. The document concludes by generalizing Bresenham's algorithm and discussing optimizations.