3D Computer Graphics Programming by Gustavo Pezzi
Duration:45 hours on-demand video content
Actual Duration:37h 52m
Release date:2022
Publisher:Pikuma
Skill level:Beginner
Language:English
Exercise files:Yes
Software:C, SDL, Make
Course URL:https://pikuma.com/courses/learn-3d-computer-graphics-programming
Ready to peek under the hood of 3D graphics? This course dives deep into the fundamentals of computer graphics, showing you exactly how a software 3D engine works. You’ll code a complete software rasterizer from scratch using C, handling everything from textures and cameras to clipping and loading complex OBJ files. It’s a hands-on journey, building a powerful renderer without any graphics APIs, just pure C and linear algebra.
🎯 What you’ll learn
- Understand the core math and theory behind 3D computer graphics.
- Build a complete software rasterizer from scratch using the C programming language.
- Implement features like textures, camera controls, clipping, and loading OBJ files.
- Learn how 3D objects are displayed on screen without relying on GPU acceleration.
- Gain insights into techniques used in retro 3D game development.
✅ Requirements
- Skills: Basic understanding of programming concepts (loops, functions, variables). Familiarity with C is helpful but not required.
- Tools: A code editor, a C compiler, and the SDL library.
- Hardware: A computer running Windows, macOS, or Linux.
📝 Description
This course is a deep dive into the foundations of computer graphics, focusing on the underlying math and theory. You won’t just be using a graphics library; you’ll be building a software renderer from the ground up using C. This means understanding how every pixel gets its color, how triangles are drawn, and how complex models are projected onto your screen, all without touching a GPU. It’s a fantastic way to grasp the core principles that drive all 3D applications, from games to architectural visualization. Expect a thorough review of linear algebra and geometric concepts, applied directly in code.
🧑🎓 Who this course is for
- Anyone curious about how 3D graphics actually work under the hood.
- Programmers who want to understand the math behind rendering pipelines.
- Developers interested in retro game development or low-level graphics techniques.
- Students looking for a project-based course to solidify their C programming skills.
🧑🏫 About the Author
Gustavo Pezzi is an experienced university lecturer based in London, UK, with a passion for teaching computer science and mathematics fundamentals. He’s a multiple award-winning educator and the founder of pikuma.com. His academic background spans prestigious institutions like Pittsburg State University, City University of London, and the University of Oxford, giving him a solid foundation to explain complex topics clearly.
🏁 Final Result
- A fully functional software renderer written in C, capable of loading and displaying complex 3D models with textures, lighting, and perspective.
- A portfolio piece demonstrating a deep understanding of 3D graphics programming principles and mathematical concepts.

Channel