go-raycasting/README.md
kisekinopureya c0e448572e
All checks were successful
commit-lint / commit-lint (push) Successful in 50s
feat: add readme
2025-07-23 18:17:46 +03:00

1.3 KiB

Go Raycasting Engine

This is a simple raycasting engine implemented in Go using SDL2. It simulates a 3D environment similar to the rendering technique used in classic games like Wolfenstein 3D.

Features

  • Real-time 3D projection with raycasting
  • Movement and rotation controls
  • Multiple wall textures loaded from PNG files
  • Text rendering (e.g., FPS counter or debug text)
  • SDL2 rendering (no OpenGL or GPU shaders required)

Screenshots

screenshot

Controls

Key Action
W Move Forward
S Move Backward
A Rotate Left
D Rotate Right
F1 Toggle FPS Counter
ESC Exit Program

Requirements

  • Go 1.20+
  • SDL2 (development libraries)
  • SDL2_ttf (for text rendering)

Asset Licenses

  • DejaVuSans.ttf

From the DejaVu fonts project

License: Bitstream Vera Fonts License (Free to use, modify, distribute)

  • Wolfenstein 3D Textures

These textures are derived from the original Wolfenstein 3D game by id Software.

Note: The original game assets are not open source and are copyright © id Software.