Lecture 6:
Depth Buffering

Contents

Lecture Objectives

6-1

Hidden Surfaces

6-2

Painter's Algorithm

6-3

A Problem With the Painter's Algorithm

6-4

Example: painter.c

6-5

A Depth Buffer

6-6

Requesting a Depth Buffer

6-7

Clearing the Depth Buffer

6-8

Enabling the Depth Buffer

6-9

Example: depth_buffer.c

6-10

Depth Buffer Precision

6-11

Depth Buffer Anomalies

6-12

Polygon Offset

6-13

glPolygonOffset

6-14

Example: polygon_offset.c

6-15

Other Hidden Surfaces

6-16

Removing Other Hidden Surfaces

6-17

Example: cullface.c

6-18

Lab: Hidden Surfaces

6-19

Lecture Summary

6-20

OpenGL C Quick Reference

6-21