References for material covered in lectures and needed to complete
the assignments. This page will be updated as the semester
When available, links are provided to full-text versions of the
material. If a dialog pops up asking for a username and
password use "ee4720" as the username and use the password
given in class. This does not apply to the ACM digital
Some of the material is copyrighted and requires a
subscription (e.g., ACM Digital Library) or one-time
payment for access.
Graphics Processor APIs
Graphics Processor Descriptions
The course will use material from the textbooks listed
below. The textbooks are not required and in some cases
only a chapter or two will be covered.
Linear Algebra Text
A free on-line linear algebra textbook, written by some of the
same authors as the Real Time Rendering text. A good resource
for brushing up on vectors, matrices, transformations, etc.
Version .73 does not seem to cover the projection transformations.
Computer Graphics Text
A good text covering a broad range of topics relevant to the class
including mathematics for 3D graphics (linear algebra in Appendix A,
transformations in Chapter 4, and intersections in Chapter 16), the
graphics software model (the rendering pipeline) and GPU organization
(Chapters 2 and 3), and many 3D graphics topics. The text
covers graphics topics in greater depth than is necessary for
the class. If you want to buy a book for the course, get this one.
The “Redbook” is a popular textbook covering the OpenGL
API. It is much better for beginners than the specifications described
further below in the Graphics Processor APIs section. An older edition
of the text
is freely available, and there is a handy free reference
(check your color ink levels before printing).
The OpenGL 4.5 Compatitbility Profile Specification
A description of the OpenGL API for using GPU hardware.
OpenGL Shading Language 4.50
C-like language used to program GPUs.
Survey of Shader Languages
NVIDIA CUDA (Compute Unified Device Architecture)
CUDA is an API for using a GPU for computation, the computation
might be part of a scientific or engineering simulation (the most
This programming guide describes CUDA itself but also provides
details of some NVIDIA GPUs, including the 8800 series.