Skip to content
edfortePublic

About

Wolfenstein 3D-style raycasting engine in C (MiniLibX) with doors, minimap and mouse look - 42 project

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

63 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cub3D

A Wolfenstein 3D–style first-person raycasting engine written from scratch in C with the MiniLibX graphics library. Project of the 42 Common Core, built in a team of two: SimoneFelici and EdoardoForte.

trailer.mp4

Features

  • Raycasting renderer based on the DDA algorithm, with textured walls and floor/ceiling colors
  • Robust .cub parser: textures, RGB colors, map validation (closed walls, single player, valid characters)
  • Smooth movement and rotation, wall collisions
  • Bonus: interactive doors, minimap, HUD and mouse look
  • No memory leaks: every resource is freed on exit or error

Build & run

Requires Linux with X11 development libraries (libx11-dev, libxext-dev, zlib1g-dev).

make            # mandatory part
make bonus      # doors, minimap, HUD, mouse
./cub3D maps/good/dungeon.cub

Controls

Key Action
W A S D Move
← → / mouse Rotate the camera
E Open / close a door (bonus)
ESC Quit

What I learned

Raycasting math, fixed-step DDA traversal, texture mapping, event-driven rendering loops, and splitting a large C codebase into a clean parser / engine architecture with a teammate.

Game assets by Hajer.

About

Wolfenstein 3D-style raycasting engine in C (MiniLibX) with doors, minimap and mouse look - 42 project

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages