doom turned thirty

This commit is contained in:
Wouter Groeneveld 2023-12-11 10:35:46 +01:00
parent 449a04c70d
commit 143c5c5b3d
3 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,42 @@
---
title: "DOOM Turned Thirty"
date: 2023-12-11T09:45:00+01:00
categories:
- retro
tags:
- doom
- geforce
---
Yesterday, the video game DOOM turned thirty. On 10 December 1993, John Carmack, John Romero, Sandy Petersen, and the rest of the id Software crew completely changed the world by releasing the most violent and satisfying DOS shooter ever created. Hundreds of so-called "DOOM clones" followed, frantically trying to join in on the cash grabbing fun. Several controversial lawsuits and political statements were made (and dismissed and resurrected) because of all the gore.
But DOOM was more than a grown-up version of id's previous first-person shooting attempt, Wolfenstein 3D. DOOM was also a technical masterpiece, mainly thanks to Carmack's knack for implementing optimization techniques after sifting through academic papers on cutting edge computer vision rendering algorithms. Yet, if we compare screenshots of 1993's DOOM, thirty years ago, with the latest installment of the franchise, 2020's DOOM Eternal, you'd think the latter comes from an entirely different universe:
![](../doom.jpg "DOOM (1993), rendered on the Nintendo Switch.")
Compare that pixel gore to this picture-perfect rendering of an outside scene in Eternal:
![](../doom-eternal.jpg "DOOM Eternal (20020), rendered on the PC.")
The depth of field and quality of the texture work is amazing. I even cheated by including a DOOM port, recently re-released for the Nintendo Switch, meaning the first screenshot's decorated black borders weren't there because of the odd 4:3 VGA resolutions back in the nineties, and the unusual crispness of the pixels need to be blurred drastically if you want to imagine how it was like playing DOOM in DOS [on the 80486](/post/2020/09/reviving-a-80486/).
My 486-66 MHz has `8 MB` RAM and a Cirrus Logic VLB VGA card with a whopping `1 MB` onboard RAM. With that, I'm able to play DOOM at 10 to 15 frames per second. By today's standards, we'd call that _choppy as heck_, but back in the day, we were simply happy to be able to run something like that. [DOOM Eternal's recommended specs](https://help.bethesda.net/#en/answer/49836)---to be able to run the game smoothly at nowadays standard 60 FPS for shooters---you'd need an i7 core, `8 GB of RAM`, and a GeForce GTX 1080 with `8 GB` onboard RAM. Oh, and `50 GB` of disk space. From megabytes to gigabytes (multiply by around _a thousand_!) in thirty years in terms of pluggable memory doesn't sound like much, but then we ignore all kinds of other crazy technological advancements:
- From VLB (or even ISA!)-buses to super-fast PCI-express slots;
- From simple SDRAM to super-fast DDR5 memory chips;
- From relatively simple single-threaded CPU architectures to very complex multi-cores with several additional layers of caching;
- From low-level DMA and VGA programming directly in C to high-level configuration done in specialized tools;
- From pixel art by a one or two dedicated artists to 3D texture and modeling work done by multiple specialized teams;
- From analog VGA---that was very new in '93---to digital 4K HDMI;
- From keyboard-only controls without jumping mechanics to laser-precision mouses with extreme maneuverability;
- From local HDD installs to streaming media requiring a permanent and fast internet connection;
- From early dail-up modems to broadband WiFi speeds;
- ...
It's just crazy what can happen in "just" thirty years in the computing world. DOOM seems to perfectly exemplify the technological revolution of the last three decades, and I do wonder what's next for the coming three ones. In 1993, I was eight years old, so I grew up with that old stuff---and, thankfully, without the existence of a smartphone permanently connected to 4G. Since we have our daughter, we do worry more about the future of tech. When she's eight, I the unified Mac M5 chip might be the standard, and the above DOOM Eternal screenshot will probably look even more hyper-realistic. She'll grow up with that, like I grew up with the pixelated first screenshot. What will be in store for her for the coming thirty years?
I hope she'll be able to enjoy most of the enhancements as much as I did when I grew up, but I highly doubt she will. Not because of a lack of interest---that's her choice to make, not mine---but because of the ever-increasing complexity in these hardware and software systems. I can understand how a VGA signal works when you give me a schematic and I'll probably be able to program something for it. I can understand single-threaded CPU architectures and can probably write assembly or an emulator for it. But I have a lot of trouble understanding the internals of the digital 4K HDMI/USB-C output port, and even if you give me three months, I will never grasp even the basics of what's under the hood of modern CPU chips. That's a shame.
In that sense, I'm a bit worried that we're over-engineering everything just _because we can_. Something that a single person could understand in 1993 now requires a dedicated team with ten years of experience. I have made simple sprite-based games in my free time, and even implemented a raycasting FPS engine with some DOOM '93 similarities, but I have no hope of ever understanding the technical details of DOOM Eternal, let alone building something like that from scratch.
DOOM Turned Thirty, and I am mourning the loss of simple, relatively easy to understand, hackable technology that's inside the laptop I'm writing this on.

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB