sysprog21 / raycaster

Wolfenstein 3D-style raycasting implementation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

raycaster

An efficient and lean implementation of the ray casting algorithm.

Features

  • no operating-system required
  • no floating-point operations
  • no division operations
  • UART keyboard input
  • 8 x 8-bit multiplications per vertical line
  • precalculated trigonometric and perspective tables

Prerequisites

This work is built with ARM GCC and run with QEMU.

  • macOS: brew tap ArmMbed/homebrew-formulae && brew install arm-none-eabi-gcc qemu
  • Ubuntu Linux / Debian: sudo apt install gcc-arm-none-eabi qemu-system-arm
  • Arch Linux: sudo pacman -S arm-none-eabi-gcc arm-none-eabi-newlib qemu

License

raycaster is released under the MIT License. Use of this source code is governed by a MIT license that can be found in the LICENSE file.

About

Wolfenstein 3D-style raycasting implementation

License:MIT License


Languages

Language:C 87.0%Language:Shell 7.8%Language:C++ 3.4%Language:Makefile 1.6%Language:Assembly 0.3%