42 Cube3D#

A 3D raycasting engine project that implements a Wolfenstein 3D-style game engine from scratch. This project explores computer graphics fundamentals, raycasting algorithms, and real-time rendering techniques.

Cube3D Gameplay Screenshot 1

Cube3D Gameplay Screenshot 2

Overview#

Cube3D is a classic 42 school project that challenges you to build a 3D game engine using raycasting—a rendering technique that creates a 3D perspective from a 2D map. It’s an excellent way to understand how early 3D games worked and how graphics rendering algorithms function.

Features#

  • Raycasting engine implementation
  • 2D map to 3D perspective conversion
  • Real-time rendering
  • Player movement and camera controls
  • Texture mapping
  • Sprite rendering

Technologies Used#

  • C - Core implementation language
  • MinilibX - Graphics library (42’s minimal X11 interface)
  • Raycasting Algorithms - 3D rendering technique
  • Mathematics - Vector math, trigonometry for raycasting

Repository#

View on GitHub