Skip to content

cub3D is a 3D game engine inspired by the classic game Wolfenstein 3D. It is designed to render a maze-like environment and simulate a first-person perspective, providing an immersive gaming experience. The project is written in C and utilizes the MLX42 library.

Notifications You must be signed in to change notification settings

DeRuina/cub3D-Advanced-Raycasting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cub3D - Advanced Raycasting

cub3D is a 3D game engine inspired by the classic game Wolfenstein 3D. It is designed to render a maze-like environment and simulate a first-person perspective, providing an immersive gaming experience.

Features

  • Real-time 3D rendering of a maze environment.
  • First-person perspective movement and controls.
  • Collision detection to prevent walking through walls.
  • Customizable map system for creating unique mazes.
  • Support for texture mapping to enhance visual appeal.

Getting Started

Prerequisites

  • A C compiler (e.g., GCC or Clang)
  • Make build automation tool
  • MLX42 library for graphics and window management
  • GLAD library for OpenGL loading
  • lodepng library for loading PNG images

Installation

  1. Clone the repository with submodules: git clone --recurse-submodules https://github.com/DeRuina/cub3D.git

  2. Navigate to the project directory: cd cub3D

  3. Build the project using Make: make

Running the Game

After building the project, you can run the game engine with the following command:

./cub3D [map name]

Controls

  • W - Move forward
  • S - Move backward
  • A - Strafe left
  • D - Strafe right
  • Arrow keys - Look around
  • ESC - Exit the game

Custom Maps

You can create your own maps by editing the map files in the maps directory. Refer to the map documentation for the format and guidelines.

game_image game_image game_image

Acknowledgments

  • Thanks to the creators of the MLX42 library for providing the graphics backend.
  • Shoutout to the Wolfenstein 3D team for the inspiration.

Authors

About

cub3D is a 3D game engine inspired by the classic game Wolfenstein 3D. It is designed to render a maze-like environment and simulate a first-person perspective, providing an immersive gaming experience. The project is written in C and utilizes the MLX42 library.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages