Module 9 - Framebuffer Objects (FBO) - post-processing and shadows - Module Overview
1.) Introduction to Computer Graphics, APIs, OpenGL and C++
2.) Pixels, Images, and Image Coordinate Systems
3.) Understanding OpenGL API, Buffers, Shaders, and a first triangle
4.) 3D Transformations and Linear Algebra
5.) Rotations, Meshes, and Mesh Representation
6.) Camera and Textures
7.) Basic Lighting, Point, Lights, and Multiple Lights
8.) Advanced Lighting (Specular, Normal and Parallax), Engine Study
9.) Framebuffer Objects (FBO) - post-processing and shadows
10.) Terrain Rendering (Heightmaps, skyboxes, billboards, instancing, and water)
11.) Scenegraphs and Geometry Shaders
12.) Advanced Graphics - Physically-Based Rendering and Deferred Rendering
13.) Instructors Choice -- TBD (e.g. Multi-texture, Cartoon, animation, particles)
14.) Final Projects, wrap up! (do your course evaluation please :))
15.) (Optional) Vulkan and other APIs
16.) (Optional Bonus) - Quaternion Math
☰ Select another Module

Audio/Video Recording


Readings/Warmup (Do before class)

Test Your Knowledge (Optional)

[Test your knowledge on the readings] (This is not graded)

...Commented Code Samples (if any)

For now I am linking code samples here: Github Code Repository for the course

Additional Resources


(Graded) In-Class Activity link

  • In-Class Activity Link
    • This is graded, and only your first response is graded
    • This is an evaluation of what was learned in lecture.
    • Due one week from when the lecture takes place

Module Content

Module Overview

In this lesson we learn about Frame buffers

Module Outline

  • Lecture outline
    • Screen Buffers
    • Framebuffer objects
    • Kernels
    • Shaders in OpenGL 3.3 to 4.6+
    • Shadows


(Optional Notes)


Note: On occassion I might add some notes here (e.g. common questions from office hours), so consider this a 'beta' product.

  • To
  • be
  • determined

Perhaps some relevant snippet below!

int main(){

    return 0;

Please do not redistribute or host any materials without e-mailing me first. I generally am happy to share the latest .pdf or slide presentation with those who ask. Thank you for your time!