Raycasting Engine


This is a basic raycasting engine implemented in C++/SDL2. Currently, It's very barebones - it only supports orthgonal (textured) walls and static world entities. Due to rendering issues, I stopped the project after adding basic world entities.

Compiling & Running

  1. Install the necessary libraries:
  2. Use the included makefile (Linux) or build the source files in an empty C++ project within Visual Studio (Windows).


  • WASD: Move/strafe
  • Left/Right Arrows: Turning


As you may have already noticed, the wall textures in the test map were lifted from Wolfenstein 3D. This 1992 FPS was one of the earliest of its kind and thus makes a great example or reference for this kind of pseudo-3D rendering technique.