"I'm really enjoying '3D Graphics Programming from Scratch'. I don't know why its so cheap since its worth at least 100USD for the quality of the material, examples and explanations."
"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"
"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."
"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."
"Would give 6 stars if I could!
This is the second course I've taken from Gustavo and have enjoyed both immensely. Gustavo's courses are immensely educational, entertaining, and fun, and have rekindled my obsession with writing computer games. Thank you so much, Professor Pezzi!"
"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."
"Simply the Best Online Lecture Series on 3D Graphics Programming.
If I could recommend one course to take whether you're an aspiring graphics/game developer or an industry veteran like myself, this would be my top pick. I wish I could have taken this course 20 years ago when I was still just a college kid dabbling in graphics and game programming for the first time. Since then, I've read countless tutorials, articles, books, and blogs, watched a number of online videos on these topics, even worked with graphics programmers in the industry. None of these sources have presented the material as well as Gustavo has in this lecture series. His teaching style is engaging, intuitive, and to the point. He also does an excellent job of breaking down complex topics into digestible chunks. As each lecture or section concluded, armed with a new understanding or renewed sense of clarity on various topics, I revisited old books and source code that I had previously found somewhat daunting. It was an amazing feeling to read through these materials again and discover that I now understood the concepts being presented. Equally amazing was the ability to take these ideas and apply them to the very visual, working example software renderer that is developed throughout the course. To add icing on the cake, Gustavo is also very active in lecture discussions and readily answers questions. He also takes the time to revise course material when necessary rather than just posting errata as other instructors tend to do. This course is an incredible ride from start to finish. Gustavo not only teaches the fundamentals of 3D graphics, he also teaches mathematics that are widely used in many areas of game development. By the end, you will have gone from drawing a single pixel on the screen to rendering a fully textured, lit, culled 3D model, and know the math and algorithms that make it possible! You will also have a greater appreciation and understanding of how modern graphics APIs work under the hood."
"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!"
"I'm working as game developer for 5 years, and it was always a black box all things that touch rendering stuff.
If you want to understand that black box you should definitely take this course!
Gustavo is a perfect teacher! Thank you a lot!"
"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."
"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!"
"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!"
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."
"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!"
"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."
"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!"
"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 :-)"
"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!"
"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."
"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!"
"Probably the best course I have ever enrolled on for computer graphics in C.
Even though I am an experienced programmer, the attention to detail and methodology has been excellent throughout. There isn't a single aspect of the code nor the mathematics that has not been explained thoroughly. Gustavo does a great job of introducing advanced concepts in such a way so that they can be understood and researched further by the student. In particular, his treatment of game loops and delta time which can be confusing for beginners was made clear and unambiguous."
"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."
"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."
"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."
"The best course on computer graphics for beginners. The most impressive characteristic of this course is the maths reviews. You really get to understand the logic behind each formula. Thank you!"
"Great course! Fantastic, engaging teacher, looks like a nice person, trying his best to explain things in simple way, the gift that every teacher should have. Keep up the good work, expecting more courses from you :)"
"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. ;)"
"As a long-time programmer, this course felt like a going on a great short vacation with an excellent guide. Gustavo informs everything with a delight in what can be achieved by clever hacking with limited means, and can be very subtle with depth (for example, I first thought the scoreboard was an odd choice for a long video, but it turns out that it involves some sweet bit-masking and opens the door to asymmetric playfield rendering)."
"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! Thank you."
"Gustavo Pezzi is a legend - every course I have taken from him has been right on the money."
"Excellent Every step covered and explained in detail."
One of the best in the internet, learning a lot from it - very easy for beginners too!"
"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."
"If you cannot program lua fairly well once you have finished this course then sorry but you have got problems.
Great course, 5/5!"
"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."
"An amazing course by an amazing teacher! Thanks for carefully designing the course
its one of the best resources out there."
"So far, so good. I thinks explanations are clear, much clearer than when I studied those subjects long ago. Up until now, everything is well explained and understable."
"Makes assembly very accessible. I really gotta thank Gustavo for making this course, definitely allows people to get their feet into assembly and shake their fears, hopefully I plan to get involved more into 2600 homebrew development and maybe C64 or NES as well. Great to have someone making retro development more accessible by making comprehensive courses, would love to see more platforms as well (Teach MIPS ASM via N64/PSX development? :) ) Again, very accessible and fairly comprehensive, highly recommended."
"I've just about come to the end of the course and I have to say it's been a deeply enjoyable experience from beginning to end. The course covers most key points necessary to program games on the Atari 2600, even closing with creating an entire game on the system. If you are interested in learning about the Atari 2600, this is easily the most accessible and beginner friendly way to go about it. I would also recommend trying this course if you are simply interested in Assembly programming or learning about the fundamentals of computing."
"Wish there was a second course, but I know what steps are next. This course provides the fastest path to foundation Atari 2600 game development that I'm aware of. I hope more people learn assembly game development for retro systems this way. My only complaint is that the pacing of the course lags at some points. I feel like I spent more time watching code being typed on screen than was necessary. It would have been better to cut and paste prior written code or to talk through code that had already been entered on screen. Overall, the step-by-step lessons provided are a world above trying to figure out what words to type into Google and jumping around from website to website. Why does it have to end here!"
"Very nice. I learned more with two videos of this course, than in my school, nice work!"
"Very informative! As someone who dabbles in programming, I found it very easy to follow. Gustavo presents the material in a friendly and thoughtful way, and explains concepts such as creating an Entity-Component System and integrating with Lua in accessible terms. I would highly recommend this course to anyone who wishes to gain the experience and confidence needed to write their own simple 2D engine. Thank you for making this, five stars!"
"Awesome! Thank you! This course was fantastic! The only feedback I could give is maybe mention that 2^0 = 1. Someone that doesn't know math that well might get confused on why if the right most bit = 1 the value would be 1 and not 0, which would throw off their total number when adding up each bit value. One of those things that many would just know automatically, but if someone without that knowledge was trying to follow along it could confuse them. Thank you again for this course, loved it!"
"Really interesting! Really good course about bit shift operations. I've appreciate to learn in deep this topic. I am not a native English speaker, I am French and I liked the way the teacher explained things. Succinct and clear."
"Clear and amazing. Very good keep posting courses like this."
"A really good introductory guide to SDL! Before this course I had only seen some guides around the web about the SDL library, I can confirm that this course provides a broader view of the approach to use to develop a well-made 2D game, and above all, Gustavo is really good at making you immerse yourself in the logic of game engines and make you understand the mechanism behind a clear and clean programming. After this course I feel perfectly capable of developing a 2D game that I had been thinking of doing for a while!"
"Just wow! Without a doubt these are the best lessons I've found about the subjec by far! Gustavo's explanations are crystal clear and he takes the time to make sure you understand everything. I've been struggling with the maths behind raycasting for a while, but after following this course I'm amazed at how simple everything is. I guess I just needed a good teacher. Great job Gustavo, you're amazing!!!"
"Fantastic course, illustrates the concept clearly and concisely. Would recommend."
"Really nice! Gustavo is a great teacher and tries to explain everything in detail."
"Good. Very well concieved. keep the work and show more"
"I also live for these tutorials! I think that it’s fun watching him code. Everything is taught descriptively with such simplicity which ironically, blows my mind!"
"Simple and fun It is a easy guide which gets you hook and involve from the very beginning. It is also very accessible and takes you through all the process necessary to complete a simple game loop, and it also gives the idea of how to continue the interest for development."
"Very useful course , thanks a lot !!"
"I like it. Thanks for the course, i really like it"
"Excellent. It says a lot about GP's teaching style that although I knew all this stuff already I *still* enjoyed this course, kind of like hanging out with a cool nerd friend and talking about how elegant bit operations are. Would love to see a follow-up course that goes into more detail, maybe "Hacker's Delight" style bit hacks"
"So much fun. As a long-time programmer,
this course felt like a going on a great short vacation with an excellent guide. GP informs everything with a delight in what can be achieved by clever hacking with limited means, and can be very subtle with depth (for example, I first thought the scoreboard was an odd choice for a long video, but it turns out that it involves some sweet bit-masking and opens the door to asymmetric playfield rendering). In this era when assembly programming on current platforms (x86 etc) has fewer applications (I think), I wonder if this is the right way to teach it: through constrained systems and games."
"Really thorough explanations. I really appreciated the time you took to show how to get SDL working on a windows machine and fully compiling. I also have been looking for resources that make use of Makefiles and header files etc and I find a lot of tutorials don't bother unless its a huge project. So I really appreciated you using those things right from the beginning.
Simple and good to know"
"Awesome course! This course is really awesome! I took the Atari 2600 course .... I am very looking forward to it."
"Amazing course! I completed this course last summer while I was on a weekend vacation and got interested in Raycasting. This course explained the algorithms and math much better than most of the articles and tutorials I had found before discovering Pikuma. I really like Gustavo's teaching style and methods. By the time I was finished with this class I had a working raycaster and was able to expand and build upon it because I understood how it was working. I will definitely be getting the raycasting in C course now. Thank you so much Gustavo for making courses like these."
"Great Course. This is a subject I have approached on my own on a few occasions, but this is the course that helped me finally get the basics down at a fundamental level. It is definitely a "101", but I think that is why it is effective. It strips away a lot of the complicating factors for assembly (and atari) newbies like timers and esoteric addressing modes and presents the absolute fundamental basics in well ordered and structured way. If I have a complaint it's that the very end of the course tries to cram in too much into too short a time. I would happily purchase an intermediate course on this subject with this instructor."
"Excellent! Great course and great explanation."
"Fundamentally Awesome! These are the fundamentals that so many other courses all leave out and take for granted. Seriously thanks so much for this!"
"Nice Intro to SDL: This was a nice introduction to setting up an SDL project and it covered the basics of making a game loop in a way that was easy to understand."
"Excellent course, one of the very best I've gone through. The material is walked through very meticulously and methodically, with lots of great visual aids. Every challenging point is identified and delved into appropriately. Most resommended!"
"A thanks: thank you for these helpful explanation"
"Excellent course , with great explanation!! Thanks!"
"Clear as water. It's so easy to follow along all the process, and even the trigonometry! Thanks!"
"So Fun. This course was exactly what I was looking for! The instructor has a great understanding of the core concepts and explains them very well and at a very good pace. Will definitely be taking more corses by him."
"Great lesson's. I was looking to make a 3d game like wolfenstein 3d but could never find a good tutorial/ course. but when i found this i was instandly hooked its ez to understand and follow. and its a lot of fun"
"Clearly explained with some great extra tasks. I really enjoyed this course, lots of information but clearly explained. There are also some optional extra tasks to do along the way as "homework" all of which felt challenging but not too overwhelming"
"Liked it. Very brief but solid and clear explanation of the math behind the bit shift operations."
"Awesome introduction to Game Loops: Awesome explanation of what the core of a game loop is. Everything one must know before diving into more complex game loops features/techniques."
"Great Introduction. I has all the basic ingredients to start practicing and playing with the development of games for the Atari 2600, but it also can help to gain an insight in other similar consoles which possess similar characteristics."
"Awesome course! I took the course just for fun and I actually learned a lot! Now I'm curious learning more about game development and techniques. I'm definitely taking another course from Gustavo!"
"Excellent introduction. It gives a basic but useful idea of how to start and how are the basic cogs inside a game engine. You can grasp the introductory concepts and start building from there into more complex topics afterwards."
"I think that Gustavo does a very good job of explaining the concepts, opcodes, syntax, etc. The video graphics are a superb addition. My only concern is this: I have a good bit of experience with Assembly language programming, so I am comfortable with the lessons and material; however, I wonder how someone with zero Assembly language programming experience will handle such a quick crash course. I am also a little skeptical that with the remaining 7 or 8 hours of instruction videos, Gustavo will cover enough material to give a new 6502/6507 programmer (like me) enough instruction to make that person comfortable / competent enough to actually write code for an Atari video game. I'm skeptical yet hopeful! So far I am pleased with the course."
"I wish I had this course at the beginning of my career ! As a self taught programmer (that is now working in the game industry) I wish I had this course at the beginning of my career. I bought it because I want to support those kind of materials! I basically learned all this stuff by myself through books and articles, but this course is a all in one place to learn them all at once, in a fun/approachable and motivating way that will make you save some precious time. Even if this is a good refresher for me and I already had the "clicks" before, I'll recommend it for anyone wanting to become a graphics/game/programmer !"
"Ray Casting Made easy!
I never thought getting my hands on ray casting would be so easy and fun!
This is all thanks to the great talent for teaching of Gustavo Pezzi, who is extremely clear and structured in his way of presenting concepts! Can only recommend."
"Great tutorial. Easy to understand and follow Do make more courses"
"Excellent Course! Very well structured and delivered."
"Very good tutorial"
"Excellent Course. Gustavo presents clear and detailed explanations of raycasting concepts and provide understandable incremental examples."
"A Quick, Enlightening Lesson. This was a fantastic resource for learning about bitshift operations. Definitely worth the time!"
"Awesome! Easy to understand with great examples!"
"Best Course to Learn 3D Graphics from Scratch. If you truly want to learn how things work under the hood when it comes to computer graphics, this is the course for you. You'll come out of here with a greater appreciation for mathematics as well. I myself want to learn more about engine development and this course has given me the confidence to pursue that."
"Muy buen curso.
Curso muy completo para la iniciación en la programación del Atari VCS, y en la iniciación en Assembly.
Muy bien dictado por Gustavo."
"Great course about Linux"
"Awesome! Cara, sua didática é simplesmente incrível. Muito obrigado por oferecer cursos gratuitamente criados com tanto carinho"
"Excellent detailed introduction to raycast. It was a detailed very useful introduction to raycasting. It has a complete idea of what you need, and you can use the concepts to expand for whatever more advance development you want to do with the code."
"Excellent Details. The instructor explains all of the details about Raycasting with simple and easy to understand illustrations. So even if you're like me and missed or don't remember your high school trig, you'll still understand what is going on."
"Very good course and very well explained. The course is very understandable. Everything is explained in detail with clarity. I am very happy."
"Interesting introduction to old-school programming. This was a very useful introduction to old school style programming and an informative breakdown of what exactly Bitshifting is and when and where it is appropriate to use it. Highly recommended!"
"Great intro to Game Loop and Game Dev in general. It was a great experience seeing how things work more 'under the hood' and have a more in-depth explanation to why we have things like delta time and how the internals of a game loop works. Gustavo did a great job on explaining the concepts and keeping me interested during the course."
"Excellent course, well presented in a logical sequence. I've been going through this course and the material is very well presented and delivered in a sensible and logical order. There are times when I have struggled and this is down to the devil being in the detail. Assembly language and assemblers appear to be very picky, so sometimes things like spaces matter and make the difference between disaster and success. However, when I've scrutinised the problem it's been remedied by carefully analysing everything and being very exact. This shouldn't put you off, I've been meaning to learn some form of assembly language programming and the Atari and the 6502/6507 is the perfect platform, you don't even need a console."
"Very good project, excellent explanations. The course is very helpful, thx !"
"Simple and easy"
"Funny: Good and funny explanation, I learned what is mean bitshifting and the important thing there is no need to use it in this time :-)."
"Very interesting, I have loved te way you have explained this course.
In additional of my own research of the raycasting technic I can develop a little project in Lua with wall, floor and ceilling textures. It's very clear for me now !
The challenge is to draw doors now :)
Thank yoou very much"
"Learn Ray casting algorithm easy peasy! Congratulations on your course Gustavo! Whether Assembly or RayCasting, you make things a piece of cake!"
"The best course on computer graphics for beginners. The most impressive characteristic of this course is the maths reviews.
You really get to understand the logic behind each formula. Thank you!"
"Great course, well explained and easy to follow!"
"Very very instructive!"
"Very good explanations. Do like this course"
"Great Course. If you want to learn the fundamentals of 3d graphics this course is for you! Easy to follow explanations. The teacher really wants you to understand everything! I hope Gustavo will create a follow course to explain more advanced topics. Or a course to build a ray tracer or ray marcher"
Finally took the time to understand bitshift operations (clear and concise), and the explanation uusing base10 at the beginning is a huge help"
"Отличный курс. Очень понравилось детальное разъяснение каждой детали на понятном языке. Курс так же хорошо подходит человеку, который не очень хорошо прошарен в математике, так как неплохо мотивирует в этом всем разобраться."
"Amazing Teacher! and Amazing Course! Thank you so much for making this course, everything was very easy to follow and i had lots of fun learning about raycasting!"
"Fantastic course. The information is presented and explained very well, the instructor approaches the idea of raycasting using understandable diagrams and examples."
"Thank you so much! The best introduction in raycasting! You are great man!"
"Cannot escape from getting shifted! Awesome crash talk about bitshift! Gotta keep them shifting! Left, right, up, down; shift your bits all over the town!"
"Great Course. If you really want to understand how one of the first 3D games for PC's is working (Wolfenstein 3D), then this course if for you!
Easy to understand explanations of the math involved."
"Great So Far. The first lesson was a great way to overview and establish the basics of trigonometry. He condensed what took my high school teacher 5 days to try to teach, to 30 minutes. I don't want to think about how long ago that was."
"Very good course! Thank you"
"Thanks, Gus! Really enjoyable course. Helped me get to grips with basic game development."
"3D Graphics Programming. Gustavo is true to his word as usual and teaches the fundamentals of graphics programming from scratch. I can really recommend this course to anyone who wishes to understand more about graphics programming and how it works."
"That was great. Tnx for this cours it healps a lot tnx."
"Really clear explanation. I really liked this short course on Bitshift Operations, and would definitely recommend to anyone who is looking to understand this topic. Thanks!"
"Take this course :)
Easily one of the best computer graphics courses out there!"
"Ray-casting on Js. This was the most amazing course on ray-casting i ever had, think you very much from Russia. I will definitely recommend it."
"Very Very nice course. I was alone trying to learn from a book but there are some concepts that were too hard to understand alone."
"Very useful course. I liked the hands-on approach, though the explanations dragged on a bit at times. Overall, this course was well worth the watching time."
"Excellent. It is very complete and detailed material. Thanks a lot."
"Basic, short and well explained."
"Wish I had instructors like Gustavo Pezzi when I was in University!
This is the second course I've taken from Gustavo Pezzi (the first one being Fundamentals of 2D Game Engines) and have enjoyed both immensely. I wrote my first computer game in 1985, and am now just starting work on my second one (despite having been a professional software developer for most of my adult life).
Gustavo's courses are immensely educational, entertaining, and fun, and have rekindled my obsession with writing computer games. Thank you so much, Professor Pezzi!"
"Great overview of the game loop.
I really enjoyed my time on this course, I've used youtube tutorials in the past, but they try to cut corners or make assumptions like using platform specific tools that not only throw a wrench in the tutorial, but detract from learning the concept. Another pitfall is that the content is curried towards non-programmers. By using a SDL and C it really removes a lot of the friction that other tutorials have had and focuses on the structure and logic of the program. I really appreciate the approach taken here!"
"Very good course to learn the basics of Assembly, a lots of tips and tricks and very good teacher. I enjoyed it very much."
"tnx for this course, I learned a lot from him"
"Excelente. It is an excellent material about lua."
"Excelente curso. Ele mejor curso sobre este tema"
"Thank you. Couldn't find any solution to make smooth game loop anywhere. Thank you a lot"
"The best instructor I've ever seen."
"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."
"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."
"Very good. Nice explanation"
"I've been an online student of mr.Pezzi since I got his 'Create a 2D Game Engine with C++ & Lua' and 'Raycasting Programming with C'. Just wanted to check his 'Create a Simple Game Loop with C & SDL' tutorial and I was not disappointed.
Very clear on the subject and as usual he starts to tell the subject from scratch."
"A nice, quick taster of the world of games programming. In this course you'll learn all that's needed to create a basic game loop in the C programming language using the SDL2 library. It concludes with an exercise to develop your own skeleton Breakout game. Don't worry there's no vectors, matrices, transforms and other hard maths to get in your way. Learning with Gustavo is far more engaging than reading a book."
"Excellent Course. I'm currently learning to code and I'm learning C. I stumbled upon this course after I was looking for some real-world projects to try in C post my initial syntax studyReally enjoyed it and a real eye-opener on how games work under the hood. I will definitely try the raycasting course."
"Good course to review the knowledge. Just when I realised I need to check my bit shift knowledge found this course. Nothing new actually in the end, but I like they way how simple this course is. So good both for beginners and who wants to review his knowledge."
"simple, quick, to the point. was the quick refresh i needed."
"I really enjoy learning these topics. I have already taken other courses by Gustavo ... and really enjoy his teaching style. I am looking forward to the next one."
"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."
"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."
"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."
"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."
"Extensive. If you're starting out with diving into game development, this course actually has a few topics that are very interesting. SDL: First of all, they give you a good explanation of instaling and using SDL (for the 3 main OS'es) Game loop: They give you a tour of actually building the game loop from the ground up; All steps are clear and very small. You see it happening before your eyes. Makefile: if you were wondering about what a Makefile would be; He actually explains that too. Nice example: You end up with a basic skeleton of simple game; Break-out. Extra: He gives some extra information (-with- examples) how you can tweak it a bit. Quizes: There are a few quizzes, just to see if you got what he was talking about. The end-project: You get a almost final source code at the end, where he asks you to complete it; He provides the commentary in the source code to give you some pointers as to where yp need to look. He also supplies (his version of) the working code. (But do try to do it yourself) All the movies are reasonably short, and the whole Pikuma Platform remembers where you were when you come back. It is super helpful. This specific course is (was) free, but its quality is very high."
"Really great explanation"
"A quicky. A nice refresher, or introduction into bitshifting. They supply some examples where it is (was) used, and they conclude with an honest opinion about when to use it."
"Interesting and helpful.
This was a short but very helpful and interesting course on how a typical game works.
For me, it also served as a gentle introduction to C and SDL and the challenges were welcome as I'm exploring more about the game development topic."
"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"
"Just the teacher I needed. He taught way more than I thought I could learn this quickly. Thank you!"
"This was a really solid tutorial and it was for free!
Thank you very much for your time and clear explanations!"
"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!"
"A very good introduction to a fundamental concept in videogames.
This was the first time I've programmed a game "from scratch", I think the choice of C is interesting, I like the amount of control it gives you, and also how it forces you to think about how to make it run as fast as possible so you don't notice "lag" in the game, even with only 2 moving objects in 2D, you CAN make it slow"
"The explanation was very nice. Congratulations"
"Short and Sweet Intro to Bitshifting. The 1-hour lesson is very easy to follow and to the point. It's a great introduction to thinking about bitshift and bitwise operators without the unnecessary fear!"
"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."
"Very good course! Learned a lot. Thanks Gustavo for the great explanations."
"Very clear and nice for beginners"
"Fantastic cource. Learned a lot, not only about raycasting but also about c, refactoring and math."
"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"
"Awesome! Interesting things and well explained!"
"Fantastic Course! Everything was explained clearly and concisely."
"Extremely detailed and informative. This is a fantastic course explaining bitshift operations and definitely cleared up my misunderstanding of them thank you!"
"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!"
"This Course Great "Create a 2D Game Engine with C++ & Lua" 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."
"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."
"Great intro! A nice overview of the heart beat of any game: the main loop."
"It's the best course than I see!"
"It's the best course than I see"