Why looking up feels weird in Duke Nukem 3D

Sdílet
Vložit
  • čas přidán 14. 06. 2024
  • In this video I explain why looking up and down feels weird in 2.5D games like Duke Nukem 3D.
    Reading materials:
    Doom engine source code review: fabiensanglard.net/doomIphone...
    Build engine internals: fabiensanglard.net/duke3d/bui...
    Ken Silverman's home page: advsys.net/ken/
    Curvilinear perspective: en.wikipedia.org/wiki/Curvili...
    How to Draw (non affiliated):
    www.amazon.com/How-Draw-sketc...
  • Věda a technologie

Komentáře • 355

  • @kazaloolovesgames
    @kazaloolovesgames Před rokem +582

    The work around hardware limitations is amazing. I prefer fully polygonal 3D games but there is undoubtedly a charm in the 2.5D aesthetic.

    • @1erickf50
      @1erickf50 Před rokem +14

      2.5D's both charm and limitation is the use of 2-point perspective as opposed to true 3D's 3-point perspective

    • @mjay6245
      @mjay6245 Před rokem +41

      ​@@1erickf50 Yes, we watched the video too lmao

    • @atheist101
      @atheist101 Před rokem +9

      I've been going back to build engine games recently and started to appreciate them more. I was a kid when I first played Doom and Duke Nukem. I never heard of Blood until recently so I've been really enjoying it. There's more than just the rendering and charm of the engine, it's the style of game play they have. Sure it's a simple run and gun shooting game but the way they are played is unique. Ion Fury managed to capture it and is one of my favorites. Doom 2016 and Eternal almost got it but barely missed the mark. It's about the maps, the enemy placement and the crazy hectic combat. Eternal has empty corridors and then an arena you fight in instead of rooms and halls filled with cunning enemy placement. There's nothing better than getting done with a big fight only to turn a corner and there's 5 expert level monsters immediately gunning you down.

    • @pokechamp3987
      @pokechamp3987 Před rokem +2

      The older ones felt a bit more like a puzzle

    • @KairuHakubi
      @KairuHakubi Před rokem +2

      when I first learned these games weren't true 3d, i couldn't believe it.

  • @NinjaRunningWild
    @NinjaRunningWild Před rokem +173

    It’s due to the technique used : *Y-shearing.* Heretic & Dark Forces also used it. True 3D needs to divide each coordinate by the Z to implement perspective projection, which is an “expensive” operation in computer performance terminology. It really only became feasible once graphics accelerators proliferated.

    • @user-sl6gn1ss8p
      @user-sl6gn1ss8p Před rokem +11

      One thing to note is that "diving stuff by z" is also not "correct": the distance from the camera is not really the z coordinate on all points, and for large angular apertures the difference can be fairly drastic. The "correct" thing would be to calculate the actual distance from some point, but that would be even more expensive.
      This is actually quite noticeable on many "real 3D" games when you have stuff extending near the camera

    • @OCTAGRAM
      @OCTAGRAM Před rokem +6

      System Shock, dated 1994, provides 3D projection, but all the map is aligned to a grid, and maybe it is a technological limitation

    • @oasntet
      @oasntet Před rokem +20

      It was less about graphics accelerators and more about floating point accelerators.
      Quake and Half-life were fully 3d, and while they could use a GPU, they both also had perfectly functional software renderers. The GPU just allowed for better resolutions and higher framerates.

    • @NinjaRunningWild
      @NinjaRunningWild Před rokem +7

      @@user-sl6gn1ss8p It is once you transform the coordinates into camera space. You also need to do screen projections by the view angle & distance.
      Seems like you know math but have never actually implemented a 3D engine. There’s no need to do a square by the distance on arbitrary points. This is what they transformation matrices are for.
      So, yes, it’s “correct”. I’ve done it. You just don’t know what you’re talking about. Please stop trying to strawman me.

    • @NinjaRunningWild
      @NinjaRunningWild Před rokem +1

      @@oasntet That was more due to Pentiums allowing a U & V pipe to parallel instructions. Read Mike Abrash.

  • @unfa00
    @unfa00 Před rokem +328

    The funny thing is - we can achieve the "incorrect" look of Build Engine's "looking up" by using a tilt shift camera lens. The Build Engine does not simulate rotating the camera up or down like Quake does, but shifting the camera's frame up or down without changing the perspective.

    • @Randomgirl13102
      @Randomgirl13102 Před rokem +5

      Hi unfa, surprised to see you here

    • @NinjaRunningWild
      @NinjaRunningWild Před rokem +12

      Yeah, it’s called Y-shearing.

    • @Lattamonsteri
      @Lattamonsteri Před rokem +16

      That's something architecture photography uses a lot, right? :P They wanna make walls look straight instead of leaning because of some subconscious things, like the building might look like it's falling or something if it's pictured with 3-point perspective? :D Or is it just a stylistic choice?

    • @unfa00
      @unfa00 Před rokem +1

      @@Randomgirl13102 Hi! :)

    • @unfa00
      @unfa00 Před rokem +9

      @@Lattamonsteri Yeah, I think it's considered to be looking better. It does give a more "neutral" appearance.

  • @JamesTDG
    @JamesTDG Před rokem +29

    Keep in mind it's easier to notice when you are directly playing the game. A perfect way to make sure you can see the difference is in fact to play the anniversary version of nukem 3d, as you can toggle between classic and modern cameras

  • @AmberLB93
    @AmberLB93 Před rokem +51

    This just shows how these games were made with blood, sweat, tears, and sheer determination of will. It's incredible.

    • @iidoyila
      @iidoyila Před rokem +2

      and code . and some maths knowledge . and some computers . being in the right place at the right time with the right knowledge ; not something you can always have just by crying about it .

    • @dukkemonterier3429
      @dukkemonterier3429 Před rokem

      Imagine if it was still like this today.

    • @nil0bject
      @nil0bject Před rokem +1

      it shows a lack of intelligence. bungie was able to do it properly before duke3d was released

    • @iidoyila
      @iidoyila Před rokem +1

      @@nil0bject are you talking about doom ? they had to solve the problem of displaying massive variations in the z axis in 3d, id were legends and everyone else had to play catch-up

    • @holl7w
      @holl7w Před rokem

      ​@@iidoyila the hardest parts were optimisation.

  • @theopenrift
    @theopenrift Před rokem +63

    You can also look up and down with the mouse in Duke Nukem 3D if you press the U key.

    • @zummone
      @zummone Před rokem +6

      I'm screaming at the video right now, thank you. Also, I hope he will say this only concernes the renderer part of the game, not the actual assets.

    • @thewerepyreking
      @thewerepyreking Před rokem +4

      yeah this is how I played the whole game. Thought everyone did

    • @andyjohnson4907
      @andyjohnson4907 Před rokem +1

      And was the crosshair shortcut "I"? I remember always pressing "U" and "I" every time I loaded my save game.

    • @theopenrift
      @theopenrift Před rokem +1

      @@andyjohnson4907 yes.

    • @yuotueb
      @yuotueb Před 10 měsíci +1

      @@andyjohnson4907 haha, I also still get the impulse to press "I" every time I see a Duke3d video clip without the crosshair.

  • @mmdoof
    @mmdoof Před rokem +7

    Descent from 1995 was full 3D and was semi-playable on a 386 computer. It was more about optimisation and the features that the Duke team wanted to focus on, not the absolute lack of suitable hardware. Descent's mapwork was more ascetic, but on the other hand it had 3D enemy characters and some pretty solid effects. I also remember Quake running slightly smoother than Duke on my friend's 486, but I'm not sure what type that machine was exactly...

    • @FSdarkkilla
      @FSdarkkilla Před rokem +2

      Yeah as an old Descent player I'm always enraged how people constantly ignore that it was released before Quake and had "actual" 3D rendering, even if the engine was limited to rendering indoor things... the only 2D sprites (apart from the cockpit view) were the hostages, weapon projectiles* (not rockets...) and powerups. Enemies were full 3D and even the player's ship was (in multiplayer) full 3D. Later there even was an official patch to utilize 3DFX Voodoo cards and Descent (+ Descent 2 and 3 - even though that one was Glide/Direct3D/OpenGL and a 32 Bit Windows game from the start) could use the Voodoo to its full potential, where other games still had 2D enemy sprites and no real vertical movement - their 3DFX patches (if they existed) where far worse.

    • @mmdoof
      @mmdoof Před rokem +1

      @@FSdarkkilla it was a masterclass in efficient programming. Practically full 3D with the hardware requirements of Doom II.

  • @TerryMartinART
    @TerryMartinART Před rokem +33

    This was the first game I ever tried to mod. Remember making maps then going to friends house on the weekend for a lan party and playing it with others. Used to make hugh pits that annoyed players... Where they would fall for a long time before being able to respawn. Remember vividly making sprites of mesh planes. Billboards is what I would say they are called today.

  • @bigscheesy4982
    @bigscheesy4982 Před rokem +12

    Btw quakes inability to display curvilinear or 5-point perspective is not due to its "perspective" but fov. Quake is not rendering 3 point perspective as it is not rendering one type of perspective as they all exist in a 3d space given it is true 3d. The only thing required to display curvilinear perspective is to widen the fov (which im sure is doable in quake), similar to changing from a long focal lens to a wider one, the nature of our worlds perspective doesn't change, just the parameters of the lens viewing it.

    • @NexuJin
      @NexuJin Před rokem +1

      The fov setting in Quake is horizontal field of vision based on a 4:3 aspect ratio output.

    • @1e1001
      @1e1001 Před rokem

      pretty sure not, it can only render straight lines for the polygons

  • @z-em4612
    @z-em4612 Před rokem +9

    The more you learn about duke nukem 3d, the more you are amazed of the cleverness of its creators

  • @ian_b
    @ian_b Před rokem +12

    I never had an issue with the 2.5D version and found it somewhat easier to decode visually; I suspect because our brains do an autocorrect before we're aware of the distortion from real 3D, but not so readily on a screen where it's actually a flat image.

    • @fonesrphunny7242
      @fonesrphunny7242 Před rokem +1

      I played flat shaded 3D games long before Duke 3D, so the wrong perspective always bothered me and I couldn't adjust to it.

  • @3DSage
    @3DSage Před rokem +45

    Great explanation! I recently showed how to program doom from scratch and it's a great thing to learn.

  • @takacsadam2850
    @takacsadam2850 Před rokem +6

    i was like, bruh it's like a VERY long vertical image that allows scrolling and then you actually said the same thing at the end was so satisfying

  • @brullov_labs
    @brullov_labs Před rokem +4

    0:24 it's not ROR, just a bridge made of sprites :]

  • @ImaginaShip
    @ImaginaShip Před rokem +23

    Fascinating video! I always thought games like DN3D, Dark Forces, Shadow Warrior, and other games with the ability to look up and down felt unnatural but figured it was the limitations of the engine and never put more thought into it.

  • @NicholasBrakespear
    @NicholasBrakespear Před rokem +5

    What I find interesting about this progression of technology is how certain things now make sense about the old days - when I first got into gaming, I had a crappy 486 with 8MBs of RAM (upgraded from 4). I bought Quake... it wouldn't run. I remember something about "floating point" being the issue; my CPU at the time couldn't handle the calculations a true 3D game needed.
    Now, knowing more about the technology later in life, it all makes more sense. At that point in history, one of the biggest changes... was mathematical; it wasn't a matter of brute force, of raw computational power, but about the type of computation being done. The type of mathematics being done.

    • @novemberbreed4669
      @novemberbreed4669 Před rokem

      I actually first ran Quake (Dos version) on a 486DX4@100MHz and 8MB of RAM, with a Trident 9440 1MB video card. It was slow, but it worked.

    • @NicholasBrakespear
      @NicholasBrakespear Před rokem +1

      @@novemberbreed4669 I would have envied you intensely back then. Whatever my setup was, it was evidently impossible to get it running. I remember listening to the soundtrack (once I realised you could play the CD audio on a CD player), and staring at the manual, and the box, and fantasizing about playing it.

  • @selatorepico5975
    @selatorepico5975 Před rokem +2

    I love that automatically generated captions wrote 'consumer man' instead of 'Ken Silverman'.😂 Great video btw

  • @Uglynator
    @Uglynator Před 2 lety +45

    Great vid! I've been looking for a comprehensive breakdown like that!

    • @retrogarage8734
      @retrogarage8734  Před 2 lety +4

      Thanks!!

    • @Puxi
      @Puxi Před rokem

      @@retrogarage8734 Why. Do. you. speak. so. funny. and. take. a. break. after. each. word. are. you. chinese.

  • @alianant
    @alianant Před rokem +8

    Wow, this was a fantastic video explaining the concept, and your visualizations were excellent. I'm glad CZcams put this in my suggesteds.

  • @Caleb-fv5fp
    @Caleb-fv5fp Před rokem +17

    Duke nukem 3d was not the last 2.5d fps, when quake came out, no one had ever seen anything like it and it took at least a year for developers to scramble and make their own 3d engine. There where plenty of 2.5d games released later in 1996 into 97 and some from 98. In 1996 you had duke nukem 3d, strife, Chex quest, powerslave, and final doom and it’s 2 expansion packs, and in 1997 you had blood, shadow warrior, chasm the rift, hacx, red neck rampage, and outlaws. There where probably less 3d games released in this time then 2.5d, I can only think of quake, quake 2, and turok.

    • @NinjaRunningWild
      @NinjaRunningWild Před rokem +1

      All the same engines as Duke 3D & Doom; Build & idtech1 respectively. The only exception in your list is oulaws which used the Dark Forces engine & Chasm (that’s its own thing).
      Yes, all 2.5D, but with existing engines. The tech was still useful so we got more games using it.

    • @OCTAGRAM
      @OCTAGRAM Před rokem

      System Shock came out in 1994, and its 3d was more proper. Its map was forced to a grid of 45 and 90 degrees, but player was free to look in any direction, lean left and right from the corner

    • @moosemaimer
      @moosemaimer Před rokem +2

      The game nobody ever remembers is Descent. It had a fully-3D engine with 6 degrees of freedom in 1995.

    • @OCTAGRAM
      @OCTAGRAM Před rokem

      @@moosemaimer I have in Steam all versions of it, but indeed I had no idea if I should play it.

    • @Shikaku2
      @Shikaku2 Před rokem +1

      Daggerfall was released in 1996 and the environments were full 3D. If it wasn't 3D it did a damn good job making it look 3D in a DOS game

  • @amzs_deleted
    @amzs_deleted Před rokem +1

    Wonderful explanation! An illustrator here:
    We need more points more farther we are. Very close, it's 1-point perspective. A bit far - 2-point. Up to fish-eye, 5-point, which is human eye vision.

  •  Před rokem +6

    0:24 - There is no ROR in Duke3D, you've shown a sprite bridge. In Duke3d you can have 2 sectors intersecting if you can't see both of them occupying the same vertical space. The game with ROR was Blood, but it is kind of limited, you can have only 2 sectors using the portal rendering.

    • @morlamweb
      @morlamweb Před rokem +3

      Shadow Warrior had some level of room-over-room, too, or at least transparent water, which is similar.

  • @Dargonhuman
    @Dargonhuman Před rokem +1

    So this is, essentially, the 2.5d version of the "pan and scan" technique movies used to adjust 16:9 movies to 4:3 TV screens back before widescreen TVs were a thing.
    Basically, how pan and scan worked was a "focus frame" that matched the TV's 4:3 aspect ratio was placed on the 16:9 movie frame, which the editor could move (or "pan") around the larger frame to focus on essential bits of action. Whenever the focus frame moved, though, it created the same unnatural and offputting feeling of looking up and down in Duke Nukem 3D as the perspective didn't shift as predictably as a real camera movement would have. This offputting feeling was made worse if the focus frame was panned at the same time as the camera was moving as the perspective shift of the camera often would move contrary to the focus frame panning - a very poorly edited movie using pan and scan could even trigger someone who suffers from motion sickness and, rarely, even epilepsy. There's a very good reason why many of the more prolific and artistic filmmakers of the day said pan and scan ruined cinema for home viewing...
    It's still very interesting to see that similar techniques were developed for games of the same era.

  • @master_alex8605
    @master_alex8605 Před rokem +1

    5:09 I know that effect to well every time I check if something's bent it looks bent because of my eye even if it's not bent

  • @CarlMahnke
    @CarlMahnke Před rokem +1

    Looking up and down was needed if you wanted to shoot a switch, because autoaiming did only apply for enemies.

  • @Charlymander
    @Charlymander Před rokem +1

    Now that I look back at how this weird effect looked back in the day, It reminds me of how you scroll a pdf document with photos up and down lol. Its strange how they thought this could be a convincing solution for its time, it always looked weird but interesting.

  • @guiguito5505
    @guiguito5505 Před rokem +2

    I didn't finish watching the video but I gotta correct you my friend.
    You need to aim up and down to effectively use splash weapons and the shrinker, also you need it to shoot at buttons to progress and to access secret s

  • @herr_fuchsnews5630
    @herr_fuchsnews5630 Před rokem +3

    You gave some really great visualizations to explain the topic!

  • @Bazztoner
    @Bazztoner Před rokem

    Excellent video man!
    Very understandable, very clear examples and very smart way of visualizing the explanation.
    Keep 'em coming!

  • @brutusmagnuson315
    @brutusmagnuson315 Před rokem +2

    Yeah, mouselook in Build Engine games almost feel orthographic. Though, an actual orthographic camera in an FPS would be impossible to use, unless it was a sniping game.

  • @KingPBJames
    @KingPBJames Před 3 měsíci

    I'm glad I watched this video. I already knew most of how it works, I think from a video by Decino, but seeing the screenshots stacked on top of each other to show that the camera scrolls was not something I realized!

  • @I.____.....__...__
    @I.____.....__...__ Před rokem +1

    - It's actually a lot simpler than that and has nothing to do with perspective at all. Looking up or down in _Quake_ actually TILTS the camera up and down, but in _Duke 3D,_ it PANS the camera up and down as if the player is standing or squatting.
    - Ken Silverman made the Build engine then disappeared. He played around with voxels, but never kept up with 3D games.

  • @ravenweikel5974
    @ravenweikel5974 Před rokem +7

    This could likely be remedied by skewing the final rendered image in post depending on the "angle" of the player camera. Of course, it won't be perfect, but it would likely be noticeably more realistic than the vertical scrolling method.

    • @DanaOtken
      @DanaOtken Před rokem

      Doable with some precalculated tables, though I think you'd see a noticeable frame rate drop overall with the hardware of that era.

    • @BaddeJimme
      @BaddeJimme Před rokem +1

      This makes the texture fuzzy unfortunately. If you die in Duke3D you see a rotated view, which is fuzzy for the same reason.
      Another issue that you see with source ports of 2.5d games is that true perspective makes sprite based enemies look really weird when you look up and down. So Duke3D was never going to look good if you did that, and getting too fancy wasn't worth the effort.

  • @NexuJin
    @NexuJin Před rokem +5

    I remember making maps for Duke3D. Trying to make a swimming pool was complicated because of the fake 3D perspective.
    But before Duke3D and Quake. There was Descent, which came out a year before both games, in 1995. Which was also fully 3D and fully traversable in any direction, at any time. Since you are piloting a spaceship which has sideways, forward/backward and up/down movements. But this full freedom of motion was hard to control for many at the time with only a keyboard. This was prior to a mouse being generally accepted input device for FPS games.

    • @sitaroartworks
      @sitaroartworks Před rokem +1

      The swimming areas required to recreate the flooded ones as the same size of the surfaces and the sector effector provided to link the two, just like a teleport. No matter where you draw the area. But the real issues came with mirrors. That was pretty tricky and buggy, especially on too large rooms, but the principle was just the same as pools.

  • @calebmoore1582
    @calebmoore1582 Před rokem +1

    As a former 3D game developer, something I’d like to clarify here is true 3D games don’t have perspective per se, they have projections.
    The reason straight lines must be rendered straight even though human vision is curvilinear is that you are seeing the game world through a flat monitor. The renderer’s job is to work out what colour light would come through a point of an imaginary rectangle towards a set of of imaginary eyes in the game world and set it to the corresponding pixel of the monitor that is in front of your real eyes in the real world.
    If anyone is interested in how all of this works, they should look at projection matrixes. It is all just matrix multiplication.

  • @giovannozuglian5179
    @giovannozuglian5179 Před rokem +3

    So, looking down in Duke 3D is, at certain extent, the same thing as crouching?

    • @OCTAGRAM
      @OCTAGRAM Před rokem

      No, you look from above

    • @rashiro7262
      @rashiro7262 Před rokem +2

      Nope. When you crouch/stand up, vertical lines stay vertical indeed, however you also shift the horizon line up and down. That's not the case here, otherwise you would see the top of the box when he looks up.

  • @TasnuArakun
    @TasnuArakun Před rokem +8

    9:16 Glad to see Marathon mentioned! Though I feel that you failed to mention that the Marathon games did not have automatic vertical aim. You had to carefully aim up and down, which was quite tricky without a cross-hair. Sometimes it was impossible because you could only tilt your head a limited amount or the illusion would be ruined. As far as I can tell, Marathon was the first game with mouse-controlled free look. Many still played with keyboard only for the first few years though.

    • @steve7745
      @steve7745 Před rokem +1

      Classic Bungie was always innovative, such great games!

  • @georgef551
    @georgef551 Před rokem

    Later on, DooM-Engine games can do the same look up/down, with the same limit, such as Heretic, and HeXeN. Still no slopes, or room-over-room abilities. HeXeN did bring in tricks to make sectors deform, like swinging doors, for example.

  • @markhill3858
    @markhill3858 Před rokem +1

    Fisheye cameras dont produce "5 point perspective" .. they produce "sinusoidal perspective". This means the lines going to the vanishing point are curved .. they are sine waves, whose amplitude varies according to their variance from the three straight "horizon" lines that go thru the dead center of the image. Each of the three sine waves goes thru two vanishing points beyond the edges of the frame .. or at least far from the center of the image. A vanishing point near the center of the frame must have its next vanishing point beyond the edge of the image .. unless it is some kinda panoramic 360 degree type view. First demonstrated in the works of MC Esher (1898 - 1972) EDIT .. actually I think we are talking about the same thing .. I just never bothered to consider there are 5 vanishing points before .. usually Id add in a separate vanishing point per object in the drawing, to best suit its orientation :)

  • @zsciaeount
    @zsciaeount Před rokem

    Just stumbled upon your channel. Great content! I love these types of explainers. Subscribed!

  • @sitaroartworks
    @sitaroartworks Před rokem +1

    Quake wasn't the very first fully polygonal game, by the way. Descent had geometry and enemies fully polygonal and Terminator Skynet and Future Shock had the same but with 2D weapons and VFX.

  • @matt92hun
    @matt92hun Před rokem

    Informative video, really good editing work.

  • @Swenglish
    @Swenglish Před rokem

    I wonder how much heavier it would have been to distort the entire image so that when you look down, the top of the frame stretches wider, and when you look up, the bottom of the frame stretches wider...

  • @JReybabay
    @JReybabay Před rokem

    You are an amazing youtuber! I’ve watched your playstation graphics video and this video and you have an amazing ability at describing these retro graphics

  • @jasonkyleadams7577
    @jasonkyleadams7577 Před rokem

    0:26 I could watch a full video on how room over room worked in vanilla Duke Nukem 3D and how the level designers used those tricks to create an immersive world.

  • @Disthron
    @Disthron Před rokem +2

    I have to say, I never had a huge problem with how Build Engine games handled looking up and down. Like when someone pointed it out I was like 'yeah that is a bit odd' but it didn't hurt the game for me.

  • @CJ-jl6hf
    @CJ-jl6hf Před rokem +8

    I remember getting real sick trying to look up in down in 2.5d games back then, so I never really did.😆 Always thought it was a cheap gimmick till Quake roared onto the scene

  • @ploskostnost
    @ploskostnost Před rokem +2

    I already knew the technique but I really enjoyed watching the video nonetheless. Your explanation are very well-written and easy to comprehend!

  • @milanmestka416
    @milanmestka416 Před rokem +1

    Nicely explained! Thank you, for well made video.

  • @mwperk02
    @mwperk02 Před rokem +6

    You actually can see 2.5d games using proper 3d perspective today. Most notably through modern source ports for doom. These source ports permit free looking and even full free aiming. One thing that does immediately become apparent is that the sprites really are 2d objects. The most extreme example is trying to look at them when they are directly below you on a ledge they become barely visible. The way the world is rendered also still looks a little weird. Though you can see why besides the hardware limitations of the time up and down looking wasn't utilized.

    • @sitaroartworks
      @sitaroartworks Před rokem

      Yes, they squeeze as 2D points once you reach an upper point of view level. 2D sprites also show only one face, despite the Build engine could fake them in flat mode in order to make things like plants, trees or platform that allow you to overlap fake geometries. The engine always sees and classify them as simple sprites. I remember also that you were able to set their angle (eight-directional) from their "tail" on screen as a sort of indicator. Ah...good memories, what a glorious time!

  • @skeletspook
    @skeletspook Před rokem +3

    I kinds like the distorted perspective but that’s probably the nostalgia. I do think modern ports for Duke or Doom that use 3 point perspective look off too. Mostly because it makes it much more obvious the sprites arr just flat billboards.

    • @homersimpson8955
      @homersimpson8955 Před rokem

      And also because DirectX and OpenGL API based on projection matrix approach, so modern GPU are targeted for 3D projection and for a good reason.

  • @imcrowbug
    @imcrowbug Před rokem

    shoutouts for perfectly describing what 1, 2 and 3 point perspective means

  • @Mblackwell1024
    @Mblackwell1024 Před rokem

    The weird sense of things visibly warping into that surreal "correct-ish" perspective shape is from shifting the aspect of the overdrawn pixels to fake the perspective via shearing (iirc calculated against the horizon in the case of Build). You can get this same effect emulated in EDuke32's 3D renderer (Polymost) by setting the console variable `r_yshearing` to 1. Set back to 0 disable. It works with modern Build games like Ion Fury as well.

  • @jimboswe
    @jimboswe Před rokem

    I remember spending a lot of time with the level editor for Duke Nukem 3D, but I never published any maps. You had to plan and work around the limitations, which in a way had its charm. In a top view you would draw and divide shapes that would be your walls, doors, floor height levels, crates and so on. Then in a 3D view you could select areas and raise the floor and/or lower the ceiling. So you could never have a floor or a platform that you could be both under and above. To create a mirror you needed a secret room behind the mirror that was at least as large as the room the player would be in infront of the mirror. And you would just set a special texture on walls and ceilings to show the skybox so it looked like you were outside, but you are always in a "closed box".

  • @oleksiyprotas6376
    @oleksiyprotas6376 Před rokem

    5 cents: the bridge in E1M1 isn't really a room over room, it's a bunch of horizontal and vertical sprites. As such, it's destructible.

  • @nemtudom5074
    @nemtudom5074 Před 7 měsíci

    This is a really good explanation of what my issue is with some doom source ports aswell
    Thanks!

  • @IneptOrange
    @IneptOrange Před rokem

    It's so strange seeing that effect. When I first saw it, I could have sworn the perspective shifted in the opposite direction to what it should, but in reality, my eyes are so used to seeing the normal perspective changes that I genuinely couldn't figure out what was going on.

  • @tweeleaf
    @tweeleaf Před rokem

    put in simpler terms, duke nukem is rendered as a long vertical screen, like on a phone. looking up and down scrolls that vertical screen up and down, making it fit in a rectangle monitor.

  • @democracy_enjoyer
    @democracy_enjoyer Před rokem

    duke nukem vertical camera movement looks like you are scrilling up a single picture

  • @Greywander87
    @Greywander87 Před rokem +4

    Quake wasn't the first 3D game, though. I remember playing X-Wing on DOS, which used true 3D graphics. Looking it up, it seems X-Wing was released in 1993, as opposed to Quake's 1996. I'm sure there were other older 3D games as well, though obviously the graphics would have been more primitive. This suggests to me that we knew how to do it before computers were powerful enough to handle something like Quake. Games less intense graphically than Quake could get away with using 3D graphics on less powerful hardware, though it wouldn't look as visually impressive. This also explains some of the weirdness in looking up and down in Dark Forces, which was a Doom clone.

    • @comexk
      @comexk Před rokem +1

      One reason we knew how to do it is that more or less the same algorithms had previously been used for non-real-time rendering, e.g. for movies and TV. You can get away with quite a lot weaker hardware when you're willing to wait hours for a single frame.

    • @kveller555
      @kveller555 Před rokem

      Speed in general was the biggest roadblock. You could get away with having a dungeon crawler running at 10 fps, but a fast-paced shooter? They just needed the extra frames, so compromises had to be made.

  • @TheSektorz
    @TheSektorz Před rokem

    Awesome video. Cool to see you take off time from running the Cyber 8 channel to do some retro gaming stuff, lol.

  • @Fank0r
    @Fank0r Před rokem +3

    Amazing work!

  • @KairuHakubi
    @KairuHakubi Před rokem

    Basically, the horizontal cheat is so good that it makes you EXPECT a similar vertical cheat, that sadly isn't there.

  • @frequenco5545
    @frequenco5545 Před rokem

    Very well explained, thanks man!

  • @ArjunTheRageGuy
    @ArjunTheRageGuy Před rokem

    so Duke Nukem 3D POV camera moves like an elevator when looking up and down while Quake and shooters after it moves the POV camera on angles

  • @alexthetrain6708
    @alexthetrain6708 Před rokem +2

    Only 2k subs??? Underrared channel

  • @supertna9154
    @supertna9154 Před 3 měsíci

    The doom engine did have looking up and down but only in Heretic and Hexen which both use the Doom Engine just modified by Raven Software. However the rendering of the modified Doom engine at the time in 1994 and 1995 had the same rendering as the Build Engine just without slopes and overlapping sectors. Hexen did have wavy effects in both Dark Crucible and Darkmare but still didn’t have slopes.

    • @jess648
      @jess648 Před 26 dny

      there’s a doom fork called Eternity Engine that recreates Build’s linked portal/silent teleport or room over room shenanigans as well. still no overlapped sectors to my knowledge though

  • @IrocZIV
    @IrocZIV Před rokem

    Everyone forgets about Ultima Underworld that came out just before Wolfenstein

  • @Scalibq
    @Scalibq Před rokem

    A game with proper perspective projection that works acceptably even on an 486SX is Descent.

  • @TheManinBlack9054
    @TheManinBlack9054 Před rokem

    Very good explanation. Good job!

  • @BlueSatoshi
    @BlueSatoshi Před rokem +1

    0:08 The technique in question is called raycasting.

  • @Muscleduck
    @Muscleduck Před rokem

    Excellent video explaining 2.5D thank you.

  • @beemoh
    @beemoh Před rokem

    I remember playing the Demo of DN3D more or less when it came out, and noticing that looking up and down looked *odd* but not really knowing why- it's so good to know why now!

  • @Novous
    @Novous Před rokem +3

    you could have compared Duke Nukem with the software renderer vs one of the opengl renderers available in 25th anniversary edition or world tour edition, side-by-side. Instead of two different games.

  • @user-dg8bc4ey4z
    @user-dg8bc4ey4z Před rokem

    very nice. is there a link or something the to the build engine internal analysis from fabien sanglard?

  • @ddnava96
    @ddnava96 Před rokem +1

    Instead of tilting the camera they're using a tilt-shift lens

  • @Mekyzeroone
    @Mekyzeroone Před rokem

    Ooh Marathon, I loved that on my Macintosh Performa. It had 2-3 titles if i remember correctly.

  • @Felix-nh5pw
    @Felix-nh5pw Před rokem

    As somebody said: Quake is like Chingischan, every fps game has a little bit of Quake in its blood.

  • @AbandonedVoid
    @AbandonedVoid Před rokem

    You can see the warping of the edges of your vision if you make a C with left hand (or a backward C with your right) and move it close to your face at the very edge of your peripheral vision while staring at a fixed point. It's really weird!

    • @AbandonedVoid
      @AbandonedVoid Před rokem

      It's not as dramatic as the example picture shows, as the 3-point perspective is essentially a huge oval. It just warps near the edges of our vision in a hyperbolic way

  • @abe-danger
    @abe-danger Před rokem +1

    How i see it is that its very nostalgic

  • @dotcomgamingd5564
    @dotcomgamingd5564 Před rokem

    this video is mind blowing. thank you for this.

  • @bigbadbyrnes
    @bigbadbyrnes Před rokem

    Unintentional asmr, subscribed.

  • @Littlefighter1911
    @Littlefighter1911 Před rokem +1

    "Might not be obvious"
    DUUUUUDE the camera just pans. WTF?! How can one NOT notice, that the camera doesn't rotate?

  • @BSGOST
    @BSGOST Před rokem +1

    8:56 It seems to be sliding by layers (near objects slide faster than far objects slide slower), not just scrolling of static view.

    • @MilkshakeBoiDarude
      @MilkshakeBoiDarude Před rokem +1

      No, it's really just a vertical offset value applied to the rendering. I am pretty familiar with the source code of the Build engine because I wrote an engine using the same rendering method, partially using Build as reference.

    • @vibaj16
      @vibaj16 Před rokem

      @@MilkshakeBoiDarude Well the skybox scrolls slower

    • @lukabrasi001
      @lukabrasi001 Před rokem

      @@vibaj16 but the skybox is drawn separately with a different parallax

  • @taskanawa9604
    @taskanawa9604 Před rokem +1

    wow, probably this is why i have motion sickness from doom and duke3d engines, i almost die playing blood. but new fps i play just fine

  • @Dan-yk6sy
    @Dan-yk6sy Před rokem

    Well done, I'll always watch a duke3d vid.

  • @Islandswamp
    @Islandswamp Před rokem

    Does anyone know if Shadow Warrior and Blood had automatic-vertical aiming or if you had to aim looking up and down like is the norm today?
    Playing Duke 3D with dual analog sticks kinda sucks because Duke wasn’t made with looking up and down during combat in mind. 😊

  • @danielribastandeitnik9550

    When you look up/down on Duke Nuken it appears as if the game just offsets the image up/down, i.e., just slides it vertically.

  • @mihalydozsa2254
    @mihalydozsa2254 Před rokem

    Why didn't they just tilt the rendered image plane like a wall and render it tilted like the walls in the left right direction when you look up and down?

  • @plussum3255
    @plussum3255 Před rokem

    Amazing video, great for explaining computer graphics and actually has some relation to my uni graphics course for compsci

  • @Vic47
    @Vic47 Před rokem +1

    Honestly, I don't remember issues with Duke Nukem 3D's way to do it (it was kinda weird, but generally felt okay, as if you're really just inspecting a flat photo or picture, or a page of text, so my brain accepted it fine, but Quake's way to di it, when teh camera rotates in one spot, creating something like the "fish eye effect", distorting walls and objects almost makes me dizzy. My brain just refuses to percieve this as "normal", because in real life when you look at things, you only clearly see that small area of the whole picture, much like in Duke Nukem 3D, and the rest of the picture is not so clear, so you don't see any distortions (also because they don't happen in solid objects), but when you "bow down" in Quake and the top end of the walls and boxes starts getting closer, as if they are falling at you, this makes me feel that something is not right, like if I'm very drunk and hallucinating.

  • @htcbelyaev
    @htcbelyaev Před rokem

    looking up-down looks more like move camera by 1 axis up/down, not like rotation over axis

  • @RusticRonnie
    @RusticRonnie Před rokem

    Don’t forget about Maze wars, the Actual 1st FPS 1974

  • @MarkWhich
    @MarkWhich Před rokem

    Duke 3D was a mix between polygon 3D Graphics and Bitmap Sprites. Sprites were 2D and used to for the monsters, items, weaponry and ammo. They could of allowed a true look up/down like Quake but things would of looked laughable flat.

  • @impact0r
    @impact0r Před rokem

    Thanks, John Carmack.

  • @morganwilliams5591
    @morganwilliams5591 Před rokem

    This is so fascinating. These games were before my time, and I always just kind of assumed by watching them (mostly Doom) that it was a true 3D environment and they saved on processing power by just making everything out of sprites instead of 3D models. I guess I didn't totally understand that true 3D just wasn't feasible in those times. Even though I've never played these games I find myself so fascinated by their inner workings.

    • @bsaintnyc
      @bsaintnyc Před 3 měsíci

      I played these games growing up. Despite descent being from the same era and being fully 3d it was not until quake that the limitations of 2.5d engines became apparent.

  • @andyjohnson4907
    @andyjohnson4907 Před rokem +1

    I used to make maps in Duke Nukem, and I'm sure you couldn't do floors above floors. Not properly, anyway. In the example in the video, I think the platform was achieved by placing sprites I'm the right orientation with collision on.
    I hope I'm right, because I had to make lots of compromises in my maps.

    • @markdfox
      @markdfox Před rokem

      You are right - I think some later iterations of the Build engine did support true Room-Over-Room, but every implementation in Duke3D was done using sprite based platforms. The editor was incapable of creating actual level geometry for multiple rooms that overlapped in a. useful way.

    • @andyjohnson4907
      @andyjohnson4907 Před rokem

      @@markdfox Yeah, I think I remember Shadow Warrior had a workaround, but I never made maps for that. I have a very faint recollection of it seamlessly teleporting the player to a different part of the map when entering a small secret room that was supposed to be above the main map.
      That could be a false memory, though.

  • @danyukhin
    @danyukhin Před rokem

    awesome video, thank you

  • @franzpattison
    @franzpattison Před rokem

    Great explanation

  • @wuspoppin6564
    @wuspoppin6564 Před rokem

    Any other cool videos planned like that? Ive seen the PlayStation one and it's dope too