This is the second graphics project at 42.
Cub3D is a team project at 42 that asks us to create a "3D" game engine with miniLibX. This project is inspired by the world-famous 90's game Wolfenstein 3D, which was the first FPS ever. The objective of this project is to deep dive into the mathematical concepts behind the ray-casting algorithm such as calculating distances, height, sprite locations and field of view to create a projection using primarily trigonometry.
- Rigor
- Imperative programming
- Graphics
- Algorithms & AI
Follow the steps below
# Requirements: X11 miscellaneous extensions library and Utility functions from BSD
# To install the dependencies, open the terminal window and write
sudo apt-get install libxext-dev libbsd-dev
# Clone the project and access the folder
git clone https://github.com/gialexan/42cursus-cub3D && cd 42cursus-cub3D/
# Run make so you can build the game
make
# Run the game with one of these maps as an argument
./cub3D assets/maps/rave.cub
./cub3D assets/maps/dust.cub
# Clean output objects with
make fclean
# Well done!
Game Controller Keys
Move player: W, A, S, D
Move camera: 🡠, 🡢 or slide mouse 🡠 and 🡢
Exit: ESC
The project is regularly updated with bug fixes and code optimization.
Made by:
Gilmar Alexandro Romani 👋 See my linkedin
Max Douglas 👋 See my github