Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Doomkid

Game Theorists "Doom Wasn't 3D" video and my refutation

Recommended Posts

Arctangent said:

it's not hard to see the decision as simply a matter of not being assed to work out what should happen when an actor is standing on top of another.

I'd generally agree with this. But it's a fairly reasonable kind of laziness: with a few exceptions, the majority of Doom's monsters are foot soldiers, and for the most part, having monsters stand on top of each other tends to just look really weird and wrong (even in modern model-based games). While it would certainly be nice to be able to jump over the imps at the bottom of the ledge on MAP01, it's a lot of effort to implement for not a lot of gain.

Arctangent said:

Melee not respecting height is likely for the same reason

Actually this is a pretty trivial oversight - see the wiki. The player's own melee attacks already do the right thing - they just forgot to implement the check for monster too.

Share this post


Link to post
Gez said:

Nah.

It just requires more complicated maths, that's all. But there are plenty of games that have no problems with full 3D collisions; including some vintage games: take Descent, for example.

Not in that way. Descent is actually a terrible example, in this case - there's no gravity, and it's even designed in such a way that you can lose track of what's up and what's left. 3D collisions in that are easy, since they're the same no matter what direction it's coming from.

On the flip-side, in something like Doom or even most 2D platformers, colliding with something from above is a lot different from colliding with it from the side: you have to decide whether or not the thing below you gets crushed ( like in most platformers ) or if you'll stand on it like anything else, and if so, if it'll carry you around the place or you'll just slip around as it moves out from under you, if in cases of elastic collisions whether you'll bounce off of it as normal and just slowly start jittering like mad once you've gotten to low z-velocities, etc.

Essentially, the issue is that if collision with geometry is different for walls and floors ( such as floors allowing you to jump again ), the question is how much that goes for when another mob becomes less like a wall and more like a floor.

Share this post


Link to post

Of course Doom is 3D. Thanks, DoomKid for the rebuttal video. I never liked the "2.5D" label. How do you represent half a dimension in the real world anyway?

Doom provides a 3D view into its world, as long as you're upright, not leaning against the wall, or rolling around on the floor. Doom's view is the view you would get with one eye. Having two eyes provides the brain with additional spacial information about depth, which you lose if you cover or close one eye.

It's 3D enough for me.

Share this post


Link to post

Nice video. The "Doom is 2D" myth has bothered me for a while, and I was even thinking of making my own video explanation basically like the one you did, but you beat me to it.

fraggle said:

Here's the thing - it is. The Doom engine is still doing a perspective transform to map those walls, floors and ceilings onto your display (what "3D" at its heart really is), and the mathematics to do this is exactly the same as in a "true 3D" or modern game.


This is worth mentioning. The texture mapping in Doom has correct perspective (aside from possible rounding errors.) It's even more accurate than the original PlayStation. If you take a screenshot from Doom and render it using 3D hardware with the same field of view, it should line up exactly with the software version. If you rendered two images with the Doom engine you could even make a true stereo 3D image and it would look convincing.

You could even say that about Wolfenstein, although none of the objects in that game have a Z coordinate.

kb1 said:

Of course Doom is 3D. Thanks, DoomKid for the rebuttal video. I never liked the "2.5D" label. How do you represent half a dimension in the real world anyway?


A bit off-topic, but I stumbled upon this video the other day that explains what 2.5D would really be: https://www.youtube.com/watch?v=gB9n2gHsHN4

Share this post


Link to post

You guys should visit one of Russian amusement parks. They now offer something called "6D". I guess you go into hyperspace or something.

Share this post


Link to post
Arctangent said:

Not in that way. Descent is actually a terrible example, in this case - there's no gravity, and it's even designed in such a way that you can lose track of what's up and what's left. 3D collisions in that are easy, since they're the same no matter what direction it's coming from.

Point is that all three dimensions are treated the same. Not like in Doom where the third dimension is tacked on as an afterthought.

Arctangent said:

On the flip-side, in something like Doom or even most 2D platformers, colliding with something from above is a lot different from colliding with it from the side: you have to decide whether or not the thing below you gets crushed ( like in most platformers ) or if you'll stand on it like anything else, and if so, if it'll carry you around the place or you'll just slip around as it moves out from under you, if in cases of elastic collisions whether you'll bounce off of it as normal and just slowly start jittering like mad once you've gotten to low z-velocities, etc.

Essentially, the issue is that if collision with geometry is different for walls and floors ( such as floors allowing you to jump again ), the question is how much that goes for when another mob becomes less like a wall and more like a floor.

You confuse dimension and direction. It'd be perfectly feasible to have a "stomp" feature in Descent where you move down and crush what's under your hull. It'd also be possible to have a directional gravity but you'd have to keep it weak (like just slowly drifting your PyroGX) or come up with a completely different gameplay that involves some sort of climbing rover instead of a small spacecraft.

Likewise, it's possible for a 2D platformer to have gravity direction changing during the game (it's the main gimmick of VVVVVV for example; and pushed even further in AYIM).

Share this post


Link to post
fraggle said:

A good summary, except that I think it's a too restrictive definition. Half of the things you mention are actually 3D physics. I'd argue it's still 3D even if there are no physics in play; you can implement a complete 3D renderer without doing any collision detection for example.

For me, the essence of games is interactivity, and so the essence of 3D games is interactivity in 3D space. In a game where you embody a character in a virtual world with physics that are important for the game's interactivity, I wouldn't consider that game a 3D game if the physics weren't 3D, no matter its renderer. As for games with no physics at all, their dimensionality would still depend on the number of axes along which interactive objects can move. Imagine a variant of chess that no longer plays on top of a board, but inside a cube of fields with x, y and z coordinates each. :)

Share this post


Link to post

Descent goes way beyond having a fully(?) 3D renderer and physics engine: it also has 6 degrees of freedom (DOF) with regards to movement. In Doom, you only really have 3 DOF: movement along the XY axis and yawing (turning). Yes, you can change your Z position (elevation) but not directly: you're constrained by the floors' and ceilings' positions. This means you have 3 DOC (degrees of control) and 4 DOF. So what you get is a kind of half-assed 4 DOF, which you could call "3.5 DOF".

Flying monsters can alter they Z position at will, but the simple movement logic in the game only really allows them to do so "lazily" (just to clear a cliff or move towards a target, not to e.g. avoid a projectile or a melee encounter).

This has been discussed again and again. My take on it, just like back then, is that having 6 DOF doesn't necessarily make a good or interesting game: it might make a realistic simulator, and many actions in RL are not done with 6 DOF anyway: walking and driving are two examples, and even airplanes have less DOF than, say, a helicopter.

Share this post


Link to post

I don't think you can call something truly 3D when you can't create vertices on an XYZ grid. Doom only lets you create vertices on X and Y with limited vertical use of the Z axis. Psudeo-3D or 2.5D is really the best way to describe it.

Share this post


Link to post

^ I agree that Doom isn't truly 3D, but I'm not entirely fond on your argument for it. The Doom map format, as stored in wad files while the game isn't running, is indeed 2D. And yet, collision detections within the running engine are 3D for the most part. Static definition data aren't telling anything about an engine's capabilities. Data representing 2D structures can be transformed to 3D on the fly. For an even better example, see 3D floors in modern ports. Don't confuse the map format with the engine, and don't confuse 2D algorithms with 3D algorithms applied onto limited geometry.

Share this post


Link to post
scifista42 said:

@Quasar: Well, the BSP tree partitions the map in 2D only, therefore traversing the tree orders map geometry near-to-far from the camera in 2D only. Also, checking whether some geometry is completely out of view, or whether an already rendered geometry obstructs an entire part of the view, so that there's no point in traversing areas behind said geometry, is done in 2D (possibly using some not-entirely-2D-only tricks, which definitely aren't entirely 3D either, though). That's the 2D part of it. The transformations that make the traversed geometry appear on screen are already 3D (even though they heavily rely on the limited structure of the geometry).

Right that's one of the data structure limitations I'm talking about. Given the restrictions of one floor and one ceiling per area, it is unnecessary to partition a three-dimensional BSP in order to create a painter's ordering for DOOM's walls.

EDIT (to the above posts): Whatever never mind, probably overreacting.

Share this post


Link to post
scifista42 said:

The Doom map format, as stored in wad files while the game isn't running, is indeed 2D. And yet, collision detections within the running engine are 3D for the most part.


That's because in reality the 2D map that you see is a "sandwich" of TWO 2D maps: that floor & ceiling height information that you enter while mapping sees to it. Room-over-Room (RoR) extensions to Doom actually add multiple such sandwiches, at least for specific sectors.

It's the same difference that exists between representing 2D data as a 3D surface, and plotting actual discrete 3D points (as voxels or contours/curves). Doom make it a bit more complicated by having TWO sets of 2D data plotted as 3D surfaces, one on top of the other.

Share this post


Link to post
Memfis said:

You guys should visit one of Russian amusement parks. They now offer something called "6D". I guess you go into hyperspace or something.

I've certainly encountered "4D" films in the past, which I think is where you watch a 3D film and they throw water in your face at appropriate moments.

Share this post


Link to post

I would best describe Doom as 3D-Lite. It has some 3D elements, even if it's not purely polygonal and has some hybrid 2D elements to keep the engine running along at a brisk pace. I don't think 2.5-D is appropriate, though, since it's also used to describe fully 3D polygonal games that are on an artificially limited plane to give it similar gameplay as a 2D game, which Doom is arguably the complete opposite of, using 2D elements (and some 3D) to represent a fully 3D type of gameplay.

Share this post


Link to post
MetroidJunkie said:

I don't think 2.5-D is appropriate, though, since it's also used to describe fully 3D polygonal games that are on an artificially limited plane to give it similar gameplay as a 2D game, which Doom is arguably the complete opposite of, using 2D elements (and some 3D) to represent a fully 3D type of gameplay.

So, one is (2+0.5)D and the other one is (3-0.5)D?

Share this post


Link to post

Wolf3d


Now, Wolf3D. There's the 2D one in the argument here. My reasoning? Height is never a factor when you're playing. On top of the flat floors and ceilings, you point at something, you'll shoot it. If you're over a pickup, you'll collect it. No passing over or under in any circumstances whatsoever.

That's 2D.

Share this post


Link to post

Wolf3D could be reduced to 1 horizontal line of resolution, and still be playable. Essentially, seeing a 1D projection of a 2D world on a 2D screen in a 3D material world O_o

Share this post


Link to post
Maes said:

Wolf3D could be reduced to 1 horizontal line of resolution, and still be playable.


Jury's out. As maze-like as Wolf3D is, you still need to be able to perceive the walls in some respect to navigate. Rotational aiming could be done on 1 pixel row of resolution though, just the actual moving around would prove incredibly difficult.

Share this post


Link to post
komojo said:

A bit off-topic, but I stumbled upon this video the other day that explains what 2.5D would really be: https://www.youtube.com/watch?v=gB9n2gHsHN4

A quick follow-up: Yes, the fractal dimension. Nice video! But this is more of a mathmatical trick. It's a way to measure the circumference/volume of a rough shape, or a way to describe how rough a shape is, by knowing it's circumference/volume. But, in the real world, all atoms that make up that shape have an exact x, y, and z coordinate, and can be described fully in three dimensions, if you could measure each atom.

In other words, there is no real-world half of a coordinate, therefore Doom has to be 3D. Doom doesn't allow you to rotate along all 3 axis, but that doesn't disqualify it. It considers all 3 coordinates when rendering objects, making it a 3D renderer, plain and simple.

Calling Doom a 2.5D engine is a slant made by some people, in an attempt to knock the game off of the 1st Place pedestal, as the baddest-ass game ever created :) Nope, didn't work - Doom rocks!

Share this post


Link to post

There are some simple geometric features that cannot be found in the Doom engine. Like a balcony protruding or room over room. Or standing under a staircase, or a thin platform that raises upwards, like the Quake elevators. So the game is not truly 3D IMO because you cannot create these very very simple constructs.

And it's stupid to call it 2D as well, so it's limited 3D.

Share this post


Link to post

If the strict definition of computer generated 3D is, an XYZ coordinate space in which vertices, lines and filled shapes can be drawn to form fully rotational, enclosed geometry, then Doom is by no means (truly) 3D, even if there are 3D calculations for the behavior of specific objects. A cube, perhaps the simplest object one could construct in 3D space, is completely impossible in vanilla Doom, because any attempt to create one will result in one or more faces being cut off by the single ceiling/floor limit. In a true 3D renderer the cube would be floating in the void, as opposed to being situated at the top or bottom of an abstract ceiling or floor.

Share this post


Link to post

Aren't the hitboxes for enemies just invisible cubes, essentially? On a side note, it would be interesting if a source port allowed you to view an actor's hitbox while playing, similar to how Doom Builder does.

Share this post


Link to post

To add to my previous post, the game world cannot have the very simple structures I mentioned, it cannot have slopes or real curves either. Not even sectors that move around, like a moving platform that gets you from one ledge to another, or sliding doors/obstacles.

You can create stuff and they are projected in a reasonably 3-dimensional game world but you cannot create any sort of serious/realistic 3D geometry.

Share this post


Link to post
VGA said:

To add to my previous post, the game world cannot have the very simple structures I mentioned, it cannot have slopes or real curves either. Not even sectors that move around, like a moving platform that gets you from one ledge to another, or sliding doors/obstacles.

You can create stuff and they are projected in a reasonably 3-dimensional game world but you cannot create any sort of serious/realistic 3D geometry.

Yep, this all was basically the point of my video. Doom isn't "Full 3D" strictly in the sense that the map geometry is rendered on a 2D plane despite having a calculated Z height for each sector, but all the stuff he said implying there's no Z axis at play at all under the hood and that enemy hitboxes are only affected by the x/y axes and shit was like a billion miles off base. No one would argue that vanilla Doom could do room over room, but at the end of the day, according to the dictionary, a 3-Dimensional space is defined as having height, width and depth, all of which are present in both Doom's map geometry and actor hitboxes/functionality. Using this definition, the appropriate conclusion is "Doom can't do room over room" moreso than "Doom is not a 3D game". There are literally 3 dimensions being calculated. Whether or not someone calls this 2.5D or whatever else is pretty much subjective pedantry (though it makes for really interesting discussion!)

Share this post


Link to post
VGA said:

You can create stuff and they are projected in a reasonably 3-dimensional game world but you cannot create any sort of serious/realistic 3D geometry.


Let alone that no actor can rotate along the X or Y axis -stuff can't roll or pitch. They can only yaw around the Z axis -rotate on the XY plane, and an object's orientation is not taken into account even in 3D collision/hitscan calculations -except maaaaybe for aiming across sectors of different height or player aiming pitch in Heretic.

Share this post


Link to post

Three dimensions are calculated but the Z axis operates differently in Doom than it does in "traditional" 3D spaces.

Share this post


Link to post
Jayextee said:

Now, Wolf3D. There's the 2D one in the argument here. My reasoning? Height is never a factor when you're playing. On top of the flat floors and ceilings, you point at something, you'll shoot it. If you're over a pickup, you'll collect it. No passing over or under in any circumstances whatsoever.

That's 2D.


That's the difference between Doom and Wolfenstein 3D. The latter could be played on a top down perspective in a purely 2D engine and not affect the gameplay even a little. Doom, on the other hand, has some 3D calculations including a height system that would be more difficult to pull off on a 2D plane.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×