Comment by DubiousPusher

7 years ago

I've been working in AR/VR for a few years now and fairly convinced of this. In fact, beyond the OS interlace I'd say this is true of presenting most data. The usefulness of most interfaces is that they abstract something real. Part of the value of abstraction is the removal of most the extraneous aspects of a problem. Removing a whole dimension removes a lot of data that may be extraneous.

Maps are one very good example of this. A map is partially so powerful because it removes a ton of information you probably don't care about. Occasionally would you like to know a house is up a steep hill before you drive there? Sure. But most of the time who cares. And if you really need elevation data, there's a special map for that. A map which actually shows you information about grade in much clearer way than even a 3D model would (being as humans are actually really bad at guessing a grade by looking at a real slope).

I think it's more than that. As Carmack observes, you don't see in 3D. You see two 2D planes that your brain extracts a certain amount of depth information from. As a UI goes, you can't actually freely use that third dimension, because as soon as one element obscures another, either the front element is too opaque to see through, in which case the second might as well not be there, or the opacity is not 100% in which case it just gets confusing fast.

You've really got something more like 2.1d to work with with humans; intefaces need to take that into account, and maybe sometimes use that .1d depth dimension to provide light hinting, but not depend on it.

So you're not removing a dimension... you're acknowledging it doesn't exist. There isn't really a "third dimension" here to take advantage of. It may be visually impressive if something flies from far away to up close, but in interface terms, all that has happened is that the z-buffer values shifted, but the interface still has the same number of square radians available that it did before.

The depth information is a lot more like an additional color than an additional spatial dimension. UIs are better with color hinting available when used well, but there's not much fundamental difference between a color 2D interface and a monochrome 2D interface. Proof that it isn't much is that there are some people who use settings to set their phone to monochrome, and the result is at worst occasionally inconvenient, not crippling. Compare with trying to go from a 2D interface to a 1D interface, which would be utterly crippling and destroy a huge swathe of current UI paradigms.

To truly "see in 3D" would require a fourth-dimension perspective. A 4D person could use a 3D display arbitrarily, because they can freely see the entire 3D space, including seeing things inside opaque spheres, etc, just like we can look at a 2D display and see the inside of circles and boxes freely. They have access to all sorts of paradigms we don't, just like no 2D designer would ever come up with a "text box", even though it fits on the 2D plane, because no 2D user could see inside the text box to see what's in it.

(This is one of those cases where the mere act of typing it out improved my understanding of the topic. I didn't have the "depth information is really just another color" idea going in, but the more I think about it the more sense it makes, in terms of the amount of information that channel can carry. Just like color, it's not quite 0, but you can't really stuff all that much in there.)

  • True, almost any interface that overlaps helpful data in layers or stacks is usually terrible. Hell, I don't even like desktop computer GUIs that allow you to have stacks of windows. I'd rather see one thing at a time and cycle between them. Or have a picker view.

    That said we do actually get quite a bit out of that ability to see depth. People who lose depth perception have quite a hard time adapting to the world. And our spatial understanding seems to go beyond our vision. That to me is where a 3D interface might be really powerful. Sometimes things which we struggle to decode in 2D are just intuitive in 3D like knots or the run of wires or pipes.

    As I said elsewhere in this thread I think the 3D interfaces that are really going to be powerful haven't occurred to us yet. And I believe that what we'll find in time is that there are things which 3D interfaces are tremendously advantagous for and using anything else will feel like a hinderance. But those will be things for which 2D interfaces don't already do an amazing job.

    • Carmack already mentioned the existence of "true 3D" content, for which you get a 3D interface whether you like it or not, so to speak, so I didn't go into that.

      But making everything 3D, because VR, is as silly as when the gaming industry made everything 3D, resulting in entire console libraries full of games that looked like shit even at the time, pushing 4 or 5 frames per second and having other incredible compromises, when the same consoles are monsters of 2D performance. As nice as it may be to have truly 3D content available in psuedo-real space, there's no reason to insist that when you want to set the shininess of a given pipe that you need a huge skueomorphic switch as big as an old car stick shift that you can visibly pull popping out of your UI or something when all you need is a slider. (If anything, I'd think minimalism in a VR environment is a good idea, both to contrast the other content and to prevent detracting from it.)

      I think that's probably the kind of crap Carmack is complaining about. We've already been around the same loop a couple of times already, and 3D, albeit on 2D surfaces, was one of them, so it's fair to look to the past instances of such BS and maybe this time try to move along the curve a bit faster. I'd say that if we can get this nonsense out of the way faster rather than slower, we're more likely to get to the truly useful 3D stuff that doesn't exist yet. Otherwise we risk 3D interfaces becoming something like the Wiimote, which IMHO was actually a really useful tool that has become despised solely because it was badly misused by so many games, because motion controls. (Another example we've already been through.)

      2 replies →

  • I think what you've said is all correct. And its mimicked, to some degree, by how we build our physical lives. Shelves and desks are not so deep as to obscure what you need.

    That said, I think an element that's missed is tangibility. In the real world, a stack of papers and folders are a valid way organize your own desk. You know where everything is and allowing you to tune your layout and grow muscle memory is very helpful. VR interfaces should let the user organize as they see fit. Interfaces should be tangible, movable, sizable, etc.

    • > And its mimicked, to some degree, by how we build our physical lives. Shelves and desks are not so deep as to obscure what you need.

      Oddly, cupboards and refrigerators are. A lot of food rots in the back of refrigerators that should have just been smaller.

      4 replies →

  • I agree with your analysis, but seeing 3D is probably not the most important aspect of a potential useful 3D interface.

    The human ability to intuitively internally model and navigate 3D spaces is what makes 3D special.

    Cf. method of loci, for instance.

  • > the interface still has the same number of square radians available that it did before

    This is really well put. And your "UI depth = colour" is good too, it really is more just hinting than an actual data channel.

  • > As Carmack observes, you don't see in 3D. You see two 2D planes that your brain extracts a certain amount of depth information from

    This is semantics. Replace "3D UIs" with "UIs that make use of depth" and see what you get.

  • yes we see 2d surfaces in 3d. Dolphins can actually see in 3d as they can sense entire 3d volumes and project them back to eachother too.

    • I’m assuming you meant “yes we see 3d surfaces in 2d” to be consistent with the parent comment? Also, I’m impressed that dolphins have that ability. How does projecting them to each other work biologically? Do they somehow encode what they see as sound (less lossily than humans do)?

      3 replies →

> The usefulness of most interfaces is that they abstract something real.

When I think someone is overenthusiastic about virtual reality applications (especially stuff involving "collaboration") I like to contrast it with an insanely-successful tool with broad adoption: E-mail.

Who wants to take their message, drop it into a virtual envelope, affix a virtually-licked stamp and virtually-walk to the local virtual-post-office?

Heck no, we just click the big "Send" button! We didn't model the cruft in 3D, we removed it, because it wasn't truly necessary to the job.

  • Let's not throw the baby out with the bathwater here. Carmack is talking about good UI for VR applications - not why VR applications are a mistake.

On the one hand, I totally agree with this as my experience with AR/VR interfaces as well.

However, I'm not convinced that this is due to any inherent limitations in our brain's ability to understand a third dimension, just that we are accustomed to only having to deal with two dimensions. I'm carefully wording this in terms of UI design in 3-D because I agree about the physical issues of eyes and focus.

For example, in many spaceflight simulators, the radar includes vertical bars to indicate height above/below your plane. That's a 3-D interface rendered onto a 2-D screen, though it's 3-D in VR. Once you learn to read it, you become highly effective at mapping what you see to a spatial understanding of what's going on around you.

The driver's controls in a car are also a good example of a 3-D interface demonstrating patterns that are inherently 3-D (twist knobs, paddles, H pattern gearbox, etc.), and it works mostly because you are expected to develop muscle memory.

  • Are car controls really a good example of a 3D interface in the sense Carmack is discussing? I think he's specifically talking about 3D visualization.

    In contrast car interfaces are specifically non-visual. You have to look to learn how to use them, but after that, anything you have to look at to use is bad, because it takes the driver's eyes off the road. But in the same way that the human eyes extract a 2D version of a 3D world, I think the a car's nobs are a proprioceptive projection of the 3D world.

    • I know Carmack was specifically talking about 3D visualization, but I was responding to the parent comment's point about the value of data simplification that 2D brings. I don't usually quote myself, but that's what I meant by:

      I'm carefully wording this in terms of UI design in 3-D because I agree about the physical issues of eyes and focus.

      I specifically brought up the car's knobs and wheels and buttons because it's an example of a fairly complex but widely adopted and successful non-2D interface. My point was that I don't think there is an inherent limitation in the human brain's ability to comprehend or think in 3D, and that I think it's more of a training and acclimatization phenomenon.

      4 replies →

  • “twist knobs” – 1 degree of freedom

    “paddles” – more or less a discrete switch, in form of a stick

    “H pattern gearbox” – a few discrete choices

    pedals – 1 degree of freedom

    steering wheel – 1 degree of freedom

    These things all exist in a 3-dimensional world, but they are not “3-D interfaces”.

    Compare with https://en.wikipedia.org/wiki/SpaceOrb_360

    * * *

    If you define a car’s interface to be “3D” then so is basically anything, say a TV remote or the knobs on an oven.

    • These are tactile controls arranged in a 3D space.

      The 2D equivalent would be a flat screen with virtual knobs, wheels, and switches, and would be completely unusable.

      The problem with AR is that it's 2.5D. Physical 3D is fully tactile in every dimension. AR lacks that kind of tactility.

      True - not just visual - VR would have fingertip touch control of every object in the scene. That would (literally) be a game-changer, but we don't have the technology to make it happen yet.

      The 3D "mice" that exist for AR/VR are clunky and crude with hand-level resolution rather than fingertip resolution.

      Compare with a 2D touchscreen which has good tactile control. And a 2D desktop which (usually) gives you a bigger screen area in return for simplified but still very usable tactile control with a mouse.

      In other words, VR/AR is not just about the visuals.

      1 reply →

  • > The driver's controls in a car are also a good example of a 3-D interface demonstrating patterns that are inherently 3-D (twist knobs, paddles, H pattern gearbox, etc.)

    These are almost purely input mechanisms, in that sense we've had 3D interfaces in video games for decades by way various controller shapes. The problem is output interfaces don't work or at least don't gain much from the third dimension.

  • > H pattern gearbox

    What's 3-D about that? The shifter moves in a two-dimensional pattern, though conceptually you're only moving in one dimension (up and down the gears).

    I suppose you could treat the clutch pedal as the third dimension together with two dimensions for the H.

    Knobs and paddles are likewise only single dimensional, though embedded in 3D space, from my perspective.

    • The controls exist on many different planes, and their placement requires some muscle memory, such as moving your hand between the steering wheel and the shifter. Each individual interaction in the interface might be constrained to two degrees of freedom, but the interface requires operating on a spatial mental model.

Maps are one very good example of this. A map is partially so powerful because it removes a ton of information you probably don't care about...Sure. But most of the time who cares.

This is usually true, but then again, there is the flip side. There are exceptions to this, and those exceptions may be interesting areas of inquiry. In particular, there are situations where one would like to go from a map representation to seeing relationships which can't be readily expressed in a map. One example of this would be evaluating views from a house. Another example, would be the layout of ducting within the ceiling or within crawl spaces. Another example would be evaluating lines of sight or lines of fire within a particular scene.

Often, this can be handled as something like a relief map or a scale model which can be manipulated and zoomed into by the user in VR, but the exceptions to the "a map is usually enough" seem to coincide with areas where VR/AR might be particularly interesting.

I think there might be some relationship here to Archy.

https://en.wikipedia.org/wiki/Archy

  • I completely agree. A lot of what my team works on is finding those cases where a 3D view has a very high value. One example is a project we worked on that allows construction companies to use the 3D CAD data for their project as a setting to move equipment through. It's not unheard of for a company to bring a piece of equipment on site only to find it cannot move through a given space because material is in the way. Sometimes a partially complete structure which could've been built later is impassable. This is a situation in which a completely 3D representation is really powerful and the effort can save significant money in the long run.

    I think there are absolutely cases where 3D interfaces will blow away 2D ones. We're on the road to discovering those. But the industry has had a tendency to try to take what works in 2D and make a 3D version, often ending with a user experience that is less intuitive and less powerful.

    The 3D interfaces that are really going to make a difference will probably take decades to invent/discover. Our 2D interfaces have had literally thousands of years to develop.

    • It's not unheard of for a company to bring a piece of equipment on site only to find it cannot move through a given space because material is in the way.

      This is precisely the kind of situation I was thinking about!

      This is a situation in which a completely 3D representation is really powerful and the effort can save significant money in the long run.

      I think this is a key criteria for determining what problems should be looked at.

I strongly agree with your point about abstraction. However I'd love if people who work on such interfaces would get a stronger grip on how the perception of depth works.

Painters for example use saturation, colors, occlusion, details, abstraction and perspective to get the most out of depth.

In a 3D scene with the same objects you can make or break the scene's readability, purely based on the placement of objects. What you can't do, is to come and slap 3D onto it and it will somehow work out. If you think 3D space itself will make it magically work, you are wrong. Like a graphic designer puts a lot of work into making 2D information readable, 3D information also would need a ton of work to become readable.

Interestingly enough a lot of 2D designs actually emulate levels of depth by using occlusion, focus, shadows, etc.

I can certainly imagine 3D interfaces that would work, you would only have to be very disciplined about your use of dimensions and how much to have on which plane and why.

I completely disagree with your maps example here. Yes, 2D currently works ok, but I can't see how it can beat a full-surround AR experience, which simply overlays a shiny string along the path you have to follow.

That is for real-time navigation.

For positioning and planning, 3D will be required to navigate a multistory mall. But a 3D map movie-style could potentially be replaced with something better, if researched.