2022 - Non-Euclidean Doom: what happens to a game when pi is not 3.14159…

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 ธ.ค. 2024

ความคิดเห็น • 1.3K

  • @BigFreakingCacodemon
    @BigFreakingCacodemon 7 หลายเดือนก่อน +6502

    Pi = (Health + 1) / 201 * 3.1415...
    The world becomes more and more unhinged as you loose health. You MUST find health bonuses, soul spheres, and mega spheres in order to have a normal experience. +1 so that PI is never 0.

    • @Spikehead777
      @Spikehead777 7 หลายเดือนก่อน +1099

      I would've left out the +1 though
      You die, the game dies as well 🤣

    • @markbloom7434
      @markbloom7434 7 หลายเดือนก่อน +561

      Sadly, PI is a const and cannot be changed during runtime.
      But yeah, that would be hilarious.

    • @yusuf_kizilkaya
      @yusuf_kizilkaya 7 หลายเดือนก่อน +939

      ​@@markbloom7434 nothing stops you from defining PI as a variable

    • @4P5MC
      @4P5MC 7 หลายเดือนก่อน

      ​@@yusuf_kizilkaya The lookup tables do. Granted, it's simple enough to precompute them for all health values.

    • @kirillbrest1239
      @kirillbrest1239 7 หลายเดือนก่อน

      ​@@yusuf_kizilkayayou'd have to constantly recalculate lookup tables tho

  • @MichaelLesterClockwork
    @MichaelLesterClockwork 7 หลายเดือนก่อน +2709

    At university we scattered parts of a zip file for installing Doom across the generic logins used for night classes. A batch file would go and retrieve the parts, assemble them, and install, and delete itself after. To hide from the sysadmin...

    • @TheCatBilbo
      @TheCatBilbo 6 หลายเดือนก่อน +108

      That's excellent thinking! 😊

    • @arjovenzia
      @arjovenzia 6 หลายเดือนก่อน +246

      We did a similar thing in Highschool, except we renamed the to NoCD Counterstrike .zip to a random file/path on the public share (also usually in some other class shares), and saved the location to a non-descript file. Once everyone had a local copy, run the batch, and move it for the next group. He mustn't have been very good sysadmin, because there was always a copy of CS on the server somewhere, I would have looked for the file size, as it was the same copy that we originally got caught with.
      I like your method better tho.

    • @MichaelLesterClockwork
      @MichaelLesterClockwork 6 หลายเดือนก่อน +90

      @@arjovenzia There was some back and forth before we arrived at the scattered parts method.

    • @laststand6420
      @laststand6420 6 หลายเดือนก่อน +1

      That's great

    • @Ochreification
      @Ochreification 6 หลายเดือนก่อน +115

      Our sysadmin in high school would periodically delete any file with a .wad extension (which were integral components of Doom), but our solution was quite simple, we'd just rename the file extension to .was and change them back as needed... He never did figure that trick out!

  • @dannadx3840
    @dannadx3840 7 หลายเดือนก่อน +4715

    Most important conclusion:
    Rounding down pi to 3 is an acceptable practice in game development

    • @AnnieC.1993
      @AnnieC.1993 7 หลายเดือนก่อน +640

      More acceptable than whatever the fuck EA is doing

    • @SmallSpoonBrigade
      @SmallSpoonBrigade 7 หลายเดือนก่อน +151

      In general, it depends what level of accuracy and precision you need. The smaller the circle, the larger the difference.

    • @ForgottenMyth
      @ForgottenMyth 7 หลายเดือนก่อน +66

      @@AnnieC.1993 A dumpster fire is more acceptable

    • @soupcangaming662
      @soupcangaming662 7 หลายเดือนก่อน +31

      @@AnnieC.1993 "pi = 3 polygons"

    • @no_name4796
      @no_name4796 7 หลายเดือนก่อน +20

      Or just use lots of triangles instead.
      Honestly i can't really think for what you would need pi, other then round objects.
      Is there some magic optimization somewhere needing PI?

  • @MrSkaizZ
    @MrSkaizZ 7 หลายเดือนก่อน +1541

    I love the Jpeg injection part. Now the question isn't "can it run doom ?", it is "can it run on doom ?"

    • @landspide
      @landspide 7 หลายเดือนก่อน +117

      "can doom load run doom?"

    • @JoshWiniberg
      @JoshWiniberg 7 หลายเดือนก่อน +116

      DoomOS

    • @thecatofnineswords
      @thecatofnineswords 7 หลายเดือนก่อน +8

      That was indeed very cool.

    • @lilwyvern4
      @lilwyvern4 7 หลายเดือนก่อน +21

      @@landspide I'm fairly certain I've seen that. But maybe I'm just remembering that time someone (technically) got it running in Minecraft via redstone.

    • @404_brain-not-found
      @404_brain-not-found 7 หลายเดือนก่อน +9

      @@JoshWinibergnew linux distro idea. based on arch to further solidify the meme value

  • @AdrianMagni
    @AdrianMagni 7 หลายเดือนก่อน +1976

    Carmack is always right, it's circles that are wrong!

    • @SuPeRNinJaRed
      @SuPeRNinJaRed 7 หลายเดือนก่อน +99

      π = John Carmack

    • @Chad48309
      @Chad48309 7 หลายเดือนก่อน +33

      This sounds like a line from The Simpsons

    • @NickiRusin
      @NickiRusin 7 หลายเดือนก่อน +50

      of course the circles are wrong if they're coming up against supergenious alien in person suit John Carmack

    • @seltzer666
      @seltzer666 7 หลายเดือนก่อน +33

      psychic supersoldier prototype and brazilian jiu jitsu practitioner john carmack?

    • @phallen_1
      @phallen_1 7 หลายเดือนก่อน +23

      @@seltzer666 The same John Carmack who used chemlab thermite to break into his school so he could play with the school's Apple ][s.

  • @Patrick-857
    @Patrick-857 6 หลายเดือนก่อน +428

    I love that a game made in 1993 by a small team of developers who had to do crazy workarounds to achieve an 3D-like experience on hardware that wasn't ready for it, is still being experimented with, modified and studied today. Such a small game by today's standards and yet after all these years there's still things that haven't been discovered about it.

    • @alexmajor2366
      @alexmajor2366 5 หลายเดือนก่อน +18

      The sweet spot of exciting and crappy but therefore easy to copy and propagate

    • @Fire_Axus
      @Fire_Axus 3 หลายเดือนก่อน

      YFAI

    • @explosiveshitting
      @explosiveshitting 2 หลายเดือนก่อน +8

      The magic of open source

    • @Kai-tn4yx
      @Kai-tn4yx 2 หลายเดือนก่อน +5

      @@alexmajor2366 It's not crappy.

    • @alexmajor2366
      @alexmajor2366 2 หลายเดือนก่อน +9

      @@Kai-tn4yx i guess i meant something more like "crude" - not in manners but in level of detail. It's not an insult to Doom to say that there were exciting decisions made that might be called kludges, decisions intended to amaze contemporary audiences, decisions that still succeed in impressing people today - though we have easier access to tools that are much more powerful.
      However; a more painstaking and fastidiously detailed project that performed worse, accomplished less, or demanded more in other dimensions might have been less successful at being shared

  • @Evan64m
    @Evan64m 7 หลายเดือนก่อน +2585

    It turns into LSDoom

    • @SonOfMeme
      @SonOfMeme 7 หลายเดือนก่อน +102

      DooMT

    • @martybyrnemusic
      @martybyrnemusic 7 หลายเดือนก่อน +32

      @@SonOfMeme KetaDoom

    • @SonOfMeme
      @SonOfMeme 7 หลายเดือนก่อน +50

      @@martybyrnemusic nah you ruined it

    • @Flesh_Wizard
      @Flesh_Wizard 7 หลายเดือนก่อน +97

      ShrooM

    • @duffman18
      @duffman18 7 หลายเดือนก่อน

      ​@@martybyrnemusic you don't understand how drugs work. At least, not ketamine. This is not how it feels to be in a k-hole. A K-Hole is weird, it's like you can't remember how you even got there, like that scene at the cafe in Inception where Di Caprio explains that you never remember the start of a dream, you never remember how you arrived there.
      The main thing about being in a k-hole is that everything kinda starts feeling like you're in a world of bubble wrap, or that everything in the world is pixelated. But it's less that you're seeing the world like that and more like you're _FEELING_ it. Time itself stops being one smooth movement and instead becomes very jittery and only progresses in distinct pixelated chunks like that too. It becomes next to impossible to move, because every step feels like it takes an absolutely monumental amount of time to happen, and you feel so shaky and your legs weak that you don't wanna risk moving anyway and so if you do, then it'll be on your hands and knees crawling so that you don't fall over.
      And sound becomes pixelated too, if that makes sense. It probably doesn't make sense, unless you've been in a k-hole before. You know like when you put your face up to a fan and start humming into it and it makes it sound weird? It's like that. Except you're the only person who can hear sound in that way, other people just hear you sounding normal.
      It's nothing like non-euclidean Doom.

  • @Dayanto
    @Dayanto 7 หลายเดือนก่อน +351

    An issue with this is that the maps are still euclidean even though the rendering is not, so you get a clash between different geometries.

    • @stefanhoffmann5281
      @stefanhoffmann5281 7 หลายเดือนก่อน +22

      I am also sure ist Not an real non euclidea geometry. You need tensor calculations. Objects are warped and don't disappear

    • @RKroese
      @RKroese 7 หลายเดือนก่อน +9

      ​@@stefanhoffmann5281but the objects are 2D. Either visible or non visible.

    • @stefanhoffmann5281
      @stefanhoffmann5281 7 หลายเดือนก่อน +4

      @@RKroese nope : read Riemann

    • @XENOGOD
      @XENOGOD 7 หลายเดือนก่อน

      @@stefanhoffmann5281 read riemann what exactly? any specific theorems/results you could point to?

    • @ellowell8160
      @ellowell8160 6 หลายเดือนก่อน +23

      @@stefanhoffmann5281 If it breaks the rules of euclidean geometry, then that is not euclidean geometry. non-euclidean. it's not specifying what it is, just what it isn't.

  • @TerjeMathisen
    @TerjeMathisen 7 หลายเดือนก่อน +1035

    It was my friend John Cash who discovered that Doom ran by using global broadcast packets, he saw that when he used a LanAlyzer to capture the traffic from their regular night-time deathmatches on the corporate IPX net.
    When he told Carmack, Carmack replied by sending him the source code and told him to "fix it!" Cash did so and later joined Carmack and Abrash to make Quake...

    • @transsexual_computer_faery
      @transsexual_computer_faery 7 หลายเดือนก่อน +7

      what

    • @TheOriginalCoda
      @TheOriginalCoda 7 หลายเดือนก่อน +15

      @@transsexual_computer_faery What what?

    • @lordbored2706
      @lordbored2706 7 หลายเดือนก่อน +12

      The Man in Black

    • @KeksimusMaximus
      @KeksimusMaximus 6 หลายเดือนก่อน +69

      Very cool! But according to the Doom wiki, the guy was hired by Carmack for Quake 2. And he was the lead programmer there. And the man left id in 2000 and later worked on World of Warcraft at Blizzard. Talented guy. Worked as a software engineer and the passion for games led him to Carmack himself to get an offer to fix the bug in the code, all of which shaped his career in game development for years, lol

    • @TerjeMathisen
      @TerjeMathisen 6 หลายเดือนก่อน +79

      @@KeksimusMaximus The starting at Quake 2 quote is definitely wrong: John started well before the original quake architecture had settled down, something which caused a lot of issues when Carmack's very frequent rewrites caused Cash's bot code to stop working.

  • @memes_gbc674
    @memes_gbc674 7 หลายเดือนก่อน +2955

    lets normalize a pi=e% speedrun

    • @NoahtheEpicGuy
      @NoahtheEpicGuy 7 หลายเดือนก่อน +140

      heh normalize... you're funny.

    • @larseriksson1184
      @larseriksson1184 7 หลายเดือนก่อน +21

      I read pi is on a spectrum

    • @bibo2445
      @bibo2445 7 หลายเดือนก่อน +31

      @@NoahtheEpicGuy Heh heh shut up

    • @swagmoneybuge
      @swagmoneybuge 7 หลายเดือนก่อน +45

      DOOM (Engineer Edition)

    • @Amberlynn_Reid
      @Amberlynn_Reid 7 หลายเดือนก่อน +20

      Let's normalise being a 30 year old virgin

  • @CoolAsFreya
    @CoolAsFreya 7 หลายเดือนก่อน +1055

    When he said "Pi=0 does it run?" and all the software developers in the audience confidently yell "NOOO!"

    • @M4Dbrat
      @M4Dbrat 7 หลายเดือนก่อน +60

      The "it doesn't compile" part is interesting, because calculating the LUTs is a build step and the program that does it crashes.
      And the segfaults happen because it tries to look up a value for an angle that's not in the table, I assume

    • @Serenity_Dee
      @Serenity_Dee 7 หลายเดือนก่อน +34

      Yeah, I figured it would throw a divide by zero error or, because of the lookup table, an indexing error.

    • @StijnDeWitt
      @StijnDeWitt 6 หลายเดือนก่อน +59

      @@Serenity_Dee As strange as PI is, it has to bow its head to zero, which must be the strangest number of all!!

    • @Xeridanus
      @Xeridanus 6 หลายเดือนก่อน +2

      @@Serenity_Dee I assumed it's because the values became too big and overwrote something else in the code since it is all bit shifted nonsense.

    • @BritishBeachcomber
      @BritishBeachcomber 5 หลายเดือนก่อน

      Nooo. They said "error: divide by zero"

  • @veiledAutonym
    @veiledAutonym 7 หลายเดือนก่อน +677

    Now I want to make the lookup tables dynamic and make damage / healing cause the tables to regenerate with a value of pi with accuracy based on remaining health

    • @thehellriddenBaron
      @thehellriddenBaron 7 หลายเดือนก่อน +62

      Damn, that actually sounds really dope. Throw in some palette magic and maybe even texture shifting, sprite scaling or sound pitching as well while you're at it :D

    • @hornylink
      @hornylink 7 หลายเดือนก่อน

      or use dynamic tables that changes the value of pi to something between 2.5 and 3.3 every x seconds

    • @BradenBest
      @BradenBest 7 หลายเดือนก่อน +49

      ​@@thehellriddenBaron I saw this suggestion (linking pi to your health) in another comment and got nerd sniped by it. Long story short, I uploaded a video to my channel of me attempting to play nightmare with this change, and it's very cursed. In fact that's the title of the video. "Doom E1M1 Nightmare Difficulty but it's cursed". I also included the git diff in a gitlab snippet which is linked in the description.
      It would probably be more balanced being normalized to a range other than 1-100. Right now it's clamped to 1 so dying doesn't crash the game, but by the time you're below 50 health, you've already lost because basic navigation becomes impossible. Like, I'm in E1M2 right now and I'm stuck in the east stair wing because I can't turn around to get to the door.

    • @robin9740
      @robin9740 7 หลายเดือนก่อน +3

      ​@@BradenBestWoooow that's awesome!

    • @bosobot
      @bosobot 7 หลายเดือนก่อน

      @@BradenBest real one

  • @florianstock376
    @florianstock376 6 หลายเดือนก่อน +284

    Strange that nobody is pointing out, that the wrong PI is not wrong. At least not more wrong, than the "correct" Pi. 3.141592657 and 3.141592654 have the same 32 bit-IEEE 754 representation, as the "decimal" number has too much precision (assuming float is compiled to the 32 bit-IEEE, which it usually is). Usually you have 23 bit with 32 bit floats, meaning that you got 23*ln(2)/ln(10) = (almost exactly) 7. Which means everything beyond the 7th digit is irrelevant in the const definition.

    • @PatGunn
      @PatGunn 5 หลายเดือนก่อน +8

      I think x87 used 80-bit mostly?

    • @ErnestoStaccolanana
      @ErnestoStaccolanana 5 หลายเดือนก่อน +18

      indeed both values get approximated to 3.141592741 which is quite off in the last 3 digits

    • @L4ki0
      @L4ki0 5 หลายเดือนก่อน +5

      And btw "correct" pi number is actually incorect

    • @shaneclark5022
      @shaneclark5022 5 หลายเดือนก่อน

      Shut up nerd!

    • @reprC
      @reprC 5 หลายเดือนก่อน +11

      From what I recall from the linuxdoom source, 16.16 fixed-point numbers are used over IEEE-754 floats. Something to do with FPUs not being particularly fast at the time (or even available in some cases). All uses of float in the codebase seem to be for debugging only and are compiled out with preprocessor #if/#else blocks. The code is in the m_fixed.h/c files. Granted, I’ve not read the code completely, so there may be some places where float is used.
      The BAM values used in the LUTs seem to be different entirely. 2pi is mapped to the range of a 32 bit unsigned int, so 0 & 2pi = 0x00000000, pi = 0x80000000, etc.
      My math may be wrong so correct me if I am, but this would make epsilon (smallest step between values) to be 2pi/(2^32 -1), roughly 1.49e-9. This would mean that there is barely enough precision for the “incorrect” and “correct” pi values to be distinguishable as they would be 2epsilon apart.
      Also, I just did a quick grep of the linuxdoom source and found that PI is defined, but appears to not be used anywhere. It is also compiled out with an #if 0 block, using the aforementioned LUTs instead. So I guess it was inconsequential that the constant was wrong? I’ve not looked at chocolate doom, but I’m guessing they’ve re-enabled the use of IEEE floats which would make the PI constant necessary again.

  • @pleasantivan
    @pleasantivan 7 หลายเดือนก่อน +1650

    10:33 me trying to play doom after the lobotomy:

    • @monad_tcp
      @monad_tcp 7 หลายเดือนก่อน +1

      you should have two lobotomies, not only one.

    • @xanderplayz3446
      @xanderplayz3446 7 หลายเดือนก่อน +5

      ???

    • @Skiivin
      @Skiivin 7 หลายเดือนก่อน +214

      @@xanderplayz3446sorry, let me explain it for you. It’s them trying to play doom after the lobotomy

    • @BobbyJohnson-n4u
      @BobbyJohnson-n4u 7 หลายเดือนก่อน +95

      Me trying to understand words after the lobotomy

    • @Protog3n_pd2
      @Protog3n_pd2 7 หลายเดือนก่อน +9

      #relatable

  • @PTFVBVB
    @PTFVBVB 7 หลายเดือนก่อน +3897

    As an engineer, I use the identity of pi=e=√g

    • @wernerviehhauser94
      @wernerviehhauser94 7 หลายเดือนก่อน +463

      And always get saved by sufficiently high safety factors

    • @keiyakins
      @keiyakins 7 หลายเดือนก่อน +530

      pi ≈ 1. it has the right number of digits

    • @neohavic6012
      @neohavic6012 7 หลายเดือนก่อน +187

      As a physicist I hate that I love this

    • @dsdy1205
      @dsdy1205 7 หลายเดือนก่อน

      Found the astronomer ​@@keiyakins

    • @FunctionallyLiteratePerson
      @FunctionallyLiteratePerson 7 หลายเดือนก่อน +166

      2=e=3=pi=sqrt(g)

  • @GinkgoBalboa142
    @GinkgoBalboa142 7 หลายเดือนก่อน +168

    I know nothing about programming and I do math on my fingers but I find this absolutely fascinating.

    • @Skeletons_Riding_Ostriches
      @Skeletons_Riding_Ostriches 6 หลายเดือนก่อน +5

      On your fingers you do arithmetic, not math.

    • @GinkgoBalboa142
      @GinkgoBalboa142 6 หลายเดือนก่อน +43

      @@Skeletons_Riding_Ostriches I don't know the difference :D

    • @sossupummi
      @sossupummi 6 หลายเดือนก่อน +4

      @@GinkgoBalboa142 :DDD

    • @Dutch3DMaster
      @Dutch3DMaster 5 หลายเดือนก่อน +10

      @@GinkgoBalboa142 Arithmetic is counting up and down and multiplying, to take a very brief approach. Math is where you start to work with variables, equations, and in games, or programming in general, those variables are a very, very big part of the program.
      And those equations, a lot of basics of programming are always working with them, either trying to make them equal (think of how a website works with a photogallery, and the end or the beginning of the photogallery shows 20/20 or 1/1), but it has to calculate the picture amounts and the number in between as well, which is where the variables come in and the equation isn't necessarily equal.
      Hope this clears up the difference :P

    • @GinkgoBalboa142
      @GinkgoBalboa142 5 หลายเดือนก่อน +7

      @@Dutch3DMaster OOOOOOOOOHHHH!

  • @paultapping9510
    @paultapping9510 7 หลายเดือนก่อน +292

    wait. That timeline though? Doom was released in 92 but opensourced in 1997? Opensourcing a game after just 5 years of release is wild, considering modern aaa are still expecting players to purchase games made 10+ years ago for modern day, adjusted for inflation, full-price.

    • @vytah
      @vytah 7 หลายเดือนก่อน +177

      90s were a period of rapid technological breakthroughs, a game would look completely outdated after just a few years. Quake came out in 1996, and it had a fully 3D graphics engine with free look. At that point, a game like Doom had no market value.

    • @paultapping9510
      @paultapping9510 7 หลายเดือนก่อน +45

      @vytah indeed, indeed. It's such a trip seeing how quite much has changed in the intervening years. Such a shame we don't live in the timeline where this is still the norm (opensourcing older games, that is).

    • @atifarshad7624
      @atifarshad7624 7 หลายเดือนก่อน +49

      1993 actually. Doom released in December 1993 and became source code was released in December 1997. So just 4 years.

    • @ThePurplePassage
      @ThePurplePassage 7 หลายเดือนก่อน +48

      It's not the actual game (as in levels, graphics, sounds etc) that was made free, just the engine source code - unless you were going to pirate Doom then you would have been expected to pay for it

    • @psykauze
      @psykauze 7 หลายเดือนก่อน +26

      The Doom's distribution was initially a shareware. Meaning the Game Engine was free to share and use but not the contents of the game itself (maps, graphics, sounds...).
      Elite had just released the source code of the game engine, by doing this, the game is technically playable and saleable on everything.

  • @davidgarcia1163
    @davidgarcia1163 7 หลายเดือนก่อน +129

    I love how with this crowd the question "Why do anything like this?" is not asked, or even considered.

  • @Kazuo1G
    @Kazuo1G ปีที่แล้ว +392

    Pi over 2: You have collapsed space-time into a smaller area. XD

    • @ginogarcia8730
      @ginogarcia8730 7 หลายเดือนก่อน +4

      ahhh fascinating

  • @yellowblanka6058
    @yellowblanka6058 7 หลายเดือนก่อน +334

    The “I hope somebody got fired for that blunder” was a tongue-in-cheek Simpsons reference, lol

    • @dave7922
      @dave7922 7 หลายเดือนก่อน +26

      “Pi is equal to exactly three!!!”

    • @zimriel
      @zimriel 6 หลายเดือนก่อน +17

      @@dave7922 not in Indiana, it's legally four by state law

    • @yesdcotchin
      @yesdcotchin 3 หลายเดือนก่อน

      ​@@dave7922*"Pi is exactly three"

    • @oz_jones
      @oz_jones 2 หลายเดือนก่อน +1

      ​@@zimrielit's not. But it almost was.

  • @The-Anathema
    @The-Anathema 7 หลายเดือนก่อน +328

    The question really is, between pi and 4, where exactly does it segfault. It clearly doesn't like pi=4 but likes pi=3.141952654 so where is the cutoff? Is 3.5 fine? 3.75? 3.25?

    • @4rumani
      @4rumani 7 หลายเดือนก่อน +59

      I thought about this too. Why didn't he put this in his talk??

    • @sophiacristina
      @sophiacristina 7 หลายเดือนก่อน +36

      And why would it segfault to begin with?!

    • @mrgunn3r904
      @mrgunn3r904 7 หลายเดือนก่อน +25

      Theres probably a bounding limit on the functions used , maybe they limited the domaine of definition to - pi to pi. And since the real pi is smaller by the the pi coded it works. Idk tho just a hypothesis

    • @The-Anathema
      @The-Anathema 7 หลายเดือนก่อน +31

      Maybe, but then that would require the function to have the correct definition of PI as well. More probably the maths result in a runtime error (division by zero or other illegal operation) at some value greater than pi.
      It's also worth noting that carmack's wrong pi is technically larger than pi, by 0.0000000003 but still it *is* larger, so the precise cutoff would be interesting (and the effects thereof likely subtle since 4 crashes)
      Anyway, it'd be trivial enough to test this myself but I don't actually care enough to do that. I just wish it was covered in the talk is all.
      Hell, given a few minutes I could work through the code and figure out why it crashes too but again: not worth the effort.

    • @Blxz
      @Blxz 7 หลายเดือนก่อน +35

      More interesting questions than does it play at -1000000. The talk had the bones of a good concept but not properly explored.

  • @surthing6711
    @surthing6711 7 หลายเดือนก่อน +460

    imagine making a friend on acid play the 3π version while he thinks its just normal doom

    • @zloidooraque0
      @zloidooraque0 7 หลายเดือนก่อน +45

      probably will look normal to him and he will doubt acid kicked in

    • @benturner6270
      @benturner6270 7 หลายเดือนก่อน +18

      "these tabs were bunk, man. you got burned"

    • @user-qq2ez3jd6g
      @user-qq2ez3jd6g 5 หลายเดือนก่อน +2

      Or you could give him a placebo and let him figure it out on his own.

    • @just-yellow
      @just-yellow 4 หลายเดือนก่อน

      why does it have to be a guy?

    • @zloidooraque0
      @zloidooraque0 4 หลายเดือนก่อน

      @@just-yellow guy.. chick.. no the ass difference

  • @SeveralGhost
    @SeveralGhost 7 หลายเดือนก่อน +94

    The next frontier isnt what can we run doom on, its what we can run in doom. Asteroids is just the first step.

    • @endymallorn
      @endymallorn 6 หลายเดือนก่อน +3

      Asteroids was always intended as a map-screen Easter egg, though?

    • @matteocristini6221
      @matteocristini6221 5 หลายเดือนก่อน +5

      Believe it or not someone figured out how to play Doom in Doom.

  • @ManSkirtBrew
    @ManSkirtBrew 6 หลายเดือนก่อน +20

    I was a student living on campus at Stevens Tech in 1993 when this was released, and we absolutely did cripple the network, despite their best efforts. What a great memory!

  • @knightrider585
    @knightrider585 7 หลายเดือนก่อน +51

    I think for most of the history of trigonometry the fastest way to calculate trig functions was using pre-computed tables.

  • @plasma5545
    @plasma5545 7 หลายเดือนก่อน +542

    breathes really heavily into your ear "yeah"

    • @yobson
      @yobson 7 หลายเดือนก่อน +111

      it's yeah, pretty yeah, a little... yeah

    • @SkilledTadpole
      @SkilledTadpole 7 หลายเดือนก่อน +71

      "so now it starts to just be yeah it's uh it's yeah um a little yeah pretty pretty hard"

    • @JuanMendoza-qd5lm
      @JuanMendoza-qd5lm 7 หลายเดือนก่อน +25

      ​@@SkilledTadpole Boioioioioioing🍆

    • @zelda_smile
      @zelda_smile 7 หลายเดือนก่อน +7

      "I bet he's thinking about that hottie in front of us"
      Him:

    • @KingLich451
      @KingLich451 7 หลายเดือนก่อน +9

      ​@@zelda_smilenothing hotter than my fridge running doom

  • @lesbarathirdir5178
    @lesbarathirdir5178 4 หลายเดือนก่อน +26

    Me at 03:15 in the morning: This video about non-euclidean Doom looks interesting.

    • @aidey833
      @aidey833 4 หลายเดือนก่อน +2

      its 2:50 right now LMAO

    • @hardtakeoff
      @hardtakeoff 4 หลายเดือนก่อน +2

      3:04 here

    • @gordonbill
      @gordonbill 2 หลายเดือนก่อน +1

      5.15 am

    • @uncooked_ham
      @uncooked_ham 2 หลายเดือนก่อน +5

      Me at 3.14159 in the morning...

  • @SuPeRNinJaRed
    @SuPeRNinJaRed 7 หลายเดือนก่อน +124

    I’d say “π = e” is the sweet spot 9:33 (aka DrunkDOOM) but ShroomDoom at 10:20 might be a little too high...

  • @helium73
    @helium73 7 หลายเดือนก่อน +142

    I wonder if you could use this for VR games. That way you can walk for miles without leaving your room. You'd probably get dizzy because you'd have to end up walking in cricles. However what if for every pi you used 2*pi that way you are trying to go left in the game but you actually walk in a circle. In order to walk slightly right you walk in a circle. Or maybe a straight line in the game requires you to walk in a circle. Maybe you could do it outside you walk in a large circle to go in a straight line. Turning left requires more turning than turning right. And going in a straight line requires turning.

    • @saschabaer3327
      @saschabaer3327 7 หลายเดือนก่อน +87

      This sounds like motion sickness: the game

    • @bb010g
      @bb010g 7 หลายเดือนก่อน

      Check out Hyperbolica.

    • @Neubulae
      @Neubulae 7 หลายเดือนก่อน +15

      It's been around for a while and wobbling your head changes direction. Motion Sickness: The Game it is!

    • @breathlessblizzard
      @breathlessblizzard 7 หลายเดือนก่อน +38

      This exists! It is called "Redirected Walking" in research papers, see Nilsson et al, IEEE 2015

    • @enoua5222
      @enoua5222 7 หลายเดือนก่อน

      Check out Hyperbolica! It's a VR game with noneuclidean spaces -- the main hub area has 5 squares to a corner so it has more space per space

  • @tsoupakis
    @tsoupakis 6 หลายเดือนก่อน +5

    As a psychologist and psychonaught the last couple of years with huge interest in psychedelics and the nature of reality through philosophy and perspective and not through maths and with a background in it & coding I find this presentation extremely entertaining and informative.
    Thank you my friend

  • @ObscuraDeCapra
    @ObscuraDeCapra 7 หลายเดือนก่อน +27

    Having spent way too much time in E1M1 in my life... this makes my skin absolutely crawl in a way I can't adequately explain.

    • @oz_jones
      @oz_jones 2 หลายเดือนก่อน +1

      It feels like a... Phobos Anomaly

  • @forbiddenera
    @forbiddenera 7 หลายเดือนก่อน +137

    9:20 but what aboit non-hitscan weapons? Those might be fkd

    • @ph0end
      @ph0end 7 หลายเดือนก่อน +34

      yeah I really wanted to see a rocket

    • @makipri
      @makipri 7 หลายเดือนก่อน +2

      BFG-9000!

    • @ph0end
      @ph0end 7 หลายเดือนก่อน +5

      @@makipri
      I could be wrong but given that the only examples shown on his slides of the Doom splash-screen are those from the shareware doom1.wad, I think that's what he was using in this demonstration. If so, Plasma Rifle and BFG are unavailable even with cheats; the only non-hitscan weapon he could have shown was the Rocket Launcher.

    • @megan00b8
      @megan00b8 7 หลายเดือนก่อน +9

      ​@@ph0endTechnically enemies like imps fire non hitscan projectiles.

    • @Dartingleopard
      @Dartingleopard 3 หลายเดือนก่อน +2

      ​@@megan00b8Yeah, those are easy to dodge if you have enough space and know what you are doing somewhat. Hitscan attacks can miss but only if you move away from line of sight.

  • @julianaradanas6346
    @julianaradanas6346 ปีที่แล้ว +218

    This is why all the cthulu mythos inhabitants go insane lol

    • @RKroese
      @RKroese 7 หลายเดือนก่อน +7

      Omg Carmack is Cthulu

    • @Merble
      @Merble 6 หลายเดือนก่อน +3

      Nah, it's just because Lovecraft was really afraid of brown people and of the Hindu gods being real.

    • @Dizerfullpower
      @Dizerfullpower 6 หลายเดือนก่อน +1

      Missed the part where hindu gods were unspeakably horrible

    • @Merble
      @Merble 6 หลายเดือนก่อน +2

      @@Dizerfullpower I don't know about unspeakably, maybe on par with Yahweh, Lord of Armies though. I don't recall any eternal torture or such in Hindu lore.

    • @Dizerfullpower
      @Dizerfullpower 5 หลายเดือนก่อน +2

      @@Merble well Vishvarupa concept is nightmare fuel for one

  • @bigginsmcsauce
    @bigginsmcsauce 7 หลายเดือนก่อน +113

    pi=3 is basically Playstation 1 mode!

    • @TheCarPassionChannel
      @TheCarPassionChannel 6 หลายเดือนก่อน +16

      Except Doom came out before PS1, which makes it look even more impressive that it needs a downgrade to look like PS1 haha

    • @Dartingleopard
      @Dartingleopard 3 หลายเดือนก่อน

      ​@@TheCarPassionChannelDoom actually had a PS1 port, it was the best 90s console port.

    • @VashStarwind
      @VashStarwind 3 หลายเดือนก่อน

      @@Dartingleopard Yeah but that was like 3 or 4 years after doom first came out

  • @drd2093
    @drd2093 7 หลายเดือนก่อน +17

    “Hyperbolica” on Oculus Quest deserves special mention. Non-Euclidean vr is fun

  • @keithincomics6102
    @keithincomics6102 7 หลายเดือนก่อน +41

    Stuff like this makes math look cool. If I had lessons in high school that allowed me to slice open Doom and play around then maybe I wouldn't have had to take Algebra II three fucking times.

    • @Dutch3DMaster
      @Dutch3DMaster 5 หลายเดือนก่อน +4

      Honestly, merely having examples on why having to learn equations that did stuff like x6+yX = 25 can be useful by showing examples of simple basic website code of like a photogallery or something.
      Like to me it was one of the most useless types of things I could learn in math class, but when I started trying some of the basics in programming I started realizing why those comparisons could be useful, just like variables.
      It would've given me so much more insight instead of just having my math teacher say "Don't try to understand some things in math, just accept that they are like that".

    • @SoldierX32
      @SoldierX32 2 หลายเดือนก่อน +1

      how and why tf would you take algebra 2 three times?? are you special?

  • @facundosoler2200
    @facundosoler2200 7 หลายเดือนก่อน +6

    That was a very fun talk given that code is involved ! Its amazing to see that after 30 years since launched this game is still disscused and studied. What a technical breakthrough Doom was ! ❤🎉

  • @scmstr
    @scmstr 7 หลายเดือนก่อน +28

    I wonder if you could find the limits, figure out a way for the values and tables to be recalculated every tick, and then modulate the base value of pi with a (limited) feedback loop of something else, like the player's health or the look vert angle or some combination of who-knows-what-else.

    • @philipegoulet448
      @philipegoulet448 7 หลายเดือนก่อน +1

      That would be so sick!

    • @scmstr
      @scmstr 7 หลายเดือนก่อน +4

      @@philipegoulet448 you could even make it so it wouldn't update if you didn't move location, so that you had a *chance* at gaining a bearing.

  • @RoamingAdhocrat
    @RoamingAdhocrat 7 หลายเดือนก่อน +47

    not sure I've ever been nauseated by a tech talk before

  • @unic0de-yvr
    @unic0de-yvr 7 หลายเดือนก่อน +31

    "...and smokes of assorted types." Nice, very subtle.

  • @JetJockey87
    @JetJockey87 7 หลายเดือนก่อน +3

    Software Engineer - Data Platforms here. Precomputing via LUTs is such a great strat. I use it all the time, especially when you don't need reactive concurrency for data retrieval.
    Say you've got a PowerBI model (ugh IKR), selecting from data on that model takes compute, DAX on the query takes compute... Say, why don't we use a CTE to precompute the results for the semantic model? Then we can just create a holding table and truncate it and insert from the view every time we want to run this report.
    Well that just removed a lot of compute time for end users!
    And since we're inserting a whole dataset, we can then alias that against anything else we might want precomputed... How about a date slicer with historical values grouped by date? Dynamic, complex, historical queries. In PowerBI. Resolved to the end user in 0.001s
    Powerful stuff LUTs.
    Oh they also make LODs a lot easier in Game Design. Dame with lighting and reflection probes too actually.

  • @draco18s
    @draco18s 7 หลายเดือนก่อน +46

    I just submitted a bug report to a Google project and a Starlink project that had this wrong value of pi present.
    It makes me giggle like a little girl to know that even such large companies have replicated this discrepancy.

    • @CellGames2006
      @CellGames2006 7 หลายเดือนก่อน +15

      Heheh, imagine non-Euclidean geometry causing Musk's spaceships to explode...

    • @henninghilgers7187
      @henninghilgers7187 5 หลายเดือนก่อน +6

      I found 3.141592657 in a NASA Script from 1975.

    • @gayusschwulius8490
      @gayusschwulius8490 หลายเดือนก่อน +1

      It doesn't matter if it's stored as a 32 bit float anyway (as the precision is only good enough for seven digits), so I wonder whether it can even be considered a bug if it makes no difference to the compiled executable.

  • @renakunisaki
    @renakunisaki 7 หลายเดือนก่อน +14

    8:00 the part you came for

  • @kargaroc386
    @kargaroc386 7 หลายเดือนก่อน +99

    Speedrunners: "What's code injection? I've never heard about that before and don't know what you can do with it."
    (and then they get told)
    "Oh its arbitrary code execution? cool"

  • @Spax_
    @Spax_ 7 หลายเดือนก่อน +34

    well now I'm really curious what the highest value pi can be while keeping the game playable

    • @yixing09
      @yixing09 7 หลายเดือนก่อน +7

      same here. he had a whole gradient over numbers lower than pi, and none noticeably greater than pi

    • @seriouscat2231
      @seriouscat2231 7 หลายเดือนก่อน +6

      If the lookup table for tangents had 4096 slots, then it's probably π + (π / 4096) or something like that, which causes an additional value in the table to become infinity or switch sign.

    • @asdbanz316
      @asdbanz316 6 หลายเดือนก่อน

      ​@@seriouscat2231what if you manually fix those values or set maximum for them to see how it runs?

  • @jonnywatts2970
    @jonnywatts2970 28 วันที่ผ่านมา

    Love the intro as if anybody at the talk doesn't already know.

  • @pastorpresent4940
    @pastorpresent4940 7 หลายเดือนก่อน +12

    I used to play this a lot as a kid; it was fun but also a frightening experience

  • @Jakob.Hamburg
    @Jakob.Hamburg 6 หลายเดือนก่อน +2

    Very nice and interesting speech/presentation. The code injection is awesome. :D

  • @the_pieces_fit
    @the_pieces_fit 7 หลายเดือนก่อน +174

    8:37 when the shrooms hit

    • @haydenlandry3837
      @haydenlandry3837 7 หลายเดือนก่อน +16

      Things are a little off, the walls move in a way that you don't expect, amd things start to shift 🤣🤣🤣

    • @ChaplainDMK
      @ChaplainDMK 7 หลายเดือนก่อน +16

      Movies trying to show how a trip looks: *pink floating elephants everywhere*
      Actually how a trip looks like: *Doom with Pi=e*

    • @Flesh_Wizard
      @Flesh_Wizard 7 หลายเดือนก่อน +5

      Shrooms will eat a slice of your pi

    • @PsychonauticExplorer
      @PsychonauticExplorer 7 หลายเดือนก่อน +6

      Shrooms hit in a nearby forrest once and I wanted to walk home as the mosquitos bugged me... normally a 15 min walk now felt like walking around in a maze. Everything further away than the tips of my shoes didn't make sense anymore... everything I focused on in front of me became an individual and isolated piece/snapshot of reality suspended in a void as if my brain lost the ability to "glue" the pieces together and turn everything in a coherent reality, which made navigating very challenging. A weak mind would've probably freaked out, I thought it was as interesting as it was annoying. The interesting part was having a direct experience on how bits and pieces of smaller realities become a coherent big reality.

    • @RaposaCadela
      @RaposaCadela 7 หลายเดือนก่อน

      kinda accurate actually huh

  • @Oli1974
    @Oli1974 7 หลายเดือนก่อน +17

    Lovecraft would have loved that. He anticipated that in his famous story "The Call of Ctulhu": "... and twisted menace and suspense lurked leeringly in those crazily elusive angles of carven rock where a second glance shewed concavity after the first shewed convexity."

    • @ProgrammedForDamage
      @ProgrammedForDamage 6 หลายเดือนก่อน +3

      I believe the narrator describes running into a wall that wasn't there. Now I see what he was on about.

  • @ObviousSchism
    @ObviousSchism 7 หลายเดือนก่อน +8

    Such an enjoyable presentation. Thanks for this!

    • @cichlisuite2
      @cichlisuite2 7 หลายเดือนก่อน

      I wish I could understand why anyone would think this. I'm trying to put myself in the shoes of a software engineer and still can't see how I would find this entertaining or even mildly interesting? If you can explain it, I'm curious?

    • @nickkohlmann
      @nickkohlmann 7 หลายเดือนก่อน +3

      ​@cichlisuite2 I randomly came across this. I have no idea about code or developing, neither am I good at maths. I clicked it out of pure curiosity expecting the game to look trippy with changed pi values, and it did. That was neat :) Hence me liking this.

    • @cichlisuite2
      @cichlisuite2 7 หลายเดือนก่อน

      @@nickkohlmann Thanks for the explanation. I also randomly came across it and watched hoping it might show something interesting. It wasn't that trippy to my eyes and the presentation style was about as drab as it could be. But good to know that for some the visuals alone were enough to generate enjoyment. I thought maybe you might have to understand coding or game mechanics.

    • @bramvanduijn8086
      @bramvanduijn8086 7 หลายเดือนก่อน

      @@cichlisuite2 You never think "what would the universe look lik e if the constants are different?" or "what would it be like to live in a two dimensional world?" If you would like to explore the second question, go read the book Flatland by A. Square.

  • @vapourmile
    @vapourmile 7 หลายเดือนก่อน +101

    I think programmers should stop abusing the term "non-Euclidian". If you screw with the variables (or constants) in a program so it doesn't work properly anymore that isn't non-Euclidian it's just intentionally introducing bugs into a program which still uses Euclidian geometry only it doesn't produce the calculations you expect.

    • @nowonmetube
      @nowonmetube 7 หลายเดือนก่อน +16

      Yesn't

    • @troyjohnson2137
      @troyjohnson2137 7 หลายเดือนก่อน +17

      so you're telling me that making a euclidian world work in a way that breaks the euclidian part of it doesn't make it non-euclidian?

    • @vapourmile
      @vapourmile 7 หลายเดือนก่อน +6

      @@troyjohnson2137
      It isn't breaking anything. It's just changing the formula.
      If you swap 2 + 3 = 5 for 2.1 + 3 = 5.1 you haven't broken anything.

    • @SebastianGrantElKiva
      @SebastianGrantElKiva 7 หลายเดือนก่อน +1

      @@nowonmetube😂

    • @bramvanduijn8086
      @bramvanduijn8086 7 หลายเดือนก่อน +9

      Doesn't the change to pi make movement of the character non-euclidian? Well technically, the character doesn't move, the world moves around the character, but it does so relative to the player, so it is in essence a circle around the character. So by changing the value of pi, that circle now has a curvature stronger or weaker than it should have. Which makes it non-euclidian, yes?

  • @definitelyhexed
    @definitelyhexed 6 หลายเดือนก่อน +5

    A few of us playing Doom in 93 brought our uni network to a standstill. So we used to play after 5pm.

  • @kjeldgaard0
    @kjeldgaard0 7 หลายเดือนก่อน +4

    If you compute the circumference of Earth using the incorrect value, the result is 4 cm larger than using the correct value, so errors are negligible. However, it would be interesting to use the value 3.2 for pi in this simulation, since this was the value proposed in the Indiana pi bill of 1897, that sought to fix the value of pi once and for all. Using the Indiana value for pi, the calculation of Earth's circumference would be 742.6 km too large.

  • @champagnesupernova1839
    @champagnesupernova1839 7 หลายเดือนก่อน +42

    code injection via jpg? so you could port pico-8 stuff to run on doom?

    • @abcpea
      @abcpea 7 หลายเดือนก่อน +14

      but will it run Doom?

    • @xs246
      @xs246 7 หลายเดือนก่อน +12

      to run Doom on Doom

    • @champagnesupernova1839
      @champagnesupernova1839 7 หลายเดือนก่อน +14

      @@abcpea someone did port doom to the pico-8, so it might be possible :3

    • @dawid035
      @dawid035 7 หลายเดือนก่อน +2

      ​@@champagnesupernova1839It could be, which makes it even more interesting

  • @suhaschelian
    @suhaschelian หลายเดือนก่อน +2

    The title oversells things quite a bit. Mostly they change the value of pi, which affects graphics rendering. Non-Euclidean geometry would be things like spherical or hyperbolic geometry. That would make traveling between rooms quite interesting!

    • @suhaschelian
      @suhaschelian หลายเดือนก่อน

      This: th-cam.com/video/yqUv2JO2BCs/w-d-xo.html&ab_channel=ZenoRogue

  • @jimmy_jamesjams_a_lot4171
    @jimmy_jamesjams_a_lot4171 6 หลายเดือนก่อน +3

    SO MANY firsts to my disbelief. I mean, this is a first person shooting game, and doesn’t even employ DirectX because it’s from a time before DirectX - probably 10 years before or more. I can recall a few of my very first encounters with l desktop computers where x86 machines required the user to type a few DOS commands to actually start up Doom. Reminds me of Sierra games. The guys who created Doom though - must be some awesome people - for giving Doom the open source licensing at a time when Napster would be the big media buzz for a couple years at least… what great and special times these software engineers helped bring to us!

    • @StijnDeWitt
      @StijnDeWitt 6 หลายเดือนก่อน +3

      It may well be that without DOOM, DirectX would have come later. DOOM exploded onto the scene and everyone wanted a part of it. It dod something that most would have thought was impossible on the hardware of those days. Its impact on gaming cannot be overestimated.

    • @Dartingleopard
      @Dartingleopard 3 หลายเดือนก่อน

      DirectX came in the late 90s, maybe only a few years after Doom, not 10+

    • @kingcosworth2643
      @kingcosworth2643 11 วันที่ผ่านมา

      Doom was before Napster

  • @TheChrisLeone
    @TheChrisLeone 2 หลายเดือนก่อน

    I really like the speaker, very genuine and clearly really enjoying talking about his experiments

  • @tylerduncan5908
    @tylerduncan5908 7 หลายเดือนก่อน +6

    The largest value of pi I would assume is whatever value that the lookup table will no longer be able to compute.

  • @LumpyFPV
    @LumpyFPV 25 วันที่ผ่านมา +1

    A lot of this was very confusing to me, but watching and pretending I knew what dude was talking about the whole time made me feel better about my lack of brainpower.

  • @QQ-rx9xp
    @QQ-rx9xp 6 หลายเดือนก่อน +10

    The jpeg injection has flipped the eternal question of “Can it play doom?” into “Can doom play it?”, and I love it!

    • @electricspider2267
      @electricspider2267 5 หลายเดือนก่อน +1

      Can doom be played on doom?

    • @P4BL0_2
      @P4BL0_2 3 หลายเดือนก่อน +1

      ​@@electricspider2267yes, yes it can

  • @marcocorrieri3681
    @marcocorrieri3681 7 หลายเดือนก่อน

    Guys... I really love you so much... thanks a lot! I was searching for an inspiration for describing not euclidean spaces in a Call of Cthulhu adventure. Now i have it

  • @antonc81
    @antonc81 7 หลายเดือนก่อน +29

    Let’s take it into the imaginary realm:
    Pi = i

    • @P4BL0_2
      @P4BL0_2 3 หลายเดือนก่อน +1

      Make sure it's √(-1) because otherwise i could be seen as a variable

  • @StunMuffin
    @StunMuffin หลายเดือนก่อน +1

    Most entertaining talk I ever see 🎉❤ amazing.

  • @antivanti
    @antivanti 7 หลายเดือนก่อน +4

    Not only was there no 3D acceleration. There wasn't even floating point acceleration on the machines it was designed for

  • @blusterhash
    @blusterhash 7 หลายเดือนก่อน +1

    Lol, that was my idea for day of PI 14 of March, glad that somebody made this already and i don't have to recompile any doom port for that :)

  • @dymaxion3988
    @dymaxion3988 7 หลายเดือนก่อน +14

    I like how the slide spelled it “segway” instead of “segue” - the homophone-induced visual metaphor is so strong for me that they’re just the same word in my mind

  • @shankararhuddlan270
    @shankararhuddlan270 หลายเดือนก่อน

    I just love when he says "with enough intoxication you can recreate this"

  • @mohsinnaseer9892
    @mohsinnaseer9892 7 หลายเดือนก่อน +3

    You need lookup table because calling sin and cos function from
    C++
    Requires a call to math co processor everytime.
    This means halting ALU every time. Can cause bottleneck in speed.

    • @mohsinnaseer9892
      @mohsinnaseer9892 7 หลายเดือนก่อน +1

      So LUT Caches those values
      In array on startup
      So you don't need to call sin or cos functions everytime.

  • @thelizardking3866
    @thelizardking3866 3 หลายเดือนก่อน

    It makes so much sense because the value of pi effectively defines the tangents that hold gsme entities to their source locstions. Because the scale hasnt been impacted, the entities fail to meet their full space and thus bounce between them whenever the player moves because the one entity is trying to occupy two spaces at once. Really awesome game and awesome POC.

  • @bragee
    @bragee 4 หลายเดือนก่อน +4

    As an engineer, I confirm that this is the most nerdy thing ever posted

  • @ThePotatoWaveOfficial
    @ThePotatoWaveOfficial 4 หลายเดือนก่อน +1

    "You don't need to be good at math to be good at coding" They say. The great developers are number geniuses and this proves it.

  • @ObiwanNekody
    @ObiwanNekody 7 หลายเดือนก่อน +7

    You didn't try the Indiana Legal pi of 3.2 😢

  • @Krellan
    @Krellan 6 หลายเดือนก่อน

    Here's a trick I learned from the Apple II many years ago. To define the constant of pi exactly, do this: PI = 4.0 * Arctan(1.0)
    Then, it will always be at the correct accuracy for your system, so you don't have to remember how many decimal places to type in.

    • @florianstock376
      @florianstock376 6 หลายเดือนก่อน +1

      Warning to everybody: This gives always the wrong result. It is never the exact result. The reason for this, is arctan gives you just the correct value for Pi/4. When multiplying it by 4 you get the lowest two bits always as 0. Your value is close to Pi, but not exact (or better as exact as your data type would actually support it). So dont do this to get the EXACT value of Pi on your machine.

    • @Krellan
      @Krellan 6 หลายเดือนก่อน +1

      @@florianstock376 Good point. Floating-point math is full of subtle gotchas like these. Still, having a constant definition that is only off by the lowest 2 bits, regardless of the size of your data type (some graphics hardware has special really high precision types), and without having to remember and type out a long magic-number decimal sequence (that might still be not long enough for all types, causing your constant to have a lot of wrong zeroes at the end of it), is still pretty good.

    • @Krellan
      @Krellan 6 หลายเดือนก่อน +1

      @@florianstock376 There is also PI = Arccos(-1.0) which is also another way to get the value of pi without having to type out a large amount of magic-number digits. I honestly don't remember why, back in the time of the Apple II, PI=4*ATAN(1) was used instead. Maybe the Apple II BASIC didn't have ACOS?

  • @samiraperi467
    @samiraperi467 7 หลายเดือนก่อน +3

    The reason for lookup tables wasn't that there was no 3D acceleration. The reason was that you couldn't assume there was an FPU! The first Intel x86 chip with an integrated FPU was the Pentium (originally with its FDIV bug). 386 and 486 didn't have one. That's a bit of an egregious error to make in a presentation like this.

    • @makipri
      @makipri 7 หลายเดือนก่อน +1

      486 already had an integrated FPU. en.m.wikipedia.org/wiki/I486

  • @MrJC1
    @MrJC1 7 หลายเดือนก่อน +2

    holy moly... PI being 3 is trippy as ballz man.

  • @selfworm
    @selfworm 7 หลายเดือนก่อน +5

    Reminds me of MIT's "A Slower Speed of Light" for some reason

  • @beginnereasy
    @beginnereasy 5 หลายเดือนก่อน +2

    My dad was an engineer and rocket scientist. His deep philosophy was "when's a circle a circle??"

    • @QQnowQQlater
      @QQnowQQlater 2 หลายเดือนก่อน +1

      "When that circle doesn't collide into earth before one full rotation... dad..."
      "I'm going to the bar..."

    • @beginnereasy
      @beginnereasy 2 หลายเดือนก่อน

      @@QQnowQQlater yeah yuck

  • @Oli1974
    @Oli1974 7 หลายเดือนก่อน +3

    I was missing pi=3.15 or something like that. Would have been interesting for what values of fake_pi > pi it still would have been playable.

  • @Lacainam
    @Lacainam 6 หลายเดือนก่อน

    This cracks me up. I would love to see the key inputs to know how the alternate pi values change how the controls work.

  • @mikeeru
    @mikeeru 5 หลายเดือนก่อน +3

    Let's put a wrench in this finely tuned mechanism. Does it start? Yes. Does it run? Surprisingly, it managed to chew through it somehow.
    Now let's throw a crowbar in there...

  • @thegoodwin
    @thegoodwin 7 หลายเดือนก่อน +2

    This is trippy. This is like an unhinged Doom Mod.

  • @queterian1526
    @queterian1526 7 หลายเดือนก่อน +3

    12:07 so it compiles when you fit a number by original digital pattern of pi, like, x.xxxxx ?

    • @lionel4685
      @lionel4685 7 หลายเดือนก่อน +1

      I don't think it would "not compile" for any other value than 0

  • @JBshreds
    @JBshreds 4 วันที่ผ่านมา

    this is absolutely fascinating to watch

  • @mathgeniuszach
    @mathgeniuszach 7 หลายเดือนก่อน +3

    since computers are powerful enough, you could have some code that periodically changes the lookup table values based on new values of pi. That would be interesting to see

    • @bramvanduijn8086
      @bramvanduijn8086 7 หลายเดือนก่อน +2

      Or calculate them instead of looking up, if you're going to be updating the lookup tables anyway the performance boost from using lookup tables is gone.
      That way you can put powerups in the map that change all sorts of constants.

  • @user-or6mz4gy6i
    @user-or6mz4gy6i 4 หลายเดือนก่อน

    Love John Carmack's comments in the code. This man is a damn practical genius and funny as w/hell.

  • @Sigma00000
    @Sigma00000 2 หลายเดือนก่อน +4

    I was literally doom scrolling

  • @bernds6587
    @bernds6587 6 หลายเดือนก่อน +1

    now - another thing to try - I am not sure if or how that will influence the game.
    On Quake 3 Arena a method called fast inverse square root was used. back when integer was way faster than floating point operations. It used a constant 0x5f3759df to get a surprisingly close approximation of any square root value
    I wonder - what will happen if you modify that constant....

  • @TMinh956
    @TMinh956 7 หลายเดือนก่อน +42

    "I bet he's thinking about that hottie in front of us"
    Him:

  • @abstractnonsense8344
    @abstractnonsense8344 5 หลายเดือนก่อน +2

    Got Doom 2 when I was kid for Christmas. We only had 2MB of RAM. I was heartbroken because I opened the game and new my hardware.... Duh duh duh.... A few pressies later... 2 MB to make the requisite min.

  • @WackoMcGoose
    @WackoMcGoose 7 หลายเดือนก่อน +6

    So essentially, you made four-dimensional Doom. 4Doom. You shift the ana-kata axis by iterating pi within the range (0, π].

  • @DæmonV86
    @DæmonV86 6 หลายเดือนก่อน +1

    I've had much the same experience whilst under the influence of 400+ micrograms of L.S.D. at Garden of the Gods in Illinois as did yon avatar in the Pi=e dimension. My friend a few paces in front of me would clip in and out of reality with each shaft of sunlight filtered through the branches overhead as we moved forward, exiting in one place and appearing in another instantaneously as if opening wormholes at will. It was somewhat of a challenge to remain oriented spatially but we made it out before dark, as yet uneaten.
    Easier than driving a car.

  • @evancourtney7746
    @evancourtney7746 7 หลายเดือนก่อน +4

    So what's the convergence function for non-euclidean Doom playability?

  • @amigalemming
    @amigalemming 6 หลายเดือนก่อน +2

    18:15 I would change the sine table to a triangle waveform, thus making the unit circle a diamond.

  • @erickdredd
    @erickdredd 7 หลายเดือนก่อน +5

    I wonder if pi=3.2 will work. If so, that needs to be released as "Indiana Doom"

  • @jameslynch8738
    @jameslynch8738 6 หลายเดือนก่อน

    Ok, you have good timing and context. #3:33 you got a like. ✌️💚😁

  • @paxmaniac1
    @paxmaniac1 5 หลายเดือนก่อน

    Strange that nobody pointed out that defining pi

  • @KingMob4313
    @KingMob4313 7 หลายเดือนก่อน +44

    Pi = 3 - Biblically Accurate Doom

  • @TheoneGodfather
    @TheoneGodfather 6 วันที่ผ่านมา

    ID’s main office used to be in a building not far from my house. There were always exotic cars parked in the lot and I always wondered who owned all those sweet rides.

  • @Toumasu
    @Toumasu 6 หลายเดือนก่อน +2

    the game at 9:54 is called SHROOM