- 35 hours on-demand video content
- Lifetime access
- Downloadable resources and exercises
- Certificate on completion
- Access on mobile and desktop
- Secure checkout via Credit Card or PayPal
- 14-day money back guarantee
- Last updated July 2022
This is one of my favorites!
This course is a complete immersion into the fundamentals of computer graphics! You'll learn how a software 3D engine works under the hood, and use the C programming language to write a complete software rasterizer from scratch; including textures, camera, clipping, and loading complex OBJ files. Pixel per pixel, triangle per triangle, mesh per mesh.
We'll review all the beautiful math that makes 3D computer graphics possible as we tackle all concepts from first principles. We'll also write a comprehensive software renderer that can display complex 3D objects on the screen without the help of any graphics API. No GPU, no OpenGL, no DirectX! Just a C compiler and a little bit of linear algebra is all we need to create a final project that is nothing short of amazing!
We'll simply use the command-line, a code editor, and a C compiler. All these tools are multi-platform, so you'll be able to code along on either Windows, macOS, or Linux!
Also, make sure you have pen and paper ready for the lectures. This course will probably be a little bit different than other programming courses you took before. We will take our sweet time and make sure we understand every formula we find along the way!
This is a self-contained course with no prerequisites. However, you will probably get the most out of it if you already know the basics of coding (if-else, loops, functions).
Gustavo Pezzi is a university lecturer in London, UK. He has won multiple education awards as a teacher and is also the founder of pikuma.com.
Gustavo teaches fundamentals of computer science and mathematics; his academic path includes institutions such as Pittsburg State University, City University of London, and University of Oxford.
This course is not just a simple tutorial on how to use an existing graphics library or how to glue OpenGL or Vulkan code together. This course focus on the foundation of 3D graphics and provides a careful review of the math that underpins these concepts.
If you want to understand how computers display 3D objects on the screen and also learn some of the techniques used in the development of retro 3D games, then buckle up! This is going to be a 35-hour journey of pure nerd fun!
"Teaching from the Ground Up. Wonderful course! I enjoy the fact that you are teaching core concepts from the ground up. Lectures are hands on and detail oriented which is the way to go."
"Amazing course! Gustavo is a fantastic teacher, as he makes all these complex topics look easy. And fun! Getting my hands dirty and drawing each individual pixel serves as a wonderful foundation to keep learning 3D graphics, and to understand how modern graphics APIs work under the hood. And it also works as a phenomenal exercise to learn C at an beginner-intermediate level."
"Just one comment! Awesome! Everyone that just wants to understand the elementary ingredients, how things fit together and get motivated on doing 3D stuff should do this course. It really wow'ed me and your teaching style, honestly, is tremendously motivating. Well done and please do a follow-up course but stick to C (oldskool will never die)."
"My dreams have come true!
I have always dreamed about learning and understanding how computer graphics work. I wanted to know what is going on under the hood without using any special graphics library, because they also do something under the hood and I have wanted to know that.
In the past, I tried to find a good resources a couple of times but each try made me feel more scared and confused. But this course made my dreams come true. It is a gold. It is really eye opening. I learned lots of things and beside that, Gustavo teaches everything in a special order and way and that prevents me to scare from lessons. I'm planning to take almost all of his courses, because each of his coursed give me my another dream :D
Thank you Gustavo, you are one of the best teacher I have ever seen. I wish you were my teacher in my whole school life."