Slashdot Mirror


3D User Interfaces

Martin Ecker writes "Two-dimensional user interfaces (UIs) have been around for a long time, and people are accustomed to using them. However, 3-dimensional user interfaces have not yet received as much exposure. Only a select few applications utilize 3D UIs, some with more success than others. The book 3D User Interfaces: Theory and Practice (published by Addison-Wesley) attempts to give a broad overview of the field of 3D user interfaces. It discusses the hardware devices and the software techniques required to build successful 3D UIs and gives a number of design guidelines to follow when having to develop new 3D interaction techniques for specific applications." Read on for the rest of Ecker's review. 3D User Interfaces: Theory and Practice author Doug A. Bowman, Ernst Kruijff, Joseph J. LaViola Jr., Ivan Poupyrev pages 478 publisher Addison-Wesley Publishing rating 7/10 reviewer Martin Ecker ISBN 0201758679 summary An extensive overview of 3D input and output devices, 3D interaction techniques, and 3D user interfaces.

The book contains 13 chapters, divided into five parts. The first part contains two short chapters that introduce the basic concepts of 3D user interfaces, give a bit of history of 3D UIs, and define the scope of the book.

The second part discusses hardware input and output devices that are useful when developing 3D user interfaces. The first chapter in this part is on output devices and it presents various visual and auditory displays. Haptic devices are also discussed in this chapter. The following chapter presents 2D and 3D input devices that can be used with 3D user interfaces. The devices discussed include not only the classics, such as 2D mice, keyboards, and joysticks, but also 3D mice, tracking devices, and various forms of direct human input, such as via speech or via bioelectric signals.

The third and largest part of the book is on 3D interaction techniques. The first chapter of this part discusses the various ways that have been devised in the past to perform 3D selection and manipulation of objects. A vast number of techniques are presented in this chapter, from various pointing and virtual hand techniques to widgets for rotating an object. The following chapters discuss techniques to allow navigation through virtual worlds and user interfaces, in particular techniques for traveling and pathfinding. The following chapter is on system control and it discusses how to control the system via commands, such as using graphical menus, voice and gestural commands, or real-world tools. Finally, this part of the book contains a chapter on symbolic input, i.e. communicating text or numbers to the system, in the context of 3D UIs.

Part four of the book deals with designing and developing 3D user interfaces. For me, this was the most interesting part of the book because it shows how to put together the various input/output devices and interaction techniques presented in the previous chapters. This part also contains a chapter on evaluation of the design and implementation of user interfaces, an important aspect in order to ensure the usability of a user interface.

In the book's final section, the author takes a look at the future of 3D user interfaces with a focus on the combination of the virtual world with the real world -- so-called augmented or mixed reality. This area has received quite a bit of attention from academic research in recent years.

Throughout the book, there are useful guidelines on designing usable user interfaces. Following these guidelines will probably not give you a perfect 3D user interface, but it will definitely help you avoid the common mistakes and pitfalls. It would have been nice if all the guidelines in the book had been put all together in a separate appendix in addition to having them spread out all over the book.

The book also has a number of images and illustrations. The figures throughout the book are in black and white, apart from a four-page color insert that depicts various hardware input and output devices.

This book contains a lot of information and is probably the most comprehensive book on 3D user interfaces I have seen to date. Pretty much every aspect of 3D UIs is covered in the book somewhere, with some topics being covered in more detail than others. If you're not familiar with 3D UIs at all, this book gives you an excellent introduction to this active field of research. If you are already somewhat familiar with the topic, this book offers you a comprehensive overview of the field and gives you many references to more detailed research articles and papers.

Martin Ecker has been involved in real-time graphics programming for more than 9 years and works as a games developer for arcade games. In his rare spare time he works on a graphics-related open source project called XEngine.

You can purchase 3D User Interfaces: Theory and Practice from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

64 of 353 comments (clear)

  1. This is UNIX by Shut+the+fuck+up! · · Score: 5, Funny

    I know this!

    1. Re:This is UNIX by Pfhorrest · · Score: 2, Insightful

      I third that, and whoever modded the GP poster "off topic" (probably the same person) is a moron.

      The topic is 3D user interfaces. The great grandparent was quoting a movie, Jurrasic Park, where a character sits down at a 3D user interface (not Off Topic, and not a Troll), proclaiming "it's a unix system... I know this!". Given the UI is one I've never seen on any Unix box, and that machine was in fact a Mac Quadra, I'd say that's even Funny.

      Sometimes I wish I could metamoderate specific posts.

      --
      -Forrest Cameranesi, Geek of all Trades
      "I am Sam. Sam I am. I do not like trolls, flames, or spam."
    2. Re:This is UNIX by Pfhorrest · · Score: 2, Insightful

      But this was the FIRST post - the others are the copycats. And it's not like it was modded "Redundant" or anything - it was modded "Troll", which is completely off.

      --
      -Forrest Cameranesi, Geek of all Trades
      "I am Sam. Sam I am. I do not like trolls, flames, or spam."
    3. Re:This is UNIX by jx100 · · Score: 4, Informative

      It's called FSN, and it's right here

    4. Re:This is UNIX by SnapShot · · Score: 3, Funny

      The three-dimensional objects were separated with (forward) slashes. That's how she knew.

      --
      Waltz, nymph, for quick jigs vex Bud.
  2. 3d interfaces by Neil+Blender · · Score: 3, Funny

    My UI is already 3D (the third dimension being time).

    1. Re:3d interfaces by Anonymous Coward · · Score: 4, Funny
      I may be wrong but I thought Time was the Forth dimension.
      A dimension based on Forth? No wonder Time is so hard to understand...
    2. Re:3d interfaces by Anonymous Coward · · Score: 2, Insightful

      To my knowledge, physics doesn't designate numbers to dimensions. They don't say "This is dimension number one, this is dimension number two, etc" Time could be the fourth, then again it could be the first. You don't hear physicists saying things like "that only happens in the fourth dimension" for a reason. Which comes first or last is only a matter of perception. It doesn't matter either way.

    3. Re:3d interfaces by novakyu · · Score: 2, Informative
      To my knowledge, physics doesn't designate numbers to dimensions. They don't say "This is dimension number one, this is dimension number two, etc" Time could be the fourth, then again it could be the first. You don't hear physicists saying things like "that only happens in the fourth dimension" for a reason. Which comes first or last is only a matter of perception. It doesn't matter either way.

      Actually, when people write the four-vectors, usually time is the first component--the 0th component (so maybe 0th dimension?). Well, I guess I will get more into that in a semester or two. BTW, time by itself isn't... properly a dimension. it's "ct" not "t" that forms a dimension. Now you are using a unit system that has c = 1 that's a whole different matter, but...

    4. Re:3d interfaces by cosmo7 · · Score: 4, Funny

      Forth understand hard not is!

    5. Re:3d interfaces by Anonymous Coward · · Score: 2, Funny

      (. (at (is (it (than Lisp better))) least))

    6. Re:3d interfaces by pentalive · · Score: 3, Funny

      I just realized Forth is Yoda's native language!

  3. Define "Interface" by Anonymous Coward · · Score: 5, Funny

    The last time I tried to expose *my* 3D user interface, I was escorted to the nearest holding facility for psychological review. /zing

  4. I'll stick to 2d by 88NoSoup4U88 · · Score: 2, Interesting
    As long as the "3d" is still displayed on a 2d-field, I'm sticking to good ol' 2d.

    Wake me up when they have the gear available that is being used in Minority Report : There seems to be more thought put into that than just to give Cruise a cool way to look for information.

    1. Re:I'll stick to 2d by S_Dub · · Score: 2, Informative

      No, you can display a line with 1 dimension, length. A point can have coordinates, but by itself with no position, a point is zero dimensions.

    2. Re:I'll stick to 2d by fred+fleenblat · · Score: 3, Informative

      0 dimensions = point (e.g. single dot)
      1 dimension = line (e.g. line of LEDs)
      2 dimensions = plane (e.g. a screen of pixels)
      3 dimensions = space (e.g. holographic projection)

      In all cases, for information to be transferred to a viewer, the display must be capable of changing over time, so there is an implicit extra dimension (time) that is usually just assumed to exist, unless you're specifically talking about motion blur, MPEG encoding, or some other interaction between space and time on the display.

      Also note that displays have properties like quantization (discrete pixels) and boundaries (edge of the screen) that are not normally assumed in the context of mathematical/physical dimensions. Further, the notion that there is a "color depth" to the display is a poor choice of words and doesn't correspond to an actual dimension.

  5. SphereXP by lordkuri · · Score: 4, Informative

    I've tried out SphereXP and I have to say it's pretty kludgy. It bogged my machine down quite a bit, and just seemed rather counter intuitive. The idea of "parking" a window somewhere, and not being able to interact with it unless you restore it seemed to be a pretty big limitation to me.

  6. Sphere XP by lou2ser · · Score: 2, Informative

    If anyone wants to try a 3D UI plugin for Windows XP, I reccomend Sphere XP http://www.hamar.sk/sphere/ I have not used it in months, but it was fun to play around with. Not the most useful thing, but it shows where the future is headed.

  7. 3DDesktop by e133tc1pher · · Score: 2, Interesting

    Not quite a "real" 3D UI, it does have some cool effects for switching between virtual desktops. http://desk3d.sourceforge.net/

  8. Re:Keyhole mapping interface by sucati · · Score: 2, Funny

    I prefer duke nukem 3d

  9. Re:Look by 0racle · · Score: 2, Interesting

    doesn't mention the 3D interface used in the first Jurassic Park
    It probably doesn't since that was just a file system viewer and it was taken out of Irix. You can get lookalikes for linux though if you wanted to waste some CPU cycles looking for those porn images.

    --
    "I use a Mac because I'm just better than you are."
  10. Why is more dimensions "better" by koreaman · · Score: 2, Insightful

    I am happy with X Windows, thank you very much.
    I see no reason, absolutely none at all, why this will improve anyone's computing experience in any way. This is just another fantastic way to waste the CPU. If anyone can point out a valid reason for this, then by all means please let me know.

    1. Re:Why is more dimensions "better" by gad_zuki! · · Score: 4, Insightful

      > this will improve anyone's computing experience in any way.

      That's ridiculous. Let's talke real 3D, glasses and all. This would completely change everything and for the better. Putting things in a real background, 3D video, parking windows, 3D representations of CD cases instead of ID3 tags, 3D website deisgn, remote control of real world objects, etc.

      >This is just another fantastic way to waste the CPU

      So is anti-aliasing, so is even having a windowing system that isn't completely and utterly bare bones, etc. Some of us buy our CPUs to use them, not coddle them.

      Then again 640k is enough, eh??

    2. Re:Why is more dimensions "better" by the+gnat · · Score: 2, Insightful

      Would you be happy only using the command line?

      On a daily basis, I use exactly two graphical apps:

      1. Mozilla
      2. Molecular modelling programs

      On a somewhat less regular basis, I use PDF viewers, The Gimp, and several other scientific apps that use a GUI. But 90% of the real work I do gets done in Xterms, and as far as I'm concerned a window manager exists just to keep my terminal windows in order.

      I can think of improved user interfaces that would make my life easier, but most of them would still involve a command line, because that's almost ALWAYS going to be faster than using a mouse or waving your hands, as long as you actually know the commands. (This is also the single most important reason why I use Linux for everything: because I just get work done so much fucking faster.) Even with my 3D graphics work, I'm constantly switching back and forth between the display and assorted terminals.

    3. Re:Why is more dimensions "better" by coaxial · · Score: 2, Interesting

      Let's talk real 3D, glasses and all. This would completely change everything and for the better.

      Yes, let's talk about this "better" world.

      Putting things in a real background,

      Okay in a real 3D, there is no "background", just like how there's no "background" in real life. There's just things that are farther away. The way you put things in the "background" is either by schlepping the window 5km away from where you're working, and then then return the 5km to your primary worksite. This method is incredibly annoying and inefficent.

      Or you can perfom some action that moves automatically moves the window 5km, then perform some action that automatically retrieves the window from 5km away. How this is different from a 2d interface iconifying a window to a thumbnail, I don't know.

      3D video,

      Well all that requires is a 3d video player, not really a 3d interface, unless of course you're talking about fully immersive virtual reality, but I'm assuming your not.

      parking windows,

      I'm not familiar with parking windows.

      3D representations of CD cases instead of ID3 tags,

      Been there. Done that. Got the t-shirt.

      Another example is all those media player skins that resemble radios, tubas, organ grinders, and what not. These are widely considered to be very poorly designed interfaces. Whatever intuitiveness is gained by modeling the interface to superficially resemble a real world device is lost the moment the user tries to use it. You can't twist dials easily with a mouse. It's much slower to click a series of button widgets, than press physical buttons. Compare onscreen keyboards to your physical keyboards.

      Let's change your idea from id3 tags to cddb files, since id3tags are per track, and cd cases are per album. Right now I click "view info" and get a window that displays the tracklisting and possibly the album cover. With your idea I would click "view info" and magically the cd case would fly into view. I would then need to rotate the case to view the track listing, and then rotate it again to view the cover art. Presumably the case would be textured in high resolution scans of the physical cd's artwork. As anyone who has viewed the back cover art can attest, it's not always easily read (i.e. screwy fonts, text that spirals around the outside edge, tracks not always listed in order, etc.).

      3D website deisgn

      Of course websites are mostly text, an intrinsicly 2d object. So it's unclear on how you would actually add a third dimension to this. Sure you display one page, and then display outgoing pages farther away, but if you can't read them, then what's the point. You could achieve this same thing by displaying a thumbnail of the link's destination in a traditional 2d interface.

      I think the thumbnail idea is alot more plausible than that Johnny Mnemonic crap.

      remote control of real world objects

      I'll give you this one if the device interacts in the world in 3d. So, a robot arm? Yes. A furnace? No.

      Don't get me wrong. I'm not saying that all 3d are pure crap. I'm saying use them where appropriate (CAD, geospatial, some simulation, spreadsheets), and not where it's not (text, photographs, cd players, ...)

      >This is just another fantastic way to waste the CPU

      So is anti-aliasing, so is even having a windowing system that isn't completely and utterly bare bones, etc.


      Anti-aliasing isn't simply eyecandy. It enhances the user experience by making text easier to read. The easier it is read, the easier the user can perform his task.

      Some of us buy our CPUs to use them, not coddle t

    4. Re:Why is more dimensions "better" by Taladar · · Score: 2, Interesting

      You might want to have a look at Ratpoison http://www.nongnu.org/ratpoison/ as a WM. It is a Windowsmanager that basically maximizes every Window (tiling is possible AFAIK) and you can switch between them with the same keys you would use in "screen" (with a different prefix key of course). I use it as the final step of a constant descend KDE->XFCE->Fvwm->Ratpoison since I also use X only to give me more Xterms and for browsing, movies and pictures.

  11. Shameless plug by Mite51 · · Score: 3, Interesting

    I am working on a 3D UI project, theres still a lot of work to do but I think it has potential. I'd love to get some feedback, positive and negative. I currently have a techdemo but I plan to have a virutal desktop expose like system sometime early next year.
    I will probably buy this book just to see if if actually has any good ideas I can incorporate.
    logiccubed.com
    Jason

    1. Re:Shameless plug by Jugalator · · Score: 2, Insightful

      Do you work noticeably faster via that 3D interface than in a 2D interface?

      I've found that most 3D interfaces fail already on this point (since you have to for example spend time manipulating and moving around stuff more than in a 2D interface). It doesn't help that both the input device (mouse) and output device (monitor) usually are 2D and inefficient at navigating in and visualizing a 3D environment well. But if you indeed get the job done much faster in that interface, it sounds interesting, and I think it would be the first I've heard of.

      --
      Beware: In C++, your friends can see your privates!
    2. Re:Shameless plug by Mite51 · · Score: 2, Interesting

      If there is a shortfall to 2D desktops it is that its a parallel graphics paradigm that isnt quite inline with where graphics hardware is going. The benifit of a 3D gui isnt that its 3D per se, but that it can use 3D accelerations. 2D acceleration went the way of the dodo years ago, so from a preformance point of view using 3D APIs is very desireable.

      I am not trying to make a new design or add a lot of eye candy. I would like to think I making something that will actually be useful but takes advantage of 3D hardware acceleration while leveraging exiting applications. The one thing I realized early on is that if I made an enirely new API that any applications would have to be rewritten to use the new API.

      Personally I like eye candy in my interface, so long as it doesnt take away from what I am doing. The windows 2D api, I find, is very limited when it comes to adding pretty effects. While it can be done its usually quite a lot of work, and then it never usually works right for everyone. In this area I think Mac has definitely outdone Microsoft.

      I have listed a number of ideas on my website but initially I would like to make something along the lines of expose with some virtual desktops and "pretty" transitions for windows opening and closing effects as well as moving betweeen the desktops. There are a few expose clones for windows but they all seem a little jolting to me, partly because they is a jolting transtion to a DirectX window, but also because it just doesnt seem to flow the way expose does.

      Did I answer your question?

    3. Re:Shameless plug by back_pages · · Score: 2, Informative
      Yeah, you did. I hope it goes well for you, however I'm still not convinced that a 3D interface is something I *need*. I'm more inclined to get excited about interfaces developed specifically for a dual-head or dual system (Synergy is awesome) interfaces.

      But, of course, I'm a lot of talk and no action. I run Synergy across 3 machines and it *has* changed how I use my computers and it has become a must have. There is certainly a lot of room for creative new interfaces and I'm sure using a 3D API opens up a ton of possibilities.

  12. 3d File Browser by dangerz · · Score: 3, Interesting

    A while ago I wrote a 3d file browser for Linux. It's available here:

    http://www.freshmeat.net/projects/3dfb/

    It was a fun project and I wish I had the time to move on with it. I wanted to start adding support for textures and such, but alas school got in the way.

    It was an interesting look into the 3d world. I still use it from time to time just to fly around my file system.

    --
    The greatest experience we can have is the mysterious.
    - Albert Einstein
    1. Re:3d File Browser by rangek · · Score: 2, Funny
      but alas school got in the way

      I read that as "but alchohol got in the way... Poor drunken programmers...

  13. Re:Look by Anubis350 · · Score: 2, Interesting

    the 3d interface from jurassic park actually exists and you can d/l it if you want, it never was completely finished though and is thoroughly dated by this point.
    you can find it here

    --
    "goodbye and hello, as always" ~Prince Corwin, from Zelazny's Amber series
  14. My favorite 3d user interface by CrazyJim1 · · Score: 3, Interesting

    I like to be INSIDE a 3dlevel when designing it. I haven't coded the technology, maybe never will, but the ability to 'dig' holes or 'raise' up the walls/floor, or place objects inside the level is CLEARLY SUPERIOR to 2d CAD level design.

  15. second that by GunFodder · · Score: 2, Interesting

    The holographic computer interface was the coolest part of that movie. It really looked like a good way to process a lot of dense audiovisual data as quickly as possible. Too many movie computer systems look like nothing more than limited use expert systems with flashy graphics and cheesy sound.

  16. Re:Look by drgonzo59 · · Score: 4, Interesting

    Chances are that you run linux so download it from sourceforge originally it was developed on SGI and people posted links to that, the sourceforge version is probably more up to date. Enjoy, I tried it but didn't find it that useful. Reason is that the display is flat, i.e. 2D and twisting and turning in 3D using odd combinations of 3 mouse buttons and 3 keys (Ctrl,Alt,Shift ) just to open a folder is somehow too much work, a simple command line or double click works better.

  17. Underexposed by fm6 · · Score: 4, Insightful
    Two-dimensional user interfaces (UIs) have been around for a long time, and people are accustomed to using them. However, 3-dimensional user interfaces have not yet received as much exposure.
    If you mean, "3D UIs haven't been widely accepted", that's true. But if you mean, "We're stuck in a 2D rut because nobody pays attention to 3D UIs," then you have a short memory. Every couple of years there's some new "breakthrough" in 3D technology that's supposed to change the way we use computers -- everything from simple 3D GUI metaphors to "immersive" user interfaces. These have a few applications (mostly having to do with simulating the real world), but mostly people aren't interested.

    And why should they be? Adding a third dimension adds an order of complexity to the interface. The challenge of user interface design is to make things simpler.

    1. Re:Underexposed by steveyT · · Score: 2, Insightful

      This is because we are still stuck with the idea of a computer being a box on our desk. I interact with a fairly complex computer on a daily basis, using a sophisticated 3d interface. This computer runs my car, doing engine management, climate control, traction control and a few dozen other things I'm not aware of. The interface I use is the controls for my car. Why not have a computer that you don't sit down to interact with but one you interact with transparently throughout the day, much in the same way I interact with the computer in my car without necessarily being aware of it.

      I realise that this is currently the realm of science fiction, but then this is a technology website, why not dream?

    2. Re:Underexposed by mattkinabrewmindspri · · Score: 2, Insightful
      Bingo. Is it easier to read a piece of paper, or to read writing all over the walls?

      It is easier to get information from something that is two-dimensional.

  18. More and bigger and better... by PhotoJim · · Score: 2, Insightful

    As cool as this is, it sounds about as necessary as stereo telephones. :) The videophone was always a neat idea (I remember seeing prototypes in the early 1970s)... it never took off because the plain audio telephone was good enough. Is not a 2D GUI sufficient for all but the most involved CAD?

  19. 3D on 2D Still 2D by o0congee0o · · Score: 3, Insightful

    Just because you arrange your stuff in 3D does not mean that you do your work in 3D. There's just no usefulness other than eye-candy, didn't RTFA, but as long as my monitor is 2D I don't know how usefull it is to have my Word Processor or my spreadsheets in 3D. 3D is best left for games and simulations. I like my file manager, browser, desktop to remain 2D, can't find the crap as it is. Id be cool if I can "reach" into my monitor and strangle the virtual avatar of that moron thou.

    1. Re:3D on 2D Still 2D by Eric604 · · Score: 2, Interesting
      Even a real 3d display doesn't cut it. Do you realy want to twist your head just to look around your spreadsheet? Or standup to take a look from above? Or even worse: walk around it. Most certainly not.

      The problem here is that our eyes are realy 2D sensors. The stereoscopic effect gives an estimation of the distance but all the information is still projected on a 2D plane. and the brain translates this to 3D information. You don't know what's behind an object until you walked around it. When you walked all around it, the brain has deduced all the 3D information from the 2D sensors (eyes) All visual information we recieve is 2D unless objects are half transparent. It doesn't make sense to use an 3D display unless we plug it directly into the brain.

  20. Java 3D Desktop by myawn · · Score: 5, Informative
    If you're interested in 3D interfaces, you should take a look at Project Looking Glass from Sun:

    Project Looking Glass
    This was demo'ed at JavaOne this year, and really had some catchy visual features. Window contents can be saved to a backing pixmap and then applied to (wrapped around) objects of any shape.

    Windows could be rotated (for example, post-its or config info was stuck to the back of a flat window in several cases)

    This is still in the prototype stage, but the developer's release is open-sourced and available at java.net.

    --
    Subscribers can see articles in the future? So what? Everyone gets to see them in the future.
  21. why 3d is desirable? by xlyz · · Score: 2, Insightful

    why everybody seem to think that 3d will improve usability? information has stayed on plain paper for centuries. and screen will stay 2d for a bit still.

  22. 3D interfaces - the Uncanny Valley of UI by SuperKendall · · Score: 3, Insightful

    To me, 3D interfaces strongly resemble the efforts to produce realistically rendered humans - with an even deeper "Uncanny Valley".

    To summarize, this Valley is where when you get closer to the target (realistically rendered huamns) the more of a problem you have with the small remaining portion of data being "not quite right" to the human eye and as a result being much more disturbing to the viewer, contributing to a feeling of "creepyness" or disbelief in the result.

    3D interfaces seem to have very much the same problem, exactly because we are such spatially orientend beings and used to real 3D manipulation of objects everyday. Thus the closer 3D interfaces get, the better the 3D inputs get, the more clunky they seem to use - because you know exactly how you would do something in real life and you are constrained in some artifical way by the technology from doing what seems natural. There are a few speciailized problems solved will by 3D inputs, but no good general use that I have seen or read of.

    I would never say never - 3D GUIs may well one day become useful. I would say getting the technology out of this valley and into common use is a long ways off - possibly longer than real honest to god grey-goo nanotechnology!!

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  23. In support... by SuperKendall · · Score: 2, Interesting

    In support of your argument, I have a box at home filled with consumer 3D controllers - there was a fad for special 3D joysticks, all of which seem to have fallen by the wayside.

    A whole industry seemingly built around trying to help you gain better control of the craft in Descent. No more Descent - no more 3D controllers.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  24. There could be a reason for this... by Angst+Badger · · Score: 2, Insightful

    3D interfaces have never caught on for a couple of reasons. First and foremost is that the majority of end-user applications, from web browsers to word processors to spreadsheets are simply digital reimplementations of paper documents. The second reason is that there is no hardware that provides three-dimensional imagery that isn't either hideously expensive, causes headaches, or uncomfortable and awkward. What we casually refer to as 3D games, for example, are really projections of 3D structures onto a two-dimensional screen.

    Until it is possible to inexpensively provide a convincing illusion of depth -- which is arguably barely possible even with the expensive stuff -- 3D interfaces will require the user to perform 3D actions with a 2D representation. This is a needless complication in most cases.

    --
    Proud member of the Weirdo-American community.
  25. Been there, done that .. partially by ballpoint · · Score: 4, Interesting

    Some years (5 already?) ago I started developing a server and a 3D widget set based on Direct3D. I started with OpenGL, but found Direct3D more fully featured and a better fit for my goals at that time.

    Applications shared the server to display their objects. All interprocess communication was COM. You could easily write a 3D app in Visual Basic.

    Navigation between applications (or their components) was made easy by having each application offer a set of camera positions and orientations for the user to travel to (using the Alt-Tab and Ctrl-Tab conventions); but the user still could roam freely if he wanted.

    Unfortunately my interest waned out before I could do anything really useful. I've still got a 3D piano keyboard object, controlled by an app playing midi...

    While some say that a 3D UI doesn't add value, I think there is much to be discovered. Imagine programming in 3D, where each class and function is a labeled box which you can enter to see its code. If-then-else and case constructs could also be presented interestingly. Lame maybe - for now - but I believe that by leaving the linear one-dimensional text model we'll get a completely new perspective which we haven't grasped yet because of the lack of a useable and non-trivial framework to play with. It'll come.

    --
    Flourescent (adj): smelling like ground wheat.
  26. Hand Waving by ThePyro · · Score: 3, Insightful

    I'd definitely prefer the current point-and-click interface over all that hand waving in Minority Report. Why do so many "futuristic" interfaces (as seen in movies) require the users to move more? That's a step backwards, not a step forwards. Nobody wants to break into a sweat just trying to use a computer.

    1. Re:Hand Waving by fred+fleenblat · · Score: 4, Funny

      depends on what web site you're accessing...

    2. Re:Hand Waving by SilentJ_PDX · · Score: 3, Insightful

      Really? The mouse requires more movement than the keyboard but the mouse is definitely a step forwards in terms of UI. Sure, CLI hackers can do a lot more with a keyboard but the mouse has helped bring computers to the masses.

      A UI shouldn't be judged on how much the user has to move but on how intuitive it is. I move a lot more with my evolution but it's much more intuitive (and infinitely faster) than working with a mouse on Reason.

    3. Re:Hand Waving by schvenk · · Score: 2, Insightful

      Actually, a UI should be judged on both. The balance varies depending on the intended user. A UI that sacrificies efficiency for intuitiveness is fine if it will mostly see infrequent, novice use. But a UI that will be used constantly for complex or repetitive tasks might justify a steeper learning curve in exchange for greater efficiency (for example, less extraneous mousing around). In the best case one doesn't have to sacrifice one for the other, of course, but sometimes it's necessary.

    4. Re:Hand Waving by Taladar · · Score: 2, Insightful

      I wouldn't say the mouse is 'definitly a step forwards'. It is more like a step sideways. The mouse is good at things the keyboard is bad and the other way round. If you don't have to do anything graphical (no drawing, no moving in FPS,...) the keyboard is faster than the mouse.

      Just another instance of "right tool for the job"

  27. Why more dimensions are better by RealProgrammer · · Score: 2, Interesting

    It's not an either-or situation: X can be made to look 3D.

    I'd like an X window manager that let me grab the edge of a window and turn it, so it looked like it was facing to the left, right, up, or down, depending on which direction I turned it. You would still see the window, and it would still respond to events, but it would look compressed in the dimension you pushed it.

    Another 3D-like effect would be to move "away" from a group of windows, as zooming out to 10,000 feet, so the group of running apps looked like an icon. You could have little clusters of apps running in various spots, some close, some far away. Think of it as a unified destop switcher. There are lots of possibilities there.

    I'm better at the vision thing than the doing thing, unfortunately.

    --
    sigs, as if you care.
  28. 3D Zooming Interfaces by Nooface · · Score: 2, Informative

    Most of the 3D user interfaces that people usually mention are designed for 3D file system visualization. As others have pointed out, it is not clear that 3D adds any value for navigating the hierarchical structure of current file systems.

    It gets much more interesting when you combine 3D navigation with Zooming User Interfaces (ZUIs). For example, Zoom Quilt is a collaborative art project based on Macromedia Flash that illustrates what a 3D ZUI might look and feel like. ZUIs work by creating an intuitive information landscape. The user moves "further away" to get an overview, or "closer" for more detail, while keeping a sense of orientation and structure that traditional pop-up windows and dialogs can't match (see research papers and Java demo). Zoom Quilt was assembled from different frames of content contributed by various participants. For another Flash-based example of a 3D zooming experience, see also the older Christmas Zoom.

    --

    Nooface
    In Search of the Post-PC Interface
  29. Nuh uh by SpooForBrains · · Score: 4, Interesting

    I had a good chance to play with Project Looking Glass at Linux Expo in London this year, and while I was certainly impressed, I realised that it's nothing more than a very very pretty extension of a standard KDE/Gnome-like desktop.

    First off, you can shrink things down to the bottom of your window. This is basically a clone of the MacOS X dock. You can also shove things off to the left or right of your workspace, which is the same thing, but sideways. The impressive twist to this is that you can still see what the windows are doing when they are in this state, so if, for example, you have a movie playing, it will continue to play in it's docked state. Basically an up-to-date reworking of an existing concept.

    Secondly, you can rotate n degrees clockwise or anti-clockwise to get a fresh workspace. Now bear in mind that the number of workspaces is finite, and you always rotate the same amount of space round, it's not an "analogue" rotation. So basically this is the concept of multiple desktops (as KDE and Gnome and various other WMs have had for years) but made much more pretty. The inclusion of a number of specially created "panoramic" desktop wallpapers help enhance the illusion.

    You can't move windows along the Z axis, ie change their "depth" in space, nor can you travel vertically around your 3D environment (think Doom vs Quake here).

    So basically, project looking glass is a very impressive, very pretty extension of your standard WM. There will be some next generation desktop features that will be taken from it, but noone's ever going to be able to *use* it.

    Think of it as the latest Vivenne Westwood creation strolling down the Milan catwalk. Many of the years line in clothes will be based on elemnents of the design, but noone's ever going to wear it to a business meeting.

    --
    "The dew has clearly fallen with a particularly sickening thud this morning"
  30. A few comments on 3D UIs by LinuxParanoid · · Score: 2, Informative

    A) For a slash site covering next-gen UI issues, 3D and otherwise, check out Nooface. There's not a lot of discussion, but it has pretty good high-quality no-fluff content and occassional posts from people who really know their stuff or are actively working in the field.

    B) The contrast between 3D FPSes (fun, fairly easy, compelling) and VRML/virtual worlds (often pretty awkward) always struck me as interesting and illustrative of the following point. Too many degrees of freedom makes an interface awkward and highly confusing to someone who hasn't had extensive experience with 3D... a loser at the "mother test." id Software and the 3D FPS genre have always benefitted a fair bit imho from architecting the world such that even though it was 3D, you only had 2 directions to go most of the time; forward and backward.

    Wake me up when someone has a (non-bogus) study finding that users can actually be more productive in manipulating information with whatever 3D paradigm is being proposed. Eye candy helps but it's pretty easy to lose productivity going 3D imho.

    --LP

  31. Maybe a book can help by Pedrito · · Score: 2, Interesting

    I've seen a lot of projects take stab at 3D and many of them go about it in a very unnatural way.

    SphereXP that someone mentioned earlier, for example, takes regular windows apps and has paper thin windows floating around arbitrarily in 3D. I mean, that just doesn't work. Then you have all these 3D file browsers that cram so many files into this vast 3D mess that unintelligble. You can't read the filenames because there's so much stuff in the way (usually other filenames, but sometimes representations of files or folders) and that's just not natural either.

    And I'm not claiming to be an expert on 3D design. I don't know how you'd do a good 3D file browser off the top of my head, nor a 3D desktop. But I can definitely spot the ones that aren't remotely natural or intuitive.

    Part of the reason windowed user interfaces work is because the paradigm of a "desktop" makes sense to users. And a desktop is flat. So is a window. So, if you want 3D UI to work, you need to come up with a 3D paradigm that seems natural to the user, and frankly, I just don't know what that paradigm would be.

  32. GUIs are already 3d, sort of by S_Dub · · Score: 2, Insightful

    If you get right down to it, aren't our current interfaces already 3 dimensional to some degree? Certain windows are located on top of or in front of other windows. That level of depth is a 3rd dimension. Although they are displayed as 2 dimensions, a third one is there...

  33. Re:C'Mon, Even an LCD screen has some depth by ScrewMaster · · Score: 2, Insightful

    I think he's a troll masquerading as an idiot. But I'm not sure.

    --
    The higher the technology, the sharper that two-edged sword.
  34. 3D On The Monitor Doesn't Cut It by Greyfox · · Score: 2, Insightful

    The only way a 3D UI is going to take off is if you're immersed in a 3D working environment. Once you're in the environment and can overlay information on top of the real world, then it will start being useful. I seem to recall that there are already some applications for this, mostly in the military and with airline mechanics.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  35. Hahahahaha by raulfragoso · · Score: 2, Funny

    See the requirements for using 3dfb, it's really funny: http://www.dangerz.net/3dfb/index.php?wtd=req []'s Raul

  36. 2.5D is much better by mrshoe · · Score: 2, Interesting

    I also think that a 3D UI would be awkward. A ZUI (Zooming User Interface), however, has proven to be a very efficient and friendly way to organize data on a computer. The infinite desktop model allows for spatial organization and quick navigation.

    Jef Raskin always has interesting GUI ideas, as well as a ZUI Demo.

    Here at UCSD, Jim Hollan and friends have produced a ZUI called Dynapad. The video on that site shows a bunch of photos on the desktop, but in general any file or process can be accessed and arranged in the same manner.

    Zoom, zoom, zoom!

    --
    There are two types of people in this world: those that categorize other people and those that don't.
  37. Re:Look by Tom · · Score: 2, Interesting

    fsv is an interesting concept, but has one major failing: They assume that filesize has any meaning to the user, and that's getting it backwards.
    The display size should indicate importance. Some of my most important files are pretty small, and some of my largest files aren't. For example, the backup directory would be huge, as would log and cache directories.

    --
    Assorted stuff I do sometimes: Lemuria.org