Skip to content

42-abenoit/Cub3d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Final version of Cub3d project for 42.
This project aims at creating a clone of Wolfenstein3D by implementing a simple raycaster with a custom graphic library.

Linux version of minilibx (42 custom graphic library) can be found on github:
https://github.com/42Paris/minilibx-linux

Although a manual is provided, Harm Smits at Codam made a wonderfull work of documentation on this library:
https://harm-smits.github.io/42docs/libs/minilibx

The engine itself is a C adaptation of lodev's C++ raycaster:
https://lodev.org/cgtutor/raycasting.html

Instructions:
"make" creates a simple executable to showcase basic functionnality required for Cub3D project.

"make bonus" creates an alternate version of the program that includes extended functionnalities like vertical camera rotation, character animations or distance fog.

Execution:
Cub3D requires path to a valid map file with .cub extension as argument.
"ressources/maps" folder contains sample maps for both versions of the program:
-"map.cub" is compatible with the standard "make" executable.
-"ice.cub" showcases the bonus version with custom textures.

Controls (bonus version):
-Strafing can be done with 'Z', 'Q', 'S', 'D' (or 'W', 'A', 'S', 'D' on QWERTY keyboards).
-Camera rotation is bound to the arrow keys.
-',' (or 'M' on QWERTY keyboards) toggles minimap on and off.
-'R' sheathes and unsheathes woodaxe.
-'Left Control' triggers a strike when axe is unsheathed.
-'Left Shift' while strafing activates sprinting.
-'C' activates crouching.
-'Spacebar' triggers a jump.
-'Esc' exits the program.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published