Tracer (Engine Techdemo)

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:

  • Runs in DOS
  • Requires a 386DX33 or better with a somewhat decent VGA card
  • Requires 4MB of RAM
  • Diminished lighting/fog
  • Textured floor
  • Texture skybox
  • Different textures per tile side
  • Simple sprites
  • Different screen sizes for different CPU speeds (press Q/W to switch size mid-game)

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.

How to Run:

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.

Comments (5)

 • 3 years ago • 

Nice, works very well on DOSBox, and looks great. Waiting for the game now ;-)

At first I thought the "Space for HUD" is a hint to press space, but then it dawned on me.

By the way, it crashed (Divide by zero) when I got near one of the sheep.

 • 3 years ago • 

I love it! It works really smoothly for me (except for the aforementioned "divide by zero" bug). Am I the only person who thinks it's a bit creepy? For me it would make a great start to a horror game :D

Also, hugely impressive that it works on a 386. You should be very proud :)

 • 3 years ago • 

A technical marvel, let down only by the sky box rotating at the wrong speed.

This is a super impressive engine and I hope you don't abandon it. That menu has some ambitious options listed, it would be great to see them realised. Starts up fastest of all DOS entries, well done!

  • 3 years ago • 


Yeah, I've seen teh div by zero bug before, it'll be a pain to debug. I think it's caused by the self-modifying code.

 • 3 years ago • 

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.

Login to comment


DOS Package