What students are saying...

5 star
4 star
3 star
2 star
1 star
Marina Pais
3D Environment Artist
"Amazing!!! I'm a 3D artist transitioning to tech art, and my goal was to better understand how 3D graphics work. Well, this course is amazing and it got me to go way further than I thought I could! Gustavo gives a thorough explanation of the graphics pipeline, detailing its fundamentals and the math behind it all. The way that he translates high-level concepts into something graspable by beginners is nothing short of amazing. Don't see how anyone could regret buying this, it was life-changing for me : ) "
16 Jul 2024
Darius Balan
"Great course!! Gustavo Pezzi's game engine course is fantastic! It's well-structured and super informative, perfect for diving into game development. Gustavo explains everything clearly, and the hands-on project was really engaging. Definitely 5 stars!"
15 Jul 2024
Rodrigo Casanova
Student at Universidade do Minho
"Simply amazing! I am in university and bought this course to gain more knowledge about a topic I have always been curious about. I had tried OpenGL before, but everything seemed like a mystery, and I ended up abandoning the idea of studying computer graphics because it all seemed so complicated (with terms like index buffer, vertex buffer, fragment shader, and so on). Now, as I have to choose a specialization for my Master’s degree, I think I am going to focus on computer graphics. The explanations in this course are incredibly clear! Sometimes they are so clear that I am tempted to skip over some parts, but nonetheless, this course has made many things much more obvious and straightforward for me. I absolutely recommend it to anyone interested in starting with computer graphics!"
13 Jul 2024
Danylo Matseruk
"The only course I've finished! It gives a really good grasp of CG fundamentals. Seeing all these models pop up on your screen is amazing and it makes you appreciate all the hard work GPU does :D"
12 Jul 2024
Alexandre Canova
Alexandre Canova
"Comprehensive PlayStation 1 Programming with MIPS Assembly & C! Gustavo once again delivers high-quality material that you can't find elsewhere. The course covers everything from the ground up, with MIPS assembly to C, in a structured, easy-to-follow process. Although not mentioned, the course is compatible with Linux and the PSX.dev VSCode extension, in addition to Windows and Mac OS. The course culminates in an ambitious project that recreates the basics of the classic Wipeout game, with Gustavo even going the extra mile to create original music. Future content could benefit from bigger fonts and a black background for easier mobile viewing."
09 Jul 2024
Lucas Samuel Vieira
"A masterpiece! Thank you so much for this course, Gustavo. I am very happy to have finished this course, not only for the sense of achievement, but I feel like I gained a lot from this. It took me quite a while to finish, but there is just so much ground to cover in so little time, and I think that it gave me a dose of reality in terms of how beautiful, powerful delicate and limited the PlayStation was. Made me think of how important it is to squeeze every bit of performance from it, in clever ways. This is the first course I enrolled here, and I am very impressed and happy for learning so much. I think I'm ready to experiment a bit further with the PlayStation now."
09 Jul 2024
Zhila S.
Software Engineer
"Enjoyed my first pikuma course!

Overall a positive learning experience. I was already familiar with the ECS architecture from watching Comp 4300 on youtube, so it was good to use this architecture again while learning new libraries like SDL and especially Dear imGUI and sol.

Some areas I feel could be improved : The audio quality is really bad, with annoying crackling sounds, but I managed to learn to ignore them. (A bit disappointing though given the price of the course.) While Professor Gustavo did highlight it himself several times, some of the coding decisions were not the most efficient choices. It was a bit odd that we refactored the component pools data structure in the middle of the course, which seemed like poor planning, but was also beneficial to get some 'real world' experience of having to make a significant code change on a project midway. I am also still unclear on what the alternative is to using C++ templates, since it was mentioned that some game studios ban them because they are inefficient, but we used them a significant amount in this course.

Now for the highlights : Great teacher that you can tell has a passion for the topic, which always makes learning fun! There's also an awesome community of students, it was nice to see the discussions in the lecture sidebars, with past students and even the professor remaining active to answer questions, despite this being one of the older courses. The online platform itself is very nice, it's easy to catch up where you left off and see your progress.

The quality of the content is impressive; I haven't seen any other online course that teaches you how to connect so many different technologies to build a little game engine, but the true test will be if I can manage to do the bonus map tool in C++ and SDL. :)

Thank you Professor Gustavo!"
08 Jul 2024
Alexandre Canova
Alexandre Canova
"Great resource for learning and nostalgia! This course offers a gentle introduction to the Atari 2600's architecture and the 6502 processor, making complex concepts accessible even for beginners. From graphics to game logic and audio, it covers essential techniques, culminating in a hands-on game project. Highly recommended for enthusiasts aiming to create authentic retro games."
07 Jul 2024
"Love the mathematics! Thanks for explaining it beautifully."
06 Jul 2024
Mathew Upchurch
Full Stack Developer
"Great course! Lots of fun... well and lots to learn!!"
05 Jul 2024
David Foster
"I wish this person can teach me everything my entire life! Perfect teacher, if teachers around the world were half as good the world problems would be solved."
04 Jul 2024
"He Did It Again! All my gratitude and respect for Professor Gustavo. Not only can you clearly see his mastery of the content, but he also enjoys it and he is having a good time sharing his knowledge. I have enjoyed all of his courses!"
27 Jun 2024
Philip Escobedo
"Amazing course! Thank you I learned alot."
23 Jun 2024
"One of the best intros to Lua out there. Concepts are explained in a very approachable way and the exercises have the right amount of challenge for beginners. 100% worth the asking price if you're getting started on Lua."
21 Jun 2024
Ben _
"Great course! Wonderful course, goes over a lot of essential things in C++ but doesn't go too deep to make it its primary goal which is to create a game engine and introduce some of the major aspects of this area. If you read this and think about starting the course I immensely recommend, and have a small tip to give you for once you start - for every lecture you watch read the posts of other students at the end, they will help you both fix errors you might be having and sometimes even help you understand better some things that were shown in the lecture but you didn't quite fully understand yet(I know it happened to me a few times xD)."
20 Jun 2024
Srivallabh Mudumba
"Excellent! Learned a lot till now. Thanks."
15 Jun 2024
Robert Pashov
"Great for learning fundamentals and how to think about physics/math within the context of a computer program. Lectures are well-thought-out, concepts are explained thoroughly and extra resources are included where needed. Material is very dense, there is no filler. The course is very much self-contained, which is a very nice touch. Definitely enough to build up a solid practical foundation and spark your interest in game development. If all teachers were like Gustavo, the world would be a much better place!"
13 Jun 2024
"Awesome Course! Loved the course, looking forward to a real usable 3D Game Engine course with all the stuff needed to make a shipping game, like an Editor, Build System for different platforms, etc. Overall, awesome course. Thanks!"
10 Jun 2024
Code Wiki
Code Wiki
"Great course! This course is really excellent. It covers the concept of Raycasting (based on Wolfenstein 3D techniques) from scratch. Gustavo is an excellent teacher who explains everything in detail, paying particular attention to the difficult points. I recommend this course to anyone who wants to learn how raycasting works, it's really worth it."
06 Jun 2024
"Awesome course! Most of all I liked ECS Design & Implementation, Event System and Lua Scripting sections. Moreover, I appreciated how detailed the guide was on setting up the libraries. Because it's always pain to setup a C++ project. In general, the course is well structured and gives a fairly solid representation of a structure of a typical game engine. Absolutely worth the time and money."
04 Jun 2024
Antonio Benfante
03 Jun 2024
Alexandre Canova
Alexandre Canova
"Exceptional 3D Software Renderer Course by Gustavo! I recently completed Gustavo's 3D Software Renderer course, my fourth with him, following the ECS Game Engine, Physics Engine, and Raycasting Engine courses. As always, Gustavo's talent for simplifying complex topics shone through, making intricate concepts accessible and engaging. Coding my own version in C++ alongside the lessons was both challenging and rewarding. An added bonus is how the knowledge from each course supports and enhances the others, though it’s not a requirement. I highly recommend this course to anyone serious about advancing their 3D rendering skills."
02 Jun 2024
"Thank you sir. So far, the lecturer seems very friendly, and clear, and he clearly knows what he's talking about. The topics he covers are wonderful, and it's obvious how much work has been put into these courses. So far, it's easily a 5-star experience, and I don't expect it to go any lower. In fact, it seems to get nicer and nicer the more I go through it. I don't think a simple 'thank you' is enough to show my appreciation and gratitude for this lecturer and his platform."
27 May 2024
"This course made me love math and graphics!

When I first saw this course description, I figured it would be a fun side project that would help me make a voxel game. Little did I know, this course would actually open my eyes to the wonderful world of computer graphics and the beauty of math.

Gustavo has a knack for presenting information in a super approachable way that leaves you feeling like you truly own the knowledge after you finish watching the video (and either implementing it or working out the math yourself of course).

Thanks to this course, I've really come to appreciate how elegant math can be and how cool it is when it's applied to programming. It's hard to express how awesome it is to go from drawing 2D rectangles to whole 3D models that rotate and move around your screen, knowing that you actually understand everything that's going on in the whole process.

Working through this course has made me seriously consider pursuing a career in graphics. I can't recommend it enough. It's such a fun and educational experience and whether you end up just creating a little side project or sparking a new interest, you won't regret it.

Seriously, just buy it!"
26 May 2024
Paul Llamoja
Game Developer at Globant
"Love the topics Gustavo teaches! I am an engineer that loves low level programming. I have learned a lot with your lectures. TY!"
24 May 2024
Rajesh Pillai
"Amazing course! This is absolutely amazing course and covers all the needed fundamentals and math needed for effective 3D programming and more."
18 May 2024
Geoff Banner
"Scratch 3D Graphics! Very good to this point (up to 'transformations') ..have had a fair amount of C/C++ exposure/practice but appreciate the re-iteration of some C code techniques such as structs, etc."
16 May 2024
"A gentle but comprehensive course to rendering!

Let me begin by talking about value and say that to get this quality and depth for this topic, you'd almost certainly end up paying for a course at a college that would charge you much much more than what pay for here.

I've tried Udemy courses and I've tried books, but this is the course that I finally got through and really digested 3D rendering and math.

Speaking of math... there's plenty, it'd be a lie to not say that, but everything is explained step by step, and is broken down into understandable pieces. I would argue that what math is used, and how well it's presented, if you made it out of high school with some trigonometry, you should be able to take on what's in this course.

I do think an introduction to programming in C might be in order for a lot of folks, but that's not too burdensome. After completing this I've gained so much insight into how everything works in 3D, whether it's Blender, video games, or the GPU pipeline.

If you are looking to really comprehend how 3D works under the hood, I feel comfortable saying this is the best bang for your buck."
12 May 2024
Erik Larkin
"Great course! Super interesting content and very well delivered. Thank you Gustavo!"
11 May 2024
"The best way to learn to make games for the Playstation 1!! Gustavo is the best cs sensei I've ever had fr fr"
09 May 2024
BokuNES Souseiseki
"Excelent! That was so great, writing code and see the code working on the nes emulator was so cool!"
08 May 2024
Andres Mata
Profesor de talleres tecnológicos
"Exceptional Introduction to Raycasting Programming!

Gustavo Pezzi's course on raycasting programming is nothing short of exceptional. As someone delving into game development or simply interested in the intricacies of computer graphics, this course provides an enriching experience that exceeds expectations.

Gustavo's expertise shines through as he navigates learners through the complexities of raycasting. His clear explanations and structured approach make even the most daunting concepts accessible to beginners.

What sets this course apart is its hands-on nature. Gustavo guides students through the process of building a simple but complete raycaster from scratch, mirroring the techniques utilized in Wolfenstein 3D. The practical exercises ensure that learners not only grasp theoretical concepts but also gain invaluable programming skills applicable in various domains.

Furthermore, Gustavo's teaching style fosters a supportive learning environment. His responsiveness to questions and willingness to clarify doubts ensures that no learner is left behind. The course materials, including lectures, assignments, and supplementary resources, are meticulously curated to facilitate a seamless learning journey.

By the end of the course, students emerge with a profound understanding of raycasting principles and a tangible project to showcase their newfound skills. Whether you're an aspiring game developer or simply passionate about coding, Gustavo Pezzi's raycasting course is an invaluable resource that deserves five stars without hesitation."
06 May 2024
Phillip Smeby
"By far the best money I've spent on a training course! I bought this course on a whim, because I wanted to learn low level programming and I grew up with the Playstation as a kids. I tried learning from YouTube and Handmade hero, but I was unable to make much progress due to the disconnected nature of trying to learn from Edutainment. Not only have I learned more in the last few weeks than I did on my own for that last 2 years, but I'm starting to put the pieces together of what game engines do behind the scenes. I learned the fundamentals of assembly, what a front and back buffer are used for, the icing on the cake is the 3d graphics is explained so simply that you can't just help but explore things on your own. There is so much compacted in this course in a well thought out way that its hard to put down. We get the theory, we get the code, we can try and understand the code ourselves or you can listen to the explainations. Just wanted to say thanks for the effort put into this course, and I will be checkout out the others once I make it to the end of this one. "
02 May 2024
Hans Hummelgaard
Hans Hummelgaard
"Great Course! I'm having fun :D Looking forward to the rest of the course!"
29 Apr 2024
Alexandre Canova
Alexandre Canova
"Another great course from Gustavo! Hands-on experience that builds your knowledge foundation in a well structured pace. You'll create the raycasting engine first in Javascript and then move to a more complete version in C. It really covers a lot in such little time, thank you!"
28 Apr 2024
Alexander Lierow
"Lots of fun! I had fun learning what this course offered."
27 Apr 2024
"One of the best resources available! If you are even a little interested in how 3D graphics works then this is the course for you and at an absolute steal of a price! The concepts are broken down in a fun and thoughtful way, and it's even better that you can apply them in real time while working on the practical course material along with Gustavo! Bravo for creating an amazing course Gustavo, and I look forward to taking more courses and watching out for future courses as well!"
26 Apr 2024
Jeralde Kendall
"Great course! This is a great course and has been easy to follow so far."
20 Apr 2024
"This course was one of the best I have ever taken.

It provides a gentle introduction for anyone who wants to create a physics engine for games. I learned so many concepts and techniques, such as collision detection, impulse resolution, rigid body dynamics, constraint systems, and more. I also got to implement my own 2D physics engine from scratch using C++, SDL and CMake.

Not only that, but I also managed to port my engine to the web using Emscripten, and added some cool optimization techniques such as QuadTree, Contact Caching, Continuous Collision Detection and Broad & Narrow phases split, as explained by Gustavo.

The course was very well-structured, engaging, and challenging. Gustavo is an amazing instructor who explains everything clearly and provides helpful insights and feedback. I highly recommend this course to anyone who is interested in game physics programming. This course was also very helpful for me to understand what goes on under the hood of game and physics engines, and how they enable fun and engaging experiences.

Thank you so much, Pikuma and Gustavo Pezzi for this wonderful learning experience!"
18 Apr 2024
Alexandre Canova
Alexandre Canova
"Great course! Approaching a topic as difficult as a physics engine in a beginner-friendly way is no small feat. This course opened my eyes to many possibilities and concepts. Thank you very much Gustavo, I hope one day we have the 3D version too!"
13 Apr 2024
Eugene Alexeev
"Great fun! I'm really enjoying this practical, purposeful and interesting introduction to both the C programming language and 3D programming. Having modelled in Blender and used Godot to create simple 2D games, this course has been eye opening in terms of the complexity hidden from us."
12 Apr 2024
d k
"Better than you expect! Worth every dollar. Gustavo clearly loves this stuff, loves teaching, and has put a lot of work into this course."
10 Apr 2024
"I really think this course is outstanding! I notice the care and love that Gustavo puts into each topic. It is worth every penny. Gustavo is a natural-born teacher."
02 Apr 2024
Peter Tretiakov
Senior Graphics Engineer at @GoodNotesApp
"Absolute brilliant in 3D programming education! I came to this course as an already experienced GPU developer with a simple goal. I wanted to understand more about 3D rendering. But not in the terms of proper usage of GPU frameworks' APIs. Instead I wanted to understand how these APIs work under the hood. It was one of the most interested programming journey (very long though) and in the end of it I can say that I didn't find the holy grail but the holy grail was completely demystified. Everything that seemed to be the 'magical' part of the GPU now is a set of operations and algorithms. Several years ago it was a pleasure for me to render the first 'hello triangle' program in Metal but to render it completely by hand in a pure C is a next level pleasure :) I would recommend this course to everyone interested in graphics programming. Doesn't matter if you already work with any GPU framework or not. This course is not about how to work with GPU but how to be a GPU!"
01 Apr 2024
Jason Sutton
Jason Sutton
"Game Engine Primer! Great course for anyone wanting to get started with game engine creation. Also invaluable insight for those merely using an existing engine to understand what is happening, under the hood."
29 Mar 2024
Stein Karlsen
"I will recommend it to everyone that is interested in 3D graphics! It's just a very good introduction to 3D computer graphics."
28 Mar 2024
Vilas Chitrakaran
Engineer Ph.D., C.Eng.
"Love these courses on Pikuma! I am doing Pikuma courses on the side as a hobby. Absolutely love them."
26 Mar 2024
Alexandre Canova
Alexandre Canova
"Great course! Gustavo addresses various topics in a very efficient way, explaining in detail and gradually increasing the complexity, allowing students to follow along. With each class, we have something new and we look forward to seeing the next one. I will certainly purchase the other courses, thank you very much Gustavo."
25 Mar 2024
Wolfgang Ziegler
Software Developer
"Great introduction to scanlines! I only heard about this so far and never actually thought about the details. So this practical introduction was fantastic to close a knowledge gap hear. I have to deduct one star though for completely ignoring PAL here. This would have been very relevant to me as a European."
24 Mar 2024
Onur Güleş
"Great course to get you started in game development."
23 Mar 2024
Lukáš Sedlák
CEO @ Volcanicc
"Excelent content! I'm profesional game dev with more then 5 years of experience (mainly in Unity) and programmer with more then 10 years of experience (games, mobile native, backed dev etc), and I've found this course very well made, executed and informative. Most of my time I have been using higher level languages such as C#, Java or Swift and this is very good C++ refresher too! I was able to learn a new ideas and I have a really good idea what to do next. From my side - money worth spent! Thank you Gustavo :)"
05 Mar 2024
"A great course for building a game engine from scratch! Gustavo clearly cares about 2 things: solving problems with code, teaching how to do that. He goes into the nitty gritty of how an Entity Component System game engine works, line by line. You'll learn a lot! And what stones he leaves unturned he makes clear, as to what the course does and does not provide; the rest is for you to build! A fully working 2D game from scratch in C++ along with learning and using a scripting language to top it all off. An excellent course for anyone looking to learn game development, regardless of any language you end up using, because the knowledge gained here will be used throughout the rest of your journey!"
04 Mar 2024
Seann Zhane
"Excellent Lua Course! Easy to follow, clear explanation even good for first time programmer."
03 Mar 2024
Timothy Showalter
"A Comprehensive Fundamental Course in NES Programming! When I started the course, I was relatively familiar with the basics of the NES and the things that went into it (e.g. there are patterns, what sound channels it had), but nothing to the level required to even get what is happening under the hood. The deep dive explanations within the course was definitely worth it. Getting to understand how and why the PPU worked the way it does, how controllers worked, down to the minutiae of the timings within the system, it gives a full view of how everything comes together in concert to run the programs it runs. After going through the course, it gives one a better understanding of the trials that went into making software work on the NES, and it can be rather exciting to think of how to make it work even with its limitations."
02 Mar 2024
"One of the best 3D Graphics courses I've followed!"
01 Mar 2024
Pablo Lario
Unity Game Programmer
"Everything perfect!!! Exactly what I expected. I love how it is a gentle introduction to game engines, explaining everything in detail so that students can understand each piece before continuing to the rest of the topics. I have taken several YouTube tutorials on SDL and C++, but everyone just writes code. This course explain the meaning behind things, which I believe is a wonderful thing to learn!!!"
28 Feb 2024
Felipe Laso Marsetti
Technical Lead at Lextech
"Fantastic! Pikuma courses are of the best quality and this one is no exception. I thoroughly enjoyed putting together a game engine and learning tons of new concepts in the process. Can't wait to work my way through more of the existing courses, and am eager to see what new courses are released in the future 😺."
20 Feb 2024
Fahmi Ahmad
Fahmi Ahmad
"I love this course, gustavo made complex physics and math easy to understand."
19 Feb 2024
Leonardo Valdes
Leonardo Valdes
"Buen Curso"
18 Feb 2024
Robert Pashov
"Great instructor, great content! 11/10. You rarely see an instructor that is so down-to-earth, friendly, and humble. The content is great as it teaches you two fundamental things at the same time: 1) how a game engine works; and 2) how to use said game engine to build your actual game. There is a bit of a learning curve with understanding ECS and data-oriented-design, however if you apply yourself and do the exercises carefully - you start to unpack it little by little. Thank you, Gustavo, for this excellent course."
13 Feb 2024
"I've enjoyed this course a lot. I especially like Gustavo's ability to explain concepts and not to skip corners. I also like that Gustavo gives us students the tools to deduce some of the insight ourselves, which is satisfying and fun. Worth every penny."
11 Feb 2024
Roy Livne
Unreal Game Developer
"Excellent! This course is very detailed and taught very well. He goes over the very fundamentals of graphics programming and C and he does it in a fun way."
09 Feb 2024
Mohnish Sharma
"Amazing Course! The only course I know that goes into constraints and impulse solvers. Gustavo breaks it down very simple so that it is easy to understand. Learnt a lot about game physics. Thanks so much!"
08 Feb 2024
Alberto Rojas
Alberto Rojas
"It is GREAT!!!!"
01 Feb 2024
Miller Johnston
Software Engineer @ Lytx
"Lovely Course! One of the only programming courses I have ever finished! Professor Gustavo Pezzi has crafted a course that covers the fundamental concepts of 2D Game Engines while leaving plenty of room for the student to dig deeper and learn more on their own. This means the pace of the course is always moving forward, but still provides enough depth to make sure that nothing is just a black box that won't be explained. I loved this course and am excited for more Pikuma in the future :)"
29 Jan 2024
Kostiantyn Skrypak
Kostiantyn Skrypak
"Excellent course! The material is well-structured and the teacher explains it in a way that's easiest to understand."
28 Jan 2024
"An extraordinary educational journey!

The 2D Game Engine course with C++ and Lua at Pikuma.com has been a fantastic journey into the world of game development! The course laid out a clear and structured pathway to understanding the separation of the game engine from game data, a concept that is fundamental for any aspiring game developer.

Gustavo is a brilliant teacher, and his style of explaining every line of code was incredibly effective. It made the learning process (of coding in C++, SDL and Lua a 2D game engine) both engaging and comprehensive, enabling a true understanding of the 'why' and 'how' things work when it comes to 2D game engine development.

Gustavo's emphasis on the fundamentals, coupled with his practical approach, reminds us that there's always room to grow and that the journey of improvement is continuous. I strongly recommend this course to novices and experienced developers alike! The course is cleverly presented to make the complex world of game development accessible to everyone."
25 Jan 2024
Lionel Vergé
Engine Core Team Lead @ Ubisoft
"Excellent course the basics of engine programming! If you want to become an engine programmer this is a good course to start with. You will learn all the basics of game engine programming or at least have a good refresh on fundamentals. You won't learn to write super efficient C++ code but this is not the goal of this course. And more than all Gustavo is an excellent teacher who masters his subject."
22 Jan 2024
Uladzislau Daroshka
"Best course I ever watch! First time in my life I'm clearly understand the basics, I have problems with trigonometry from school, but Gustavo open my eyes xD Also good understanding of render. P.S. good english speaking person, I'm not eng man but all words understand without any translations."
19 Jan 2024
Kris Inniss
Kris Inniss
"Great course! Apparent and concise instruction. Easy to follow along. I had a few hiccups on Windows OS but these difficulties are mentioned in the course."
18 Jan 2024
"Strong foundation in 6502/6507 assembly for the Atari 2600!

The thing I loved about this course is that it really hammered home the fundamentals and built on them in every lesson. Gustavo made sure we were using the things we'd learned previously each step of the way so by the time I reached the end of the course, it was second nature.

A great example is the use of the carry flag for addition and subtraction operations. An easy thing to forget, but every time those operations were used in the code, Gustavo emphasized remembering to set and clear the carry flag.

That kind of attention to fundamentals helps them really stay with you, and I feel like I have a firm foundation to dive deeper into techniques used to produce a polished Atari 2600 game.

I found this course to be a tremendous value and highly recommend it!"
16 Jan 2024
Mitsuo Takeda
CS @ Universidade de Fortaleza
"The best resource in the web! In my life i have seen so many tutorials on how to create your own engine, but none a so densely packed with information and approaches this one."
13 Jan 2024
"Super amazing tutorial. I'm getting super excited every time I move forward in this tutorial! Amazing work!"
10 Jan 2024
Andrés Cevallos
Software Developer
"It's great! What Gustavo says is true, it's a book on steroids, very good explanations of both the code and the mathematics behind the code."
30 Dec 2023
Jonathan Donate
"Fantastic! The way Gustavo presents concepts made everything that I been trying to teach myself 'click'. I highly recommend this course."
29 Dec 2023
Nicolas Gallo
"Must take for those who take programming seriously. Phenomenal course! I've been eyeing this course for a while and decided to take the plunge when Unity fiasco started. I have learned so much that I'm creating my own game engine using Monogame and C#. I look forward to taking more classes with Pikuma!"
20 Dec 2023
Jason Sutton
Jason Sutton
"It was great to see a course that dug into the depths of Assembly. More and more, the majority of programmers are unaware of what is actually going on at the low level. I had not used Assembly since my University days (Vax Assembly) since the 90s. It was great to get back to my roots and really refresh myself about just how much care and intent it takes to actually write good code. I would highly recommend this course for anyone who wants to really learn to be a good programmer."
19 Dec 2023
승우 이
"The teacher is excellent! He easily understands difficult subjects!"
18 Dec 2023
Vince Sevedge
"Fun and practical! This course was a journey, a story about a program and all the details, beautiful and messy alike. Math, algorithms, code organization, best practices, refactoring - all landmarks along the way to a victorious ending and a promising epilogue."
17 Dec 2023
James Grimes
"Excellent course! This course provides an excellent introduction to graphics programming. Gustavo's teaching style makes some of the more difficult to understand topics much more approachable. I highly recommend this course!"
16 Dec 2023
[Anonymous user]
"Absolutely worth it! Besides being an incredible programmer, Gustavo is a really thoughtful and patient teacher. He breaks down really well these concepts and presents them in very easy and digestable manner. The course is math heavy, but things do make sense if you stick with it. Even if you do not end up writing game physics from scratch further down the line, knowing how they tick internally will immensely help you if you choose to use and configure a third party library."
12 Dec 2023
David St-Cyr
Senior Gameplay Programmer
"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."
30 Nov 2023
Todor Samardzhiev
"The explanations are clear and the focus is on what matters."
29 Nov 2023
Sisouphanh Sayarath
Sisouphanh Sayarath
"Excellent explaining course topics."
25 Nov 2023
"Probably one of the best courses I've ever taken. Extremely informative, well taught and made. A great base from which to start learning more advanced game physics topics. A great introduction to 2d game physics programming!"
16 Nov 2023
"Amazing content. I am really enjoying the high quality Pikuma content."
14 Nov 2023
Jacques Boyreau
Jacques Boyreau
"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."
13 Nov 2023
Devin Jacobs
"Game engine from first principles! Like other Pikuma courses, this course is half high-level explanations and half code sessions. I pay most attention to the high-level concepts and then watch the coding sessions at higher speed to get the general idea. I then go and implement the concepts myself. This approach was a little frustrating early on, because there are a lot of complicated language features involved with the ECS implementation. This is just the nature of ECS engines. I made a few choices that slightly deviated from what the instructor was doing and ran into trouble. I had to refer to outside sources for help, but eventually got things to work and learned a lot in the process. My frustration was not because of the course, it was because I was doing things my own way--deviating from the course. The engine I built is not professional, but it feels like more than a toy as well. Most importantly, when I look at other game engines I have a much better idea what they are doing under the hood."
13 Nov 2023
Ken Rodgers
"Great Course! A complete, thorough overview of how ECS works and a great resource for some modern c++ techniques / syntax. Highly recommended!"
11 Nov 2023
Gerard Druiven
"Great. Nice thing, eteps from easy to more complex. Not afraid for making mistakes, on purpose or not, and than ofcourse correcting these mistakes which is great learning point."
10 Nov 2023
Biagio Paparella
"Nice overview of Linux Fundamentals. Well-rounded presentation covering a little bit of everything. Useful and interesting."
09 Nov 2023
Lewis Nitzberg
Lewis Nitzberg
"I just finished this course, and of all the different courses I've take throughout my years as a programmer, this was the most enjoyable by far, and one of the most in-depth and well-organized! Thanks so much for taking the time to not just show the code and tell us what it does, but actually going into detail of the *how* and *why*. You're a fantastic teacher and I'm looking forward to seeing more courses from you!"
06 Nov 2023
Daniel Ferreira
Daniel Ferreira
"Probably the best NES/Assembly course out there! I started this course because I wanted to learn more about assembly but in a fun way. And Gustavo delivered exactly that. Not did I just learn assembly but also a lot of history and game dev for the NES but also in general. The course was very entertaining and I wish every course out there would be like this. This is the perfect fusion of education and entertainment for the mind. Thank you Gustavo for being such a good educator."
05 Nov 2023
"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."
04 Nov 2023
Lucas Fidalgo
"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!"
03 Nov 2023
Tim Langford
Tim Langford
"Awesome as Ever and as Expected!

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!

Bravo Gustavo. You are a most excellent teacher."
02 Nov 2023
Paul Lewis
Web developer
"Absolutely amazing! Just a wonderful course from start to finish. I can't speak highly enough of the content or its delivery. If you've ever pondered what goes into a 2D physics engine, and if you've ever found yourself wishing someone could explain things in the simplest (and best) possible terms, look no further. Gustavo is a remarkable educator, and this course is worth your time and effort. I have loved every moment of it."
31 Oct 2023
Roger Beausoleil
"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."
30 Oct 2023
Harry Tanama
Harry Tanama
"The explanations are very clear. Thank you!"
29 Oct 2023
Marcos Arribas
"Great course! On average, I would say that everything is good, but what I really liked, is that is very well paced (fast enough to see the improvements and keep the motivation, but still not rushing the explanations)"
25 Oct 2023
Joseph McCutcheon
"Thank you! I learned so much! I have very little programming experience and what experience I do have is at the higher levels (Javascript, C++, etc). Gustavo did an excellent job of breaking every concept down and made the daunting task of learning a low-level language like 6502 Assembly much more manageable. I have been using a program called NESMaker to develop a game of my own and was starting to hit brick walls as I wanted to incorporate more and more custom code. This course gave me a MUCH better understanding of how the logic and syntax of 6502 Assembly works. Thanks again, Gustavo!"
24 Oct 2023
Jerry Bradshaw
"Well designed course! Fantastic Instructor! I am excited about this course and increasing my knowledge of architecture, patterns and using libraries such as GLM and LUA!"
21 Oct 2023
Kenneth Rodríguez
Kenneth Rodríguez
"Such a Great Course! I didn't really grow up learning about computers, but I started by computer science degree a few years ago and became really interested in how things worked. This course has given me insight not just into how game engines are made, but how projects in general are done. It's such a good course if you like learning how thing work behind the scenes."
16 Oct 2023
"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!"
09 Oct 2023
"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."
07 Oct 2023
Timothy French
"Great Teacher Very Big Topic. I feel he really taught me the basics of engine development here. I think he stretched my skill set working at the command line despite my rudementry c++ skills (I have plenty of C# and javascript skill and VBScript but the development cycle is the weakness) and he got me going with C++. Consider it a place to get started. Making a really solid game engine takes a little more architecture experience but I feel I could implement maintenance and debugging on an engine at this point."
05 Oct 2023
Vilas Chitrakaran
Engineer Ph.D., C.Eng.
"Absolutely amazing. Loved this course. The pace was right for me and I intend to use Lua as a scripting language in my projects. I hope to do other courses in Pikuma as well."
01 Oct 2023
Washington Irving
Washington Irving
"Best! Just great. Gustavo is a great and charismatic teacher. I learned a lot."
30 Sep 2023
"Great intro to NES assembly language using ca65. The instructor walks you through everything, which is what you need when beginning NES assembly language."
26 Sep 2023
Murilo Floriani
Game Developer
"Great as usual :)"
25 Sep 2023
Tamas Csefalvay
Senior Software Engineer at MPG
"Absolutely amazing! An absolutely amazing course, thank you very much."
24 Sep 2023
"Superb course! Thank you so much for creating this :) Since I love understanding things under the hood, such courses are indeed what I look forward to. Even C++ is new for me and I am learning a lot by this course."
14 Sep 2023
Niki Prljic Junior
Niki Prljic Junior
"I really like this course. Really well explained. It's really worth the money."
28 Aug 2023
Gabriel Welvaert
"Great course for learning ECS for the first time. University-course level quality. Concepts are introduced incrementally and are expanded upon in a way that demonstrates the purpose and reasoning of the code design clearly."
24 Aug 2023
"Excellent Learning of Atari 2600 Assembly Language Programming. The course instructor really takes the time to go over everything that's being taught, every line of code is explained. Excellent teacher."
22 Aug 2023
Omri Yaloz
3D Environment Artist
"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."
17 Aug 2023
Andrew Douglas
"Another amazing course!!! This is not my first rodeo on Pikuma with Gustavo, and this one, just like all the rest I've done is an absolutely top notch quality course. I can recommend this to anyone who is keen to actually really understand the concepts and be able to apply those in practice. Though I cannot be held responsible if you suddenly decide to migrate to Linux, use Vim as your IDE of choice and start learning math in your spare time. You've been warned :)"
16 Aug 2023
Tim Langford
Tim Langford
"Well, I have reached the end of the course and I must say - it was brilliant and exactly what I was looking for. The course is great if you want to understand the fundamentals of how a game a engine is put together. It goes through all of the fundamentals Graphics API, Input, Game Loop, Delta Time, ECS, Event System, and Scripting. At the end I feel as if I have attended a university course. You can tell Gustavo has a passion for teaching (and is a professional lecturer). I approached it consistently by trying to do a few hours day, and really looked forward to and enjoyed my study time. I am now looking forward to using what I have learnt to understand the topics more deeply. Thanks Gustavo!"
11 Aug 2023
[Anonymous user]
"Amazing course for computer graphics novice and experienced devs!

Before taking this course, I've had good experience using OpenGL, WebGPU and Metal. I was able to get very far, however always felt like I lacked fundamental knowledge, such as:

- How are triangles actually rasterised?

- How does the perspective matrix really work?

- What really goes into the internals of OpenGL and the various rasterising APIs?

This course clarifies these topics to you in the most gentle way, starting from simple concepts and slowly building up.

I also really appreciate the random nerdy facts about how old-school games are built and how this relates to the things that you study."
08 Aug 2023
Nikodemus Karlsson
M.Sc. in Physics
"Really good stuff! I'm a physics teacher, and it's really fun and rewarding to apply the physic's laws in a created world. Gustavo explains the topics in a great way. I had limited knowledge of C++ before, but by actively following the course and conducting extensive testing on my own, I make progress every day."
07 Aug 2023
Patrick Apgar
"Great Course w/ a Fun Project"
03 Aug 2023
Esko Tarkka
"Thank you for this marvelous course. I am a beginner in programming and this has helped me a lot. Will be taking other courses to get further learning. My main focus is demoscene, making digital art in real-time for pc. But perhaps some day in a few years to do some game development. Would also love to see a course from Pikuma that teaches a bit of artistic real-time coding, like maybe a few simple 2d and 3d effects in C or C++. There are many interesting effects but I am not good at implementing math/linear algebra to a code yet. Thanks a lot. Pikuma is a wonderful place to learn."
31 Jul 2023
Nielen Venter
"Perfect intro to graphics. Very happy with this course, thanks Gustavo!"
23 Jul 2023
Colin Sare-Soar
"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."
22 Jul 2023
Johannes Ballauff
"Great course! everything is explained very clearly even for somebody like me who is very new to c++. Thank you"
18 Jul 2023
Christopher Svec
Director of Software Engineering @ iRobot
"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!"
11 Jul 2023
Sven Paaß
Software Developer
"I really enjoyed the course. It has a good level of detail to understand the building blocks of a game engine. I had very much fun writing the code of the engine and especially the exercieses. Always getting my code up and running was not always straight forward, but I think that this helps learning. Integrating the scripting languange was an eye opener, since I did not do such a thing before. This opens many interesting possibilities. Thank you very much."
09 Jul 2023
"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!"
07 Jul 2023
Roger Beausoleil
"Amazing course! It's crazy how bad I was before this class, I didn't become a pro but now I know how it works. Thank you Gustavo!"
01 Jul 2023
Andrew Douglas
"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!!!"
23 Jun 2023
Wesley Kühn
Desenvolvedor Pleno
"The course is great! Everything is explained in higher details. I do recommend!"
17 Jun 2023
John Tomberlin
InfoSec Engineer
"Fantastic Introduction and Primer! Working my way through the course now, and I'm enjoying every bit of it (except for the clunkiness of C++ environment setup and prep which is never fun lol). His method of teaching and how he thoroughly explains everything as you go along is critical and something that a lot of courses lack. You build things from the ground up and improve on them as you go along while learning the important and necessary principles and components of game development that you will carry with you as you move forward with your game development journey in the future."
16 Jun 2023
Josh Isaak
Internet Architect
"Another Winner! So much can be learned from the technology of the past. And Gustavo is the perfect teacher. This course is the perfect synthesis of math, programming and fun."
15 Jun 2023
Vincenzo Panella
"Great course! Its been years I was trying to find a good source of information about 2d and 3d physics , all the material and books were very shallow in the approach of complex arguments like resting contacts and solvers . I bought this course basically only to acquire knowledge in this field and I am very satisfied!"
07 Jun 2023
Joshua Wiggins
Joshua Wiggins
"The Introduction I have been desperately searching for!I just needed a simple foundation to help wrap my head around the basic architecture of a game engine. There's just nothing else out there: with many sources I've come across either focusing solely on creating a renderer or using some existing game framework. I feel like I finally have my start. Thank You Gustavo."
06 Jun 2023
Steven Johnson
"Another great course from Gustavo, thoroughly enjoyed! First time really using C++ in any depth and though some of the modern feature syntax is a bit rough, everything is explained in detail and all fits together nicely."
04 Jun 2023
David Sowsy
David Sowsy
"Another great course! This one is a lot more technically dense than Atari course that I took (and for good reason). It requires a lot more thought and patience, but it is a great introduction to the NES as a 6502 based architecture. The only minor nits I've got with it is that there were not quizzes on it, which could help reinforce some of the topics a little bit better, and some time could have been spent up front on aspects of game structure and best practices for 6502 code. The course reflects the nature of the machine and getting into the thick of the thorny details and offers a great entry point into game development for this system. As someone with a programming background the topics on LFSR, for randomization and touching on the encoding/decoding of music were also very well thought out."
02 Jun 2023
"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."
01 Jun 2023
Lukas Biton
"Great course, full of applicable ideas!

Overall an amazing course. I highly recommend it. I like to code and debug along and this course was great.

- Environment set-up: So many courses or textbooks have hurdles around getting the environment set up properly, or decades-old dependencies not being available anymore. Gustavo does a great job there and over the whole course I don't think I was blocked more than 30 minutes. This might not sound like a big deal, but so often you sink a few hours into a course only to discover half-way through that you have to spend days trying to fix arcane issues with no documentation. None of that nonsense here.

- C++ content: Gustavo is an experienced C++ programmer and it shows. In this course you'll learn about templates, unique pointers, some classic C++ syntax (like avoiding for loops), and function callbacks. The syntax gets ugly, but Gustavo always makes it easy. In terms of prior experience, before this course I had followed Bjarne Stroustrup's Programming Principles book, and before that I have been programming in Python professionally for a few years. I think this course goes a bit fast if you're still learning the basic C++ syntax, but for me it worked great as a "first big project". It was especially helpful for all the industry wisdom Gustavo imparts throughout the course.

- Lua content: Mixing a scripting language with a compiled language is something I knew nothing about before this. Betweem C++, Lua, and the imgui library, I feel like I didn't just learn game design, but a lot of very useful skills for making simple applications in C++. In terms of prior experience, coming from Python Lua felt very familiar.

- ECS and game design patterns: I think because of C++'s syntax quirks, some of the ECS design gets hidden behind difficult to read boilerplate code. That being said, Gustavo does a great job of focusing your attention on the big picture and what really matters. I don't know of another course that teaches the concept so well. To be honest, by the end of the course I felt comfortable enough with C++ and the code base to watch the videos on higher speed.

- Instructor: Gustavo is likable and his personality shines through the whole course. He loves to teach and he empathizes with the students' issues a lot. Often I would think "oh that looks difficult" only for Gustavo to say that just a few seconds later and to focus precisely on the difficult part."
31 May 2023
"Was looking for this for a long time! This course is great, thank you very much."
26 May 2023
"Amazing! It is a comprehensive content and an easy-to-follow pace, you'll be impressed by the results. I am very grateful for taking this course, thanks a lot Gustavo!"
25 May 2023
Carlos Alfredo Castillo
Carlos Alfredo Castillo
"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!"
25 May 2023
Sapan Shrestha
"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."
24 May 2023
"Well worth the price! I am really impressed with this course so far. Giving a 5-star review even if I haven't made that much progress in the course yet."
10 May 2023
Joel Rivera
Joel Rivera
"Incredible course! Complete and comprehensive. Master teacher Gustavo is here to help us go thru very technical stuff that would be otherwise inaccessible to most people. You can feel the passion in this project."
07 May 2023
Carlos Alfredo Castillo
Carlos Alfredo Castillo
"Physics are amazing and this course is the best! This course is incredibly special because it combines the fundamental of physics, the necessary math to tackle the concepts and programing in C++. Gustavo is also a great professor, very didactic. Great course, highly recommended!"
28 Apr 2023
Mikko Melts
"Hey Gustavo!

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.

Thank you!"
26 Apr 2023
"Absolute great introductory to NES Assembly 6502! Like some members of this course I came from using NESMaker which let's you create games without needing any programming knowledge. But - in order to create more advanced games it is absolutely necessary to learn about the architecture of the NES and at least have some basic understandings of Assembly 6502 code. And this course here is a gold mine. Everything is well explained and constantly updated. I hope there will be an advanced course in the future. But I can't recommend this course enough. If you have ever be interested in the NES and creating games, do yourself a favor and enroll. You won't be disappointed. And take your time - it took me 3 - 3 1/2 months to digest everything and I probably will need to rewatch a couple of lectures later during designing my own game! Thanks Gustavo!"
19 Apr 2023
Alexander Kolesnikov
Alexander Kolesnikov
18 Apr 2023
Jakub Komorowski
Senior Android Developer @ Opera
"If my university courses in cs were half as good as this course then the world would be a much better place. Hearty recommend!"
15 Apr 2023
Ismael Salas López
Ismael Salas López
"Helps to understand why. I have studied different books and websites that talk about these topics but I didn't get it, but with this course I could to bind all that thigs that a had reviewed before."
14 Apr 2023
Julio Angulo
Julio Angulo
"Nice introduction to video game dev! This a great course that teaches game development from scratch. It helps to understand the inner of the game engine.

So this is a course for you if you want any of the following:
- You want to understand how works the game engines.
- You want to learn how to develop video games and have curiosity about how they are done in low-level detail.
- You want to practice C++ focusing on game dev and/or graphics.

This might not be a course for you if:
- You only want to create video games and get the stuff done without worrying about low-level details.
- You already have lots of experience in C++ and videogame development."
13 Apr 2023
Martin Grahn
C Embedded / VHDL developer
"Wonderful. Thanks for a great course. I enjoyed almost everything. I specially liked the sidesteps eg talking about number base 12 and origin from the eqyptians, very interesting. The layout of the course was easy to follow. It game me a lot of confidence to go forward creating a game myself as well as showing my 9year daughter doing it together with her."
11 Apr 2023
Francisco Bellas
Ingeniero de Telecomunicación
"Great course to all people. I was afraid for language and no subtitles, but Gustavo pronounces very, very well and I understand absolutely all. Sure I will do others courses too. The only downside that I would like is that Gustavo takes up to several months to answer questions raised in the discussion, but the material is excellent."
07 Apr 2023
Prem Kumar
Prem Kumar
"When I bought the course, I had high expectations for it. Needless to say, the course delivered 100% on my expectations!"
04 Apr 2023
Avan Johnson
Avan Johnson
"good but hard"
03 Apr 2023
"Great course! Just finished the nes course. Was a great introduction to 6502 assembly with the nes and gave me the right info i need to jump into it. Will be able to test if I know enough in the next Ludum Dare :)"
01 Apr 2023
Carlos Alfredo Castillo
Carlos Alfredo Castillo
"This course is amazing!

I recommend this course to anyone looking to start learning about game development in C++, and the details behind a simple 2D game engine, also the integration of all the different libraries necessary to give a real functionality to your game engine and final game.

I have learnt more with this course about game engines, game programming, modern C++ programming, scripting integration, some design patterns related to game development, than any other course out there. The most important thing is that you find it all in one place, no need to be jumping from book to book or from one website to the other gathering information. You have it all in this course.

More importantly, Gustavo is a great teacher, and his explanations are very clear. 100% recommended!"
31 Mar 2023
"The teacher you always wantend! 3D Graphics Programming is hard, but with Gustavo at my side its finally doable, and fun!"
27 Mar 2023
Edmar Paulino
Developer at Grupo Boticário
"An awesome course. Gustavo teaches us in an easy way, with incredible examples that really explain everything about the content, you learn and don't get that feeling of not having understood the subject."
27 Mar 2023
"The Best Game Engine Course for Beginners IMHO!"
26 Mar 2023
Fabrizio Sartori
"AMAZING. I'm not games programmer, but I'm really impressed about the concepts explained and also the power of LUA Scripting Language. I think that Roblox topic demands some experience playing Roblox and also concepts of games programming."
26 Mar 2023
Dmitriy Tunik
"Great course!"
25 Mar 2023
David Sowsy
David Sowsy
"Simply great! The way this course was presented was clearer and more hands on than the assembly programming and architecture courses I took in college and it made a lot more sense. I would recommend this course to anyone interested in really getting a good feel for how it should be done."
24 Mar 2023
Joshua Sims
"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."
21 Mar 2023
Rajesh TC
"Recommended to learn basics."
19 Mar 2023
Andrey Protsenko
Andrey Protsenko
"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!"
15 Mar 2023
Dan Hunt
"Awesome educator! What an interesting way to learn 6502 assembly and get into the fine details of the Atari VCS with it's TIA, RIOT and registers. Very Thorough. Teacher makes hard to understand concepts easier to deal with."
13 Mar 2023
Greger Sundvall
Student Game Programmer @ Futuregames
"Awesome! Explains incredibly well the math behind it all and how that is translated into code."
09 Mar 2023
Abdulrahman Alotaibi
"Bravo.This course has been a great pleasure and inspired me to continue learning about computer graphics. Highly recommended to anybody who is interested in an introduction to computer graphics."
07 Mar 2023
Rodolfo Martell
"Hard at times, always intellectually satisfying!"
06 Mar 2023
"Fantastic course! Incredible lectures packed with amazing nits and bits about game development and high-performance software development. Can't wait for the next one :) Would easily recommend this to anyone that is passionate about Computer Science and "how things work". Thanks, Gustavo!"
02 Mar 2023
Waldemar Zeitler
"Well understandable introduction to game engine programing. This course was very understandbale, even with all the C++ shenanigans and all lead to a good starting point for further personal development. So I definitely recommend this course for all C++ users!"
01 Mar 2023
Joshua Sims
"Excellent Course!"
27 Feb 2023
Ramtin Javanmardi
Data Engineer @ Mentimeter
"Im actually surprised how good this course is not only for learning game engine programming fundamentals but also c++ programming concepts. Sensational work!"
25 Feb 2023
Vitor Almeida da Silva
Designer of software systems

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."
20 Feb 2023
Aitor SF
Aitor SF
"Okay as first introduction to game engines. I like that Gustavo keeps things simple to teach the fundamentals of how game engines are architected. It explains in depth hims code and the course is very well structured. I recommend it if you want a gentle introduction.

However, I want to give a small improvement feedback. I think that a lot of effort is being made on teaching c++. The course would be more interesting reducing the number of videos explaining the c++ lenguage. Learning c++ is a big topic and try to fit teaching c++ is a waste of resources that could be spend into more game engine related topics like creating an editor. It would be better if people only take this course knowing at least the very basics of c++. Also the way c++ is used in this course should not be taken as an example. The use of shared pointers are totally unnecesary, they seem to be there only to teach people about their existence (again a c++ topic). There are too many memory allocations and copies being performed. I would agree the main point of the course is not performance. And I like the course is in c++ because it is what game engines at the core use. But if we don't need performance, why would we use c++ in the first place?

Improvement points:

- The type of components that exist is are known so we can save allocations using a plain array.When we run the game the engine already know all the types of components that exists. This only changes during development. We could use a simple enum to keep track of this and resize the array at compile time. This way you don't need to allocate which is expensive.

- The number of types of systems are known as well. This only changes in code during development so not need of vector usage here.

- Reduce the use of shared pointers. Most of the time we only need to modify an object in the registry. We can return a reference to the underlying object to change it.

- The Pool class is just a wrapper to a vector we could just typedef vector.

- The maximum number of components is known, in this case 32. We can use an array of 32 lenght on the stack for each pool.

- We can replace the Pool class for a more advance data structure like a free list to manage adding entities.

- We do not need to remove systems at all."
19 Feb 2023
Filipe Araujo
Senior Technical Artist
"A fantastic introduction to working with shell! As a user of windows for all of my life and having never touched linux , this course made it so I could comfortably navigate linux / mac os and more importantly, clarified a lot of things about how OSes work. A really excellent primer for anyone who wants to get that foundational computer science knowledge. Highly recommended."
19 Feb 2023
Fernando Caye
Game development student
"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."
16 Feb 2023
Fabrizio Sartori
"AMAZING! I've been a programmer for a long time, which includes working a ilttile with Linux/UNIX environment. However, because of the daily work, we are only focused on solving application issues of legacy systems, and not doing something from scratch. This course opened my eyes for some things that I had never done before (to have my hands durty, as the professor says. LOL), and it was truly good! Thanks, Gustavo!"
15 Feb 2023
Joy Johnson
Software Engineer
"Amazing and Highly Recommended! All concepts are thoroughly explained and application of those concepts is very clear, 100% recommended."
14 Feb 2023
"The best 6502 programming course on the net! Apart from possibly the 2600 course."
10 Feb 2023
Paolo Astolfi
Paolo Astolfi
"A really great course with a fantastic teacher! This is the best online course I have ever attended. I have learned a lot and enjoied programming with Gustavo. I have already started the Game Physics Engine Programming course and after that I will also take the 3D Computer Graphic Programming course. Really good stuff!"
06 Feb 2023
Adrian Devlin
"Loved the course. Well delivered and very interesting."
01 Feb 2023
Jerome Sniatecki
"This was a very fun course and I appreciate the breadth of topics covered. So much more to learn and explore... Thanks for the jumpstart!!"
26 Jan 2023
Dominic Warchalowski
"Absolutely amazing course! I've been wanting to learn 6502 and specifically NES programming for a couple of years, but everytime I tried to follow tutorials on other video platforms or websites, it immediately went too in-depth or skipped over some of the fundamental stuff. This course absolutely makes sure you understand all the fundamentals you need to know before you start programming. And every subject gets the same amount of attention, making sure that you get a chance to really absorb all the information and build a complete understanding from the architecture to the programming. This course is worth more than it currently costs! If you're interested in programming the NES but still have some doubts, trust me and buy this course. No regrets :)!"
24 Jan 2023
Isaac Shalom
"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."
21 Jan 2023
Alejandro Guardado
Game Developer @ CerosWare
"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."
16 Jan 2023
"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)."
14 Jan 2023
Jay Thibodeau
"Incredible Course! Going through this course made me wish that math was taught through programming in school. Being able to actually play around and see the results of your calculations makes learning everything way more interesting. Gustavo does a great job explaining how each aspect works."
12 Jan 2023
"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.

If I give an example as a web developer, think it as learning the Javascript without using React.js library which is built on top of javascript :D I haven't wanted to learn React.js, I wanted to learn Javascript :D This course gave me this.

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."
11 Jan 2023
Emilia Rinta-Aho
"Amazing course! This course was a very comprehensive, well organized and very well explained introduction into everything NES! Can't wait to get into creating my own game and to see what Gustavo brings us next!"
10 Jan 2023
Daniel Schapira
"Gustavo is reassuring and personable. This is important to me as a retiree new to Linux, and wanting to embark on a programming hobby.

Excellent video overlay of Gustavo's image and hands pointing at the text on the video image of the terminal, in real time. This like a tutor in a live lesson. The ability to replay the mini-lessons compensates for lack of true face to face teaching.

Compared to the numerous free youtube tutorials: there are no intrusive adverts, no flashy video editing gimics, no merchandising and no heavy accented tutors with diction that makes you concentrate to hard on the words to extract the meaning. I reviewed the lessons many times. I know that the only way to integrate the knowledge knowledge is to practice. This was a good toe in the water and I am ready to start another course."
10 Jan 2023
Pablo Weremczuk
Full Stack Developer
"If you were following @jonathan_blow or @cmuratori but you feel that the way they teach is not your thing, consider checking a @pikuma course called 'Creating a 2D Game Engine' where you'll learn about ECS, C++ DOD and many other things from a person that is good at teaching. The course is paid but you have nothing to loose, there is a free sample where you can check if the content of the course, the tools, the analogies and even the voice of the teacher match the way you learn. I'm enjoying the lectures a lot. I learned from books about Data Oriented Design, I made open source contributions in C, I even published a game on steam, but this lectures help me to put everything together and to upgrade my knowledge."
09 Jan 2023
Efisio Mancini
"Just what I needed, excellent Intro to Linux/Unix."
08 Jan 2023
Joshua Flanagan
"Perfect way to tackle an intimidating subject! I’ve always wanted to know how games were made for these older systems, but I never knew where to start. It can be intimidating with all of the topics to learn (assembly language, specifics of hardware, how to actually compile and run a program). This course holds your hand the whole way through, assuming very little prior knowledge. Just what I needed!"
06 Jan 2023
Steven Johnson
"Great Stuff! Just finished this and it was well worth the time and effort. Super thorough content as usual covering pretty much everything needed to make a NES game from scratch. Really enjoyed, highly recommend. Thanks Gustavo!"
02 Jan 2023
Joan Abad Reynoso
"Incredible Course!"
01 Jan 2023
Othelo Vieira
Technical Microsoft CSP
"Worth the time investment to learn Linux and a few Dev tools. It was an awesome Linux refresher course for me, and I really enjoyed the command-line dev tools lecture."
28 Dec 2022
Nat Smith
"Great course! I have been having a great time with this course! The concepts are well explained and the functions from other libraries are explained enought that I can explain it to sdomeone else."
23 Dec 2022
Amro Ibrahim
Software Engineer
"The best tutorial for raycast!

I bought this course since I enjoyed other courses Mr. Gustavo Pezzi created, although I have already built a ray caster previously, I just wanted to refresh my knowledge. After all this is just a ray caster engine, and lots of tutorials cover this topic! Oh boy, oh boy I was completely wrong!

With Mr. Gustavo there is always something new to learn even if you know the topic by heart. The course covers topics that no other tutorials online covers, and this is what makes this course excel from all other tutorials online and making it the best resource available online.

Course content 10/10 Course progression 10/10 Explanation 10/10 Course self-contained 10/10 learn something new 10/10."
22 Dec 2022
Rudi Hammad
Founder of Chimera Studio
"Fantastic course! Great teaching methods and content. Lessons are clear and the course is very well structured. A great introduction to game engine programming and ECS architecture."
20 Dec 2022
Robert Oze
"I'm a senior software engineer on business side, and I'm interested in game development and game engine in spare time. Gustavo presents this course clearly and interesting. I like ECS, Lua and ImGUI parts. I used Lua, but this course presented it easier to integrate into engine. Also I heard the other two technologies, but I understand these parts easier."
19 Dec 2022
Arturo Nereu
Developer Advocate at Unity
"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!"
13 Dec 2022
Raith Hamzah
Software Engineer at Microsoft
"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."
13 Dec 2022
"Nice course! I really loved the history part as well."
12 Dec 2022
Ramnath R
"Course is Execellent and Worth learning! Gustavo explained and break complex concepts to simple ones. I enjoyed the course. You have chosen simple mathematical techniques in the course which allowed me to grasp the Raycasting concept easily. There is something I would like to point out. You have formatted the code at the end of the course instead of following best practices from the beginning. That can cause some confusion and it is better to write separate header files from the beginning, doing so will be easier to follow, debug and even read the entire code. IMO, this is not a beginner C programming course isn't it Gustavo. So why not format the code from the beginning instead of reformatting entire thing at last sections. Other than that this course is highly recommended for anyone looking for awesome C based project and want to dive deep in to core concepts of game development."
12 Dec 2022
William Bickel
"My review. Thanks for this course."
12 Dec 2022
Ednildo Silva
"Very good."
11 Dec 2022
Jesse Sher
"Good But very long... The coarse was amazing with its videos and everything but it got long a bit boring after a way. Still amazing and I learned a lot. Best coarse I've every done 10/10. Maybe try shortening the videos more next time."
10 Dec 2022
Michael Kurta
"Great course! Having most familiarity with C, and very little of C++, this was a good insight into how game engines work, how to program for contiguous memory access, and how Lua can be used to add game flexibility to a larger 'non programmer' audience. I didn't completely understand all the C++ STL concepts in detail, but I was able to grasp most of it and I will run through this course again to develop a deeper understanding."
07 Dec 2022
Tony Kiong
"Very Good."
06 Dec 2022
Thippesh T N
"The best Computer Graphics Course!"
05 Dec 2022
Andreas Claesson
"A fantastic deep-dive into one of the most important game techniques of the 90's. The classic Wolf3D raycasting engine broken down and presented in a format easy to understand. The teacher presents the material in small chunks and explains all maths behind every concept. I really enjoyed this course!"
05 Dec 2022
Justin Beides
"Absolutely Incredible!

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."
02 Dec 2022
Abraham Hoogendoorn
"Thorough instruction, somewhat entertaining, effective."
27 Nov 2022
Ethan Whitesel-Jones
"One of the rare online courses I completed!

The instructor moves at a good pace, explains everything in clear detail, and builds each piece upon the previous one not leaving anything out or doing any magic handwaving.

I am a C# programmer, and did a brief intro course on C++ before and this course was great to help me get more used to C++ syntax and idioms. I want to learn the Godot or Unity engine for 2d games and hope the instructor makes a course on one of these pre-made engines one day.

A very practiced and talented instructor."
26 Nov 2022
Michael Elrod
"Worth every penny!Gustavo was very informative at every step of the way and now that the course is over I feel pretty confident I can build on this project further to really create something unique with what I've learned."
26 Nov 2022
Michael Ross
Michael Ross
"One of the best courses I've taken. It's well worth the money to have lectures of this quality to learn from. I have taken countless courses and Gustavo is among the best of the best!"
24 Nov 2022
Jamie Hyland
"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!"
23 Nov 2022
Juean Marfo
"Amazing 3D Graphics Programming Course!

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."
18 Nov 2022
Nelson Ordonez
"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."
17 Nov 2022
Christien Mutton
"Drops serious knowledge!

There's a little 2d game, I don't remember the name of it exactly, but there is a character dropping things from the top of the screen and your little character has to run along the ground and catch what's being dropped in a little bucket. This is what I feel this course is like, so much knowledge is dropped throughout the course it's quite incredible. And the excitement watching things fall into place piece by piece as we go along is oddly a more thrilling feeling than any AAA game can give me.

Excellent stuff Gustavo, thanks so much! Valeu amigo :)"
11 Nov 2022
Song Xu
"like the samples in the video. they are simple and beautiful and with clear explained."
06 Nov 2022
Jordan Brown
Jordan Brown
"Deeply Informative, Interesting, and Fun! This is an excellent course that takes you through all the steps of programming a game on the NES; all the way from overviewing the actual circuitry of the console itself and getting basic colours appearing on-screen, right up to creating music and polishing away bugs. I had so much fun on this course and I'm really looking forward to making all kinds of things on the venerable NES system now!"
06 Nov 2022
Albert Tsanaclis
Albert Tsanaclis
Senior Software Developer
"Really, really interesting and instructive course with plenty of real-world examples, that are applicable to many, many operating systems including MacOS."
06 Nov 2022
Albert Tsanaclis
Albert Tsanaclis
"This is really an amazing course!

I learned a lot of C++, game engine architecture, integration with Lua, and the running project is incredible.

Thank you!"
24 Oct 2022
José Font
"Excellent instructor. I wish you have Python, C, and advanced Bash for beginners."
19 Oct 2022
Bruno Perry
"Great, again!"
19 Oct 2022
Sören Andersson
"Good course. I Learned what I excpected."
18 Oct 2022
Albert Nadal Garriga
Software Engineer
"This course taught me the magic behind the Raycasting technique, very clearly and concisely. I enjoyed the course from start to finish. This course make me better understand how to implement the Raycasting technique from its foundations using one of my favourite programming languages. This course also encouraged me to implement new challenging features like transparent walls or portal mirrors, just for fun. I strongly recommend this course. Thank you Gustavo."
17 Oct 2022
David Montes
"Amazing instructor! Gustavo is a top-notch instructor and each lesson is done so well with helpful graphics that really help you understand the material. Can't recommend this course enough!"
16 Oct 2022
André Teixeira Leles
"Just one word: AMAZING!!! Currently this is the best choice I made to study."
16 Oct 2022
Arturo Nereu
Developer Advocate at Unity
"Learn a million things while building a small 2D Game Engine.

I don't think there's any other resource that guides you step by step into building a Game Engine. Gustavo does a fantastic job teaching many concepts and technologies while guiding you through going from zero to a small configurable engine. His teaching style is dynamic, and while he doesn't go too in-depth into any particular topic, he'll give you hints to discover more. The limit will be your curiosity.

I encourage you to give this course a try. It is a small investment compared to the vast knowledge you'll get, even if you are not planning on building your engine.

Some highlights:
- ECS implementation!
- Modern C++ concepts.
- Lua integration for scripting."
15 Oct 2022
"Amazing! Incrível! Excelente didática e conteúdo muito bem organizado."
13 Oct 2022
James Rozee
James Rozee
"This was a wonderful course. I grew up with very limited Math skills. So this course really helped me to understand much of the mathematics behind this Raycasting approach. Thank you for making this course!"
10 Oct 2022
Lorraine Figueroa
Lorraine Figueroa
"Finally! Finally I am learning something I always wanted to do - program Atari 2600. This is a great course to learn how to program the Atari 2600. The steps are logical and I can pace myself. This course is well worth the price!!"
02 Oct 2022
Dimitrios Roussos
"I really enjoyed it! Too bad we didn't have such material back then at 90s. Of course, it's never too late, I really enjoyed it, fill some gaps. Once again, thank you very much professor."
27 Sep 2022
Bård Ildgruben
Bård Ildgruben
"Finally a 6502 programming course for the NES!

I have been looking for a course like this for years, and I am so happy that Gustavo made this. I took his assembly course on 6502 assembly programming for the Atari 2600 a few years ago and was very happy with it. This course is even better.

Gustavo is a great teacher and he explains complex topics in a very easy to understand way.

I highly recommend this course."
26 Sep 2022
Jason Robles
"Get this RIGHT NOW! (if you're interested in NES programming).

I was skeptical at first (a great first line to say, I know), but this guy knows what he's doing. After aimlessly reading NESDev and asking for help, I thought I could never understand the NES. This guy is a lifesaver!"
24 Sep 2022
Gant Laborde
CIO at infinite.red
"The Ultimate Trifecta!

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!"
23 Sep 2022
"Wow! Really impressive content.

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.

22 Sep 2022
"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!"
14 Sep 2022
Samee Qazi
"Great review on Computer Architecture! Enjoying computer architecture like never before! Want to go back in time and score better grades! :-)"
12 Sep 2022
Joseph Kennedy
"Best NES course online! Incomparable! Simply the best course on the NES anywhere online :-)"
31 Aug 2022
José Ferreira
"This course was incredible, and Gustavo did an excellent job in this course."
30 Aug 2022
Adam Patterson
"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."
27 Aug 2022
"Incredibly good course! It includes so much more than just the basics! You learn which tools are essential for development and you get a very good all-round view. After the course you will see your computer with different eyes. Highly recommended!"
23 Aug 2022
Chintan Bhat
"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."
21 Aug 2022
Oliver Dickson
"Awesome! Helped me learn something that had been a dream of mine."
14 Aug 2022
Thatoyaone Bogopa
"Interesting course! Taking time to explain all important details."
10 Aug 2022
Ivan Vodopiviz
Game developer
"Just excellent!

It's impressive just how much information there is in this course while staying relatively short and approachable. Gustavo goes over everything always maintaining a delicate balance of giving enough detail while avoiding overloading the student. Critically, he also drinks the superior hot infusion ;)

100% recommended!"
08 Aug 2022
James Graham
"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."
07 Aug 2022
Game programmer
"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."
05 Aug 2022
Kyle Halversen
"Finally! I've always wanted to make games, but figuring out where and how to start has been so intimidating. There is a ton of mediocre content online about gamedev and most of it focuses only on the very basics. Gustavo's content is empowering.

It's a nice mix of understanding the different moving parts that go into building a game and also the problems we try and solve in development. The course is a skillfully mixes coding, theory, design, and figuring out problems. It's rewarding. You take a step back after each lesson and see how what you learned made a real difference toward what you're building, you begin to see more of the big picture.

After finishing this course I can honestly say that it's given me the confidence I've needed to start seriously building the project I had only been dreaming about making. I cannot recommend this course enough."
02 Aug 2022
John Magne Bakke
"Great course for learning basics of game engine from scratch. Of all the books, courses and tutorials I have encountered, this is by far the best for learning how it all fits together into a small working game engine. This course takes you from the very first step, compiling "hello world", all the way to a working game engine with resource management, event system and scripting. After this course, I now feel inspired and ready to go ahead and learn more about engine design and making some fun games along the way. pros: cross platform (especially the focus on linux), minimal dependencies, working code all the way, teaching some modern c++. cons: liberal use of "auto" makes code a bit hard to read/understand when learning many new concepts."
31 Jul 2022
Tom Hulton-Harrop
Game Engine and Developer Services @ AWS
"Excellent introduction to 3D graphics!

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!"
24 Jul 2022
"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."
21 Jul 2022
"Fun but not perfect. The important part of the course is seeing the implementation of a fun algorithm, and this is conveyed well both in terms of how to write the algorithm and understanding how it works. The drawback of the course is that the code that is presented often goes against industry best practices, e.g. with var instead of let statements in the JavaScript code and tons of global variables in the C code (instead of explicit argument passing). I would recommend this course for an experienced programmer that's looking for some fun. For the junior programmer, there's a heavy does of asterixis that follow pretty much every single statement in this course."
18 Jul 2022
Ifeanyi Oraelosi
Software Engineer
"This course emphasizes the 'why'! It's refreshing to have an instructor run a program with errors so they can explain what the errors are and how to solve them. I really appreciate this a lot."
17 Jul 2022
Albert Tsanaclis
Albert Tsanaclis
Senior Software Developer
"Amazing course! This course was amazing, thank you! I really enjoyed the lessons pace and the raycasting technique."
15 Jul 2022
Victor Osornio
"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."
14 Jul 2022
Ferran Ruiz
"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."
13 Jul 2022
Qiushi Yan
Data Science at Vanderbilt University
"Amazing content and teaching style. The instructor has deep expertise in the subject matter and organizes course materials in a very approachable way. Exercises are well designed to complement learning."
08 Jul 2022
Rodrigo Verdiani
Game Developer at Voidkraft Studio
"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!"
08 Jul 2022
Moeen Kamali
"Its the best way to start understanding rendering. i think Gustavo is a great person to teach complicated stuff very easily."
01 Jul 2022
Dustin Clark
Controls Engineering Technologist
"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."
29 Jun 2022
Simon Steinaa
Software Developer
"Very inspirational and well explained. I love his way of teaching complex stuff."
23 Jun 2022
Jeffrey Shaffer
Associate Professor at Shizuoka University
"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."
19 Jun 2022
Simon Steinaa
Software Developer
"So pedagogical! It's the best course I've taken on graphics. The instructor is very skilled in explaining all the details. Highly recommended."
15 Jun 2022
"It really amazes me how complete the course is. This course is amazing because Gustavo does not leave anything and anyone behind.

I already had knowledge of C++ when I enrolled in this course and I initially thought to skip over all the lectures which dealt with topics that I already was familiar with. Let me tell you that I'm glad I didn't skip anything. All the lectures are incredibly well laid out and you might still learn something even on already known topics. This course taught me how a game loop works which before was just pure black magic to me. I couldn't understand how you could serialize a process of updating and displaying things when by a gamer perspective everything seems to be happening at the same time.

I also enjoyed to learn the core mechanics of the SDL2 library and last but not least to learn about the ECS system which prior this course I didn't even know it existed.

I can say that I'm leaving with a better knowledge on the subject and that I have enriched my experience bag with useful information that will become handy in the future."
13 Jun 2022
Alberto Calo
Alberto Calo
Mechanical Engineer
"Absolutely fantastic course with great content! By far one of the best and fun online courses I have ever enrolled till now! I have learnt a lot during this lovely journey and Gustavo has been a superb teacher! I can't recommend it enough!"
12 Jun 2022
Albert Tsanaclis
Albert Tsanaclis
Senior Software Developer

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.

Excellent course."
09 Jun 2022
Andreas Vlcek
Andreas Vlcek
"Wow! I really learned a ton here. Highly recommended."
30 May 2022
Henrique de Lima Florindo
"Great course! I've really enjoyed it. It helped me understand how a game engine can be architectured, even though i don't plan on using modern C++ features on my projects. I just wish it went more in depth into alternatives for ECS, it seems great for a complex and generic game engine, but seems a bit overkill for small games, which is what i plan on making. Besides that, i do not regret the time i spent taking this course, and will likely try other courses from Pikuma later on!"
29 May 2022
Pablo Sanchez
Gameplay programmer at Pentakill Studios
"Gustavo brings an Awesome course, made by heart and with an open mind, I cant recommend this course enough!

It is awesome from the beginning, you will learn key concepts that will keep in your brain how to think and design an game engine. If you want to learn c++ and how to endure in this amazing world of patterns: just get this course, there isnt any course better than this in my humble opinion."
23 May 2022
Dustin Clark
Controls Engineering Technologist
"This was another wonderful course from Gustavo. I really enjoyed the way he broke down some of the complicated math and this was a great introductory course to 2D Game Physics. I cannot wait until the 3D Physics course comes out."
20 May 2022
Kristafer Vale
Character Setup TD Dreamworks Animation
"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!"
16 May 2022
Andres Mata
Profesor de talleres tecnológicos
"I loved this course! I enrolled in this course because I was fascinated by Pico-8 and TIC-80 fantasy consoles and wanted to understand how the communication between Lua and C worked. I have to admit that I kind of hated of Lua in the beginning but after taking this course I realized that was because I didn't really understand the language. Now I love it, and it's one of my favorite languages."
08 May 2022
Thiago Almeida
Graphics designer
"Outstanding course!

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."
06 May 2022
Raul Romero
"Amazing! This is course has really helped me to understand the fundamentals of 3D."
01 May 2022
Aemon Malone
27 Apr 2022
Mario Lucas da Silva Barbosa
3D Graphics Programmer / GameDev
"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."
12 Apr 2022
Bill All
"Fantastic course! I'm about half way through this course. Unbelievable value for money. Not only do you get a course on 2D physics, but it doubles as a massive C++ project so that (for me anyway). I can brush up on and get more confident with the syntax (and memory management).

Course is well presented and explained, with clear diagrams and animations. I wish I had more time (jumping between this one and a few others from same Instructor). Brings together all the stuff I have learnt over the years (since my high school days a few decades ago).

Highly recommended."
11 Apr 2022
Jaqop James
"Wonderful course! I learn a lot from this course, it's easy and straight to the point. Enjoyable, very rare to find a course like this, and it makes you learn more by yourself."
11 Apr 2022
Michal Jarnot
"Can't get better than this!

I have very little experience with C++ and the attention and level of detail that I during this course is hard to describe. If there were more teachers like Gustavo then there would be fewer javascript developers in the world."
09 Apr 2022
William Allenr
"Everything I never thought I needed! I came here to learn enough about LUA to write and read Table Top Simulator script. But ended up learning so so much more. Gustavo teaches with passion and is so relatable. I will be taking more of his courses for sure."
31 Mar 2022
Thorbjørn Hedegaard
"Great for learning C++ and Lua! I think that this was a good way to get into C++."
30 Mar 2022
Tauan Flores
"Just do it. Amazing course, I've read a lot of books about make c++ engines using libraries to try to start learning, but this course makes everything simpler for your journey, i would recommend do this course and the continue your studies."
26 Mar 2022
Andres Mata
Profesor de talleres tecnológicos
"Awesome course! This course really helped me to fill in the gaps. Gustavo is an excellent teacher and I enjoyed this journey to the intricacies of the VCS programming a lot."
15 Mar 2022
James Smith
James Smith
"Fantastic and Fun!

I am a professional JavaScript programmer but I hardly ever get to do something this much fun, I also want to learn C in a fun way and so am looking forward to doing the follow on course."
13 Mar 2022
Ednildo Silva
"Very good!"
07 Mar 2022
"This course FAR exceeded my expectations.

I bought it with the aim of building a DialogueBoxSystem, a la Final Fantasy. While that particular Component/System combo was never created, the course provided enough examples that building one from scratch won't be a problem. Another bonus? This course upgraded my game coding skillset from the 90s-era "No framework for you, tiny Shareware dev" to the modern ECS style. I'm definitely a happy customer."
06 Mar 2022
T Young
"The perfect course I was looking for.

I was recommended this course from the SDL forums and it's perfect for making a game engine.

Gustavo has a lot wisdom to share and I'm learning a lot."
22 Feb 2022
Emilio Ganibegovic
"In depth and good course! This course is very good for people who are new to Linux and the course is very detailed and you are guaranteed to learn a lot from this course."
20 Feb 2022
Bill Jones
Bill Jones
"Bravo! Outstanding Content.

Clear & Concise. I absolutely loved this course and I only wish there was a part two for refactoring and perhaps showing how to build a game GUI with state transitions. I know the course has some older versions of Lua and Sol but overall I used all new SDL2 components and have the game running on Windows & Mac (M1).

If you want to understand C++ ECS Systems with component templates then this is the course for you!"
19 Feb 2022
Bob Marth
"One of the most invaluable courses for new people interested into game programming!

Gustavo Pezzi is one of the best online teachers I've come across. He explains some of the most important concepts when getting deeper into programming and his teaching style really made things I struggled with on my own (Components/Systems/Adding Lua) a complete breeze.

I have all of Gustavo's courses and I've enjoyed every single one of them and have always came out a better programmer because of them. If you are new you will eventually come to an obsession about design patterns and components and it can really throw you for a loop. Something about having something all sync together nicely is very rewarding. He explains a great ECS design and provides reason why he went the route he did. Components, Systems, Animations, Data Oriented Design, and even gives you the keys to learning how to incorporate Lua. He also drops in a little bit of Dear ImGui a popular GUI library used a lot of the time for debugging (you see it everywhere).

Complaint: I'd love to see an efficient scene/state machine, quad trees, and some pathfinding, but it's impossible to dock any points based on all the content stuffed in this course. My really only complaint, and it's a petty one, is I wish there were even more exercises to really challenge the concepts learned in the chapters. This is something anyone can do themselves, but it's nice having someone as great and experienced as Gustavo providing the challenge so you could be sure to stay on topic and perhaps not adventure to far off of the point. With that said he does challenge you to create a map editor at the very end. I personally rather read Tiled Editor maps exported to the Lua format. Thanks Gustavo! Looking forwards to any future courses, I'll be first in line. ;)"
17 Feb 2022
Francesco Puleio
"Well spoken and delivered, makes the process so far easy to follow and provides an understanding of the next progression in the journey."
14 Feb 2022
Jaikrishnan Arun
"Nice Intro to 2D Game Engine. I really enjoy the pace and how the instructor explains everything but I have some gripes with the architecture of the engine and how object oriented it is. I get that C++ is part of the industry culture and most studios use OOP but in this course in particular I feel as though the instructor falls to OOP through rote mechanisms and doesn't really give a sense of why OOP helps or why some of the structures need to be so fleshed out before it sees any use. The development feels as if it is prioritizing the fleshing out of pre-known structures first and does not seem to be informed by immediate needs and for a lot of the times I'm relying on faith that these structures will make sense later. Another point I would like to bring up is the use of modern C++ "features" such as templates and generics in a course that claims to be data oriented. I love that the course has a section on data oriented design and speaks about memory and encourages the learner to think about how things are laid out in memory but at the same time, the use of templates and smart pointers - while it helps the programmer sometimes, they also betray memory contiguous-ness and introduces pointer redirection and overhead - all hidden from novice programmer. And lastly, the use of so many libraries in a course that claims to be "from scratch". I get that these libraries help and don't really affect the game-play much v/s a hand-rolled one, but the course is hardly from scratch anymore so why make that claim. I know I pointed out a lot of my frustrations with the course but now that that has been said, I am thoroughly enjoying the course and am learning a lot despite my frustrations. I am following along in C and not using any libraries - mostly using the course as a guide rather than a complete follow along and I am learning a lot and I am glad that this course exists."
12 Feb 2022
Steven Mycynek
Principal Engineer at Onshape

Goes over fundamentals, not just end results. I found this class extremely rewarding."
09 Feb 2022
Welton Leite
Camper at 42 São Paulo
"I learned a lot from this course, impressed by the quality and depth of the explanations.

Hello from 42SP! =D"
07 Feb 2022
Peter Gruessing
Author at Sensation Interactive
"I am about 60% through the course and its been a real treat! Even though I have been in IT for years Gustavo's teaching style and patient explanations of key topics are a real breath of fresh air.

I have taken courses on Udemy, Skillshare, Codeacademy, and others and not many come close to the level Gustavo is currently teaching at. Bravo!

Take this course you wont be sorry you did!"
05 Feb 2022
Alex McCulloch
"This is an excellent course and a great entry level to understanding and creating a Physics Engine.

I have bought numerous books and videos on video game physics but never got anywhere because the math and C++ code was to difficult to understand. I am impressed that I was able to understand the calculus in this course as I barely have any experience in calculus. Not only that I also have little experience in C++. The instructor simply knows how to simplify difficult topics and makes it possible for anyone with a high school degree to learn video game physics given they touch up what they do not know on Khan Academy."
03 Feb 2022
Fábio Cardoso Chagas
Engenheiro de Processos
"Gustavo, you are a true educator. Your method is the best way for 100% comprehension of computer graphics. Thx a lot!!!"
01 Feb 2022
Anders Jensen
"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.

Very well done!"
24 Jan 2022
Charmaine Carby
"Excellent course! The lecturer is very good at imparting the knowledge of Linux - Just a great and awesome way of giving exercises and be able to understand the core principles"
24 Jan 2022
Alexandre Garcia
Alexandre Garcia
"The OOP section was a life changer and helped my game's data structure."
19 Jan 2022
Anton Yarkov
Principal Software Engineer
"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!"
17 Jan 2022
Carlos Sánchez Cazorla
"Great content and great explanations!

You are a genious at explaining hard concepts, Gustazo.

It is amazing how you make hard things fun :)"
09 Jan 2022
Pablo Sanchez
Pablo Sanchez
"Amazing course!I am so so so happy that I bought it! Gustavo is what I call a teacher by heart! You can tell that he enjoy teaching you stuff! If you want to learn something meaningful, just start looking at the beauty of Atari 2600 and his MOS 6507."
05 Jan 2022
Yijie Shen
"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."
01 Jan 2022
Peter Lous
"Best course on game physics! I've always been curious on how physics were implemented in games. And truth is that physics was not my best subject on school. But Gustavo really explains all the math behind a physics engine is a very clear manner. You can code along, build your own physics engine and understand everything behind the scenes! Very satisfying! Looking forward to the 3D physics engine course."
26 Dec 2021
"Honestly one of the best courses I have ever taken!

In those 35 hours I've not only learned a lot, but also had a lot of fun and I'm super happy now, that I know so much more about such an exciting topic than before I started this course several weeks ago.

Gustavo has an amazing talent of breaking quite complicated things into smaller, much much easily understandable pieces. I love his step-by-step style of learning and "let's do it from scratch to really understand it" attitude.

I would definitely recommend this course, there is no other course that goes so deeply into game physics as this one.

I am looking forward for more Pikuma courses!"
23 Dec 2021
John Reder
Founder TacticalNeuronics.com
"Great Refresher and I actually learned some new things! My last formal UNIX class was in the middle 90's when I worked for NCR (at the time an At&t company)! One of my instructors was a developer of S5R4-MPRAS which was a big deal back them. For the past 25 years I've been mostly a Windows and web developer but I play around a bunch with Raspberry Pi projects and have been tinkering with many Linux based projects and even poking through code for some Vectrex development projects on the PiTrex a Pi Power Vectrex card that hijacks the old GCE Vectrex hardware for all kinds of new vector tricks not possible with the 6809 processor. This course cleared up a ton of what I was fumbling through on the gcc side. Thanks!"
22 Dec 2021
Ross Kuehl
"Trying to learn graphics programming as a self-taught web developer without a strong foundation in math has been challenging, but this course has been great at reinforcing what I already know and helping me piece things together that I've been learning.

So far my strategy for this course has been to try and implement the next step myself before watching your code walkthrough and then see the differences between our implementations. It provides a little extra challenge which I would recommend if you want to get the most out of courses like these.

The instructor is very thorough in each lesson and hits on all of the details required to fully understand the material.

This course is a great little nugget and should have wider reach."
11 Dec 2021
Oliver Brown
"Great so far.

Just got through all the Math stuff and it was wonderfully explained."
11 Dec 2021
Joe Plain
"The best teacher I ever had and the best courses I have ever seen!

I took many video tutorials and read many teaching books for the last 20 years, but I have never had a teacher as good as Gustavo! His teaching style and tutorials are so interesting, fun and easy to follow that I watch them in the evening instead of Netflix or a movie.

I wish I had teacher like that 20 years ago when I first tried to learn programming but gave up because books and tutorials were too boring and not easy to follow. Also in the end they left you with knowledge that is not really useful or enough to do anything that is close to the finished product. Another great thing with Gustavo is that in the end you really make something. Almost a whole game.

I never wanted to learn databases, I find them too boring, but if Gustavo makes database course I will learn them too! He is that great of a teacher! Even database course would be fun and interesting."
03 Nov 2021
Al Curtis
Al Curtis
Computer Programmer
"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!"
30 Oct 2021
"Excellent course!

It exceeded all my expectations, and I am very happy with the course."
21 Oct 2021
Hannah Kloepper
Hannah Kloepper
"From the moment the class first started, to the very end - I understood EVERY concept he brought to the table. The exercises REALLY help solidify and test your knowledge. Also, they're super fun! I had so much fun with this class! I can't wait to continue to learn more about Lua and truly become a master! Thank you Mr. Pezzi!"
20 Oct 2021
Diren Bharwani
Diren Bharwani
"Perfect course for those who want to learn physics simulations.

Great course, well taught. Contains all the required information for robust physics simulations, taught in a incremental manner that's very helpful when trying to understand the insane math behind it."
15 Oct 2021
Maurice Blaks

I have started this course and already I am beyond excited, this course will give me an understanding of an awesome field in computing.

From this course I can even use the practical mathematics learnt in my own projects, so this is truly an amazing course."
27 Sep 2021
Steven Johnson
"Fantastic. I recently started learning about computer graphics and had been wanting to learn about how the old Wolf3D raycasting technique worked. I just so happened to stumble over this course and it provided *exactly* the information that I was looking for. Gustavo breaks everything down in to easy to digest lectures and it was a joy to follow along. Highly recommend."
11 Sep 2021
Javid Gajievi
Javid Gajievi
"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."
07 Sep 2021
Shawn Wheatley
"I’ve completed about 15% of the course and so far it has been fantastic.

The teacher provides great, in-depth explanations each step of the way. Highly recommended if you want to know how a basic 2D game engine is built in C++ and SDL."
06 Sep 2021
Wamiq Ur Rehman
Wamiq Ur Rehman
"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!"
02 Sep 2021
Meniscus Sunrise
"Excellent Every step covered and explained in detail."
02 Sep 2021
Michael Leung
"This is one of the most thorough and best courses I've ever done on game development, and I've done quite a few. The information is easily digestible and useful. The structure of both the course and engine are beautifully organized. There are also plenty of opportunities to implement what you're learning through exercises. This is a must-have course for anyone looking to build their own 2D game engine. I can't recommend it enough."
01 Sep 2021
Luis Gonzalez
Doctoral student at UCLM
"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"
13 Aug 2021
"I've been looking for a long time for a course like this, where things are explained step by step, without magic tricks or black boxes. I really appreciated how this course provides a detailed birds-eye view of the fundamental aspects of a small but functional game engine. Being a gamedev and an engineer, I like to build things from the ground up, and understand what I am doing in the process. This course gives you the basic building blocks upon which you can create and expand, strong in the knowledge of what is the right approach to pursue."
01 Aug 2021
"As with all Gustavo's other courses - absolutely amazing!

I enjoy all content from Gustavo, this course is no different.

Gustavo is an incredibly knowledgeable lecturer with a talent for teaching and explaining complex topics!"
15 Jul 2021
Zack Shrout
"Gustavo Pezzi is a legend - every course I have taken from him has been right on the money."
02 Jul 2021
Stuart Hunt
"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."
19 Jun 2021
Alex C
"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."
03 Jun 2021
Damien Hanns
"This is an brilliant course. Teaching great, methodical and easy to follow. Content great, well organised and covers the subject areas well. Pacing of the course was really good, always moving forward but not too fast. Instructor was easy to understand and responsive to questions and issues. If you are interested in this course, even just a little, I would definitely recommend you enrol. My experience with this course has been so good that I will definitely be going on to the other courses available on this website. 5 stars, easily earned."
26 May 2021
"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!"
01 May 2021
William Wheelock
"I've spent the last 25 years writing code with high level programming languages and have only recently begun to explore the roots of the code. This was a highly informative and entertaining way to start learning assembly."
26 Apr 2021
Ben Pavy
"If you cannot program lua fairly well once you have finished this course then sorry but you have got problems.

Great course, 5/5!"
26 Apr 2021
Ajinkya Borade
Ajinkya Borade
"Once you learn C++ Basics this course is what you should take. It will make your learning journey in C++ OOP great course for 2D gamedev. I'm using windows and had no trouble following the course."
26 Apr 2021
Roman Agarounov
"Awesome course!

One of the best in the internet, learning a lot from it - very easy for beginners too!"
23 Apr 2021
Joseph Kennedy
"I recently finished Gustavo's Assembly language course for the 6502 CPU, and I was impressed with the content and how easy it was to build a full Atari game. This course is equally impressive and easy to understand, and I came into it with a small amount of C++ experience. I am still early in the course, but I am so excited and happy with this course that I want everyone to know Gustavo is an outstanding teacher! The skills he has taught me will serve me well as I pursue a software engineering career this year in Silicon Valley. Thank you so much Gustavo, for being the best teacher I have encountered for computer programming. I shall not forget where I started and how much you have helped me :-)"
07 Apr 2021
Joao Cassis
"What a life saver.

Gustavo is a really good teacher. He goes above and beyond to be very thorough in his explanations. I came out of this course really understanding the concepts behind this technique. Thanks for the great course."
22 Mar 2021
Alberto Marcos Martinez
"I have really enjoyed this course.

I can't recommend it more for people who want to learn how things work in 3D computer graphics.

An essential course without any doubt!"
10 Mar 2021
"An invaluable resource for learning computer graphics.

This course is one of the best resources on fundamental of CG available on the Internet."
06 Mar 2021
Ji Park
"This Course Great "C++ 2D Game Engine Development" was a great course. For many years, I wanted to create a game from scratch without using any popular game engines. I was curious about how a lot of games worked under the hood. His teaching style and pace were very good. Also, the exercises helped very much to reenforce the learning. I am so happy that I now know the fundamentals of creating a game engine. This felt like I have been well educated on the fundamentals of the subject matter. I am so glad that I took this course."
02 Feb 2021
Jason Piloti
"It's the best course than I see!"
01 Feb 2021
Dustin Clark
Controls Engineering Technologist
"This was a wonderful course and provided great insight of how to start a game engine. There is still plenty to do and to continue my education of game engine programming, I will take what I learned from this course and try to build an editor from some the the concepts. I recommend this course to anyone that is interested in game engines and c++ as a wonderful introduction. Thank you Gustavo, I look forward to taking some more of your courses in the future."
30 Jan 2021
Joan Sabater
"Amazing teacher"
29 Jan 2021
Pedro Ganme
26 Jan 2021
Javid Gajievi
Javid Gajievi
"The Best Course I've Ever Taken! Thank you Gustavo Pezzi! While learning game programming, I also gained deep insight into C++ and Game Development. I am very much excited to see more from Gustavo!"
26 Jan 2021
Dylan Bennett
Tech officer at Portland Indie Game Squad
"Absolutely phenomenal course!

This was one of the best online courses I've done in a *long* time.

The progression of topics is extremely smooth and well-thought-out. The depth that each topic covered is just right so as not to overwhelm you, but also not leave you in confusion as to what exactly you are doing. You finish the course with a sense of skill, empowerment, and inspiration, rather than feeling like you only have the know-how to implement *exactly* what was covered in this course and no more. It's the mark of truly good educational materials.

I already had a fair amount of coding experience in languages such as C#, Python, and Lua, but almost zero experience with C++. This course was perfectly pitched to my level of experience. It didn't try to go through extremely tedious explanations of basic programming concepts, but rather it respected my time and existing knowledge and gave me the information I needed to understand what we were doing in C++. There were also plenty of times where fundamental C++ concepts were repeated so as to really drill them in for people inexperienced with C++, and I really appreciated that.

Another thing I loved was that the instructor is writing all the code alongside you from scratch. Every file starts out blank and is filled character by character, line by line, as you build up the code. Sometimes intentional directions are taken that have to be back-tracked and changed or fixed, but it's not because of incompetence or bad planning in the course, but rather to give you a further understanding of *why* you are doing something, not just blindly following along with what's being typed. And to top it off, all the code is being written in a visually bare-bones text editor (vim), which means that the focus is on the *code*, not a fancy IDE and all its bells and whistles being a distraction. This is more important than it sounds. (This doesn't mean *you* have to use vim, of course, but having the code written this way by the instructor is very powerful for keeping the focus on the code you are writing.) Only a couple times toward the very end of the course is there code for a lesson already written, but by that point it's appreciated and it's actually a respect of your time.

Lastly, the number of powerful concepts packed into this course is just gold. I mean it. It's astonishing that this one course delivers all that in a streamlined, easy-to-understand, easy-to-follow set of steps. You could easily have an entire course on just using SDL, or just how the Entity-Component-System architecture works, or how to embed Lua into your C++ program. On top of that, it would have been so easy for this course to be just a messy jumble of those concepts all crammed in together, with no real separation of ideas. Instead, this is laid out in such a way that each topic is approached smoothly and in a way where you feel like you have a solid grasp of it before moving on to the next topic. I am an educator myself and have written my own coding courses for all ages and experience levels. I recognize the monumental amount of work that has gone into making this course what it is.

Trust me, you don't want to pass this one over. It is well worth the money.

Thank you very much for creating this course! My head is bursting with ideas for so many new projects directly as a result of what I got out of this course."
25 Jan 2021
Test Acc
"Really Good Raycasting Course. I am taking this course for making a game for a game jam, it is going really well and there are very in-depth explanations for almost everything in raycasting"
22 Jan 2021
Anders Krog
"Fantastic cource. Learned a lot, not only about raycasting but also about c, refactoring and math."
19 Jan 2021
Anders Krog
"Makes coding fun. I normally don't like learning by videos. But This cource is really easy and thorough. Also great for refreshing some math."
14 Jan 2021
Arash Amiri
"Very good course! Learned a lot. Thanks Gustavo for the great explanations."
14 Jan 2021
Karl Phillip Buhr
Software Engineer & Professor at UNOESC
"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!"
03 Jan 2021
Magoninho Gamer
"Finally some good and free content about raycasting. I was searching for a beginner friendly tutorial about raycasting. I wasn't finding one that was easy to understand. Until I see The Coding Train video about raycasting, that recommended this course in the video's description. I'm so happy I found this!"
02 Jan 2021
Jannes Kaspar-Müller
"This was a really solid tutorial and it was for free!

Thank you very much for your time and clear explanations!"
26 Dec 2020
Wamiq Ur Rehman
"Just the teacher I needed. He taught way more than I thought I could learn this quickly. Thank you!"
24 Dec 2020
Joao Silva
"Amazing course.Every single video is super interesting, Gustavo really makes it seem easy and trivial to learn about programming, algorithms and trigonometry. I really like that he goes into so much detail about everything and codes along from scratch without assuming expert knowledge about anything. Absolutely recommended"
21 Dec 2020
Rho van Passel
"Awesomely insightful. This was an eye-openener with respect to raycasting. You get a good step-by-step course, with some assignments in between (recommended to spend some time on that by the way) and good explanations about the how and why things work like they do. If you have little programming experience you will be glad to hear that he choose javascript as the proof-of-concept language. If you already have some programming experience this will give you a multitude of thoughts about "hey but what if I try it like this?" He is very good at making people excited and motivated to delve more into this topic. Would highly recommend o/"
15 Dec 2020
Karl Phillip Buhr
Software Engineer & Professor at UNOESC
"I'm really enjoying '3D Graphics Programming'. I don't know why its so cheap since its worth at least 100USD for the quality of the material, examples and explanations."
11 Dec 2020
Joao Silva
"Really good beyond expectations. I'm almost done with course but I'm very (pleasantly) surprised with the level of detail explaining the concepts that we're covering with every step. I'm no C developer but I'm considering buying the full course just because of how well everything is explained, it'd be a good challenge and learning experience. Some constructive feedback though, the quality of the video could be a little better. Even though the video quality automatically selects 1080p it's clear that that is not the case. Just for consideration on future recordings, thanks for the great course!"
11 Dec 2020
Karl Phillip Buhr
Software Engineer & Professor at UNOESC
"Amazing step-by-step Raycasting tutorial! This shouldn't be free! The instructor does a fantastic job reviewing all the required math for the raycaster in simple terms and with great examples."
06 Dec 2020
Sam Pollard
Sam Pollard
"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."
15 Nov 2020
Sam Pollard
Sam Pollard
"Would give 6 stars if I could. I can tell you that 'from scratch' is correct! - nothing is left out, everything is explained in crystal clear detail, and there's a perfect combination of theory and coding demos; Gustavo really knows how to teach. Highly recommended."
08 Nov 2020
"Excelente curso. Ele mejor curso sobre este tema"
04 Nov 2020
Ednildo Silva
"Excelente. It is an excellent material about lua."
03 Nov 2020
El Kemmal Abdelhamid
El Kemmal Abdelhamid
"tnx for this course, I learned a lot from him"
01 Nov 2020
Bruce Sutherland
Bruce Sutherland
Senior Engineer
"Would give 6 stars if I could!
This is the second course I've taken from Gustavo and have enjoyed both immensely. Gustavo's cour