Перейти к содержимому

How DOOM Faked 3D on a 1993 PC

but how?

0:00 / 0:00

How DOOM Faked 3D on a 1993 PC

53 просмотра · 8 дн. назад
but how?
2 подписчика
53 просмотра · 8 дн. назад
In 1993, home PCs had no 3D graphics cards, and most couldn't even do decimal math quickly. Yet DOOM looked like a real 3D world. The secret: it wasn't 3D at all. On But How?, we explain how technology actually works. In this video we break down, with animations built from scratch in code, how the DOOM engine faked it: • a flat 2D map where every sector stores just a floor and a ceiling height ("2.5D") • drawing walls one vertical pixel column at a time • BSP trees: pre-sorting the world so walls come out nearest-to-farthest without per-pixel depth • fixed-point numbers and binary angles instead of floating-point math • the scars: visplane overflow and fixed-point precision limits Chapters 0:00 DOOM wasn't really 3D 0:32 Part 1: The problem, what's in front of what? 1:21 Part 2: The world is flat (2.5D) 2:19 Part 3: The big idea, BSP trees 4:12 Part 4: Math without decimals 5:22 Part 5: The scars, visplane overflow 5:55 Recap: the fastest code is the code you never run Sources • id Software press release, January 1993 (mirror): https://soulsphere.org/mirrors/www.rome.ro... • Doom Wiki: Doom rendering engine: https://doomwiki.org/wiki/Doom_rendering_e... • Fabien Sanglard: Doom engine code review: https://www.fabiensanglard.net/doomIphone/... • Two-Bit History: How much of a genius-level move was using binary space partitioning in Doom?: https://twobithistory.org/2019/11/06/doom-... All visuals in this video are original animations generated from code. No game footage, textures, or music from DOOM are used. DOOM is a trademark of its respective owners; this channel is not affiliated with id Software, ZeniMax or Microsoft. The 3D views are simplified illustrations rendered by our own code, not DOOM's actual renderer. Narration: synthetic (text-to-speech) voice. Music: original, generated. Next episode: we build a tiny version of this renderer from scratch. #gamedev #doom #howitworks