Here you can find development screenshots of the RayCaster engine, starting with the most recent and working back to the earliest.

Texture mapping!

This shot shows off the brand-new texture mapping code. Texture maps are always 64x64, but can be loaded from any file format and can be stored in 8-, 24-, or 32-bit depths. They are converted at startup into 64 vertical strips of 32-bit pixel data which can be scaled and drawn to the screen in an ultra-tight inner loop. Please disregard the ugliness of this temporary test texture; it's just there to help make sure everything is working properly. There's also a visible off-by-one bug in this shot that has already been repaired ;)

Heights and Y-Shearing

This shot was taken right after camera height changes and y-shearing were implemented in order to show off the new capabilities. Here the player is up near the ceiling and is looking down toward the floor. Note that in the internal coordinate system, the z axis increases as you approach the floor rather than the ceiling. You can also see the first application of the new font engine here, used to display the player position information.

Basic Ray Casting #2

This is the second basic shot, taken right after the initial working build of the ray casting engine. This shot better displays the fact that the hidden surface removal implicit in the ray casting algorithm is indeed working as it should.

Basic Ray Casting #1

This is the very first screenshot taken with the initial working build of the ray casting engine. This is just the position in which the player starts the test level.


Wow, ok, it's a bit better... maybe? I needed to double-check the use of some of those trig lookup tables, I think ^_^


Yeah, I'm not sure, but it's not quite working yet... (This is from a VERY early and VERY buggy build ;)

Copyright © 2004 James Haley - Best viewed at 800x600x16M.