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.

16 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 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. Re:This is UNIX by Anonymous Coward · · Score: 1, Funny

      I mean really what does UNIX look like?

      Unix: \bin\
      Windows: C:\WINDOWS
      mac: bomb icon appears on boot

  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 cosmo7 · · Score: 4, Funny

      Forth understand hard not is!

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

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

    4. 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. Re:Keyhole mapping interface by sucati · · Score: 2, Funny

    I prefer duke nukem 3d

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

  6. Re:3d File Browser by Anonymous Coward · · Score: 1, Funny

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

    And hey, it'll come in handy when the dinosaurs are after you.

  7. Re:SphereXP by Anonymous Coward · · Score: 1, Funny

    We don't need no fancy-schmancy 3d interface. You kids today just don't appreciate what you've got.

    Hell, back in my day, we had to shout binary at the serial port.

    Sheesh.

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

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

  9. Slashdot: 2025 by Anonymous Coward · · Score: 0, Funny

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

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