Casting Wolf3D-style Rays with an FPGA and Arduino

   |   33 minute read

By dormando

Classical raycasting engine using embedded microcontrollers and FPGAs.

This project pairs a standard arduino (ATmega328) with a small Field Programmable Gate Array (ICE40LP8K) on two small boards, outputting to a 320x240x16bit SPI LCD. Using a mix of C and Verilog for implementation.

This post walks through the separation of duties between the Arduino and FPGA, optimizations to the raycasting algorithm, and other details. It doesn’t assume prior knowledge of FPGA’s or Verilog, but reading some links along the way will make it easier to understand.

Page 1 of 1
© 2019 dormando. All Rights Reserved.