2 ms·
If you're at all interested in the technical aspects or retro computing, I highly recommend Fabien Sanglard's Game Engine Black Book: Wolfenstein 3D: https://fa
by wernsey 3y ago
If you're at all interested in the technical aspects or retro computing, I highly recommend Fabien Sanglard's Game Engine Black Book: Wolfenstein 3D: https://fabiensanglard.net/gebbwolf3d/ https://fabiensanglard.net/gebbwolf3d/
The technical wizardry that went into making it fast went way beyond the raycasting graphics engine. There were all kinds of tricks used to speed up the engine:
One that comes to mind was compiled scalers - they basically JIT-compiled the code of an unrolled loop that drew each scaled vertical strip of a wall. That was why the game had to do some slow processing when you resized the view area.
Another one was that if two vertical strips were the same, they could be sent to the VGA card at the same time.
There were also a couple of tricks to speed up drawing sprites if they contained lots of transparent pixels.
I vaguely also recall seeing the "fizzlefade" effect discussed here a while back: When you die the screen is faded to red through a linear feedback shift register that touches each pixel on the screen once in a seemingly random way.
Kids today have it so easy with their Unitys and their Unreals... :P
The Black Book on Doom is also worth a read for comparison - it is quite remarkable how much the PC improved when 16-bit real mode was replaced by 32-bit protected mode and how different the design of Doom was from Wolf3D.