"This course is a must. This course should be a prerequisite for you when learning game programming online. This is the foundation of graphics programming and the mathematics involved in it. This is not a course where you will end up copying the steps the instructor takes. In this course, Gustavo is giving you real knowledge. If you do this course, other courses will be more understandable. However, I think this course is not for an absolute beginner. You should have at least some understanding of programming in C."
"Eye opening course. All the chapters are well explained, this course is comprehensive for beginers without being too simple. The schematics used to illustrate all the math related to 3D are great. A very good value for money."
"An excellent starting point into graphics programming! I am genuinely thinking about transitioning from a career in SAP Consulting to a career in graphics programming as it's what I am quite passionate about and I have been out of touch with mathematical fundamentals required for ages. Thanks to Gustavo's course, it rang a bell and honestly, it no longer scares me. Thank you for this very well structured and curated course."
"Possibly the best introduction to this topic. This is not my first attempt at learning 3d graphics. This is a subject I studied formally in university and informally in my game development projects. So I have a backlog of books and tutorials that I've already completed. As an introduction to this subject this is hands down the best material I've come across. I also especially like the fact that throughout the course you laid out breadcrumbs that the student can follow so they can further their knowledge on the subject on their own. Thank you very much for this course!"
This is third course of Gustavo's that I have completed, and I am pleased to say - it is as great as the others!
If you are someone who likes to understand what is going on 'underneath the hood', or just find not knowing uncomfortable - then this is the course for you!
In the course, 3D computer graphics is taught 'from first principals' with enthusiasm, passion and empathy. There is equity in the course in that tries intuitively reveal the underlying mathematics for everyone.
The course is laid out in a logical fashion and built up bit by bit. The largest lessons are around 30 minutes long. This was perfect for me, as I have a day job - it was fairly easy to slot in 30 mins in here and there where I could. In this way the course took me a few months to complete.
The course also dips into computer game history at points - especially the 90's. So I enjoyed the reminiscing about some long forgotten games very much!
"Very interresting! It's a really interesting course and the progress is not too fast. I always watch the entire course and then rewatch it in order to better participate in the exercises. I really like Gustavo... I would like to meet him like a real teacher here in Quebec/Canada."
"It is a great course worth you to pay the money and time on it. This course let me understand more about the render pipeline and the details, the teach speaks very clear even i am not a native English speaker, i am very happy i bought this course and i learn a lot!"
"Everything You Need To Know To Get Started. I am already pretty familiar with alot of the mathematics as I came from a physics background. This course was a fantastic introduction into computer graphics and gave me a solid jumping off point into learning OpenGL afterwards."
"Absolutely recommend! As a 3D Artist who has always been interested in the technical stuff, this makes everything click. Not only is Gustavo a phenomenal instructor, but the contents and pacing of the course are amazing for beginner-intermediate programmers or artists in the field of computer graphics."
"Early days yet as I am just getting to the vector stage but so far everything is explained very clearly. I have done a GL course and am part way through a Vulkan course but the maths are not explained. It is assumed that one is familiar with all the vector maths. I am hoping this course will clarify things."
"Excellent class! This course was exactly what was advertised. I now understand the fundamentals of 3D graphics, and implemented a basic 3D engine in C. It's no AAA game experience, but completing this course taught me the basic 3D concepts and how to implement them myself. I loved Gustavo's teaching style of explaining the fundamentals and underlying concepts first, and then building on that. I wish I'd had instructors like him back in college!"
"Great course to get to know the insides of computer graphics. I really think this is a great course if you need to know how 3d graphics is computed and drawn on the screen. After working with a 3d programming library I realised I did not have enough base knowledge to use it correctly. I then decided to do this course and it turned out to be really good!"
"This course goes into details which are usually (if not always) omitted by other courses in this category. I liked that the math and actual algorithms were discussed before implementing them and student own problem solving opportunity was encouraged throughout. This course has enabled me to fill in the critical gaps in some of the most important fundamental concepts in 3D graphics programming. Hope to see more! This course has helped me propel my career and helped me solve 3d programming challenges while working on a project. Now I am helping someone to reach their potential by doing this course and I can only say that its not just the course or the content but its the instructor and their passion that makes all the difference. Thank you Gustavo!!!"
"Perfect intro to graphics programming. Very exhaustive and well taught course on writing a software renderer. I'm sure I'll take this knowledge with me and apply it to any and all future graphics programming projects I work on."
"Great introduction to 3D Graphics. There are many graphic programming courses out there, but this is great as an introductory course that will make you reflect and understand every step in the graphic pipeline in a progressive way, specially it will make you understand the necessary math to tackle graphic programming and continue your studies in this area if you felt so inclined. Also, much better than reading a book because Gustavo is such a great professor that you will understand everything. 100% Recommended!"
"A great course that needs a little more support. Love the course but I'm seeing questions go un-answered. The LMS system is a bit underdeveloped. There's no way to track your own questions, I wish the author would start a discord where students and community could help each other out. There's no doubt about the authors ability to teach and the content is excellent. I just wish the UX was better. Cheers."
Id like to say thanks to you in a review of the graphics programming series, this course really helped me not only understand the details of what goes into rasterizing an image and the vector math etc, but also gave me plenty of confidence in my own ability as a programmer aswell!
I read the comments to your lectures and implemented the triangle rasterization techniques i learned from Fabian Giesen's article as a side by side learning material, i have to say iam very happy to see you update and bring those materials to your lectures now, they really made everything so much clearer also with the small but really good optimization with the constant values.
This saved me alot of time before i started trying to optimize it myself!
Overall i would rate this as a perfect starting point for anyone trying to learn computer graphics from scratch, even before doing any graphics programming using the GPU.
"Tons of fun! This course is a lot of fun to participate in, Gustavo is a great instructor who delivers complex material in a very easy to understand way. This course is a lot of fun to code along to."
"This is an awesome course! Thank you! I already have a few years of experience with CG, using different graphics APIs and I always wanted to dive deeper. I wanted to know what stands behind these things, how they work, etc. And this course is exactly what I was looking for! Pretty verbose, explicit, yet incredibly entertaining! And I'm excited with our Instructor! That's a huge 'I' letter there in that word! You're awesome, thank you for your enormous work!"
I have a 1 year old daughter, it's very difficult to find time to do other things, except for this course. Every time I took the course, it was always with a smile on my face: I waited years for a course with this material and didactics. It was worth every minute: the course is perfect; mathematical rigor where it is needed, intuitive explanations, easy to understand code, simple environment focused on learning and many other positive points.
The course makes us really own the knowledge. I wish I had found something like this 15 years ago. Congratulations Gustavo, amazing work."
"Amazing! This course is a joy to watch. Gustavo is amazing at explaining the topics from scratch in a way that feels like you're close enough to the math that the concepts don't feel tied to any particular technology or language. And it builds from 0, so you can see the pieces slowly coming together. It's a course that I really want to take my time to finish by going slowly over it."
"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)."
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."
"A beautiful explanation of how a pixel ends up on a screen!
With all the advanced rendering engines out there, there's usually no need to take a break and understand how those tiny pixels end up on our device's screen. In each lecture, Gustavo provides technical, in-depth, easy-to-follow, and fun explanations in this course.
Don't be afraid of Math; you will also learn a lot and get to love it!"
"Sublime resource! Some of the most illustrative examples I've come across for wrapping your head around 3d transformations via matrices and vector math. Makes the rest of the material so much easier to understand with that basis."
This course takes what can be daunting and intense road blocks to entering and understanding the world of 3D computer graphics and breaks it down in a super understandable manner. Any questions you have, Gustavo is very quick to respond to questions and is always thorough with explanations. Even the comment section has an awesome amount of input from current/past students who provide more information and help to understanding certain concepts!
If you plan to go into OpenGL, DirectX3D, Vulkan, or any Graphics API and to understand this world of how all of these things operate, this course is a must."
"So far this course has been amazing, I no doubt could have found this information online myself, however the structure of this course is simply sublime, its been awhile since I studied maths in college, so these videos have been a great resource. Theyre also great in only teaching you the basics, giving you the freedom to add on and build your own unique renderer in tandem with the course!
I highly recommend this to anyone from any background, programming or not this is sublime!"
I spent many days trying to understand perspective projection. I watched youtube videos and read books. I still couldn't understand it. I started questioning my intelligence. Then I took this course. In just 5 minutes of watching the video on perspective projection, not only did I understand it, I realized that it's actually a simple concept. Mind blown.
Unlike other teachers who quickly skip over important information, Gustavo breaks down everything in detail and makes it easy to understand.
One of the top 3 teachers I've seen in my 10 years + taking video courses. If you want a good introduction to 3d graphics programming then look no further. This is by far the best resource on the subject out there."
"It has been a very interesting experience to learn how 3D graphics are made, how to use light, how to move the camera, texturize objects, extremely fascinating, I recommend it 100%. and something important is that you can continue analyzing each chapter even after the course, my congratulations to Professor Gustavo for this wonderful course."
If you feel uneasy about life's big problems (C programming, Linear Algebra, and 3D Graphics), this course is the decryption key. With the information in this course, I look back at years of struggling in OpenGL, transforming points in 3D, and even that one C program that I broke, and I see the clouds clear away!
This is a MUST-TAKE course for anyone who wants to level up their understanding of graphics, and critical skills that make computers great!"
Finally able to understand the whole rendering pipeline (albeit a simple one), everything is crystal clear when you put the effort into understanding the material on your own.
I tried learning this a few years ago and had bought the book: Realtime Rendering. Although the book is good, it's way to advanced in concepts presented. This is where Gustavo's course shines: you understand the basics and terminology and helps as a stepping stone into modern graphics API.
"Exceeded all expectations! It's amazing what can be accomplished just with the math we learned in school and we didn't even know the power of this knowledge. You are surprised with each lesson completed. Guaranteed fun. Exceeded all expectations. Worth every penny!"
"Liked it so much I did it twice. I've been learning 3D for the last year just to have an interesting project to work on. I started off with Javidx9's youtube series to just get a quick overview, then I took this course and implemented it in C. I didn't understand quite a bit and would skip lectures that didn't involve code since I just wanted to get to the final product. It was still amazing and probably my favorite guide I've ever followed. After that I explored, OpenGL, raytracing and other topics. Now about a year later, I just finished the course for the second time. I watched at 1.5X video speed. This time I used Go instead of C just for something different. But this time I paid attention to all the lectures and learned so much more. When I had an issue, instead of going back in the video, I could usually figure out what the problem was on my own, due to a better understanding. Thanks so much! I loved the course and it really shows how much time and effort you put into the series."
"Nothing short of amazing!!! Just started this Course after a long time of buying. Gustavo is an unbelievable Teacher. He gets the attention and clarfies the out come on first 12 minutes. More importantly whatever he claims, he delivers. Looking forward to a great adventure."
"Fantastic course! I've been looking for all of this material in one place for 25 years. Up until now, things were either too spotty, too complicated, or using a programming language that I wasn't interested in. This course covers just about everything and being in C, I think is easily adaptable to another language."
"The best (not one of the) 101 course on computer graphics! Anyone who wants to get serious about learning computer graphics, learn to write a software render first before trying anything with OpenGL/DX/Vulkan, you will have a much deeper and firm understanding of the pipeline."
I have a reasonable amount of experience in games development and 3D graphics programming but had never really gone back to first principles and thought of everything that's required to create a renderer from scratch. This course covers absolutely everything you need to know and is done so in an incredibly accessible way.
The course was easy to follow (each section is broken down into small chunks that make incremental progress a lot easier) and Gustavo's enthusiasm is infectious, making covering the material really enjoyable.
I highly recommend this course for beginners and even for people who are already familiar with rendering and graphics APIs as an effective refresher course. You'll no doubt learn something new along the way!"
"Great course for intermediates. I'm a 3D artist + Tech artist with a year or so worth of C++ programming experience and I'm loving the course so far. Very Pedagogical! Each lecture are in manageable lengths and the pace is perfect for me."
"An amazing journey! Thanks Gustavo, I really enjoyed your teaching style and how you cover the fundamentals in a clear and easy to follow way. Your course is one of the most engaging and polished I've taken."
"Great course! While I have seen similar material for free on the web. Having all compiled is a great help, also some concepts I had seen several times and only clicked for me watching this course. What I mean is that its very well explained, and if you have any doubts left usually someone has already asked about it and you can read Gustavo's answer. My only negative point is that towards the end it goes a little towards the object oriented side of things. But you can opt out of it and its really just at the end. Just a warning if you do not want to go down that particular road."
"Another awesome course by Gustavo! As usual, this is being quite a journey! I'm loving all the content presented, with all the math and logic behind it. Couldn't recommend more! All the stuff that I was having difficulty learning from other sources was made easy to understand and implement in my code. Keep up the awesome work, Gustavo! Looking forward to your next courses!"
"Amazing Course!!! This was another amazing course by Gustavo! The way the mathematics behind 3D graphics programming was broken down and made easy to understand was wonderful. I highly recommend this course to anyone that is interested in learning graphics programming! Now my goal is to convert the original code in C to C++. This is going to be fun! Thank you Gustavo."
"An Amazing Course. Well Taught and Well Explained!
This was an amazing course! Not only did I learn a LOT about graphics and mathematics, I also loved watching how the teacher wrote and checked his code. I think I learned as much about programming methods and techniques as I did about graphics! This course was all that I hoped for and more, and the teacher is clear, careful, and thorough. He makes even the hardest topics easy to understand.
I highly recommend this course to anyone interested in learning how 3D graphics really work."
This is a very thoughtful and carefully presented 3D course, I am learning a lot of 3D programming and 3D in general. And also, by the way, a lot of C.
Really amazing! It is really built from scratch, and all the 3D vocabulary is presented clearly and with sufficient details in order to really grasp the concepts behind things like vectors, culling, perspective, left-hand/right-hand perspective, C programming, transformations, matrices, game loop, projections.
"Even if you have a lot of 3D experience, this course teaches you A LOT!
I've been working as a Character Setup TD for over 12 years, this course illuminated a lot of the basics of computer graphics I never had the opportunity to learn until now.
I appreciate the time the instructor takes to really examine and explain the math and the programming utilized to create computer graphics.
This course is the first one I've ever encountered that did a good job of managing the balance of math and computer science necessary to completely explain computer graphics literally from the ground up!"
I'm a bit less than halfway through the videos but I can say that this is the best training course about 3D Graphics I have ever taken. It goes in-depth about the topic while still managing to maintain a beginner-friendly approach. Gustavo deserves props for putting together this outstanding material."
"Amazing course! This course is what you expect to learn when you begin in Computer Graphics area. I must reccomend this course for enyone that wants to realy learn in theory and practice about 3D Graphics."
"This is probably one of the best resources for beginners or people who would like a deeper understanding of the fundamentals of graphics programming. Everything idea and every line of code is explained in detail and at a good pace. The progression from topic to topic is very well thought out and feels like natural progression all the way through. And the end product is a really cool little engine that people can use to implement more techniques and just have fun expanding upon for further learning.
At this price tag this course is an absolute steal for anyone interested in the subject.
"Dreams come true! Any programmer tries to create games at some point of their life. I'm NOT a game developer, not a UI or graphics developer. However, I did write some 2D games during school, then during university and even at some point of my professional programming career (when some company asked me to write a simple OpenGL game as part of my interview process). I know there are good books on game development, but you always have something else to read then you are not not involved in a game industry fulltime.
This course is a rescue for those who are busy with daily routine job, but still curious on how things actually work.
Gustavo introduces all basic graphics concepts with the approach that is nice & easy. Using pure C allows us to focus on exactly what we need to know and avoid unnecessary abstractions or spending time to configure something unrelated (like database or libraries, etc.).
This course is amazing! Definitely recommend to everyone from 10 to 99 years!"
"The best graphic programming course! Very informative course and a lot of new knowledge that I never knew. Thanks for your teaching. I strongly recommend it to anyone who wants to learn graphic programming."
"As a professional programmer, I have taken many online classes both for fun and as for training on new technologies. This course is one of the best I have ever purchased. I would highly recommend this class for anyone that wants a firm understanding of 3D graphics programming. Well Done!"
"We are lucky that Gustavo decided to make this course. I have just finished 50% of the whole course. The 50% blew my mind and I am very, very exited to finish the rest. I cannot stress enough how important this course is for any graphics programmer to understand how everything work from graphics API's to mathematics and algorithms applied on them."
"This is the best course I took. Teacher explains everything like you would study in a class and I think that's really beautiful. He covers really complex topics, well for me they were kind of complex but he taught them in the way that I really feel comfortable with 3D graphics programming and mathematics. Thank you for making this course please keep making more I love it!"
"Wow. That's it. I can't summarise this course in any other way than just saying 'Wow'.
This is, by a huge margin, one of the most interesting, if not THE most interesting course I've ever taken. I've always been curious about how general computer stuff works under the hood, and 3D-graphics rendering was one of the things that most piqued my curiosity. And since this course goes through all the nitty-gritty of every single rendering step, such curiosity has been fully satisfied. And, oh do I now know how rendering actually works! Being able to see the result of the developed code in a screen really adds up to the satisfaction this course has brought to me.
I just want to say: BRAVISSIMO! I'm now more than hyped for that physics programming course... :-D"
"As an experienced programmer, this was really just for fun and to refresh various things I’d not used in a while, but I really enjoyed it. Gustavo (as always) explains everything very clearly, with a particular focus on the why and how. You’re never just presented information as a black box or thrown in the deep end, you’re taken through the maths and algorithms in a clear manner that anyone should be able to understand. At the end of the course, you’ll have a much better knowledge of how 3D graphics are built from the ground up and how it all works together. The end result of drawing 3D models, and knowing that you calculated every vertex, triangle and pixel is extremely satisfying. Highly recommended for anyone interested in 3D."
"Perfect balance of hands-on and conceptual teaching! I am loving this course. Every other course on programming I've taken has either been focused only on hands-on programming while neglecting to teach fundamental concepts, or focused way too much on conceptual teaching while neglecting to give decent hands-on exercises to solidify what the student has learned. I knew this course was good when the first challenge was at just the right amount of difficulty. It took me a few minutes to figure out but the hands-on teaching combined with the fundamentals put me in the perfect place to figure it out on my own, and in my own creative way. I will say that some of that confidence did come from knowing some C already, but I only have basic proficiency in the language."
"Absolutely the best! I thank you Gustavo for being the best teacher available today that someone could ever hope. This was astonishingly good, I feel that I would not be able to do a 3D graphics renderer without a massive review. But I really do understand what knowledge I need, everything that I need to do, I learnt a lot about the math needed and what it is most important, I feel that the path is clear from now on and I can keep going doing anything, if you ever do some modern graphics API just contact me that I'm really going to do, while waiting, I'll keep following you on twitter!"
"3D Computer Graphics for Dummies. This is a fantastic course on the fundamentals of Computer Graphics where you learn how to code step-by-step a complete 3D renderer. The intuition offered for the 3D math operations alone is worth many times the value of course. If you are not sure about Gustavo's ability to dumb down complex subjects, check his free course on "Raycasting Engine Programming with C". I look forward to do more CG related courses from Pikuma in the future. This was really really fun!"
"Superb course! Nothing is left out. Everything is explained in crystal clear detail, and there's a perfect combination of theory and coding, all served up with a huge dose of Gustavo's obvious passion for the subject. You will learn a lot and have fun doing it. Gustavo really knows how to teach. Highly recommended."
"Would give 6 stars if I could! This is the second course I've taken from Gustavo and have enjoyed both immensely. Gustavo's courses are immensely educational, entertaining, and fun, and have rekindled my obsession with writing computer games. Thank you so much, Professor Pezzi!"
"3D Graphics Programming. Gustavo is true to his word as usual and teaches the fundamentals of graphics programming from scratch. I can really recommend this course to anyone who wishes to understand more about graphics programming and how it works."
"Great Course. If you want to learn the fundamentals of 3d graphics this course is for you! Easy to follow explanations. The teacher really wants you to understand everything! I hope Gustavo will create a follow course to explain more advanced topics. Or a course to build a ray tracer or ray marcher"
"Simply the Best Online Lecture Series on 3D Graphics Programming.
If I could recommend one course to take whether you're an aspiring graphics/game developer or an industry veteran like myself, this would be my top pick. I wish I could have taken this course 20 years ago when I was still just a college kid dabbling in graphics and game programming for the first time. Since then, I've read countless tutorials, articles, books, and blogs, watched a number of online videos on these topics, even worked with graphics programmers in the industry. None of these sources have presented the material as well as Gustavo has in this lecture series. His teaching style is engaging, intuitive, and to the point. He also does an excellent job of breaking down complex topics into digestible chunks. As each lecture or section concluded, armed with a new understanding or renewed sense of clarity on various topics, I revisited old books and source code that I had previously found somewhat daunting. It was an amazing feeling to read through these materials again and discover that I now understood the concepts being presented. Equally amazing was the ability to take these ideas and apply them to the very visual, working example software renderer that is developed throughout the course. To add icing on the cake, Gustavo is also very active in lecture discussions and readily answers questions. He also takes the time to revise course material when necessary rather than just posting errata as other instructors tend to do. This course is an incredible ride from start to finish. Gustavo not only teaches the fundamentals of 3D graphics, he also teaches mathematics that are widely used in many areas of game development. By the end, you will have gone from drawing a single pixel on the screen to rendering a fully textured, lit, culled 3D model, and know the math and algorithms that make it possible! You will also have a greater appreciation and understanding of how modern graphics APIs work under the hood."
"Best Course to Learn 3D Graphics from Scratch. If you truly want to learn how things work under the hood when it comes to computer graphics, this is the course for you. You'll come out of here with a greater appreciation for mathematics as well. I myself want to learn more about engine development and this course has given me the confidence to pursue that."
"I wish I had this course at the beginning of my career ! As a self taught programmer (that is now working in the game industry) I wish I had this course at the beginning of my career. I bought it because I want to support those kind of materials! I basically learned all this stuff by myself through books and articles, but this course is a all in one place to learn them all at once, in a fun/approachable and motivating way that will make you save some precious time. Even if this is a good refresher for me and I already had the "clicks" before, I'll recommend it for anyone wanting to become a graphics/game/programmer !"