< Back


Anthony Sturdy

Raycaster



Summary

This project was a personal interest of mine which I explored in my own time. I have been interested in retro FPS games and the history of games for years, and was interested in learning more about how the rendering works for the original FPS games, which used Raycasting to achieve a "3D" effect. I followed a great tutorial by Lode Vandevenne, which does a brilliant job of explaining the workings of a raycast renderer. I expanded upon the tutorial slightly to add a few more gameplay elements and explore the game idea some more.

I used originally used vanilla SDL to render the game, but changed the project to use sdl-gpu later into development, which greatly increased performance and allowed me to use shaders. I used Shaders for experimenting with limited/retro colour palettes and dithering.

Features

  • Textured Raycasting
  • Ceiling/Flooring
  • Mouse Look and Player Movement
  • Sprite rendering
  • Shadow effect
  • Sliding doors
  • Scene modification (Placing/Removing walls, ceilings and floors)
  • UI
  • Dithering and retro palette post processing shaders

The development of the game can be followed by the video-tweets below: