A history lesson
-              -
history of versions, Attack of the Blobeteers
---------------------------------------------


SQR(-2) BETA 1 - 6 / 4 / 2000

This was the first version publicly available. It didn't work. :(
I DID remember to remove legacy voxel cude BUT I forgot to update the EXE.
D'oh!

SQR(-2) BETA 2 - 6 / 15 / 2000

This fixed the legacy voxel problem in the previous version.
No other improvements/changes.

SQR(-2) BETA 3 - 6 / 17 / 2000

Only internal changes, except that there is more debug info on the HUD.
Originally lighting was stored in the map as 3 variables, red, green, and blue. Since the final lighting actually works by using my special hacked-to-death blender map and the final lighting VALUE ends up being (r + 6g + 36b) (Or, I'm WORKING IN BASE 6 for those who are paying extra attention) I decided that it would be easier to just store it in that form, native to the lighting calls, and I'd only have to pull it back out to r,g,b values in the subs that actually screw with the lighting. I would've done this before but I wasn't sure how to go about extracting the r,g,b values from the compiled value. Then it hit me that all I need are a few good base 6 shift-rights (divide by six), truncate (subtract previous value), and modulus! It works like this:

r = rgbvalue MOD 6
g = ((rgbvalue - r) / 6) MOD 6
b = ((rgbvalue - g) / 6) MOD 6

and, because the lighting need not be recompiled for every map block, there's a fairly hefty FPS increase, the map data is 8 kilobytes smaller, and a lot of ugly code has been eliminated! YAY!