A simple RayCasting rendering tutorial for game development
Alternatives To Raycastingtutorial
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Web Dev For Beginners69,764
13 days ago76mitJavaScript
24 Lessons, 12 Weeks, Get Started as a Web Developer
5 days ago1March 24, 2020180zlibC++
Simple and Fast Multimedia Library
Flame7,8013124a day ago100August 19, 202294mitDart
A Flutter based game engine.
Fxgl3,161415 days ago22March 24, 2022113mitJava
Java / JavaFX / Kotlin Game Library (Engine)
12 days ago28mitJavaScript
A game for learning CSS grid layout 🥕
a year ago15mitC++
Third-person Survival Game for Unreal Engine 4 (Sample Project)
15 days ago2C++
Third-person Action Roguelike made in Unreal Engine C++. Project for Unreal Engine Pro C++ Course & Stanford University (CS193U)
Projectlearn Project Based Learning1,582
4 months ago7mitJavaScript
A curated list of project tutorials for project-based learning.
3 years ago1
A collection of good links for gaming with javascript
5 months agoMay 24, 20214mitGo
A Pac Man clone written in Go (with emojis!)
Alternatives To Raycastingtutorial
Select To Compare

Alternative Project Comparisons

RayCasting Tutorial

A tutorial repository for anyone who wants to learn how to render RayCasting like old 3D games!

-- Tutorial --


RayCasting is a technique to create a 3D projection based on 2D plane. This technique was used for old games when computers didn't have a good performance like today computers. You can find this rendering method in Wolfstein 3D that is considered to be the first 3D game ever. The game DOOM uses a similar technique known as binary space partitioning (BSP), but this tutorial is focused on the RayCasting implementation only.

Programming language

The programming language used for this tutorial is Javascript with HTML5. This was choosen because the ease of implementation and because this language has weak-typing, so this is fast to program in. The other rason for this language is that you will not need a lot of resources to execute your code, just a web browser. I recommend to use some IDE, like Visual Studio Code for coding.


The implementation is not so hard, but you have to know the basics of trigonometry, programming language, and graphical programming (canvas). For more details of pre-requisites, check the list below:

  • Javascript (Programming language)
  • Basic of Trigonometry
  • HTML5 Canvas


Click in this link to access the tutorial. This tutorial is in the Wiki page of this repository.


If you wants to contribute for this tutorial, suggest some fix, found something wrong or contribute to this project, please, open an issue in this repository and I will analyze it with great pleasure. Thanks!

Popular Video Game Projects
Popular Tutorials Projects
Popular Games Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Game Development