Go to file
2023-11-01 16:13:18 +01:00
assets frames keep drawing independent of keypresses 2023-10-26 15:23:38 +02:00
getnextline updated libraries 2023-10-26 19:11:30 +02:00
libft updated libraries 2023-10-26 19:11:30 +02:00
maps optimizations 2023-11-01 16:13:18 +01:00
mlx initial push 2023-10-25 13:56:45 +02:00
src optimizations 2023-11-01 16:13:18 +01:00
.gitignore cleaned some stuff 2023-10-26 11:01:31 +02:00
cub3d.h optimizations 2023-11-01 16:13:18 +01:00
Makefile optimizations 2023-11-01 16:13:18 +01:00
Readme.md optimizations 2023-11-01 16:13:18 +01:00

Cub3D

Cub3D is a simple raycasting game using the mlx library


Todo

Parsing

  • Flood fill the map starting from the player to check if it is a closed map
  • Check if all needed elements are present in the closed part of the map

Bonus

  • Doors
  • Minimap
  • Animated Sprites

Extra

  • Help screen?
  • Levels?
  • Barrels?
  • Collectables
  • Enemies?
  • Moving Enemies?
  • Weapon Sprite that fires?
  • Zoom with right mouse button?
  • Skybox?
  • Sounds?
  • Music?
  • A Start Menu?
  • Jumping?
  • Crouching?
  • Vertical Aiming?

Features

Mandatory

  • Parsing .cub file for colors and sprites
  • Parsing .cub file for the map
  • Set floor and ceiling color based on .cub file
  • Set Player starting direction based on letter in map
  • Render walls by raycasting
  • Walk in 4 directions
  • Rotate with arrow keys
  • Directional textures

Bonus

  • Wall Collision
  • Rotate with the mouse

Extra

  • FPS counter
  • Player can walk in 8 directions
  • Player can Run
  • Map sizes up to 1 Megabyte (1000x1000)

Bugs

  • Player gets stuck in walls
  • Player walks twice as fast when holding W and A or W and D

Usage

  1. Simply clone or download the repository
  2. Run make in the cloned directory
  3. Start the game with ./cub3d

This project is part of the studies at 42