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?).
ShreddedNerd4 ай бұрын
I’m just glad I get to learn more about Doom. This takes me back to my game programming days. 🖤
Eric Otto6 күн бұрын
Witchaven came out shortly after Doom and then Witchaven 2. Both before Quake and did feature angled floors and ceilings. One could, as Witchaven 2 even came with it's own editor, lay rooms overtop each other. However, you shouldn't have both rooms visible from any angle or perspective as it wouldn't render correctly. I think the first true 3D 360 game I can think of was Descent. Pretty sure it was the first true 3D game. Once again, before Quake that you kept love harping about.
X Again7 күн бұрын
@itchykami First time I saw angles and rooms could be over top each other (but do NOT make both visible at the same time) was Witchaven.
X Again7 күн бұрын
@Mister Guy BINGO, that was it, the stairs!
Cad Delworth20 күн бұрын
@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.
Mister Guy20 күн бұрын
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
Thomas Tarbin Жыл бұрын
What about Romero and sandy?
Eli and Cora Witcher6 күн бұрын
I feel sorry for the early demise of the door.
gorillaau2 ай бұрын
modern era walt disney what an icon
Rei Gon2 ай бұрын
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.
michael pecukonis2 ай бұрын
@Mark Wilson E.g. Dennis Ritchie.
dav ep3 ай бұрын
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.
SmartK84 ай бұрын
He’s a sentient galaxy brain meme, what else would he do?
Periapsis Studios7 күн бұрын
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.
eran2 ай бұрын
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.
Jay Kay2 ай бұрын
**retarded gen Z noises**
MrBratkenSolov3 ай бұрын
@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.
SmartK83 ай бұрын
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.
M B4 ай бұрын
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.
kris reddish16 күн бұрын
The smoke and mirrors got smokier and mirroirer.... Snow drop, id tech 6, frost. These engines are using the most advance math ever.
cixlo20 күн бұрын
not just solve it, but solve it with the minimal amount of resources possible.
Marcos Danilo20 күн бұрын
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.
Genital GrinderАй бұрын
Once we hit the upper limits of scaling down technology games will have to once again become efficient.
Tomos Halsey2 ай бұрын
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.
Robby Neale4 ай бұрын
@Robby Neale nice one, well done! Good luck in the future!
romerogoonАй бұрын
@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.
Robby NealeАй бұрын
Thats like studying kung fu under Bruce Lee. Congrats to you.
K BАй бұрын
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?
romerogoon2 ай бұрын
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... )
Ryan Bissonnette4 ай бұрын
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.
Cilleyperson3 ай бұрын
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.
danin9004 ай бұрын
@Jenny Talya It may not be a shooter, but Ultima Underworld deserves far more credit than it usually gets in these discussions. It had true 3D environments with free aiming and rooms on top of each other a few months before Wolfenstein 3D hit the market.
Lord Mordington6 күн бұрын
@Jenny Talya True technical (e.g. graphical details and good audio engine) crysis was ahead but that's it.
Steven A010Ай бұрын
@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.
Jenny TalyaАй бұрын
crysis in 2ks
Steven A010Ай бұрын
It's 30 years that I play the original version from time to time... it's just perfect
Emanuele4 ай бұрын
I highly advise the vr mods for both Doom and quake to both of you. Both felt like religious experiences for me.
M FigsАй бұрын
It's so insane that you can play it in a website. Used to play it in college classes.
svankensen4 ай бұрын
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.
PeBoVision4 ай бұрын
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.
Anthony Perkins3 ай бұрын
I'm doing that in the modern era
Chip the protogenАй бұрын
When Doom was released, the thing that amazed me most was - you could "go outside" and it had its own background that "acted right".
RERАй бұрын
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".
Carlos PC3 ай бұрын
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
BuyMyBeard3 ай бұрын
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.
Night FoxАй бұрын
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.
DaddelboxАй бұрын
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.
jpVariАй бұрын
Thank you John Carmack! Who knew such badassery would owe its existence to math. You've been a treasure to this industry, brother!
Sir Caco4 ай бұрын
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.
Micah Phillips4 ай бұрын
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.
Alien Soup5 ай бұрын
@Bob Yes as weird as that is.
I'mEverywhere AndNowhereАй бұрын
@I'mEverywhere AndNowhere even HDoom?
BobАй бұрын
@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!
EvShrug4 ай бұрын
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.
Take A Look At This4 ай бұрын
@Christopher Anderson you knew a high schooler who owned a laptop in 93 that could play doom……………… interesting
Chris R4 ай бұрын
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.
irønАй бұрын
Really cool stuff, thank you! Fascinating to see how far back the origins of modern graphics goes.
Michael B.Ай бұрын
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
Jack - SecITGuy2 ай бұрын
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.
Marsharoni2 ай бұрын
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.
Dylan Presi da Fonseca Жыл бұрын
Anyone curious about how DooM handles vertical height, check out decino's yellow background videos on that topic
Smokecall4 ай бұрын
@Marshall's Weather & Hiking I think you pretty much just restated what I previously said. 🙂
PhoenixBird90004 ай бұрын
@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.
Marshall's Weather & Hiking4 ай бұрын
@PhoenixBird9000 D;
CykeOk4 ай бұрын
@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.
Richard G4 ай бұрын
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!
Tony Nussbaum4 ай бұрын
John's work in virtually reality has been just as impressive, I salute the man!
Michael King3 ай бұрын
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.
Wesley Howard3 ай бұрын
Thank you John Carmack, you have always been an inspiration for me. My life changed when I first saw Wolfenstein3D on PC.
B4PH0M3T DK4 ай бұрын
Man, John Carmack literally pushed gaming and programming quantum leaps forward for all of us
Sperg Ferguson3 ай бұрын
Thanks John, for having an extremely high level of sentience and inteligence for humans, and yet sparing us.
THE DOOM SLAYER3 ай бұрын
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 . . . .
Terry Willoughby2 ай бұрын
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.
Thomas Gabrielsen4 ай бұрын
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.
surject4 ай бұрын
@trunkafunk Yeah, also Pierce Brosnan fooled us :(
surjectАй бұрын
i remember playing descent and thinking WOW this is cool, and VR must only be a few more years out.. hahah
trunkafunkАй бұрын
1985-2005 +- were awesome
prolamer7Ай бұрын
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.
Paul sАй бұрын
And now the mp3 codec is fully patent-free. They've all expired, so now they're cheap hardware modules.
Ben Smith2 ай бұрын
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!
Sean Adams4 ай бұрын
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.
SmilingBob3 ай бұрын
Thank you, John Carmack. Your games, engines, and their successors were my childhood.
Colin Wilson26 күн бұрын
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!
Will Lucas4 ай бұрын
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
VictoryFox3 ай бұрын
The genius of John Carmack will always be a door-smashing one for the gaming industry. Never shall we take it for granted.
TheFieryWind3 ай бұрын
23:40 Thank you John for serving as the real-life inspiration for Die Hard. Without Carmac, we wouldn't have McClane.
Pierre Lindgren4 ай бұрын
Fantastic video! You have definitely put a lot of effort in making this material.
MarcinBBlack4 ай бұрын
This is absolute top notch content and damn am I even more impressed with Doom
Alyster Vodka4 ай бұрын
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.
Schalk du Plessis2 ай бұрын
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?
DarkieАй бұрын
Many thanks to John Carmack! I’ve loved Doom since I got it when it first came out as shareware.
djhaloeight4 ай бұрын
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.
Hirame Sensei11 ай бұрын
"... for in his mercy allowing the human race to continue to exist" So true. Without him the human race would be... DOOMED! ;)
stevetennispro2 ай бұрын
@Mongoose (ASC) of course he is he's your daddy
Raven4K3 ай бұрын
Shame about Greasy Randy Fucking Pitchford though 😕 😒 🤣
Mongoose (ASC)3 ай бұрын
He also made our childhoods incredibly rich. End 90s and early 00s was such a rush!
RedSnt4 ай бұрын
@Kipcreate Gaming that was so last year the time is cv12 silly🤣🤣🤣🤣🤣🤣
Raven4K4 ай бұрын
The original, Doom is perhaps one of the most perfect games ever made. Everything about that game just... works.
Lee CroftАй бұрын
This video is such a fantastic breakdown of why Carmack's innovation was so unique and important. Excellent stuff.
Scott Douglas4 ай бұрын
You have done an amazing job in explaining this, thank you!
Andrew Kinsey2 ай бұрын
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.
Just Stated The Obvious3 ай бұрын
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
Chuck VillanuevaАй бұрын
Nice to see someone mention Catacomb 3d, a lot of people miss it when looking at ID's history.
Xaltar4 ай бұрын
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
MurderMostFowl3 ай бұрын
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!
Zedek3 ай бұрын
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.
Drew McIntosh4 ай бұрын
Sounds fishy.
Steve Head4 ай бұрын
i'll subscribe if you do tutorial
LL Cool Games4 ай бұрын
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.
Rob Moerland2 ай бұрын
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.
Jeffrey C. Pelletier4 ай бұрын
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!
Sébastien Lemetter2 ай бұрын
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!
michael pickett2 ай бұрын
Thank you John Carmak, breaking down doors both metaphorically and physically.
R-Tech Gaming7 ай бұрын
Thank you, John Carmack! The use of BSP trees has begun to be replaced over the last few years.
Bitcoin TakeoverАй бұрын
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!
TheAverageNerd3 ай бұрын
This video was top notch. Gave me a deeper appreciation for the process and progression of that process. Thank you
Iron Rion4 ай бұрын
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!
Owen Batt4 ай бұрын
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.
Curcumin7 ай бұрын
I mean, Descent was released before Quake with 6 DOF
royalestel2 ай бұрын
@Derek Hooke discovered many things before Newton. Especially in optics.
Craig4 ай бұрын
Interesting they're both at "Meta" now, on VR
Craig4 ай бұрын
@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.
Chris L4 ай бұрын
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.
acasualviewer4 ай бұрын
Thank you John Carmack! So excited to see what you do with VR and AR over the next few years!
Frazer Kirkman3 ай бұрын
This was an awesome video! Very well done. I remember buying the shareware version of Doom on 2 floppy discs. :D
Mega J4 ай бұрын
John Carmack is like the founding father of game programming.
Bruce Li3 ай бұрын
Great video, such depth of knowledge must needs to be perpetuated. Thanks for the history lesson!
filipelcc4 ай бұрын
I'm a programmer but I cannot imagine what can happen in a mind of someone like Carmack , simply a genius. Thanks John Carmack
JoseBaGra Жыл бұрын
@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.)
altrag3 ай бұрын
@Jar Sure, no problem. This stuff can be really fun to talk and learn about. I hope you keep enjoying video games.
Mister Guy4 ай бұрын
@Mister Guy I apologize for my poorly worded comments. Thank you for your views and education.
Jar4 ай бұрын
@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.
Mister Guy4 ай бұрын
@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?
Jar4 ай бұрын
Thank you John Carmak! Doom was a revolutionary game that helped shaped my childhood! I have many hours of memories playing that game!
Darlingbrough Model Railway4 ай бұрын
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
TheJpmuzz2 ай бұрын
Excellent vid, thanks. Brings back some great memories playing Wolfenstein and Doom back in the day.
Harag3 ай бұрын
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
learrus4 ай бұрын
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.
Andrew Bliss2 ай бұрын
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
maor nachmani13 күн бұрын
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.
VirtualBilly2 ай бұрын
Great video, detailed and thorough slice of digital history.
Steven Taylor4 ай бұрын
Thank you for the walk in the past + 3D game math lesson. It's been a fascinating experience. More!
Massimo Soricetti2 ай бұрын
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.
Wade Dewell4 ай бұрын
John developed the ID engine and forced Tim to develop the unreal engine to compete. This was just like Bill and Steve. All four have been in my life at least once everyday for the last 30 years. Thanks guys. You made history. and a lot of money.
James Cole2 ай бұрын
All 4?
Ujjval WАй бұрын
This is fascinating and super educative. Thank you so much!
Owl3 ай бұрын
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.
Emre Akı Жыл бұрын
X, Y, Z, Pitch, Yaw, Roll
lukkasz323Күн бұрын
not the only thing that's incorrect in this video, doom isn't really a "ray caster" kzworld.info/throw/bejne/cWejfK6C3Y1hY2Y
metallicarabbit2 ай бұрын
@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").
RFC35144 ай бұрын
@RandomCatDude This too!👍
PhoenixBird90004 ай бұрын
@PhoenixBird9000 don't forget viewroll when strafing!!
RandomCatDude4 ай бұрын
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!"
AldiePezeh4 ай бұрын
Thank you John Carmak! I had a lot of fun with your games back in the days
Federico Albertini4 ай бұрын
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.
Alpha and Omega Ministry3 ай бұрын
The grid of Wolf3d was made up of static 64x64 pixel squares which allowed to calculate the distance of each ray even faster.
Carl Mahnke4 ай бұрын
Nice job man. I love the way you illustrated how the scenes are rendered.
Mr Fathead Жыл бұрын
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.
t3hPoundcake4 ай бұрын
When a technology is more than itself and becomes part of someone´s childhood, such genius
FRC4 ай бұрын
Thank you ID Software and John Carmack for creating Doom!
Zorander4 ай бұрын
Thanks, John Carmak. You definitely enhanced the lives of multiple generations
Bill MozartАй бұрын
Doom came around when I was at University. That was awesome and then CoOp Quake. That still holds up today. The gameplay was amazing. You and a friend taking on monsters. The nail gun has got to be my wrap of choice! Happy days made possible by these geniuses!
Crazy Kitten Videos4 ай бұрын
Thank you, John Carmack. I still remember the Good old times i had with many ID Software Titles inkluding Wolfenstein 3D, Doom and Quake.
Takahiro Shinsaku3 ай бұрын
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!
James Kirk2 ай бұрын
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.
Jollyprez26 күн бұрын
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.
Elijah Games Жыл бұрын
He did the first version of 2d Duke Nukem, right?
tornado100able4 ай бұрын
@Punching Pixels crysis doesn't count haha
Felipe Gomes4 ай бұрын
@Felipe Gomes crysis.
Punching Pixels4 ай бұрын
@Project Shadowcat rage came out in 2011
Felipe Gomes6 ай бұрын
@Felipe Gomes RAGE?
Project Shadowcat6 ай бұрын
I remember learning this in elementary school in 4th grade. Learning about the Sneed, binary input programming, the lot of it. We wrote simple programs as group projects for the semester. My first exposure to computers, teams, girls... It was a huge impact in my life. The Challenge Program they called it.
Jason Siebold4 ай бұрын
@dlow Nothing that complex. We were programming in basic. Simple programs that followed a beginners logic tree.
Jason Siebold2 ай бұрын
You learned about binary space partitioning, tree data structures and recursion in 4th grade? Jesus dude, that’s like junior year computer science curriculum in uni.
dlow2 ай бұрын
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
Vincent Marcellino3 ай бұрын
This and the "fast inverse square root" through the (almost warlock-level) trick of bitshifting show id Software were absolute geniuses.
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?).
I’m just glad I get to learn more about Doom. This takes me back to my game programming days. 🖤
Witchaven came out shortly after Doom and then Witchaven 2. Both before Quake and did feature angled floors and ceilings. One could, as Witchaven 2 even came with it's own editor, lay rooms overtop each other. However, you shouldn't have both rooms visible from any angle or perspective as it wouldn't render correctly. I think the first true 3D 360 game I can think of was Descent. Pretty sure it was the first true 3D game. Once again, before Quake that you kept love harping about.
@itchykami First time I saw angles and rooms could be over top each other (but do NOT make both visible at the same time) was Witchaven.
@Mister Guy BINGO, that was it, the stairs!
@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.
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
What about Romero and sandy?
I feel sorry for the early demise of the door.
modern era walt disney what an icon
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.
@Mark Wilson E.g. Dennis Ritchie.
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.
He’s a sentient galaxy brain meme, what else would he do?
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.
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.
**retarded gen Z noises**
@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.
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.
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.
The smoke and mirrors got smokier and mirroirer.... Snow drop, id tech 6, frost. These engines are using the most advance math ever.
not just solve it, but solve it with the minimal amount of resources possible.
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.
Once we hit the upper limits of scaling down technology games will have to once again become efficient.
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.
@Robby Neale nice one, well done! Good luck in the future!
@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.
Thats like studying kung fu under Bruce Lee. Congrats to you.
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?
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... )
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.
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.
@Jenny Talya It may not be a shooter, but Ultima Underworld deserves far more credit than it usually gets in these discussions. It had true 3D environments with free aiming and rooms on top of each other a few months before Wolfenstein 3D hit the market.
@Jenny Talya True technical (e.g. graphical details and good audio engine) crysis was ahead but that's it.
@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.
crysis in 2ks
It's 30 years that I play the original version from time to time... it's just perfect
I highly advise the vr mods for both Doom and quake to both of you. Both felt like religious experiences for me.
It's so insane that you can play it in a website. Used to play it in college classes.
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.
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.
I'm doing that in the modern era
When Doom was released, the thing that amazed me most was - you could "go outside" and it had its own background that "acted right".
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".
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
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.
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.
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.
Thank you John Carmack! Who knew such badassery would owe its existence to math. You've been a treasure to this industry, brother!
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.
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.
@Bob Yes as weird as that is.
@I'mEverywhere AndNowhere even HDoom?
@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!
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.
@Christopher Anderson you knew a high schooler who owned a laptop in 93 that could play doom……………… interesting
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.
Really cool stuff, thank you! Fascinating to see how far back the origins of modern graphics goes.
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
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.
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.
Anyone curious about how DooM handles vertical height, check out decino's yellow background videos on that topic
@Marshall's Weather & Hiking I think you pretty much just restated what I previously said. 🙂
@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.
@PhoenixBird9000 D;
@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.
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!
John's work in virtually reality has been just as impressive, I salute the man!
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.
Thank you John Carmack, you have always been an inspiration for me. My life changed when I first saw Wolfenstein3D on PC.
Man, John Carmack literally pushed gaming and programming quantum leaps forward for all of us
Thanks John, for having an extremely high level of sentience and inteligence for humans, and yet sparing us.
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 . . . .
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.
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.
@trunkafunk Yeah, also Pierce Brosnan fooled us :(
i remember playing descent and thinking WOW this is cool, and VR must only be a few more years out.. hahah
1985-2005 +- were awesome
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.
And now the mp3 codec is fully patent-free. They've all expired, so now they're cheap hardware modules.
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!
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.
Thank you, John Carmack. Your games, engines, and their successors were my childhood.
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!
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
The genius of John Carmack will always be a door-smashing one for the gaming industry. Never shall we take it for granted.
23:40 Thank you John for serving as the real-life inspiration for Die Hard. Without Carmac, we wouldn't have McClane.
Fantastic video! You have definitely put a lot of effort in making this material.
This is absolute top notch content and damn am I even more impressed with Doom
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.
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?
Many thanks to John Carmack! I’ve loved Doom since I got it when it first came out as shareware.
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.
"... for in his mercy allowing the human race to continue to exist" So true. Without him the human race would be... DOOMED! ;)
@Mongoose (ASC) of course he is he's your daddy
Shame about Greasy Randy Fucking Pitchford though 😕 😒 🤣
He also made our childhoods incredibly rich. End 90s and early 00s was such a rush!
@Kipcreate Gaming that was so last year the time is cv12 silly🤣🤣🤣🤣🤣🤣
The original, Doom is perhaps one of the most perfect games ever made. Everything about that game just... works.
This video is such a fantastic breakdown of why Carmack's innovation was so unique and important. Excellent stuff.
You have done an amazing job in explaining this, thank you!
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.
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
Nice to see someone mention Catacomb 3d, a lot of people miss it when looking at ID's history.
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
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!
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.
Sounds fishy.
i'll subscribe if you do tutorial
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.
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.
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!
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!
Thank you John Carmak, breaking down doors both metaphorically and physically.
Thank you, John Carmack! The use of BSP trees has begun to be replaced over the last few years.
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!
This video was top notch. Gave me a deeper appreciation for the process and progression of that process. Thank you
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!
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.
I mean, Descent was released before Quake with 6 DOF
@Derek Hooke discovered many things before Newton. Especially in optics.
Interesting they're both at "Meta" now, on VR
@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.
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.
Thank you John Carmack! So excited to see what you do with VR and AR over the next few years!
This was an awesome video! Very well done. I remember buying the shareware version of Doom on 2 floppy discs. :D
John Carmack is like the founding father of game programming.
Great video, such depth of knowledge must needs to be perpetuated. Thanks for the history lesson!
I'm a programmer but I cannot imagine what can happen in a mind of someone like Carmack , simply a genius. Thanks John Carmack
@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.)
@Jar Sure, no problem. This stuff can be really fun to talk and learn about. I hope you keep enjoying video games.
@Mister Guy I apologize for my poorly worded comments. Thank you for your views and education.
@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.
@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?
Thank you John Carmak! Doom was a revolutionary game that helped shaped my childhood! I have many hours of memories playing that game!
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
Excellent vid, thanks. Brings back some great memories playing Wolfenstein and Doom back in the day.
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
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.
Thank you John Carmak, your programming and door smashing abilities are appreciated to this day
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.
Great video, detailed and thorough slice of digital history.
Thank you for the walk in the past + 3D game math lesson. It's been a fascinating experience. More!
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.
John developed the ID engine and forced Tim to develop the unreal engine to compete. This was just like Bill and Steve. All four have been in my life at least once everyday for the last 30 years. Thanks guys. You made history. and a lot of money.
All 4?
This is fascinating and super educative. Thank you so much!
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.
X, Y, Z, Pitch, Yaw, Roll
not the only thing that's incorrect in this video, doom isn't really a "ray caster" kzworld.info/throw/bejne/cWejfK6C3Y1hY2Y
@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").
@RandomCatDude This too!👍
@PhoenixBird9000 don't forget viewroll when strafing!!
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!"
Thank you John Carmak! I had a lot of fun with your games back in the days
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.
The grid of Wolf3d was made up of static 64x64 pixel squares which allowed to calculate the distance of each ray even faster.
Nice job man. I love the way you illustrated how the scenes are rendered.
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.
When a technology is more than itself and becomes part of someone´s childhood, such genius
Thank you ID Software and John Carmack for creating Doom!
Thanks, John Carmak. You definitely enhanced the lives of multiple generations
Doom came around when I was at University. That was awesome and then CoOp Quake. That still holds up today. The gameplay was amazing. You and a friend taking on monsters. The nail gun has got to be my wrap of choice! Happy days made possible by these geniuses!
Thank you, John Carmack. I still remember the Good old times i had with many ID Software Titles inkluding Wolfenstein 3D, Doom and Quake.
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!
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.
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.
He did the first version of 2d Duke Nukem, right?
@Punching Pixels crysis doesn't count haha
@Felipe Gomes crysis.
@Project Shadowcat rage came out in 2011
@Felipe Gomes RAGE?
I remember learning this in elementary school in 4th grade. Learning about the Sneed, binary input programming, the lot of it. We wrote simple programs as group projects for the semester. My first exposure to computers, teams, girls... It was a huge impact in my life. The Challenge Program they called it.
@dlow Nothing that complex. We were programming in basic. Simple programs that followed a beginners logic tree.
You learned about binary space partitioning, tree data structures and recursion in 4th grade? Jesus dude, that’s like junior year computer science curriculum in uni.
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
This and the "fast inverse square root" through the (almost warlock-level) trick of bitshifting show id Software were absolute geniuses.