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.
I know this!
If it doesn't mention the 3D interface used in the first Jurassic Park, then I'm not interested. Same thing with TurboGopher VR for classic Mac OS. Come on, you know you love that!
My UI is already 3D (the third dimension being time).
The last time I tried to expose *my* 3D user interface, I was escorted to the nearest holding facility for psychological review. /zing
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.
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.
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.
Not quite a "real" 3D UI, it does have some cool effects for switching between virtual desktops. http://desk3d.sourceforge.net/
I prefer duke nukem 3d
Doesn't anyone remember Jurrasic Park
I know this
*snicker*
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.
Le français vous intéresse?
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
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
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.
God spoke to me.
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.
"However, 3-dimensional user interfaces have not yet received as much exposure."
.and it's been around for quite a while.
I'm pretty sure my keyboard is a 3D user interface . .
well, i guess it would be nice, to just reach through my monitor
t ml
...hopefully this will spark some interest!
grab the oog file i want to play, and squeeze it til it plays.
but in reality, thats far from it.. but i guess there are some
great 3d likeness applications for the *nix platform:
http://desk3d.sourceforge.net/ & http://wwws.sun.com/software/looking_glass/demo.h
--kingpunk
Like being able to find criminals before they commit crimes.
I have personally tried a 3D Operating System implementation, and my opinions are mixed. If you have OS X you can try 3DOSX for yourself with a free download http://www.acm.uiuc.edu/macwarriors/from the University of Illinois Mac SIG.
We have a hard enough time with people using 2D UI - WTF is a faus 3D out of skewing dimensions going to help with?
Okay, I haven't RTFB, but all the UI I encounter is measurable along x,y and z. Keyboards, mice, monitors, printers, and scanners are all 3-D objects, are they not? Can anyone think of a truly 2-D input/output device? Even a graphics pad usually measures stylus pressure, and thus has "depth".
And windowing systems normally have the concepts of stacking windows "in front" or "behind" others.
A navigable 3-D environment for file system and program management would be difficult to prove useful, IMHO.
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.
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?
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.
Where is the critical interpretation? Pro's and con's?
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.
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.
Sphere didn't work on my work PC until just recently, and it's not too bad, but I like the interface of Spatial Research better. SphereXP has a point of view where you are at the center of a sphere, looking out at your applications, which are anywhere inside the sphere, where Spatial Research's implementation is where you're on the outside, the applications are all on a board at the center, and you can rotate around the outside perimeter. You can't rotate up and down, but you can side to side. There's a few cool effects in there. Of course, I haven't looked at Spatial Research since my trial version expired... SphereXP doesn't have trial or non-trial ware right now, as it's still beta. Not sure what that guy's plan is when it's not Beta.
The link above is for downloading the code
Subscribers can see articles in the future? So what? Everyone gets to see them in the future.
I think that layered 2D interfaces is all the human mind can easily deal with.
Layering windows over and under eachother is enough of space-relational exercise... Start introducing motion that isn't restricted to parallel planes and you're in for a very messy UI.
The first thing that comes to mind is a tree. Each child of the tree node could radiate outward from an origin point in 3 dimensions, but I would get lost very quickly when the point of view kept rotating and twisting.
Anyone have any good examples of 3D UI techniques that don't get you lost in the woods?
"This is UNIX, I know this!"
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
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
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.
Most computer screens are still only two-dimensional.
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.
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.
I've seen 3d wms, and I've never had the urge to use one. But if we're going to move away from flatland, why stop at three dimensions? Why not four or five?
One more time? What problem are you trying to solve by displaying these extra dimensions?
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.
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
I uses Spaces from Spatial Research spatialresearch.com . This 3D desktop didn't slow or impede my system like several of the others I tried. Additionally, its mixes with existing desktop metaphor very well. Many nice effects and features to boot. Its not perfect but its great til something else gets here.
3D interfaces suck in my opinion, but then again, there can be a lot of improvements made to 2D interfaces to make them more "3D" like. For example, why not start taking advantage of blur effects? For example, your foreground window comes in clear as can be, while I window you visited awhile ago is blurred. Over time, the window would get more blurred the longer you stop interacting with it (mouse over, etc). Also, perhaps more features like "stacking" could be added. 15 windows stacked ontop of each other, each of which would get blurred, but you could do Expose-like features with them. Users could make the stack spread out or shrink windows into a corner. As for the person that talked about the interface in Minority Report, that is a really good example of where our interfaces should be headed, rather than this "3D" none-sense.
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"
Which comes first or last is only a matter of perception. It doesn't matter either way.
We haaaaaave a winner!
KFG
And I'll say the same thing here. that I said there.
They need two things, panning, and windows (ZUI can apply to windows as it can the entire field).
You also forgot Croquet (http://www.opencroquet.org/).
And last, your example shows that there's more to flash, than what the haters say (prototyping experimental interfaces)
OK, so you've written a synopsis of the book. Can you tell us if it's any good? Does the book cover the areas it does in enough depth? How does it compare to other books in the field?
Just expanding on the table of contents wouldn't've been good enough for your 9th grade English class, why do you think it's good enough for Slashdot? Oh, wait, the editors published it, so I guess it is. Nevermind.
God invented whiskey so the Irish would not rule the world.
My mouse, keyboard, and monitor are the primary means by which I "interface" with my machine. So my computer's user interface is 3d, as all of these objects have length, width, and height.
It's a UNIX system! I know this!
They are currently working on, or possible by now have, a 3D display for air traffic control. Unlike some posts on here are thinking, this isn't a 3D graphic on a 2D display. It is true 3D (or 4D for the nit picky.)
The display has an X/Y/Z AXIS. You can actually move your head and what you see will change - no special glasses.
If you have ever been to NASA, they have some holographic displays of this type, but the image quality (last I saw) was very faint.
Air traffic controllers would benefit from this by being able to see if those 2 air craft heading for each other are on the same plane, planes thousands of feet from each other, both climbing towards the same plane, etc.
It could potentially save lives.
Edwin
www.Acmenews.com
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
The only reason they haven't caught on, is because the hardware interface to the computer is inherently 2D. A mouse moves only in 2D-- sure, you can fudge it, but there needs to be a proper 3D interface in order for the 3D UIs to work right.
Well, that's my opinion of it anyway. I could be proven wrong (wouldn't mind being proven wrong either)
in girum imus nocte et consumimur igni
"If anyone can point out a valid reason for this, then by all means please let me know."
Information explosion. Back when the WIMP interface was designed the world was simpler, in many ways. And that includes the amount of information availiable to an individual. Fast forward to the present, were we have literally acres in some cases, of information, and most of it is richer than it use to be. Sound is better. Video is better. Tactile, and olfactory are on their way. Something is going have to give.
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.
I would want a trackball, though - a mouse doesn't seem appropriate.
And I would want to run this as my WM on linux - Windoze has problems when I open > 40-50 "windows" at a time ("Couldn't open Blank Document"), and if I could just roll part of my desktop out of sight on a sphere, I'd be even more of a window packrat.
--LWM
It could be a 3D interface like in the movie Hackers... :p
Also it could be a 3D interface like in the movie Johnny Mnemonic in which you use some kind of Power Gloves.
Time to bring back the Nintendo Power Gloves.
"Yeah, I love the new Mac OS. I get to run all of my fancy 3D apps, but can drop back down into a 2d desktop when it's time to do some serious work! Everyone knows the 3d interface is only fow n00bs anyway."
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...
The trick is to come up with a useful metaphor for the third dimension. Once you have that, it'll be obvious how to map that into two-dimensional mouse movements.
The model most often used is a geographical model for a hierarchy... usually a file hierarchy. "See, here's the directory you're looking at. And then behind it, there's the sub directories, and when you pop up a level, everything fades back..." which is cool as hell, but when I play with it I find myself wishing for a nice isometric or plan view, which takes us back to two dimensions again.
What I think might be useful is mapping attention into three dimensions. The windows you're actually working on are in the foreground, and other windows are further back, like in Mac OS X. But instead of just having this be implemented using a 2d isometric view that's just a bit of flash on the normal layered windows model... let's use the GPU. Windows further in the background are a little smaller. They really move back in the 3d viewpoint, gradually fogging out (which may look nicer on your nVidia cards), and finally turning into a little dock-style minimized icon. Clicking on them brings them to the foreground and starts the current foreground window cycling back...
To see behind them, you hold down the navigation key (pick one), and moving the mouse moves your viewpoint. Like full-time Expose. The scroll wheel lets you drive forward over or through your windows... as you approach iconized windows they turn back into the real thing (small, in the distance, then growing to full size).
I don't think you'd want "free flight" mode. You're always looking "forward", like in a fixed-attitude video game. Scroll all the way back and you're looking at the active application. Click on something, and by default you "warp" back to home.
Now you have an environment that real 3d widgets (like a 3d "dashboard" or "konfabulator") can live in, like active icons sitting on the ground in fixed locations that windows drift past or over as they fade out of your attention...
You could have modes where windows stay partly in view all the time, moving to the side as they shrink so you can always see them around the edge of the foreground window, iconifying against the edge of the screen if they get "pushed into" it.
Once you have the software, you can experiment with things like "free flight" modes, or modes where the world is a 4d donut so the windows stay in place and you move forward or back... eventually going so far back that you start seeing the previously active windows in the distance...
But you need a reason for the 3d, first. This is one I think would work...
so whens the 3D pr0n interface coming out?
Honestly, until output devices (e.g. monitors) become fully 3D, I fail to see a reason to create 3D user interfaces.
It has overlapping windows.
I once conceptualized a 1D file browser which was a thread with files strung along like beads... but that's only 1d the way you consider the current interface 2d if you ignore stacking and controls which are 3D.
You can't talk about Wikipedia's flaws on Wikipedia
*looks*
Salvadore Dali would be proud.
Why is everything horizontal in the 2D interface world? The 3D thing seems stupid to me too, but what it shows is that there might be some utility to putting things on an angle. Just off the cuff for example, it seems like it would be useful to have folder and file names on an angle. Horizontal Only is really inefficient. More things could fit in smaller areas virtically or on steep verticle angles. Also for image browsing. I can understand what photo I am looking at even if I am looking at it from the side at 10degrees. It doesn't have to be real 3D - just a compressed horizontal image. Then I could look at 20 images at once without them being rediculous small thumbnails. (and natalie portman would look even thinner!)
CSS has a huge layout problem in this regard. It is a constant source of frustration to me as a designer that there is no rotate property to CSS. No virticle text on the web unless I make a gif or png. Rediculous.
Finish 2D first.
Oh, and while I am filling out my christmas wish list, I would like more transperancy options too please.
I will pick up this book to see if addresses an observation in my master's degree: prepositional information is traditionally presented in 2D formats such as signs, monitors, books, etc... Even 3D concepts such as maps are usually reduced to 2D when they are communicated or interacted with. My solution was using computer vision to pick out planar patches in the environments, and mapping good ol' 2D information onto those subspaces. http://roscohill.com/skool
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?
Three-dimensional UIs are worth pursuing because one-dimensional UIs are too limited? Did you not get a nagging sensation while writing that paragraph that maybe, just maybe, there was some intermediary stage that might merit some investigation?
"Imagine programming in 3D, where each class and function is a labeled box which you can enter to see its code"
Okay, I'm imagining it. It's awful. Graphical representations of code are equally feasible in 2D; I've used one, and it was appalling. Took forever to do the simplest things. I don't see it getting drastically better when I can't find the method I need because a base class is blocking my view.
Don't get me wrong, I can certainly see how mucking about with this sort of thing could be fun. But people have been building 3D UIs since before Jurassic Park. There's a reason they haven't caught on. They're bleedin' useless.
I'm just remembering back to my skepticism when 3D platform games were coming out...
for instance, I remember when the Nintendo64 came out and I saw a demo of Mario64... I couldn't conceive how the game could be fun or intuitive at all... so used to 2d Mario.
But after a few minutes of using Mario64, it became second nature to move around in the 3d world and manipulate objects.
Maybe Nintendo should design the next 3d UI. In any case, I think it is possible to have a 3D UI without having that sense of added complexity... if it's designed smartly, then it could make some tasks much easier.
Descent (I and II) were really great for multiplayer, I never did like the single player on that one...
I never got a chance to try out LCD glasses with that game. It just cried out for a real HMD that would track where you were looking, so you could finally see where you were with great clarity - I surprised it took you so long to get sick with the LCD's though as I would think all the turning and rotating would get to you after only a short while in real 3D.
I was never fully satisfied with any of the 3D controllers, I believe I always ended up reverting to keyboard and mouse...
I also agree with your last comment, abotu possibly seeing an explosion of 3D devices propelled by games. But so far that has not happened yet and it will be the canary in the mine for general-use 3D technologies.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
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.
That's odd. I have 3D CD cases right here - it's called a CD rack. Yet somehow I greatly prefer to place my music in the computer where sorting via ID3 tags takes far less time than visually hunting for the CD's (or songs) I am looking for...
"There is more worth loving than we have strength to love." - Brian Jay Stanley
See the requirements for using 3dfb, it's really funny: http://www.dangerz.net/3dfb/index.php?wtd=req []'s Raul
...that 3D UI's will work until we have a way of interacting with them in 3D.
Pretty much all of the 3D UI's I've seen are still presented to the user on 2D monitor, and interacted with by way of a 2D mouse (or keyboard). I don't really think 3D will offer any advantage until we can look at and interact with 3D objects a la Metaverse/SnowCrash. Such as flicking through a photo album, juggling your files up and down and all over the place, pushing/pulling your work in front of you.
But maybe I just can't envisage a 3D world without an intuitive way of interacting with in one less dimension. Or maybe I've read too much sci-fi...
Moderation Total: -1 Troll, +3 Goat
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.
Really. Removing dimensions makes it simpler, and removes obstacles. The trick is making it usable.
If you want to travel a path from, say, Los Angeles to Paris, you could take a path that uses 3 dimensions, moving up, down, side to side, forward and back. That would be the normal way, following the curvature of the earth, maybe going along a great circle route, and going around myriad obstacles as needed.
A faster way, if it were possible, would be to just go in a straight line, right through the planet's crust.
Similarly, consider the pole used at the fire station. Instead of navigating a curved path from the upstairs, around obstacles, down flights of stairs, to the vehicles, firefighters just take a direct, shortest-path straight-line shortcut. Instead of travelling through x, y, and z dimensions, they just travel through the z dimension. (Okay, with some x and y to get to the pole.)
These are examples of efficiencies gained by going from 3 dimensional travel to 2 dimensional travel.
In the case of UI, we have 2 dimensions, and we should be working on getting down to 1 dimension, where/if possible.
Obviously, a user interface display consisting of a *point* is not very useful. That's not so much what I'm talking about. A one-dimensional interface would be more about removing obstacles the user has to navigate around in order to achieve some goal.
For instance, finding a file using a desktop search function, and accessing it directly, is the kind of "one-dimensional" interaction I'm talking about. It's like teleporting to Paris through the Earth's crust, instead of going via planes, trains, and automobiles.
Compare the search/find/manipulate UI to a 3D interface where, to find the file, you have to navigate a DOOM-like series of chambers, or evaluate variously-sized rectangles ala the Jurassic Park UI. The 3D interface is a lot more work, without providing any particular advantage.
3D has its place, but that place is not general-purpose UI.
Books, the 3d version of scrolls.
thank God the internet isn't a human right.
About 3 years ago, I saw a project/demo for a 3d filebrowser/viewer that represented a globe. The files and directories were represented as text, sticking up from the globe, and when you drug the globe around, the particular files/directories zoomed in so you could examine them further. I, for the life of me, cannot find that project - I can't remember the name. When I saw it, though, I thought "Wow..I can't wait until this project is more stable, because I will use it." It was utterly and insanely easy to find files. Does someone know what I'm talking about?
It is pitch black. You are likely to be eaten by a grue.
And yet those centuries of plain paper you talk about exist in a 3D world, often filed in a 3D file cabinet, sitting in 3D shelves arranged in aisles three-dimensionally.
In every single 3D GUI article, we get the non-visionary types who chime in with "Why do this?" That attitude is the antithesis of progress. May as well stay with the command prompt forever ("Why go graphical?").
Yeah, maybe 3D UI developers should be looking at 3D game design and how it works and doesn't work.
...with 3D interfaces is that they're not really 3D. They're effectively 2D because they're still -- for just about everyone, anyway -- displayed on a monitor. No matter how 'three-dimensional' the interface is, it's useless because you're still limited to x,y coordinates for the mouse cursor.
Now, you could include controls for moving around your 'presence' in a 3D 'filespace,' but there comes a point when there is a failure of returns: it's just easier to look at a tree in a "two dimensional" hierarchal file structure.
When the interface can actually be three-dimensional -- such as, for example, the interface we saw in Johnny Mnemonic, or the terminals in Final Fantasy -- then I think we can start payingmore serious attention to 3D interface design. (Of course, starting to think about it now doesn't hurt. It's just there's precious little practical application for it right now.)
"I am an Adept of Tantric VAX."
X and Windows are already "3D": those windows are stacked in the z-axis. But that z-axis is treated as totally independent of the XY plane, unlike the X and Y axes themselves. So you can move a single object in either/both X and Y axes, but only shuffle in the z-axis: no moving in the XZ or YZ planes. That means that you can't grab a window and rotate it, say, edge-on to the viewport. Which is one of the ways we manipulate physical objects: stacking them in groups in different orientations in space, correlating their orientation to one another with their informational relationship.
We also don't use perspective currently: the z-axis isn't correlated to apparent scale, so moving things farther away doesn't reduce their size, and therefore their apparent "value". We effectively have a binary z-axis in effect: either "front" or "behind", with any degrees of "behind" merely logical, rather than graphical.
We have lots of organizational skills that use the spatial metaphor. We use very few of them even in our current desktop spaces. Perhaps the jump to explicit 3D spaces, rather than their simulation in 2D HW/SW, will bring a real spatial metaphor to our displays. Of course, the biggest problem is that the display is identical to the viewport, or even smaller; our natural visual field encompasses our objects, while including marginal frames of reference for indicating relationships among objects, even those not in the center of attention.
While 3D developers are looking for stunts to flex their GPU muscles, they might try just doing these "2D" tricks right. They offer real productivity gains, and aren't the kind of radical departure from current practice that forces retraining and alienates most of the market. While they're at it, how about arbitrary window groups with group motion semantics (grab the group and minimize/resize/etc it)? Or rubberband pipelines representing STDIN/STDOUT/STDERR among process windows? Throw in per-window geometry "bookmarks" and standard defaults for arrangement/geometry of windows, especially in groups, and people will actually use your flashy software for something useful.
--
make install -not war
with speed issues and such wouldn't it be easier to use something that's not true 3d, akin to the doom engine or duke nukem 3d's engine, just have it create areas for new files or remove areas for deleted files, may be hard to do that on the fly though.
Next.
UTF-8: There and Back Again
In an alternate universe, where 3D UIs came first, I can imagine people lauding the development of the first 2.5D user interface, for freeing us from the tedious limitations of 3D interaction...
"Fantastic! Now we don't have to manipulate digital items as clumsily as we manipulate real items! Now we can use the computer to provide far more efficient ways of managing information and manipulating objects and data!
So many times, I've wished I could see the files on my PC in a compact, explicit textual listing, or a hierarchical tree, rather than an assortment of inscrutable blocks!
So many times, I've wished I could just get to my email by clicking a button, rather than having to "walk" down to the "post office". I avoid going there in real life, why should I "go there" when using my computer?
Now, I can just click on a small picture, and I get a well-organized listing of my messages. Progress!
My productivity has soared!"
Anyone who has ever used an SGI prbably has come across the classic buttonfly demo. Its was neat back in '95 when I used it. Then there was the 'Stargate' like Portalis demo found on the Onyx w/ Infinite Reality 2+ systems. Flying through 3D portals was disorienting, fun and at the end of the day impratical for regular use. It made for a technology demo though.
...isn't 3D. It's 38DD.
It's quite clever in subtle ways. When you click on a "bookmark", you move to the new location in a smooth trajectory that takes you up to a high altitude and then back down.
This is way ahead of, say, Mapquest.
I haven't done much with it, but it's definitely awesome!
http://www.cubeengine.com/
as in Beer!
Can you be Even More Awesome?!
That's In-Yer-Face.
Not the same thing at all...
I don't know the meaning of the word 'don't' - J
That was really interesting - some of the stills look real, though I have to say that anything face on looks off - something about the eyes.
The video does show off the Uncanny effect, it looks great but many little things in movement and expression throw you off.
Thanks!
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I don't think people are really much bothered by the uncanny-ness of 3D UIs, they are bothered by the fact that they don't do anything yet that 2D interfaces don't do at least as well.
I think rotations in depth, which is what you get with a fully 3D UI, are a gimmick in user interfaces.
However, stacking, blurring, shadowing, zooming, and translucency add useful visual cues that actually make user interfaces more usable. You might call those "2.5D desktops" (actually, animation also adds a time dimension on top of that).
Although that's been understood for many years, machines weren't fast enough to implement them, but that's changing and all major desktops are now in the process of adding those features (with the usual hype and claims of "innovation" all around).
excuse me if im wrong, but when one window occludes another, is it not considered to be in front of it? and (in windows atleast) there is some place where that occlusion is refered to as the "z axis". Window utilizing guis are 3d uis. a command prompt, as it lets you see a little bit back in time, is a 2d ui.
When you're afraid to download music illegally in your own home, then the terrorists have won!
Why is this so funny?
When I saw JP, I really thought it was a totally redundant statement. It seemed to me, that the purpose of it being put in there, was to make the kid sound like a wiz to the average Joe. But as a geek it sounds like a stupid thing to say. Especially when you have a 2 meter high mutant velociraptor breathing down your neck..
Really.. I know it's pretty much a slashdot meme, but I don't get it..
Horizontal Only is really inefficient. More things could fit in smaller areas virtically or on steep verticle angles.
I have come across this issue myself while trying to develop a 3d interface (a 3d programming language). It seemed like a great idea before I implemented it (having text at any angle), then I realised text doesn't read well at all at any angle except how it is normally presented.
It was a shame because it massively limited the shapes I could use for the 3d elements. In the end I just used any shape I wanted and then overlayed the text in 2d. The result didn't look pretty.
Really.. I know it's pretty much a slashdot meme, but I don't get it..
/joke ain't funny when we have to explain, either.
Nah, man. It is funny because it is stupid. There would be nothing funny if it was accurate or would have made sense in real life.
The game Homeworld and its sequels have the best 3D UI I've ever used. Has anyone ever tried to design a desktop that works in a similar way?
I am trolling
Windows has long had the ability to use 3D user interfaces. In fact between Windows 3.1 and Windows XP, thousands of programs were 3D. You just need to know where to look to find them. The giveaway is linking to a certain CTRL3D.DLL...
did you see that girl who locked the door with the 3d UI. l3333333333t.
An interesting real-life exemple of a 3D user interface : http://www.tixeo.com/
It's a 3D web conferencing and groupware software solution. It's based on a 3D shared collaborative space where each user is shown as a virtual character.
It contains a 3D file manager, applications which are 3D objects, etc.
The third dimension allows to create virtual workspaces, to make them more user-friendlier and more accessible. The users know intuitively "who" is doing "what", "where" and "how", as in the reality...
Check out OpenCroquet "Users and groups of users can author and publish their individual resources within a persistent 3D knowledge architecture. They may build any number of private or shared "worlds" instantaneously, making them immediately accessible for others to explore by providing spatial portals. These portals function much like hyperlinks do within the World Wide Web. But unlike the Web, Croquet enables the user to find and get to other individual worlds through the larger context of Croquet's persistent common spaces"
Quite frankly, there's a lot of a normal GUI which is pseudo-3D. Menus, dropdowns and comboboxes are like pulling out a drawer, Tabs are like sorting through the tabs (doh) in a drawer, buttons can open tool windows.
If you plan to use 3D to navigate 2D information, it has no value. We've got more than enough efficient, common 2D elements managing a set of 2D elements.
The only time I want 3D is if you can give the Z-axis a meaning, not just an arbitrary order. In other words, a 3D representation of the data. E.g. a 3D filesystem (WinFS?), a 3D class structure (I'd love that when programming) and so on.
It is something of the chicken-and-egg problem. I don't want 3D unless you got more data than can be put into a hierarchy (a tree view is an excellent 2D solution for that), and noone is creating 3D data because there's no way to view it.
Kjella
Live today, because you never know what tomorrow brings
With how long 2D interfaces have been around, and how bad usability STILL IS, I am horrified to think how bad it will be with 3D.
In fact, if you use MacOS X for a while, at one moment you realize, that, in fact, it already is 3D workspace. See how it manages displaying that some windows are in foreground, expose functionality... Compare it with windows, and, no matter what kind of skinning you add to it, it still is plain 2d.
It just is implemented sensibly and without the "nifty demos" everybody seems to be concentrating their development on.
I cant resist: here's a shameless plug for my 2d/3d UI http://www.tweakoz.com/orkid/ (eeks now my server is gonna get slashdotted..) um, nevermind... ;>
mtm
It was 1994 for me when I thought that, then win95 came, I liked it. After a while I tried Enlightenment, and never looked back.
CA reps always took the oppertunity to tell me, and it was such a crap movie I never bothered to check.
You can try your vision with this Demo of Zoomworld. This system is part of The Humane Environment project.
Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
Here are some other user interfaces that require lots of movement:
You get the idea. Just because a user interface requires lots of physical motion does not mean it's a step in the wrong direction. Quite the contrary, some of the most spatially-intensive user interfaces are also some of the most persistent, as my examples demonstrate. These things allow the human mind to function in concrete "where things are at" terms rather than a more abstract modes like references to those things. For example, in the Minority Report User Interface (MRUI), files were things you dropped onto a tray and handed to your friend rather than placing references to them on your email and then delegating the transfer to the computer. The latter of these is far more abstract.
There are other considerations as well. Repetitive stress injuries are typically less frequent with tasks that involve a wide range of motion rather than subtle twitches (like those made to a keyboard).
Why bother.
Thanks for commenting on the table of contents, but I have one question: what are the specific technologies and research topics discussed, and how long before the book is completely out of date?
VOS/Interreality project: www.interreality.org
"This is a super-computer. it can be on 8 networks simultanously!" and programming is drag-droping boxes on top of each other until they form a perfect cube.
Call me teh geek, but I thought that movie was plain stupid.
Not Buzzword 2.0 compliant. Please speak english.
A particular example of the maths is here.
What might be necessary is the development of an alphabet of 3D graphic primitive shapes that are easily distinguished from any angle of view.
It'd probably be very difficult to come up with enough symbols to allow a direct mapping onto alphanumerics, so some kind of mnemonic system, or abbreviation standard, would be necessary.
And it would work best if kids were taught the system from an early age, in addition to regular language.
Eventually, we'd end up with the ability to easily read strings of symbols like "sphere cube pyramid cube octohedron sphere", which would be more easily recognized when viewed from oblique angles. The only time they'd be unreadable would be when viewed from a point on their axis, so the first visible shape obscured the others.
OSX currently has a 3d interface, and Longhorn also will. That is to say, both of them use 3d acceleration rather than writing directly into the framebuffer. This lets them manipulate windows in a much more flexible manner.
Sure, it's not a fancy 3d interface, but I'll take it over the old way of doing things.
> 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.
metisse ("http://insitu.lri.fr/~chapuis/metisse/") does this.
The simple fact is that I would not want to watch a movie with that character for a length of time - especially after having had a similar experience already with the Final Fantasy movie. And that movie at least had the eyes placed better...
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I actually enjoyed the Red Vs. Blue DVD's quite a bit, really a huge amount more than Final Fantasy.
"There is more worth loving than we have strength to love." - Brian Jay Stanley