https://github.com/mbah24-dev/cube3d
My Cub3D 42 project
https://github.com/mbah24-dev/cube3d
Last synced: 5 months ago
JSON representation
My Cub3D 42 project
- Host: GitHub
- URL: https://github.com/mbah24-dev/cube3d
- Owner: mbah24-dev
- Created: 2026-01-20T01:32:54.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-01-20T02:19:33.000Z (5 months ago)
- Last Synced: 2026-01-20T08:57:17.358Z (5 months ago)
- Language: C
- Size: 159 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
cub3D
Author: BAH Mamadou
Status: Student in common core at 42 School
Project Overview
cub3D is a 42 school project that aims to develop a basic 3D game engine using the
raycasting technique, inspired by classic games such as Wolfenstein 3D.
The project is written in C and uses the MinilibX graphical library.
Features
- Raycasting-based 3D rendering
- Keyboard input handling for movement
- Texture rendering for walls
- Sprite rendering
- Collision detection
Installation
To compile and run the project, you need:
- Linux or macOS
- GCC compiler
- MinilibX library
Compilation
Clone the repository and run the following commands in the terminal:
git clone <your-repo-url>
cd cub3D
make
Usage
After compilation, run the executable with a map file as argument:
./cub3D maps/example.cub
Controls:
-
W - Move forward -
S - Move backward -
A - Turn left -
D - Turn right -
ESC - Exit the game
Project Structure
-
src/- Source code files -
includes/- Header files -
maps/- Example map files -
Makefile- Build script
Documentation
All functions are documented using Doxygen style comments. You can generate
documentation by running:
doxygen Doxyfile
License
This project is open-source and free to use for educational purposes.
Contact
If you have questions or suggestions, contact me: BAH Mamadou