Help end child hunger
Apr 022013

A Computer Grahpics courseedxcourse is available at EdX, by Ravi Ramamoorthi, a Professor at UC Berkeley. By the end of the course students should understand the concepts of 3D graphics, and develop programs that create images of a 3D scene with lighting, using both real-time OpenGL and GLSL programming, as well as offline raytracing.


  1. Overview and Basic Math
  2. Transformations
  3. OpenGL and Lighting
  4. Raytracing


Mar 222013


Eric Haines (co-author of Real-Time Rendering) is lecturing an online course at Udacity – Interactive 3D Graphics. The course covers the basic principles of 3D computer graphics, including meshes, geometric transformation, camera definition, lighting and materials, and also animation.


  • Lesson 1: Introduction – Motivation and a trip down the graphics pipeline, laying out the fundamental processes
  • Lesson 2: Points, Vectors, and Meshes – The basics of 3D geometry definition
  • Lesson 3: Colors and Materials – Color representation, material computations, transparency
  • Lesson 4: Transforms – Translation, scale, rotate and how to properly combine all these
  • Lesson 5: Matrices – Transform representation and how to fully control these
  • Lesson 6: Lights and Cameras – Directional and point light sources, and how the camera is defined
  • Lesson 7: Textures and Reflections – Color and opacity textures, along with reflection and normal mapping
  • Lesson 8: Shader Programming – An introduction to programming vertex and pixel shaders
  • Lesson 9: Interaction and Animation – How to select and make objects move
Jun 032011

A Siggraph 2010 course

“There are strong indications that the future of interactive graphics programming is a model more flexible than today’s OpenGL/Direct3D pipelines. As such, graphics developers need to have a basic understanding of how to combine emerging parallel programming techniques and more flexible graphics processors with the traditional interactive rendering pipeline. The first half of the course introduces attendees to modern parallel graphics architectures and parallel programming models, and describes current and near-term use of these new capabilities for real-time rendering. The second half of the course looks farther ahead at trends emerging in the academic literature and offline rendering communities as researchers use these many-core parallel architectures to explore future rendering pipelines. Topics include future, and more flexible, rendering pipelines that support true motion blur, depth-of-field, curved surfaces, and complex dynamic lighting. The course concludes with a panel, moderated by the creator of OpenGL Kurt Akeley, on the role of fixed function hardware in future graphics architectures.”

Slides available in here.