cub3D is a project inspired by the legendary game Wolfenstein 3D. It is a first-person perspective maze exploration game that utilizes ray-casting techniques to create a dynamic view inside the maze. The goal of the game is to navigate through the maze and find your way out.
The following additional features have been implemented in the bonus part of the project:
-
Minimap System: The game includes a minimap that provides a top-down view of the maze. It helps the player navigate and keep track of their position within the maze.
-
Wall Collisions: The game handles wall collisions, preventing the player from passing through walls. This adds realism to the gameplay and enforces the maze boundaries.
-
Rotate the Point of View with the Mouse: This feature allows the player to rotate their point of view by moving the mouse. It provides a more immersive experience and enhances the gameplay controls.
To build the project, run the following command in the project directory:
make
This will create the cub3d
executable.
To run the game, run the following command in the project directory, specifying the path to the map file as the first argument:
./cub3d path/to/map.cub
For example, to run the game with the map.cub
file in the maps
directory, you would run the following command:
./cub3d maps/map.cub
Here are some free resources that can help you understand and complete the cub3D project:
- The miniLibX Documentation
- Lode's Computer Graphics Tutorial
- Raycasting Tutorial by Permadi
- Wolfenstein 3D Wikipedia Page
- Introduction to Raycasting (YouTube video by OneLoneCoder)
- So_long: So_long is another 2D game development project where the player controls a character to collect items and navigate through a map. It focuses on graphics management, event handling, and basic gameplay elements.
- GitHub: Ziko909
- LinkedIn: Zakaria Aabou
- Gmail: aabou.zakaria909@gmail.com