Skip to content

A "non-euclidean" raycaster written in cpp for my NEA project

License

Notifications You must be signed in to change notification settings

seksea/raycaster_cpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Non-Euclidean Raycaster

Screenshot

This raycasting engine was originally developed as my A-Level NEA coursework. It offers a unique approach to raycasting, allowing it to render rooms with a "non-euclidean" layout.

Get a release build of the game here

Features

  • Raycasting: The engine employs raycasting techniques to create a 3D rendering of the environment.
  • "Non-Euclidean" Room Layout: Unlike traditional raycasters, the rooms are structured as a series of rectangles that are interconnected in a tree. this means that the engine supports rooms with unconventional layouts, adding an extra layer of complexity and creativity to the game world.
  • Sprites: The engine includes sprite rendering capabilities, allowing you to incorporate interactive and visually appealing elements into your game.

Getting Started

To get started with the Non-Euclidean Raycaster, follow these steps:

  1. Download and install glut following this guide
  2. Clone the repository to your local machine.
  3. Navigate to the project directory.
  4. Open Raycaster.sln using Visual Studio
  5. Compile and build the project.
  6. Run the executable file to launch the raycaster.
  7. Explore the non-euclidean rooms, interact with sprites, and enjoy the experience!

Controls

Key Function
W/S Move forward/backwards
A/D Look left/right
Shift Run
Escape Toggle map-view

Contributing

Contributions to this project are welcome! If you have any ideas, suggestions, or bug fixes, please feel free to submit a pull request. Together, we can enhance this raycasting engine and make it even more impressive.

License

This project is licensed under the MIT License. Feel free to use, modify, and distribute the code for personal or commercial purposes.

Contact

If you have any questions or feedback regarding the Non-Euclidean Raycaster, please don't hesitate to reach out to me. You can contact me at [email protected]. I appreciate your interest and support!