Title:
3D user interfaces : theory and practice
Publication Information:
Boston : Addison-Wesley, 2005
ISBN:
9780201758672
Added Author:
Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000004859975 | QA76.9.U83 T47 2005 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
Bridging the dream of 3D graphics with the user-centered reality of interface design, this practical guide discusses several relevant aspects of interaction, enhanced by instructive examples and guidelines. It is a useful reference for the practitioner, researcher, and student interested in 3D user interfaces.
Author Notes
Doug A. Bowman is an assistant professor of computer science at Virginia Tech
Ernst Kruijff is a researcher at the Fraunhofer Institute for Media Communication in Germany
Joseph J. Laviola, Jr., is currently working on obtaining his Ph.D. in computer science at Brown University
Ivan Poupyrev is a researcher at the Interaction Laboratory, Sony Computer Science Labs in Tokyo
Excerpts
Excerpts
An architect sits in her home office, putting the final touches on the design of the new entrance to the city park. A three-dimensional virtual model of the park appears in front of her on the desk's surface. She nudges a pathway slightly to the right to avoid a low-lying area, and then makes the model life-size so she can walk along the path to view the effect. "Those dark colors on the sign at the entrance are too foreboding," she thinks, so she quickly changes the color palette to brighter primary colors. She looks up and notices that the clients are arriving for the final design review meeting. They are located in other offices around the city, but they can all view the 3D model and make suggested changes, as well as communicate with one another. "What's the construction plan?" asks one of the clients. The architect starts an animation showing the progress of the project from start to finish. "That first step may not work," says the client. "The excavation is much too close to the existing playground. Let me show you." He looks out his window, which has a view of the park, and overlays the virtual construction plan on it. "You're right," says the architect, "let's plan to move the playground slightly--that will be much cheaper than changing the construction site." After viewing the effects of the change, all agree that this plan will work, and the meeting adjourns. This scenario and others like it illustrate the enormous potential of 3D environments and applications. The technology to realize such a vision is available now, although it will certainly be improved. But the scenario also leaves out a great deal of information--information that is crucial to making this dream a reality. How did the architect load the park model, and how does she manipulate her view of it? What technique is used to change the pathway? How can multiple clients all manipulate the model at the same time? How do the participants appear to each other in the virtual space? How is the speed and playback of the animation controlled? How did the client instruct the system to merge the real and virtual scenes? These questions all relate to the design of the user interface (UI) and interaction techniques for this 3D application, an area that is usually given only a cursory treatment in futuristic films and books. The scenarios usually either assume that all interaction between the user and the system will be "natural"--based on techniques like intuitive gestures and speech--or "automatic"--the system will be so intelligent that it will deduce the user's intentions. But is this type of interaction realistic, or even desirable? This book addresses the critical area of 3D UI design --a field that seeks to answer detailed questions, like those above, that make the difference between a 3D system that is usable and efficient and one that causes user frustration, errors, and even physical discomfort. We present practical information for developers, the latest research results, easy-to-follow guidelines for the UI designer, and relevant application examples. Although there are quite a few books devoted to UIs in general and to 2D UI design in particular, 3D UIs have received significantly less attention. The results of work in the field are scattered throughout numerous conference proceedings, journal articles, single book chapters, and Web sites. This field deserves a reference and educational text that integrates the best practices and state-of-the-art research, and that's why this book was created. How This Book Came to Be The story of this book begins in April 1998, when Ivan Poupyrev and Doug Bowman were doctoral students at Hiroshima University and Georgia Tech respectively, working on 3D interaction techniques for object manipulation in virtual environments (VEs). We started a lively email discussion about the design and usability of these techniques and about 3D UIs in general. Ivan, who was at the time a visiting research student at the University of Washington, suggested that the discussion would be even more profitable if other researchers in this new area could join in as well, and so the 3DUI mailing list was born. Since that time, over 100 researchers from around the globe have joined the list and participated in the discussion (to see an archive of all the list traffic or to join the list, check out http://www.3dui.org ). Joe LaViola and Ernst Kruijff were two of the first people to join the list. In August of that same year, Doug forwarded to the list a call for tutorials for the upcoming IEEE Virtual Reality Conference. After some discussion, Joe, Ivan, and Ernst agreed to join Doug to organize a tutorial on "The Art and Science of 3D Interaction." The tutorial was a big hit at the conference in Houston, and the four of us continued to present courses on the topic at ACM Virtual Reality Software and Technology 1999, IEEE VR 2000, and ACM SIGGRAPH 2000 and 2001. After developing a huge amount of content for the notes supplements of these courses, we decided it would be silly not to compile and expand all of this information in book form. Furthermore, there was no way to include all the information available on 3D UIs in a one-day course. And that's why you're holding this book in your hands today--a book containing information on 3D UIs that can't be found in any other single source. What's in the Book The title of this book emphasizes that we have written it for both academics/researchers and practitioners/developers--both those interested in basic research and those interested in applications. Most chapters of the book integrate both theory and practical information. We intend the book to be used both as a textbook (see suggestions below) and as a reference work. Theory-related content includes the following: Sections on the psychology and human factors of various 3D interaction tasks Information on different approaches for the evaluation of 3D UIs (Chapter 11) Results from empirical studies of 3D interaction techniques A research agenda for 3D interaction (Chapter 13) Lists of recommended further reading at the end of most chapters A comprehensive bibliography of important research articles Practice-related content includes the following: Principles for choosing appropriate input and output devices for 3D systems (Chapters 3 and 4) Details and helpful tips for the implementation of common 3D interaction techniques Guidelines for the selection of interaction techniques for common 3D tasks Case studies of 3D UIs in real-world applications The book is organized into five parts. Part I introduces the topic of 3D UIs. Part II discusses the input and output device technology used in the development of 3D UIs, with an emphasis on the impact of these devices on usability and performance. Part III presents a wide range of 3D interaction techniques for the common tasks of navigation, selection and manipulation, system control, and symbolic input. In Part IV, we discuss the design, development, and evaluation of complete 3D UI metaphors and applications. Finally, Part V considers the future, with chapters on 3D interaction in augmented reality applications and a research agenda for 3D UIs. The appendix includes information on required mathematical background and is followed by a bibliography of 3D UI references. Throughout the book, we offer several special features. First, most chapters contain numerous guidelines --practical and proven advice for the designer and developer. We also include implementation details for many of the most common and useful interaction techniques. We describe these algorithms using a combination of textual and mathematical descriptions (to avoid a bias toward any particular development tool or programming style). How to Use the Book and Related Material If you are a 3D UI developer: Professional developers can use the book for inspiration and guidance in the design, implementation, and evaluation of applications with 3D UIs. In the design process, developers can consider overall UI metaphors from Part IV, choose specific interaction techniques from Part III, and match these with appropriate input and display devices from Part II. The design guidelines from all of these sections should help developers make rational, informed decisions. The implementation of the 3D UI can benefit from the textual and mathematical descriptions of interaction techniques we provide in Part III. Finally, developers can choose evaluation methods and assess the usability of their applications based on the information in Chapter 11. If you are a teacher: The book can also be used as a textbook in several different types of university-level courses. A graduate course on 3D UI design could use it as a primary textbook. A more generic virtual environments course could use Parts I, II, and III of this book as an introduction to the basic technology and techniques used in VE interaction. An undergraduate HCI course could pull information from Parts I and IV in a module on 3D interfaces and their differences from traditional UIs. Implementation of common techniques from Part III could enhance a course on interactive 3D graphics. If you are a researcher: This book can serve as a comprehensive reference guide for researchers engaged in 3D UI design or evaluation, the investigation of 3D applications, or the use of VEs or augmented reality. The research agenda in Chapter 13 also provides researchers and research students with a list of important questions to be addressed in the field. It could even be used as the starting point for a PhD student looking for a topic related to 3D UIs. 3D UI design is a fast-moving and evolving field. Therefore, we are committed to updating the material in this book. One way we will do this is through the book's official Web site at http://www.3dui.org . This site will contain information and links related to the latest 3D UI research and applications, organized in the same manner as the book so you can easily find new information about the topics in a particular part or chapter. The site will also allow you to join the 3DUI mailing list. We also ask for your help in keeping the book up to date. Send us your comments, clarification questions, or links to additional information by visiting the Web site above and using the online feedback form. Or email us directly at 3dui@3dui.org . Your comments will help us update the Web site, as well as future editions of this book. Excerpted from 3D User Interfaces: Theory and Practice by Doug A. Bowman, Ernst Kruijff, Joseph J. LaViola, Ivan Poupyrev All rights reserved by the original copyright owners. Excerpts are provided for display purposes only and may not be reproduced, reprinted or distributed without the written permission of the publisher.Table of Contents
Foreword | p. xv |
Preface | p. xix |
Part I Foundations of 3D User Interfaces | p. 1 |
Chapter 1 Introduction to 3D User Interfaces | p. 3 |
1.1. What Are 3D User Interfaces? | p. 3 |
1.2. Why 3D User Interfaces? | p. 4 |
1.3. Terminology | p. 6 |
1.4. Application Areas | p. 8 |
1.5. Conclusion | p. 9 |
Chapter 2 3D User Interfaces: History and Roadmap | p. 11 |
2.1. History of 3D UIs | p. 11 |
2.2. Roadmap to 3D UIs | p. 14 |
2.2.1. Areas Informing the Design of 3D UIs | p. 15 |
2.2.2. 3D UI Subareas | p. 18 |
2.2.3. Areas Impacted by 3D UIs | p. 22 |
2.3. Scope of This Book | p. 25 |
2.4. Conclusion | p. 26 |
Part II Hardware Technologies for 3D User Interfaces | p. 27 |
Chapter 3 3D User Interface Output Hardware | p. 29 |
3.1. Introduction | p. 29 |
3.1.1. Chapter Roadmap | p. 30 |
3.2. Visual Displays | p. 31 |
3.2.1. Visual Display Characteristics | p. 31 |
3.2.2. Depth Cues | p. 34 |
3.2.3. Visual Display Device Types | p. 40 |
3.3. Auditory Displays | p. 59 |
3.3.1. 3D Sound Localization Cues | p. 59 |
3.3.2. 3D Sound Generation | p. 62 |
3.3.3. Sound System Configurations | p. 64 |
3.3.4. Audio in 3D Interfaces | p. 66 |
3.4. Haptic Displays | p. 68 |
3.4.1. Haptic Cues | p. 68 |
3.4.2. Haptic Display Characteristics | p. 70 |
3.4.3. Haptic Display Types | p. 71 |
3.4.4. Haptic Displays in 3D Interfaces | p. 77 |
3.5. Design Guidelines: Choosing Output Devices for 3D User Interfaces | p. 77 |
3.6. Conclusion | p. 83 |
Chapter 4 3D User Interface Input Hardware | p. 87 |
4.1. Introduction | p. 87 |
4.1.1. Input Device Characteristics | p. 88 |
4.1.2. Chapter Roadmap | p. 89 |
4.2. Desktop Input Devices | p. 90 |
4.2.1. Keyboards | p. 91 |
4.2.2. 2D Mice and Trackballs | p. 91 |
4.2.3. Pen-Based Tablets | p. 92 |
4.2.4. Joysticks | p. 93 |
4.2.5. Six-DOF Input Devices for the Desktop | p. 95 |
4.3. Tracking Devices | p. 96 |
4.3.1. Motion Tracking | p. 96 |
4.3.2. Eye Tracking | p. 105 |
4.3.3. Data Gloves | p. 106 |
4.4. 3D Mice | p. 110 |
4.4.1. Handheld 3D Mice | p. 111 |
4.4.2. User-Worn 3D Mice | p. 113 |
4.5. Special-Purpose Input Devices | p. 114 |
4.6. Direct Human Input | p. 118 |
4.6.1. Speech Input | p. 119 |
4.6.2. Bioelectric Input | p. 120 |
4.6.3. Brain Input | p. 120 |
4.7. Home-Brewed Input Devices | p. 122 |
4.7.1. Strategies for Building Input Devices | p. 122 |
4.7.2. Connecting the Home-Brewed Input Device to the Computer | p. 124 |
4.8. Choosing Input Devices for 3D Interfaces | p. 126 |
4.8.1. Important Considerations | p. 126 |
4.8.2. Input Device Taxonomies | p. 128 |
4.8.3. Empirical Evaluations | p. 132 |
Part III 3D Interaction Techniques | p. 135 |
Chapter 5 Selection and Manipulation | p. 139 |
5.1. Introduction | p. 139 |
5.1.1. Chapter Roadmap | p. 140 |
5.2. 3D Manipulation Tasks | p. 140 |
5.2.1. Canonical Manipulation Tasks | p. 141 |
5.2.2. Application-Specific Manipulation Tasks | p. 143 |
5.3. Manipulation Techniques and Input Devices | p. 143 |
5.3.1. Control Dimensions and Integrated Control in 3D Manipulation | p. 144 |
5.3.2. Force versus Position Control | p. 145 |
5.3.3. Device Placement and Form-Factor in 3D Manipulation | p. 145 |
5.4. Interaction Techniques for 3D Manipulation | p. 147 |
5.4.1. Classifications of Manipulation Techniques | p. 147 |
5.4.2. Interacting by Pointing | p. 150 |
5.4.3. Direct Manipulation: Virtual Hand Techniques | p. 158 |
5.4.4. World-in-Miniature | p. 162 |
5.4.5. Combining Techniques | p. 163 |
5.4.6. Nonisomorphic 3D Rotation | p. 168 |
5.4.7. Desktop 3D Manipulation | p. 171 |
5.5. Design Guidelines | p. 179 |
Chapter 6 Travel | p. 183 |
6.1. Introduction | p. 183 |
6.1.1. Chapter Roadmap | p. 184 |
6.2. 3D Travel Tasks | p. 184 |
6.2.1. Exploration | p. 185 |
6.2.2. Search | p. 185 |
6.2.3. Maneuvering | p. 186 |
6.2.4. Additional Travel Task Characteristics | p. 187 |
6.3. Travel Techniques | p. 188 |
6.3.1. Technique Classifications | p. 188 |
6.3.2. Physical Locomotion Techniques | p. 192 |
6.3.3. Steering Techniques | p. 199 |
6.3.4. Route-Planning Techniques | p. 206 |
6.3.5. Target-Based Techniques | p. 210 |
6.3.6. Manual Manipulation Techniques | p. 214 |
6.3.7. Travel-by-Scaling Techniques | p. 216 |
6.3.8. Viewpoint Orientation Techniques | p. 217 |
6.3.9. Velocity Specification Techniques | p. 219 |
6.3.10. Integrated Camera Controls for Desktop 3D Environments | p. 220 |
6.4. Design Guidelines | p. 222 |
Chapter 7 Wayfinding | p. 227 |
7.1. Introduction | p. 227 |
7.1.1. Chapter Roadmap | p. 229 |
7.2. Theoretical Foundations | p. 229 |
7.2.1. Wayfinding Tasks | p. 231 |
7.2.2. Types of Spatial Knowledge | p. 231 |
7.2.3. Egocentric and Exocentric Reference Frames | p. 232 |
7.3. User-Centered Wayfinding Support | p. 234 |
7.3.1. Field of View | p. 235 |
7.3.2. Motion Cues | p. 235 |
7.3.3. Multisensory Output | p. 236 |
7.3.4. Presence | p. 237 |
7.3.5. Search Strategies | p. 237 |
7.4. Environment-Centered Wayfinding Support | p. 239 |
7.4.1. Environment Design | p. 239 |
7.4.2. Artificial Cues | p. 242 |
7.5. Evaluating Wayfinding Aids | p. 250 |
7.6. Design Guidelines | p. 251 |
7.7. Conclusion | p. 253 |
Chapter 8 System Control | p. 255 |
8.1. Introduction | p. 255 |
8.1.1. Human Factors of System Control | p. 257 |
8.1.2. Input Devices | p. 257 |
8.1.3. System- and Application-Level Factors | p. 258 |
8.1.4. Chapter Roadmap | p. 258 |
8.2. Classification | p. 259 |
8.3. Graphical Menus | p. 260 |
8.3.1. Techniques | p. 260 |
8.3.2. Design and Implementation Issues | p. 265 |
8.3.3. Practical Application | p. 267 |
8.4. Voice Commands | p. 268 |
8.4.1. Techniques | p. 268 |
8.4.2. Design and Implementation Issues | p. 268 |
8.4.3. Practical Application | p. 269 |
8.5. Gestural Commands | p. 270 |
8.5.1. Techniques | p. 271 |
8.5.2. Design and Implementation Issues | p. 272 |
8.5.3. Practical Application | p. 273 |
8.6. Tools | p. 273 |
8.6.1. Techniques | p. 274 |
8.6.2. Design and Implementation Issues | p. 276 |
8.6.3. Practical Application | p. 277 |
8.7. Multimodal System Control Techniques | p. 278 |
8.8. Design Guidelines | p. 280 |
8.9. Case Study: Mixing System Control Methods | p. 282 |
8.9.1. The ProViT Application | p. 282 |
8.9.2. System Control Design Approach for ProViT | p. 283 |
8.9.3. Mapping of Tasks to Devices | p. 283 |
8.9.4. Placement of System Control | p. 284 |
8.9.5. System Control Feedback | p. 284 |
8.10. Conclusion | p. 285 |
Chapter 9 Symbolic Input | p. 287 |
9.1. Introduction | p. 287 |
9.1.1. Why Is Symbolic Input Important? | p. 288 |
9.1.2. Scenarios of Use | p. 288 |
9.1.3. Brief History of Symbolic Input | p. 290 |
9.1.4. Distinctive Features of Symbolic Input in 3D UIs | p. 291 |
9.1.5. Chapter Roadmap | p. 292 |
9.2. Symbolic Input Tasks | p. 293 |
9.2.1. Alphanumeric Input | p. 293 |
9.2.2. Editing Alphanumeric Symbols | p. 293 |
9.2.3. Markup Input | p. 294 |
9.3. Symbolic Input Techniques | p. 294 |
9.3.1. Keyboard-Based Techniques | p. 294 |
9.3.2. Pen-Based Techniques | p. 300 |
9.3.3. Gesture-Based Techniques | p. 303 |
9.3.4. Speech-Based Techniques | p. 304 |
9.4. Design Guidelines | p. 306 |
9.5. Beyond Text and Number Entry | p. 310 |
Part IV Designing and Developing 3D User Interfaces | p. 311 |
Chapter 10 Strategies for Designing and Developing 3D User Interfaces | p. 313 |
10.1. Introduction | p. 313 |
10.1.1. Designing for Humans | p. 314 |
10.1.2. Inventing 3D User Interfaces | p. 314 |
10.1.3. Chapter Roadmap | p. 315 |
10.2. Designing for Humans | p. 315 |
10.2.1. Feedback in 3D User Interfaces | p. 315 |
10.2.2. Constraints | p. 322 |
10.2.3. Two-Handed Control | p. 323 |
10.2.4. Designing for Different User Groups | p. 327 |
10.2.5. Designing for User Comfort | p. 328 |
10.3. Inventing 3D User Interfaces | p. 330 |
10.3.1. Borrowing from the Real World | p. 331 |
10.3.2. Adapting from 2D User Interfaces | p. 335 |
10.3.3. Magic and Aesthetics | p. 340 |
10.4. Design Guidelines | p. 345 |
Chapter 11 Evaluation of 3D User Interfaces | p. 349 |
11.1. Introduction | p. 349 |
11.1.1. Purposes of Evaluation | p. 350 |
11.1.2. Terminology | p. 351 |
11.1.3. Chapter Roadmap | p. 351 |
11.2. Background | p. 351 |
11.2.1. Tools for Evaluation Design and Implementation | p. 352 |
11.2.2. Evaluation Methods Used for 3D Interfaces | p. 354 |
11.3. Evaluation Metrics for 3D Interfaces | p. 357 |
11.3.1. System Performance Metrics | p. 357 |
11.3.2. Task Performance Metrics | p. 358 |
11.3.3. User Preference Metrics | p. 358 |
11.4. Distinctive Characteristics of 3D Interface Evaluation | p. 360 |
11.4.1. Physical Environment Issues | p. 360 |
11.4.2. Evaluator Issues | p. 362 |
11.4.3. User Issues | p. 363 |
11.4.4. Evaluation Type Issues | p. 365 |
11.4.5. Miscellaneous Issues | p. 367 |
11.5 Classification of 3D Evaluation Methods | p. 367 |
11.6. Two Multimethod Approaches | p. 369 |
11.6.1. Testbed Evaluation Approach | p. 370 |
11.6.2. Sequential Evaluation Approach | p. 375 |
11.6.3. Comparison of Approaches | p. 378 |
11.7. Guidelines for 3D Interface Evaluation | p. 382 |
11.7.1. General Guidelines | p. 382 |
11.7.2. Guidelines for Formal Experimentation | p. 383 |
Part V The Future of 3D User Interfaces | p. 385 |
Chapter 12 Beyond Virtual: 3D User Interfaces for the Real World | p. 387 |
12.1. Introduction | p. 387 |
12.1.1. What Is Augmented Reality? | p. 389 |
12.1.2. Bringing Virtual Interfaces into the Real World | p. 390 |
12.1.3. Chapter Roadmap | p. 391 |
12.2. AR Interfaces as 3D Data Browsers | p. 391 |
12.3. 3D Augmented Reality Interfaces | p. 394 |
12.4. Augmented Surfaces and Tangible Interfaces | p. 395 |
12.5. Tangible AR Interfaces | p. 397 |
12.5.1. Design of Tangible AR | p. 398 |
12.5.2. Time-Multiplexed Interaction in Tangible AR | p. 400 |
12.5.3. Advantages and Disadvantages of Tangible AR | p. 402 |
12.6. Agents in AR | p. 403 |
12.7. Transitional AR-VR Interfaces | p. 404 |
12.8. Conclusion | p. 405 |
Chapter 13 The Future of 3D User Interfaces | p. 407 |
13.1. Questions about 3D UI Technology | p. 407 |
13.2. Questions about 3D Interaction Techniques | p. 410 |
13.3. Questions about 3D UI Design and Development | p. 412 |
13.4. Questions about 3D UI Evaluation | p. 415 |
13.5. Million-Dollar Questions | p. 416 |
Appendix A Quick Reference Guide to 3D User Interface Mathematics | p. 419 |
A.1. Scalars | p. 420 |
A.2. Vectors | p. 420 |
A.3. Points | p. 421 |
A.4. Matrices | p. 422 |
A.5. Quaternions | p. 424 |
Bibliography | p. 429 |
Index | p. 457 |