Tap to unmute

Why Doom is Awesome: Binary Space Partitioning

  • Published on Jan 29, 2023 veröffentlicht
  • GamingGaming

Comments • 1 861

  • ShreddedNerd
    ShreddedNerd  4 months ago +561

    This video was a kind of research project for me, and I appreciate your kind comments. In response to a couple of comments and things I've read, I need to make a few statements:
    - I apologise profusely for the use of texture filtering in Doom.
    - I'm aware that explaining triangles and planes is kind of obvious.
    - I described recursion as a process repeating itself until an end is reached. This phrasing might give the wrong impression to some viewers. In programming, a recursive function is a function which calls itself.
    - When I say "Raycasting means you’re able to draw only the surfaces which are in the players field of view", a better way of phrasing this would be "Raycasting grants you the ability to draw only the surfaces which are visible to the player".
    - To the general audience, a 'float' data type is precise, in that it allows you to store small decimal numbers. This can be misleading. In programming, a float is quite imprecise as opposed to, say, a double.
    - Some of the details of the axe and door story may be hazy.
    - Apparently green and pissed wasn't ever a working title for Doom. It was the name of a pre-Wolf 3D game.
    - Doom did not use affine texture mapping.
    - A lot of 3D games following Doom didn't use it's BSP system. They often used different methods like portal based rendering. They still, however, used a BSP data type. Why? I'm not sure. That's why I'm lead to believe they have some extant features from Dooms BSP system. Could be an avenue for further research(unless somebody else already knows?).

    • Cad Delworth
      Cad Delworth 12 days ago +1

      @Mister Guy BINGO, that was it, the stairs!

    • Mister Guy
      Mister Guy 12 days ago

      @Cad Delworth Yeah, you are misremembering. The original Doom games (Doom, Doom 2, Heretic, Hexen) had angled walls but flat floors and ceilings. There was a place in the first episode of the original Doom where there were some walls that lowered as you went up some stairs, and if you were slow they would rise back up and you had to go back down the stairs to trigger them again. Maybe you're remembering that.

    • Cad Delworth
      Cad Delworth 12 days ago

      @KlaxonCow Well, I believe that actually, 616 (not 666) is 'the number of the Beast,' but I applaud your sentiment!

    • Cad Delworth
      Cad Delworth 12 days ago

      @Mister Guy Admittedly it's been years since I attempted to play _Doom_ (and I never finished it, even with a complete printed map AND ALL 'cheats' turned on [!]), but I'm sure I remember a place quite early on, (?2nd level) where you had to run up a 'ramp' FAST to a door, before it closed on you. Pardon my ignorance, but is that 'ramp' different from an angled floor? Or, am I mis-remembering this?!

    • Splunk
      Splunk 22 days ago

      Well done on that non-binary tree comment 🤣

  • Thomas Tarbin
    Thomas Tarbin Year ago +1874

    Thank you John Carmak, your programming and door smashing abilities are appreciated to this day

    • gorillaau
      gorillaau 2 months ago

      I feel sorry for the early demise of the door.

    • Rei Gon
      Rei Gon 2 months ago

      modern era walt disney what an icon

    • michael pecukonis
      michael pecukonis 2 months ago

      He touched me once. He said if I told anyone he would kill me with his hang on wall weapon collection. I'm not mad. He was a true genius even if he was abusive.

    • dav ep
      dav ep 3 months ago

      @Mark Wilson E.g. Dennis Ritchie.

    • Druman19
      Druman19 4 months ago +1

      @DavidDDavidsonSA That's so awesome, hahaha.

  • M B
    M B 4 months ago +341

    I like the smokes and mirrors used in old technology to make things work. You’re not just throwing ressources at a problem, you’re actively trying to solve it.

    • kris reddish
      kris reddish 8 days ago

      Smoke and mirrors? Sure why not. Tricks to make illusions work. The the new first person stuff still uses many tricks. Like the use of normal maps straight out a research paper from the 70s with added tricks up the sleeve. Humans use tricks to though to see stuff like 3d textures. It is not like the word looks 2d with one eye. Your brain fakes depth perception to figure out edges by matching out the scattering and gradient from edges or curves. Sorta like how bump mapping is used with normal maps. We have smoke and mirrors built into our reality to draw from.

    • cixlo
      cixlo 12 days ago

      The smoke and mirrors got smokier and mirroirer....
      Snow drop, id tech 6, frost. These engines are using the most advance math ever.

    • Marcos Danilo
      Marcos Danilo 12 days ago +1

      not just solve it, but solve it with the minimal amount of resources possible.

    • Genital Grinder
      Genital Grinder Month ago +1

      That's exactly why I prefer older games even though I grew up with N64 and beyond. Games from the mid 90s and before were much more difficult to make than games of today and there were many limitations that they had to work around. Now you can just do whatever you want and I think that hinders creativity in a lot of ways.
      EDIT: what I mean is, try programming a game in 6502 today in 2022 by yourself or with 3 or 4 people and see how difficult it is to make a game that isn't super basic.

    • Tomos Halsey
      Tomos Halsey 2 months ago +3

      Once we hit the upper limits of scaling down technology games will have to once again become efficient.

  • SmartK8
    SmartK8 4 months ago +231

    It's also insane that Carmack was able to find the scientific paper amongst many in at that time, understand that it can be actually adapted for a game, and then be able to use it.

    • eran
      eran Month ago +11

      Especially considering that many papers about algorithmic geometry are very theoretical, meaning they may be correct mathematically but can be incredibly hard or even impossible to implement correctly and efficiently in discrete computing. Talking out of experience.

    • Jay Kay
      Jay Kay 2 months ago +13

      Basically it comes down to how exntensive your knowledge is of maths. With the exception of polygon, everything mention is literally a mathematic: binary, linear, trigonometry etc etc. so carmack knew the math involved but didn’t know if there were an off the shelf solution which he could use and adapt.
      Maths is my weakest link… I attempted open gl programming back in my uni days and it just flew over my head. Just as this video does. Either you’re a math wiz or you aren’t.

    • MrBratkenSolov
      MrBratkenSolov 2 months ago

      **retarded gen Z noises**

    • SmartK8
      SmartK8 3 months ago +55

      @kapsi I'm a proud owner of a library card for longer you even exist. You still have to know what book/paper you want to borrow, then you have to translate the included math into an algorithm, and moreover select one that is relevant to your problem. You won't fucking find a Doom algorithm in a The Catcher in the Rye.

    • kapsi
      kapsi 3 months ago +23

      Imagine people even found books in libraries without Google? Absolutely insane

  • Ryan Bissonnette
    Ryan Bissonnette 4 months ago +37

    As a hobby game programmer, Im glad to see someone defining the basics real quick for the newbies out there. Programming can be such an elitist world sometimes. Seeing harmonious support like this is nice.
    Also, it seems like graphics innovations get forgotten so easily over time, but gameplay innovations last forever. ( yet people are so addicted to graphics... )

  • Robby Neale
    Robby Neale 4 months ago +109

    Naylor taught game programming at UT Austin when I went to school there. I was in love with Quake and was so excited to be taught by the author of the BSP trees paper. After first talking with him, I took his 101 course and sat in on his 201 course concurrently, doing the 201 projects for my 101 class. None of my friend understood the extreme honor I felt to learn about bsp trees from Naylor himself. It was an exciting time for me.

    • romerogoon
      romerogoon Month ago +3

      @Robby Neale nice one, well done! Good luck in the future!

    • Robby Neale
      Robby Neale Month ago +7

      @romerogoon software eng. Never really ended up in game dev... closest thing was a q4 mod that never got popular. Currently at Google - work on natural language ML.

    • K B
      K B Month ago +7

      Thats like studying kung fu under Bruce Lee. Congrats to you.

    • romerogoon
      romerogoon Month ago +6

      Man that's cool. I've had lectures from people who are outstanding in their field, and it always surprises me how "normal" they are when talking about the stuff they know about.
      Out of curiosity, what did you go on to do?

  • Cilleyperson
    Cilleyperson 3 months ago +51

    Carmak is certainly one of the most amazing individuals geniuses during the rise of the PC gaming generation. He and Romero’s work will live on in gaming lore for generations to come.

  • Emanuele
    Emanuele 4 months ago +117

    It's 30 years that I play the original version from time to time... it's just perfect

    • M Figs
      M Figs 29 days ago

      I highly advise the vr mods for both Doom and quake to both of you. Both felt like religious experiences for me.

    • svankensen
      svankensen 4 months ago +11

      It's so insane that you can play it in a website. Used to play it in college classes.

  • danin900
    danin900 4 months ago +26

    Doom is such a ludicriously important game it's honestly kind of crazy how ahead of the curve it was back in the 90's.

    • Steven A010
      Steven A010 25 days ago

      @Jenny Talya True technical (e.g. graphical details and good audio engine) crysis was ahead but that's it.

    • Jenny Talya
      Jenny Talya 25 days ago

      @Steven A010 Crysis didn't do much compared to Doom. Design philosophy, sound design, visual design, everything in Doom was cutting edge and incredibly influential. No other game looked or played like it at the time of it coming out. Crysis' game design was primitive, generic and pedestrian by comparison and didn't break any new grounds beyond physics simulation and the glaring graphical advancements.

    • Steven A010
      Steven A010 Month ago

      crysis in 2ks

  • PeBoVision
    PeBoVision 4 months ago +19

    This was such an overdue homage to John Carmac and his early accomplishments.
    You've outlined and explained the coding evolution of 3D in a way that was clear and easy to understand. (a markerd improvement over slogging through early 80's techpost blogs).
    Well deserving of a subscription. Kudos.

  • Anthony Perkins
    Anthony Perkins 3 months ago +18

    Thank you John Carmack- not only did I play Doom on coop with my dad back in the day; but had the exact same blast playing coop with my son decades later- the gameplay is still superb. After the Fall on VR is the closest I’ve come to loving a game so much since Doom. A masterpiece.

  • RER
    RER 24 days ago +2

    When Doom was released, the thing that amazed me most was - you could "go outside" and it had its own background that "acted right".

  • Daddelbox
    Daddelbox 26 days ago +1

    After watching this video I really can imagine how the set of stairs with the armor on the top in Doom's first map is an impressive technical showpiece. It's strange how we can forget how revolutionary this game really is.

  • Carlos PC
    Carlos PC 3 months ago +3

    For programmers interested in knowing more: Bisqwit made a really nice video on how the DOOM rendering works and a reimplementation in Basic and C.
    Look for it as "Creating a Doom-style 3D engine in C".

  • BuyMyBeard
    BuyMyBeard 3 months ago +4

    Very informative video! I do have a problem with calling a float a _very precise decimal number_ when you take account that doubles exist (64 bit instead of 32) and that floats have to approximate the value of most numbers, for example a number as simple as 0.2

    • Night Fox
      Night Fox 25 days ago

      I just gave him the benefit of the doubt that he was speaking from the point that they didn't have doubles back when Doom was first developed.

  • irøn
    irøn Month ago +2

    I’m 49 and been into FPS games forever. My first one was “Battlezone” on Atari 2600 in 1982. My “pinnacle” was playing professional PUBG Mobile in live tournaments for team “Gold” in Bali.
    I remember playing very early Doom on my cousins computer in the mid 90’s.

  • jpVari
    jpVari Month ago +2

    I've known how special he was since reading Masters of Doom at a young age. still one of my favorites. Thank you John Carmack! you changed everything.

  • Tony Nussbaum
    Tony Nussbaum 4 months ago

    Thank you, John Carmack. I remember a friend of mine explaining Doom to me in 4th grade and the concept was just beyond me. My only conception of video games at the time was NES and SNES games. I spent the night at his house and we played DOOM all night long, scared shitless. I was permanently corrupted. Seriously, thank you John Carmack!

  • Micah Phillips
    Micah Phillips 3 months ago +4

    Loved this, and I really appreciate your hard work here. Not sure why it just now popped up in my feed. Went to school to make games and while I do enterprise coding instead today, I still like to hit it up on the side. Carmack is STILL a legend and I loved your accessible deep dive you mad here.

  • MurderMostFowl
    MurderMostFowl 3 months ago +1

    Great video! One tiny nitpick about Doom’s shareware model. By the time Doom had to come out, The shareware model was not about getting software to a large variety of computers. After all, Doom could not be played on anything less than a 386DX 40 and really only shined on 486s. They were seeking folks with pretty top end computers at the time. ID was just a small studio and would never have the retail presence that big companies like EA, Origin, Sierra, Westwood etc. They, like their peers Apogee and later 3D realms had great success with the try before you buy model. PC games had a lot of shovelware out there and trusting a lesser known studio was much easier if you had a playable demo

  • Sir Caco
    Sir Caco 4 months ago +4

    Thank you John Carmack! Who knew such badassery would owe its existence to math. You've been a treasure to this industry, brother!

  • Will Lucas
    Will Lucas 4 months ago

    Thank you John Carmack! I remember playing the Doom shareware when we got our first computer. I was in 4th grade and that was the most amazing thing. My brother and I absolutely loved Doom and then Doom 2. Great memories all around. I still know the cheat codes!

  • surject
    surject 4 months ago +177

    You can't imagine how amazing those days were for a 14y old. In late 1993 my mind was blown multiple times. September: Jurassic Park, October: 2nd Reality by Future Crew, December: DOOM by id Software - _thank you John Carmack_. After that I knew the PC was here to stay and the following years will only get better. BBS warez/demo scene, 3DFX, Fast Tracker 2, the PSX, CD burners, 3DStudio4, SGI, Alpha RISC, Linux, MP3 and one awesome game after the next ... 1993-1997 were awesome.

    • surject
      surject Month ago

      @trunkafunk Yeah, also Pierce Brosnan fooled us :(

    • trunkafunk
      trunkafunk Month ago +1

      i remember playing descent and thinking WOW this is cool, and VR must only be a few more years out.. hahah

    • prolamer7
      prolamer7 Month ago

      1985-2005 +- were awesome

    • Paul s
      Paul s Month ago +1

      It's crazy to believe I only caught the tail end of the magic. I was born in 89, so I was too young to truly respect doom. The first fps game I ever played was in 1995 and was heretic and doom 2. By late 1999 my dad got into building pcs. It was there I got to discover 3dfx and played quake 3 first, the quake 2 and unreal tournament. It was then I could truly appreciate the magic for that last short blip of time before 3dfx went defunct. For me the last big highlight was 2004 with th big 3: doom 3, half life 2 and far cry. Then everything degraded to meh Villle. I guess maybe crysis in 2007, but anymore I view crysis as a meme and not something great like the 1990s was.

    • Ben Smith
      Ben Smith 2 months ago

      And now the mp3 codec is fully patent-free. They've all expired, so now they're cheap hardware modules.

  • Jack - SecITGuy
    Jack - SecITGuy Month ago +1

    Thank you John Carmack, as an IT guy and gamer...I am really appreciating you diving into the actual code architecture, including the history. Thanks

  • Michael B.
    Michael B. Month ago

    Really cool stuff, thank you! Fascinating to see how far back the origins of modern graphics goes.

  • Marsharoni
    Marsharoni 2 months ago +2

    Just to note, not every sprite was created from photographs of custom sculptures. Some are photographs of various other objects, for example many of the weapon sprites being toy guns and the fist being a photo of one of the developer's hands. I believe a few were also completely hand-drawn such as Doomguy himself and the range of zombie enemies. I think my personal favorite goes to the Pinky, with legs being taken from a Jurassic Park dilophosaurus action figure and combined with a custom drawn torso.

  • Just Stated The Obvious

    Thank you, John Carmack.
    And thank you, for the ridiculous amount of research and careful presentation. Yeah, mistakes still got through, but demanding corrections and stickying them is legitimate journalism. Wish more people took that kind of action. Usually, it's just apathy or someone desperately trying to score cheap points on their critics.

  • Dylan Presi da Fonseca
    Dylan Presi da Fonseca Year ago +248

    The hitboxes do have vertical values. It's the renderer that breaks when you angle the camera upwards, so the game uses auto aim instead.

    • Smokecall
      Smokecall 4 months ago +2

      Anyone curious about how DooM handles vertical height, check out decino's yellow background videos on that topic

    • PhoenixBird9000
      PhoenixBird9000 4 months ago

      @Marshall's Weather & Hiking I think you pretty much just restated what I previously said. 🙂

    • Marshall's Weather & Hiking
      Marshall's Weather & Hiking 4 months ago

      @PhoenixBird9000 Enemies and projectiles had vertical hit detection. A vertical auto-aim feature activated whenever an enemy was horizontally centered in your viewfield. It was most obvious that the rocket launcher relied on vertical hit detection, but I’m pretty sure all the weapons did. The shotgun fired 10 or more randomly spreading fragments as you would expect, and the envelope would adjust up or down when an enemy was directly your sights. It was true that it was impossible to “fall over” enemies on a ledge below you. I think this was done simply to prevent having to deal with glitchy mechanics of walking on top of enemies. Even modern games can be funny with vertical interaction.

    • CykeOk
      CykeOk 4 months ago

      @PhoenixBird9000 D;

    • Richard G
      Richard G 4 months ago +1

      @Kylie H yeah, melee attacks are calculated in 2D. Imps can claw you from the top of lifts if you stand at the bottom as well.
      I think this was another optimisation purely based on it not being a very common situation, but the fix for it would be pretty simple: just check the player and monster's hit boxes overlap on the z-axis, and only apply damage if they do. Should be a fairly trivial check actually given Doom already has the hitboxes and Z information available.

  • Jeffrey C. Pelletier
    Jeffrey C. Pelletier 4 months ago

    absolutely amazing video. to add to it, this is the first of i've heard of john carmak, his cornerstone-level programming [integral] , and the rich history of his/our[human} progress in such a cerebral field. blown away.

  • Michael King
    Michael King 3 months ago

    John's work in virtually reality has been just as impressive, I salute the man!

  • Wilhelm Bittrich
    Wilhelm Bittrich 4 months ago +1

    Thank you, John Carmack. You made my childhood a truly special one with these games. Endless hours spent playing them, and I still enjoy occasionally playing them again now. The games are timeless!

  • SmilingBob
    SmilingBob 3 months ago +1

    Catacomb 3-D, a title developed while the founding members of Id Software were still at Softdisk, ticks a of the features you cited Hovertank as lacking (e.g., character portrait etc.), and predated Wolfenstein 3D by about a year.

  • Alien Soup
    Alien Soup 5 months ago +768

    The programming technology wasn't the only thing genius about DOOM. The level design, gameplay mechanics, art direction, character animation, sound effects and music was also inspired, so everything combined to create a unique, and captivating experience. It still hasn't gotten old.

    • I'mEverywhere AndNowhere
      I'mEverywhere AndNowhere Month ago

      @Bob Yes as weird as that is.

    • Bob
      Bob Month ago

      @I'mEverywhere AndNowhere even HDoom?

    • EvShrug
      EvShrug 3 months ago

      @Chris R it’s possible he didn’t see the game till a few years after it released. I saw Marathon before I saw Doom, because my dad felt a powerful Mac would be a good business tool (and as a 37 year old dude, he thought what was evolving in the gaming world in the 90’s was so cool he just had to get Marathon, Myst, and a few other things at that time, where gaming wasn’t that widespread yet).
      Edit: we didn’t invest in a laptop, I shudder to think of the expense! If I remember right, at one point my dad bought a $500 SCSI external hard drive with 2 GB of storage, which blew my mind… I could install Star Wars X-Wing four times!

    • Take A Look At This
      Take A Look At This 3 months ago

      Lighting in a bottle. Everything aligned to make it great. It could he been a boring game with great tech but it wasn't. Engine, levels, artwork, music, all worked together perfectly.

    • Chris R
      Chris R 4 months ago +2

      @Christopher Anderson you knew a high schooler who owned a laptop in 93 that could play doom……………… interesting

  • Colin Wilson
    Colin Wilson 18 days ago

    Thank you, John Carmack. Your games, engines, and their successors were my childhood.

  • Sperg Ferguson
    Sperg Ferguson 3 months ago +1

    Man, John Carmack literally pushed gaming and programming quantum leaps forward for all of us

  • TheFieryWind
    TheFieryWind 2 months ago +1

    The genius of John Carmack will always be a door-smashing one for the gaming industry. Never shall we take it for granted.

  • Darkie
    Darkie Month ago

    Thank you John Carmack - I'm pretty sure he's the reason why VR feels so smooth to use nowadays - wasn't he behind the asynchronous time warp feature in the oculus stuff?

  • Hirame Sensei
    Hirame Sensei 10 months ago +388

    Thank you to the benevolent and hyper intelligent trans dimensional being known to us as John Carmack, for in his mercy allowing the human race to continue to exist.

    • stevetennispro
      stevetennispro Month ago

      "... for in his mercy allowing the human race to continue to exist"
      So true. Without him the human race would be... DOOMED! ;)

    • Raven4K
      Raven4K 2 months ago

      @Mongoose (ASC) of course he is he's your daddy

    • Mongoose (ASC)
      Mongoose (ASC) 2 months ago +2

      Shame about Greasy Randy Fucking Pitchford though 😕 😒 🤣

    • RedSnt
      RedSnt 4 months ago

      He also made our childhoods incredibly rich. End 90s and early 00s was such a rush!

    • Raven4K
      Raven4K 4 months ago +3

      @Kipcreate Gaming that was so last year the time is cv12 silly🤣🤣🤣🤣🤣🤣

  • B4PH0M3T DK
    B4PH0M3T DK 4 months ago +2

    Thank you John Carmack, you have always been an inspiration for me. My life changed when I first saw Wolfenstein3D on PC.

  • Wesley Howard
    Wesley Howard 3 months ago +1

    It's remarkable to this day that Doom was designed to run on dos. It was such an efficient game and ran on just about anything.

  • Schalk du Plessis
    Schalk du Plessis Month ago

    This is a great video, thanks. It is the first time that I've seen this approach being explained in such a way that it is easily understandable.

  • MarcinBBlack
    MarcinBBlack 4 months ago +1

    Fantastic video! You have definitely put a lot of effort in making this material.

  • Andrew Kinsey
    Andrew Kinsey Month ago

    You have done an amazing job in explaining this, thank you!

  • Wade Dewell
    Wade Dewell 4 months ago

    Thank-you John Carmack. Your programming genius has helped make many of the most beloved and fun games.
    My late grandfather introduced me to the fps genre with Wolfenstein 3d, then doom and quake. I had so much fun playing them with my grandfather via lan and with others online.

  • Andrew Bliss
    Andrew Bliss 2 months ago

    Thank you John Carmak, Doom was awesome! Changed the landscape of what games could be. I remember talking with kids from school, all of them talking about Doom, secrets, and cheat codes. Such a legendary time.

    THE DOOM SLAYER 2 months ago

    Thanks John, for having an extremely high level of sentience and inteligence for humans, and yet sparing us.

  • Drew McIntosh
    Drew McIntosh 4 months ago +92

    BSP is also often used in procedural generation of levels. I use it in my roguelite game to divide the whole map up into rooms that satisfy a certain size criteria and don’t overlap. Combining it alongside other generation techniques (waveform collapse, Poisson distribution, cellular automata, etc) can yield some pretty interesting and varied maps.

  • Thomas Gabrielsen
    Thomas Gabrielsen 4 months ago

    Thank you, John Carmack! I find it always both challenging and entertaining and read the DOOM source code and try to figure out how you did it. I highly recommend everyone to listen to Lex Fridmann's episode with John Carmack that was released last month (August 2022). It's more than five hours long and not a dull moment.

  • Mega J
    Mega J 3 months ago

    This was an awesome video! Very well done. I remember buying the shareware version of Doom on 2 floppy discs. :D

  • djhaloeight
    djhaloeight 4 months ago

    Many thanks to John Carmack! I’ve loved Doom since I got it when it first came out as shareware.

  • Zedek
    Zedek 3 months ago +1

    Seeing a nodebuilder in action did the trick for me. Using DooM Builder for so long (as you did for demo purposes here) and always wondered why the node builder was the only thing that really complained or mattered. Being basically the very foundation of the rendering engine, that makes sense now to me!

  • JoseBaGra
    JoseBaGra Year ago +421

    I'm a programmer but I cannot imagine what can happen in a mind of someone like Carmack , simply a genius.
    Thanks John Carmack

    • altrag
      altrag 3 months ago

      @Chris L > To be fair, the standards were a lot higher decades ago.
      They really weren't. We just don't bother remembering the boatloads of complete crap because it was well.. complete crap. The term "shovelware" was coined in like the 1970s or 1980s. Garbage games have been around for basically as long as games have been considered commercially viable.
      There was certainly a period when 3D was really exploding that "I haz teh best grafix!" was the only selling features many games cared about, but that period only lasted 4 or 5 years and is long, long gone. Was essentially wrapped up during the PS3 era. Pretty much all modern AAA games look stunning with (mostly) realistic physics these days - its not really something they can compete on anymore and hasn't been for a while now.
      That said, there was one gatekeeper in the old days that we no longer really have: Store shelf space. Steam and the Microsoft Store and the countless other digital storefronts can contain thousands or even tens of thousands of titles while a retail store could contain dozens or maybe a couple hundred for the really big box stores.
      So while there is not really any more crap games being made (as a percentage that is - there's absolutely more of _everything_ being made now), there's more crap games right at your fingertips if you want to look for them. The curation previously provided by store managers is now provided by algorithms, and the storefronts are usually _pretty_ good at filtering out the crap (unless you intentionally search for crap often enough that the algorithm decides that's the only thing you want!) Not perfect by any means, but pretty good.
      Of course it also depends a lot on your definition of "crap". I find a lot of the nostalgia tends to boil down to "single fond childhood memory of playing one game for 40 hours straight because it had no save function". And if that's your definition of a "good" game well, yeah you're probably not going to do well with modern titles. Modern titles are created for a different type of audience. An audience that has 118 games in their library that they haven't even opened yet. An audience that plays 4 different games for 30 minutes each to complete daily quests before moving on to the next one. An audience that frankly no longer has the desire to do the exact same thing for 40 hours straight, no matter how fun that thing is.
      That said, there is a niche market for that "Nintendo hard" form of nostalgia with plenty of titles. You just have to dig for them a bit since they're definitely not mainstream and the algorithms won't put much effort into recommending them until you've shown that you're into that sort of thing. And then once you find the niche, you're still stuck in the "80% of everything is crap" limbo but its almost certain there will be a few you really enjoy if you look hard enough. Maybe consider finding your special niche a "Nintendo hard" game in its own right, if that helps!
      (Or whatever other genre/property you think makes a game "good". With so much choice, there's almost certainly at least a handful that fit your whims no matter what those whims may be. The "Nintendo hard" ideal is just the most common form of nostalgia I run across when people complain about modern games not being as good, so I used it as my example.)

    • Mister Guy
      Mister Guy 4 months ago

      @Jar Sure, no problem. This stuff can be really fun to talk and learn about. I hope you keep enjoying video games.

    • Jar
      Jar 4 months ago +1

      ​@Mister Guy I apologize for my poorly worded comments. Thank you for your views and education.

    • Mister Guy
      Mister Guy 4 months ago

      @Jar "Would you like to tell me what my favorite color should be?"
      Favorite color is an arbitrary personal preference and is 100% subjective. Video game development is a real thing that happens in the world, so it's not 100% subjective.
      "It does not mean I cannot compare old with new."
      The problem is you compared games from one era that were made just to be art with games made in another era just to turn a profit. Then your comparison stated that the age of the games was the key factor, and that this indicated a shift in the underlying philosophy of developers. You see how that's shaky, right?
      "What learning opportunities am I rejecting?"
      When someone disagrees with your assessment of a situation, especially when it's an area where facts and interpretation are involved, you have the opportunity to look at it from another angle. Saying that something is just your opinion and refusing to budge is a rejection of that opportunity, and one that stifles your growth and ability to appreciate the subject. Especially if the area is one that you haven't really put a lot of time and effort into studying and the other person clearly has. In general, unless you're hearing someone who's just utterly clueless or paid to have a certain bias, you are probably missing at least some sliver of new, valuable information when you do that.

    • Jar
      Jar 4 months ago

      @Mister Guy You’re welcome. I do find it strange that people like you feel the need to argue that someone else should not have the subjective opinion they do. Would you like to tell me what my favorite color should be? If i decide that I find a game dull then that is my decision to make, not yours. I did not say it was not influential. I will decide what I think is a great game, thank you. If i decide to admire something more than something else then that is my decision to make, too. Of course the complexity of games has changed. I am not unaware of this fact. Also, of course any software can have unwanted features. It does not mean I cannot compare old with new. What learning opportunities am I rejecting?

  • VictoryFox
    VictoryFox 3 months ago

    Thank you for everything you've done for the gaming industry and for your awesome games, John Carmak one of the greatest geniuses in gaming history

  • Scott Douglas
    Scott Douglas 4 months ago

    This video is such a fantastic breakdown of why Carmack's innovation was so unique and important. Excellent stuff.

  • Sean Adams
    Sean Adams 4 months ago +2

    What a great video @shreddedNerd - thank you. Even though some commentors may have taken issue with some particulars - I am really super happy that there are content creators like you out there, who are explaining the magic that happens behind the scenes. I still remember learning about BSP trees and the first time I implemented this in code - that felt like learning a magic trick. And looking for edges in images was just as much fun.
    Keep making these kind of videos - there's magic happening behind the screen and it's a delight that you and us can take a moment to admire the effort that went into making this possible.
    Thank you!

  • Alyster Vodka
    Alyster Vodka 4 months ago

    This is absolute top notch content and damn am I even more impressed with Doom

  • Curcumin
    Curcumin 6 months ago +102

    Carmack no doubt deserves a lot of credit for his vision, hard-work, creativity and technical genius, but MICHAEL ABRASH is the UNSUNG GENIUS behind the scenes that helped to push through many of the difficult rendering and optimization challenges that made Quake and other 3D FPS possible. All built on the shoulders of giants who came before them.

    • royalestel
      royalestel 2 months ago +1

      I mean, Descent was released before Quake with 6 DOF

    • Craig
      Craig 4 months ago +1

      @Derek Hooke discovered many things before Newton. Especially in optics.

    • Craig
      Craig 4 months ago +1

      Interesting they're both at "Meta" now, on VR

    • Chris L
      Chris L 4 months ago +1

      @Derek Who says that? I've literally never heard that. It was Leibniz and Newton that took that last step. That being said, Newton ripped off most of his innovations in Physics from Hooke, in large part due to Newton having the knowledge of math that Hooke did not.

    • acasualviewer
      acasualviewer 4 months ago +8

      Abrash was already known as the quintessential Assembly language genius because of his book the Zen of Assembly published in 1990. So he was by no means unsung, he was one of the biggest authorities on Assembly language for the 8086. Carmack has said in an interview that he already admired Abrash.

  • Rob Moerland
    Rob Moerland 2 months ago +1

    My father was about 60 when Wolfenstein 3D came out. He played it almost every day. Probably for shooting up Nazis, but he also loved the innovation.
    Thank you John Carmack for one of the fond memories of my father.

  • Terry Willoughby
    Terry Willoughby 2 months ago +2

    Having come from an era where video games were packaged for the most part on cassette tape and written in someone's bedroom, it's magnificent videos like this that help me to understand why games now cost upwards of fifty quid . . . .

  • Bitcoin Takeover
    Bitcoin Takeover Month ago +1

    Thank you, John Carmack! The use of BSP trees has begun to be replaced over the last few years.

  • TheJpmuzz
    TheJpmuzz 2 months ago

    Thank you John Carmak, your programming and door smashing abilities are appreciated to this day

  • Sébastien Lemetter

    Really cool video, thanks John Carmak! I only started with duke nukem, so I never tried W3D, Doom or Quake, but I am so glad to have learned the evolutionary steps that were achieved with each product. The history of game rendering is facinating!

  • Iron Rion
    Iron Rion 3 months ago

    This video was top notch. Gave me a deeper appreciation for the process and progression of that process. Thank you

  • mrz80
    mrz80 Month ago

    How would you compare the underpinnings of System Shock to Doom? I was playing both at about the same time, and the sophistication of System Shock's engine blew me away, even though it did drive me to buy a heftier graphics card to get full resolution. :D

  • Harag
    Harag 3 months ago

    Excellent vid, thanks. Brings back some great memories playing Wolfenstein and Doom back in the day.

  • Elijah Games
    Elijah Games Year ago +96

    the two parts about Carmack i love is he is a rocket scientist, and made three (if you count wolfenstein 3d) revolutionary 3d engine types when he was only in his 20's.

  • Steven Taylor
    Steven Taylor 4 months ago

    Great video, detailed and thorough slice of digital history.

  • t3hPoundcake
    t3hPoundcake 4 months ago

    What is also a really interesting story is the quest that Carmack went through figuring out how to produce side-scrolling games that were performant enough to be played by an end user on early home PC's.

  • Vincent Marcellino
    Vincent Marcellino 3 months ago

    Thank you to the overlord of the binding in between space John Carmak for not only allowing us to live but for creating an engine so far ahead of its time that only a god such as him could have created it

  • maor nachmani
    maor nachmani 5 days ago

    Thank you John Carmak, your programming and door smashing abilities are appreciated to this day

  • Chuck Villanueva
    Chuck Villanueva Month ago

    Thank you John Carmak, your programming and door smashing abilities are appreciated to this day

  • Owl
    Owl 3 months ago

    This is fascinating and super educative. Thank you so much!

  • Owen Batt
    Owen Batt 4 months ago

    Man, thanks for this. As a kid growing up playing these games, firing up my 14.4k modem to play Doom with my mate and then being blown away by Quake 1 and the sensational NIN soundtrack and atmosphere, this video was brilliant. I remember building Quake levels and creating BSP files; man, it was fun but agony. Most of the level builders hardly worked, but what John created in these rendering engines are utter genius. Thanks for this!

  • Frazer Kirkman
    Frazer Kirkman 3 months ago

    Thank you John Carmack! So excited to see what you do with VR and AR over the next few years!

  • R-Tech Gaming
    R-Tech Gaming 7 months ago +146

    Thank you John Carmak, breaking down doors both metaphorically and physically.

  • TheAverageNerd
    TheAverageNerd 3 months ago

    This video was super informative and so well made I simply couldn't stop watching it! It's amazing how for rendering technology has come.
    Thank you, John Carmack for the FPS revolution!

  • Alpha and Omega Ministry

    Awesome and most informative vid made on these early rendering technologies. By clearly explaining the issues we are brought much closer to the actual creative process. This vid is in a class of its own. Thankyou.

  • Darlingbrough Model Railway

    Thank you John Carmak! Doom was a revolutionary game that helped shaped my childhood! I have many hours of memories playing that game!

  • Jollyprez
    Jollyprez 18 days ago

    Nice overview! I worked at several games companies include Maxis, EA, and Sierra-Online in the early 90s. I saw the transition as it happened.

  • Emre Akı
    Emre Akı Year ago +142

    10:26 That's not affine texture-mapping, that's actually what is called y-shearing, the texture mapping still takes into account the perspective (depth).
    Also I believe Quake did not have 6 degrees of freedom but 3.

    • metallicarabbit
      metallicarabbit 2 months ago

      not the only thing that's incorrect in this video, doom isn't really a "ray caster" clip-share.net/video/96nFJIxW-34/video.html

    • RFC3514
      RFC3514 4 months ago +3

      @Amelia Fletcher - Quake allows you to aim up and down (in fact, it was a fundamental part of gameplay - and the biggest "evolution" from Doom). It also had camera roll (leaning slightly to the sides) whenever you strafed (not a relevant part of the gameplay, but it made the camera feel less "stiff").

    • PhoenixBird9000
      PhoenixBird9000 4 months ago

      @RandomCatDude This too!👍

    • RandomCatDude
      RandomCatDude 4 months ago +4

      @PhoenixBird9000 don't forget viewroll when strafing!!

    • Agell
      Agell 4 months ago +19

      I sense a distinct lack of respect for Descent and Descent II

  • michael pickett
    michael pickett 2 months ago

    Thank you John carmak. You provided me with wolf 3d and doom as a teenager, through to halo today. Truly my favourite games for disassociating from the world! What a legend!

  • Xaltar
    Xaltar 4 months ago

    Nice to see someone mention Catacomb 3d, a lot of people miss it when looking at ID's history.

  • Pierre Lindgren
    Pierre Lindgren 4 months ago +2

    23:40 Thank you John for serving as the real-life inspiration for Die Hard. Without Carmac, we wouldn't have McClane.

  • foNy_
    foNy_ 14 days ago

    absolutely love these types of videos, awesome work man!

  • Mr Fathead
    Mr Fathead Year ago +53

    Nice job man. I love the way you illustrated how the scenes are rendered.

  • James Kirk
    James Kirk Month ago

    Thank you John Carmak! I was 5 when I played Shareware Doom. My Dad bought us Doom 2 when it came out the next year. What a beginning!

  • AldiePezeh
    AldiePezeh 4 months ago +2

    Video game design then: "We have to push the limits of programming to create the game of our dreams."
    Video game design now: "150 GB installation size? Unfixable memory leaks after 30 hours? LOL! Don't forget your pre-order!"

  • Massimo Soricetti
    Massimo Soricetti 2 months ago

    Thank you for the walk in the past + 3D game math lesson. It's been a fascinating experience. More!

  • Lee Croft
    Lee Croft 24 days ago +1

    The original, Doom is perhaps one of the most perfect games ever made. Everything about that game just... works.

  • Takahiro Shinsaku
    Takahiro Shinsaku 2 months ago

    Thank you, John Carmack.
    I still remember the Good old times i had with many ID Software Titles inkluding Wolfenstein 3D, Doom and Quake.

  • Andrés Goens
    Andrés Goens 2 months ago

    great video! I just have a small nitpick about the term "whitepaper", those are sort of position papers or industrial papers that are more authoritative and/or marketing-oriented. The paper by fuchs et al that Carmack used and you cite there is just a regular research paper, not a whitepaper.

  • Cruz Macias
    Cruz Macias 3 months ago

    Thank you John Carmak for giving us a real-world application of the Binary Search Tree data structure that I just studied in my graduate course on Data Structures and Algorithms in Java.

  • filipelcc
    filipelcc 4 months ago

    Great video, such depth of knowledge must needs to be perpetuated. Thanks for the history lesson!

  • learrus
    learrus 4 months ago

    You did a great job of explaining this all along with the visual aids. I've been dabbling in DOOM mapping for decades and never fully understood what building the BSP was but your clip with the lines really made it click

  • VirtualBilly
    VirtualBilly 2 months ago +1

    Doom is genius because the developers always knew their soundtrack would one day transcend the game itself and become part of those “when the Doom music kicks in” videos.

  • Alan Osman
    Alan Osman 4 months ago

    As a early days developer that was always in awe if game developers, that was cool a cool history lesson, thank you. Makes me now appreciate those early day PC games in a whole new light. Thanks for doing that.

  • Rockstar Raccoon
    Rockstar Raccoon 4 months ago

    Thank you John Carmack!
    Lately, I've been revisiting an old game engine I made that uses something like the Painter's Algorithm, that's why I felt like clicking on this when it showed up in my feed. It's nice, but yeah, it takes calculation, and it only works because it's tile-based in both movement and rendering, things are only at 45-degree increments, and the movement is turn-based, which means I can precalculate all the transforms at load-time, making the Painter's Algorithm "fast enough" for it.

  • CERJ Media Gaming
    CERJ Media Gaming Year ago +38

    I have to tip my hat to the incredible amount of work and effort with editing put into this video,
    With Examples and Overlays to show what means what
    If there weren't visual examples, I would have absolutely no idea what is happening. It goes a long way

  • Carlos C
    Carlos C 3 months ago

    I cant believe I just now found this! Awesome video. Now we need someone to give us a ray traced doom.

  • SecondQuantisation
    SecondQuantisation 3 months ago

    This and the "fast inverse square root" through the (almost warlock-level) trick of bitshifting show id Software were absolute geniuses.