This project, inspired by the iconic Wolfenstein 3D game, is a first-person perspective maze exploration using Ray-Casting principles. Developed in C with miniLibX, cub3D challenges you to create a realistic 3D graphical representation inside a maze.
- Enhance skills in C programming, basic algorithms, and information research.
- Develop graphic design skills, including window management, color handling, and event handling.
- Explore practical applications of mathematics in creating efficient algorithms.
- Clone the repository.
- Compile the project using the provided Makefile.
- Run the executable with a map file in the format
*.cub
as the first argument.
- Use arrow keys to look left and right.
- Use W, A, S, and D keys to move through the maze.
- Press ESC or close the window to quit the program.
- Create a 3D graphical representation using Ray-Casting.
- Smooth window management.
- Display different wall textures based on the wall's facing side.
- Set floor and ceiling colors.
- Parse scene description from a
.cub
file. - Handle errors gracefully.
Bonuses are evaluated only if the mandatory part is perfect.
- Wall collisions.
- Minimap system.
- Doors that can open and close.
- Animated sprite.
- Rotate the point of view with the mouse.
- Original Wolfenstein3D game using RayCasting.
- Example of the project with mandatory features.
- Bonus examples with a minimap, floor/ceiling textures, animated sprites, etc.