Raycaster engine targetting 386DX and better
Just a tech demo of my raycaster engine.
Didn't finish in time to make an actual game with it, but here's a list of features:
I'd have to jump through a couple hoops to make it run acceptably on a 386. Still doesn't run "smoothly" on them, but I plan to continue working on it until it does. There's still a few long hanging fruits for optimization.
This uses all the tricks to get it to that point: Multi-plane VGA writes, runtime code generation and self-modifying code.
There are still a bunch of bugs and features left.
You'll need a DOS PC with a 386DX33 or better (486DX preferred) or DOSBox. It should run fine upwards of 9000 cycles in DOSBox.
Unzip the ZIP file and run the contained TRACER.EXE.
Really cool! Our first PC at home was a 386 SX 16. I still have it somewhere.
It contains quite a lot of features given the limitations!
Also … self modifying code, wow. (Though it always sort of bothers me that they put in barriers against that in more modern processors, at least in theory.)
One thing that bothered me though was the way the light-dropoff works. (Still looks a lot better/more impressive than wthout it!) Like there is a series of planes in front of you rather than it being spherical. It's not much noticable in narrow corridors, but if you have a lot of open space it can look a bit weird.