A retro style homage to 80s dungeon crawlers hand crafted in C++.
Find a file
2025-01-16 11:21:49 -05:00
assets Reworked the files before the big cleanup of the code. 2025-01-15 10:26:44 -05:00
scratchpad Reworked the files before the big cleanup of the code. 2025-01-15 10:26:44 -05:00
scripts First build that actually works. SDL_main errors before but didn't figure out the cause. 2025-01-02 11:47:02 -05:00
tests First build that actually works. SDL_main errors before but didn't figure out the cause. 2025-01-02 11:47:02 -05:00
wraps First cut at a replica of the python raycaster. Left side almost works the same but have to sort out math differences. 2025-01-04 12:20:41 -05:00
.gdbinit My gdb debug thing. 2025-01-13 13:39:12 -05:00
.gitignore First build that actually works. SDL_main errors before but didn't figure out the cause. 2025-01-02 11:47:02 -05:00
.vimrc_proj First build that actually works. SDL_main errors before but didn't figure out the cause. 2025-01-02 11:47:02 -05:00
dbc.cpp First cut at a replica of the python raycaster. Left side almost works the same but have to sort out math differences. 2025-01-04 12:20:41 -05:00
dbc.hpp First cut at a replica of the python raycaster. Left side almost works the same but have to sort out math differences. 2025-01-04 12:20:41 -05:00
main.cpp More cleanup, mostly removing variables and simplifying the math. 2025-01-16 10:32:28 -05:00
Makefile BREAKING: This code does NOT work, but has a segv on startup on windows due to ...magic? 2025-01-15 12:25:09 -05:00
matrix.cpp First cut at a replica of the python raycaster. Left side almost works the same but have to sort out math differences. 2025-01-04 12:20:41 -05:00
matrix.hpp Fenscaster is now using the first version of Lode's DDA raycasting algorithm but the coordinates/angles in the left map view don't matchthe right view, and the right view distorts the distance to far wall so they're viewed at 'infinity'. 2025-01-09 12:54:00 -05:00
meson.build Next step in the refactoring with everything in a different file and running. The bug from the previous commit was due to the pixel buffer making the Raycaster object too large for the stack. If you get __chkstk_ms then you used too much stack. 2025-01-15 13:39:38 -05:00
miniaudio.cpp Initial setup for the fenster based raycaster. 2025-01-08 10:25:17 -05:00
miniaudio.h Initial setup for the fenster based raycaster. 2025-01-08 10:25:17 -05:00
point.hpp First cut at a replica of the python raycaster. Left side almost works the same but have to sort out math differences. 2025-01-04 12:20:41 -05:00
raycaster.cpp Sprite rendering cleanup started. 2025-01-16 11:21:49 -05:00
raycaster.hpp Sprite rendering cleanup started. 2025-01-16 11:21:49 -05:00
README.md Add a README to start. Not much in it. 2025-01-05 10:10:11 -05:00
sfmlcaster.cpp Reworked the files before the big cleanup of the code. 2025-01-15 10:26:44 -05:00

Simple Raycaster Study

This is a study project for me to learn the raycasting technique. It's an older technique that's not really used much but I'm learning game dev historically and it's definitely been used in the past (Doom).

I've been told to look into the following as well:

https://en.wikipedia.org/wiki/Gilbert%E2%80%93Johnson%E2%80%93Keerthi_distance_algorithm