/cub3d

Getting to know raycasting. Creating 3d game 🎮

Primary LanguageC

cub3d

First-person 3D representation of a maze using raycasting, similar to Wolfenstein 3D 🎮 (1992).

install minilibx on linux or launch in directory

install guide

MiniLibX from Paris students

git clone https://github.com/42Paris/minilibx-linux.git && cd minilibx-linux && make

Manual install on Linux
install libmlx.a

sudo cp libmlx.a /usr/local/lib 

install mlx.h and mlx_int.h

sudo mkdir /usr/local/include/mlx/ && sudo cp mlx.h mlx_int.h /usr/local/include/mlx/

install man1 and man3 file

sudo cp man/ /usr/local/

edit header files in test/main.c and test/new_window.c <mlx/mlx.h> <mlx/mlx_int.h> <- your mlx.h path test for minilibx

cd test && gcc main.c -lmlx -lXext -lX11 -o test1 && gcc new_win.c -lmlx -lXext -lX11 -o test2

correct compile flags
gcc/clang -Wall -Wextra -Werror main.c/main.o -lmlx -lXext -lX11 -o start

launch in direcory
in file edit "../mlx/mlx.h" <- path to mlx.h

gcc test.c -L ../[Path to libmlx.a] -lmlx -lXext -lX11

thank you! ⭐

📌 usefull links

Coding time Video
video mvenmo part1
video mvenmo part2
42 docs Minilibx
mlx tutorial to create image
Lode's Computer Graphics Tutorial
Рейкастинг для самых маленьких: геймдев на реальных проектах
Пишем шутер от первого лица в консоли! Как работает псевдо-3d графика в играх?
cub3d - 42, в котором мы узнаем о Raycasting и пытаемся воссоздать оригинальную 3D-игру Wolfenstein
Немного про исправление рыбьего глаза
Легкая реализация куба