/mono-raycasting

A very simple raycasting engine created with MonoGame.

Primary LanguageC#MIT LicenseMIT

MonoGame Raycasting

A very simple raycasting engine created with MonoGame.

This is mostly an implementation of the DDA (Digital Differential Analyzer) algorithm that works with basic mathematical knowledge using very simple trigonometry.

preview

There is also an helper in the right-upper corner to help you visualizing the "rays" shot by the DDA algorithm.

Textures are ripped from Wolfenstein 3D.

Controls

Press the arrow keys to move the camera. You can also press F1 to enable the fisheye effect, and F2 to disable.

Limitation

This is a prototype, it's still a good way to learn how old games like Doom or Wolfenstein 3D worked. For now, there is a lot we can improve.

  • Improving collision of player
  • Adding textures for ground and ceiling
  • Fixing a bug on neighbour walls