About
This website is a work-in-progress - pardon the dust.
This is more or less just a compilation of lecture notes used by the authors for teaching a variety of computer graphics courses.
Chapter List
- Intro 1 - Introduction
- Intro 2 - The Graphics Pipeline
- Intro 3 - Coordinate Mapping
- Intro 4 - Lines and Planes
- Intro 5 - Barycentric Coordinates
- Intro 6 - Meshes
- Intro 7 - Vectors
- Intro 8 - Matrices
- Intro 9 - Matrix Operations
- Intro 10 - Coordinate Transformations
- OpenGL 11 - OpenGL Introduction
- OpenGL 12 - OpenGL Rectangle
- OpenGL 13 - OpenGL Pipeline
- OpenGL 14 - Geometric Transformations
- OpenGL 15 - Hierarchical Transformations
- OpenGL 16 - Reflectance Modeling
- OpenGL 17 - OpenGL Lighting
- OpenGL 18 - Look-at Matrix
- OpenGL 19 - Textures
- OpenGL 20 - Framebuffers
- OpenGL 21 - Texture Filtering
- OpenGL 22 - Interpolation
- OpenGL 23 - Clipping, Culling, and Hidden Surface Removal
- OpenGL 24 - Advanced OpenGL
- OpenGL 25 - Homogeneous Divide
- Raytracing 26 - Ray Tracing
- Raytracing 27 - Camera
- Raytracing 28 - Spheres
- Raytracing 29 - Planes
- Raytracing 30 - Lighting
- Raytracing 31 - Triangles
- Raytracing 32 - Reflection and Refraction
- Raytracing 33 - Fresnel and Beer's Law
- Raytracing 34 - Transformations
- Raytracing 35 - Normal Matrix
- Raytracing 36 - Boxes
- Raytracing 37 - Spatial Data Structures
- Raytracing 38 - Monte Carlo Ray Tracing
- Raytracing 39 - Advanced Ray Tracing
- Gamedev 40 - Game Development
- Gamedev 41 - Game Genres
- Gamedev 42 - Simulation Time Steps
- Gamedev 43 - Basics of Animation
- Gamedev 44 - Rotation Representations
- Gamedev 45 - Culling Techniques
- Gamedev 46 - Advanced Texturing
- Gamedev 47 - Physically-Based Rendering
- Gamedev 48 - Shadows
- Gamedev 49 - Screen-space Ambient Occlusion
- Gamedev 50 - Spatial Data Structures
- Gamedev 51 - Character Animation
- Gamedev 52 - Porting to DirectX
- Software 53 - C++ 1
- Software 54 - C++ 2
- Software 55 - C++ 3
- Software 56 - C++ 4
- Software 57 - C++ 5
- Software 58 - Iterative Prototyping
- Software 59 - Git Branching Models
- Software 60 - Software Design
- Software 61 - Object-Oriented Design
- Software 62 - Data-Oriented Design
- Software 63 - Game Programming Patterns
- Theory 64 - Exterior Algebra
- Theory 65 - Anti-Aliasing
- Theory 66 - Color and Vision
- Theory 67 - Light Theory
- Theory 68 - Cook-Torrance
- Theory 69 - Cook-Torrance GGX
- References 70 - Git
- References 71 - Cook-Torrance
- References 72 - Bash Snippets
- References 73 - C++ Snippets