Why looking up feels weird in Duke Nukem 3D

Поділитися
Вставка
  • Опубліковано 31 тра 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...
  • Наука та технологія

КОМЕНТАРІ • 355

  • @kazaloolovesgames
    @kazaloolovesgames Рік тому +579

    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 Рік тому +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 Рік тому +41

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

    • @atheist101
      @atheist101 Рік тому +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 Рік тому +2

      The older ones felt a bit more like a puzzle

    • @KairuHakubi
      @KairuHakubi Рік тому +2

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

  • @NinjaRunningWild
    @NinjaRunningWild Рік тому +172

    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 Рік тому +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 Рік тому +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 Рік тому +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 Рік тому +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 Рік тому +1

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

  • @unfa00
    @unfa00 Рік тому +325

    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 Рік тому +5

      Hi unfa, surprised to see you here

    • @NinjaRunningWild
      @NinjaRunningWild Рік тому +12

      Yeah, it’s called Y-shearing.

    • @Lattamonsteri
      @Lattamonsteri Рік тому +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 Рік тому +1

      @@Randomgirl13102 Hi! :)

    • @unfa00
      @unfa00 Рік тому +9

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

  • @theopenrift
    @theopenrift Рік тому +63

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

    • @zummone
      @zummone Рік тому +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 Рік тому +4

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

    • @andyjohnson4907
      @andyjohnson4907 Рік тому +1

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

    • @theopenrift
      @theopenrift Рік тому +1

      @@andyjohnson4907 yes.

    • @yuotueb
      @yuotueb 9 місяців тому +1

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

  • @AmberLB93
    @AmberLB93 Рік тому +50

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

    • @iidoyila
      @iidoyila Рік тому +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 Рік тому

      Imagine if it was still like this today.

    • @nil0bject
      @nil0bject Рік тому +1

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

    • @iidoyila
      @iidoyila Рік тому +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

    • @h1lw
      @h1lw Рік тому

      ​@@iidoyila the hardest parts were optimisation.

  • @JamesTDG
    @JamesTDG Рік тому +28

    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

  • @mmdoof
    @mmdoof Рік тому +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 Рік тому +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 Рік тому +1

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

  • @TerryMartinART
    @TerryMartinART Рік тому +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 Рік тому +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 Рік тому +1

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

    • @1e1001
      @1e1001 Рік тому

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

  • @takacsadam2850
    @takacsadam2850 Рік тому +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

  • @ImaginaShip
    @ImaginaShip Рік тому +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 Рік тому +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 Рік тому

      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 Рік тому +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.

  • @alianant
    @alianant Рік тому +8

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

  • @Uglynator
    @Uglynator Рік тому +45

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

    • @retrogarage8734
      @retrogarage8734  Рік тому +4

      Thanks!!

    • @Puxi
      @Puxi Рік тому

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

  • @selatorepico5975
    @selatorepico5975 Рік тому +2

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

  • @brullov_labs
    @brullov_labs Рік тому +4

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

  • @3DSage
    @3DSage Рік тому +45

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

  • @ian_b
    @ian_b Рік тому +11

    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 Рік тому +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.

  • @z-em4612
    @z-em4612 Рік тому +9

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

  • @Bazztoner
    @Bazztoner Рік тому

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

  • @herr_fuchsnews5630
    @herr_fuchsnews5630 Рік тому +3

    You gave some really great visualizations to explain the topic!

  • @JReybabay
    @JReybabay Рік тому

    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

  • @KingPBJames
    @KingPBJames 2 місяці тому

    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!

  • @zsciaeount
    @zsciaeount Рік тому

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

  • @Caleb-fv5fp
    @Caleb-fv5fp Рік тому +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 Рік тому +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 Рік тому

      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 Рік тому +2

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

    • @OCTAGRAM
      @OCTAGRAM Рік тому

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

    • @Shikaku2
      @Shikaku2 Рік тому +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 Рік тому +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.

  • @matt92hun
    @matt92hun Рік тому

    Informative video, really good editing work.

  •  Рік тому +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 Рік тому +3

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

  • @ploskostnost
    @ploskostnost Рік тому +2

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

  • @nemtudom5074
    @nemtudom5074 7 місяців тому

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

  • @TheSektorz
    @TheSektorz Рік тому

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

  • @Dargonhuman
    @Dargonhuman Рік тому +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 Рік тому +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

  • @Charlymander
    @Charlymander Рік тому +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.

  • @milanmestka416
    @milanmestka416 Рік тому +1

    Nicely explained! Thank you, for well made video.

  • @Fank0r
    @Fank0r Рік тому +3

    Amazing work!

  • @brutusmagnuson315
    @brutusmagnuson315 Рік тому +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.

  • @user-dg8bc4ey4z
    @user-dg8bc4ey4z Рік тому

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

  • @frequenco5545
    @frequenco5545 Рік тому

    Very well explained, thanks man!

  • @guiguito5505
    @guiguito5505 Рік тому +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

  • @TheManinBlack9054
    @TheManinBlack9054 Рік тому

    Very good explanation. Good job!

  • @TasnuArakun
    @TasnuArakun Рік тому +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 Рік тому +1

      Classic Bungie was always innovative, such great games!

  • @markhill3858
    @markhill3858 Рік тому +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 :)

  • @alexthetrain6708
    @alexthetrain6708 Рік тому +2

    Only 2k subs??? Underrared channel

  • @jasonkyleadams7577
    @jasonkyleadams7577 Рік тому

    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.

  • @jimboswe
    @jimboswe Рік тому

    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".

  • @sitaroartworks
    @sitaroartworks Рік тому +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.

  • @Muscleduck
    @Muscleduck Рік тому

    Excellent video explaining 2.5D thank you.

  • @Mekyzeroone
    @Mekyzeroone Рік тому

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

  • @I.____.....__...__
    @I.____.....__...__ Рік тому +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.

  • @bigbadbyrnes
    @bigbadbyrnes Рік тому

    Unintentional asmr, subscribed.

  • @imcrowbug
    @imcrowbug Рік тому

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

  • @jamesog15
    @jamesog15 Рік тому

    Fantastic Video!

  • @calebmoore1582
    @calebmoore1582 Рік тому +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 Рік тому +3

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

    • @OCTAGRAM
      @OCTAGRAM Рік тому

      No, you look from above

    • @rashiro7262
      @rashiro7262 Рік тому +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.

  • @plussum3255
    @plussum3255 Рік тому

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

  • @CarlMahnke
    @CarlMahnke Рік тому +1

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

  • @YogiTheBearMan
    @YogiTheBearMan Рік тому

    Wait what about VR such as Half Life Alyx on Valve Index? Does it use 3 point perspective too or does it do something more sophisticated since you have a wider view? I played through that game at my local VR Arcade but I still don’t know. It definitely looked like I was inside the game vs viewing it on a screen.

    • @GrammerPancreas
      @GrammerPancreas Рік тому

      The games just use standard 3-point perspective, software warps the image to fit the lens. Your brain ends up being unable to tell the difference, however, due to how the lens works

  • @dotcomgamingd5564
    @dotcomgamingd5564 Рік тому

    this video is mind blowing. thank you for this.

  • @Mblackwell1024
    @Mblackwell1024 Рік тому

    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.

  • @Swenglish
    @Swenglish Рік тому

    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...

  • @Greywander87
    @Greywander87 Рік тому +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 Рік тому +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 Рік тому

      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.

  • @VintageModernRemixes
    @VintageModernRemixes Рік тому

    Great video!

  • @Disthron
    @Disthron Рік тому +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.

  • @franzpattison
    @franzpattison Рік тому

    Great explanation

  • @beemoh
    @beemoh Рік тому

    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!

  • @democracy_enjoyer
    @democracy_enjoyer Рік тому

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

  • @georgef551
    @georgef551 Рік тому

    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.

  • @NexuJin
    @NexuJin Рік тому +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 Рік тому +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.

  • @IrocZIV
    @IrocZIV Рік тому

    Everyone forgets about Ultima Underworld that came out just before Wolfenstein

  • @BSGOST
    @BSGOST Рік тому +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 Рік тому +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 Рік тому

      @@MilkshakeBoiDarude Well the skybox scrolls slower

    • @lukabrasi001
      @lukabrasi001 Рік тому

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

  • @KairuHakubi
    @KairuHakubi Рік тому

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

  • @danyukhin
    @danyukhin Рік тому

    awesome video, thank you

  • @ArjunTheRageGuy
    @ArjunTheRageGuy Рік тому

    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

  • @futureshock7425
    @futureshock7425 Рік тому

    This explains everything well thanks

  • @IneptOrange
    @IneptOrange Рік тому

    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.

  • @skeletspook
    @skeletspook Рік тому +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 Рік тому

      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.

  • @supertna9154
    @supertna9154 3 місяці тому

    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 11 днів тому

      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

  • @oleksiyprotas6376
    @oleksiyprotas6376 Рік тому

    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.

  • @Dan-yk6sy
    @Dan-yk6sy Рік тому

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

  • @CJ-jl6hf
    @CJ-jl6hf Рік тому +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

  • @BlueSatoshi
    @BlueSatoshi Рік тому +1

    0:08 The technique in question is called raycasting.

  • @tweeleaf
    @tweeleaf Рік тому

    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.

  • @Scalibq
    @Scalibq Рік тому

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

  • @Littlefighter1911
    @Littlefighter1911 Рік тому +1

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

  • @wj11jam78
    @wj11jam78 Рік тому

    What if you used a technique like at 8:51, but had the engine sort of warp the top and bottom areas of the image? I know the perspective would still be off - becuase it wouldn't take depth into account with the warping "filter", but perhaps it could still look a little bit better than duke nukem's?

    • @The14Some1
      @The14Some1 Рік тому

      It's impossible and everything would look even more wrong. You can't simply take a plane with image, rotate it in 3d and expect for decent 3d rotation effect of it's content.

    • @The14Some1
      @The14Some1 Рік тому

      However, it is maybe possible to convert everything into a slopes when you press "look up" or "look down" and rotate the world around you (or technically speaking around the screen plain center point) :)

    • @OCTAGRAM
      @OCTAGRAM Рік тому +1

      @@The14Some1 No, you can. It shall work if done properly. The planar image is a distorted portion of a vision sphere, so you can project points back to sphere, then project points forward to another plane. Or you can just reproject points from one plane to another one. These ones are called Mobius transformations, defined by rational functions, and the desired transformation may match another transformation that can rotate plane with an image

    • @oginer
      @oginer Рік тому

      @@The14Some1 It's possible for rotations around the camera axis. That's how games like Myst worked, or how skyboxes used to be implemented. Search "cubemap skybox". In this case we only want to be able to look up/down a bit, so no need for the full cube, just the front side.

  • @morganwilliams5591
    @morganwilliams5591 Рік тому

    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 3 місяці тому

      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.

  • @Islandswamp
    @Islandswamp 11 місяців тому

    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. 😊

  • @ravenweikel5974
    @ravenweikel5974 Рік тому +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 Рік тому

      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 Рік тому +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.

  • @Felix-nh5pw
    @Felix-nh5pw Рік тому

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

  • @ddnava96
    @ddnava96 Рік тому +1

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

  • @RusticRonnie
    @RusticRonnie Рік тому

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

  • @taskanawa9604
    @taskanawa9604 Рік тому +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

  • @mihalydozsa2254
    @mihalydozsa2254 Рік тому

    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?

  • @wuspoppin6564
    @wuspoppin6564 Рік тому

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

  • @Spacecoke
    @Spacecoke Рік тому

    I remember the n64 version not looking wierd. Was it upgraded to 3 point?

  • @Puxi
    @Puxi Рік тому +1

    1:54 "Dook Nuookum. "

  • @AbandonedVoid
    @AbandonedVoid Рік тому

    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 Рік тому

      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 Рік тому +1

    How i see it is that its very nostalgic

  • @drpavel_
    @drpavel_ Рік тому

    Interesting video