You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
narnaud a4668526cb grab textures and colors 3 years ago
includes grab textures and colors 3 years ago
libft README and getline start 3 years ago
maps working gnl 3 years ago
mlx README and getline start 3 years ago
sources grab textures and colors 3 years ago
LICENSE Initial commit 3 years ago
Makefile working gnl 3 years ago
README.md grab textures and colors 3 years ago

README.md

CUBE3D

Subject

Resources :

Program life cycle :

  • map parsing :
    • read file,
    • extract walls textures,
    • extract sky and ceil colors
    • import map into array,
    • save player pos,
    • handle errors,
  • initialize env
  • generate window
  • display view
  • enable commands
  • react to commands :
    • calculate new pos,
    • display new view,
  • clean and exit

thoughts :

verify map validity :

The map must be closed with the player inside the walls.

  • calloc a 2D array as X size is the size of the longer line and y is the numbers of map lines.
  • set the array cells to 1 for floor, 2 for walls
  • outside cells will be zeros.
  • read line by line until you encounter first wall then turn around the map following the walls and never going on an already visited wall until you come back to starting pos.

initialize env :

  • required datas : initial player pov angle,
  • walls height
  • eyes positions from screen ( -> field of view)
  • calculate fov rays unit vectors,

display view :

  • calculate distance between player and intersection between rays and walls
  • calculate viewed height of walls for each verticle
  • draw walls, floor and sky