Tech News
← Back to articles

Quake's Player Speed (2017)

read original related products more articles

In 1996...

We were in crunch mode working to get Quake finished. We had to establish a few guidelines to make sure the levels were next-gen, fast, and not too big since people will be downloading the game back during the early internet days.

We decided that map BSP files can't be bigger than 1.4 megabytes. The final complied state of a map was called a BSP file. So we had to make sure we stayed under that value. If a map got too big we had to delete some brushes and try to get the BSP under that size.

To keep the game fast we put a red flickering screen up when the polygon count for world polygons went over 350. Yes, 350. This was at the beginning of using polygons in an FPS and 350 was not too bad of a number back then. If the screen flickered at any time during play we would find the offending view and then start blocking off visibility with new geometry to keep the poly count low and the framerate fast. Also making sure to keep the size under 1.4 megabytes.

The QuakeEd tool that I made was not the best 3D level editor at all – not by a long shot. We tried to keep it as simple as possible because smoothly flying around in 3D space like cameras do nowadays was never done back then. We were figuring it out as we went.

So, QuakeEd made making 3D levels actually painful. We used a primitive called a "brush" that was a 3D rectangle we could drag out into the world and move around. Maps were completely made out of brushes.

There were only three views: a top-down line view, a sideways line Z-view, and a small, fully-rendered 3D view so we could see what the brushes looked like with textures on them. We could see if they were in the right positions.

There was an X that we could drag around and any brushes that were under the X were displayed in the Z-view. That's how we moved brushes up and down in the Z plane.