- 18 hours on-demand video content
- Lifetime access
- Downloadable resources and exercises
- Certificate on completion
- Access on mobile and desktop
- Secure checkout via Credit Card or PayPal
- 14-day money back guarantee
- Last updated March 2023
$59.99
ENROLL NOW FREE PREVIEWThis course will teach you how to create a complete raycasting engine from scratch. We'll use an algorithm similar to the one used in Wolfenstein 3D. The final project will be coded using both JavaScript and C. It will implement player movement, 2D map view, 3D wall projection, textured walls, sprites, and other optimization techniques.
This course will be divided in two important parts:
1. The first part of the course uses JavaScript to cover the theory and the math behind the raycasting algorithm. JavaScript is a simple high-level scripting language that helps us not get too distracted with implementation details.
2. The second part of the course uses the C programming language to implement a compiled version of our raycaster, including textured walls and sprites. We'll also use C to discuss important optimization and performance aspects of our code.
You'll need a web browser that can run JavaScript and a small C compiler. All these tools are cross-platform, so you can follow along with either Windows, macOS, or Linux!
The Wolfenstein 3D raycasting algorithm we'll learn is heavily based on trigonometry, so make sure you have pen and paper ready for the lectures. I will make sure we review and understand every formula we find along the way!
This course has no prerequisites. We'll cover all the math and the code as we go along, so even beginners with no prior experience are welcome to join!
Other raycasting tutorials out there are either too long or overwhelmingly complex. This course tries to be as beginner-friendly as possible.
We never skip any of the math or any other implementation detail. Everything is always taught from scratch, and you get to see the code evolving line by line in front of your eyes!
Gustavo Pezzi is a university lecturer in London, UK. He has won multiple education awards as a teacher and is also the founder of pikuma.com.
Gustavo teaches fundamentals of computer science and mathematics; his academic path includes institutions such as Pittsburg State University, City University of London, and University of Oxford.
"Loved the course. Well delivered and very interesting."
"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."
"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."
"My review. Thanks for this course."