HOME

Raygen

Raygen is a performant and extensible 2D raycasting engine built in Java, designed for rendering dynamic environments with a classic pseudo-3D perspective. Utilizing the JFrame library for graphical output, Raygen implements an efficient raycasting algorithm to simulate depth perception, making it ideal for games, simulations, and educational projects.

Key Features

  • Real-Time Rendering – Uses a raycasting technique to generate a first-person perspective view.
  • Smooth Player Movement – Supports full 2D motion, and rotational movement via mouse movement.
  • Custom Input Handling – Implements an InputHandler class for responsive user interaction.
  • Scalable and Modular – Easily extendable for new gameplay mechanics, textures, and enhancements.
  • Dynamic Collision Detection – Utilizes a CollisionManager to prevent player movement through walls.
  • Customizable Settings – Allows adjustment of FOV, render distance, player speed, and collision tolerance via an in-game settings menu.
  • Easy Map Generation – Fully customizable map generation data provided by SVG files, provided by Maze Generator.