Using Tweek to Create Graphical User Interfaces in Virtual Reality Patrick Hartling IEEE VR 2003.

Slides:



Advertisements
Similar presentations
CONCEPTUAL WEB-BASED FRAMEWORK IN AN INTERACTIVE VIRTUAL ENVIRONMENT FOR DISTANCE LEARNING Amal Oraifige, Graham Oakes, Anthony Felton, David Heesom, Kevin.
Advertisements

Technical and design issues in implementation Dr. Mohamed Ally Director and Professor Centre for Distance Education Athabasca University Canada New Zealand.
Components of GIS.
Web Visualization Technology Horner APG Ver 1.0.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Technical Architectures
Chapter Concepts Review Markup Languages
CPSC 695 Future of GIS Marina L. Gavrilova. The future of GIS.
Graphical User Interface (GUI) Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
Graphical User Interface (GUI) Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
1 Component Description Alice 3d Graphics Software Human Computer Interaction Institute Carnegie Mellon University Prepared by: Randy Pausch,
Software. Application Software performs useful work on general-purpose tasks such as word processing and data analysis. The user interacts with the application.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Interpret Application Specifications
Object-Oriented Analysis and Design
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Introduction to Web Applications Instructor: Enoch E. Damson.
Graphical User Interfaces in Virtual Reality Patrick Hartling Virtual Reality Applications Center IEEE VR 2002.
Object-Oriented Methods: Database Technology An introduction.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Internet GIS. A vast network connecting computers throughout the world Computers on the Internet are physically connected Computers on the Internet use.
Adaptive 3D Web Sites by by Luca Chittaro and Roberto Ranon MAJ(P) Charles E. Grindle 7 Dec 05.
Operating Systems Operating System
Write today’s date and title in the front of your book. Underline it.
MVC pattern and implementation in java
Computing Fundamentals Module A Unit 2: Using Windows Vista LessonTopic 8Looking at Operating Systems 9Looking at the Windows Desktop 10Starting Application.
Software Tools.  It accomplishes an important task  (for better and for worse) You don’t have to make it yourself, and it abstracts a set of knowledge.
Marcelo de Paiva Guimarães Bruno Barberi Gnecco Marcelo Knorich Zuffo
Object and component “wiring” standards This presentation reviews the features of software component wiring and the emerging world of XML-based standards.
UNIX SVR4 COSC513 Zhaohui Chen Jiefei Huang. UNIX SVR4 UNIX system V release 4 is a major new release of the UNIX operating system, developed by AT&T.
Model View Controller (MVC) Rick Mercer with a wide variety of others 1.
Command and Control Visualization NAVCIITI Tasks 2.1a & 2.1b.
Quality Attributes of Web Software Applications – Jeff Offutt By Julia Erdman SE 510 October 8, 2003.
An Investigation into Immersive Visualization Vanessa Gertman.
Designing 3D Interfaces Examples of 3D interfaces Pros and cons of 3D interfaces Overview of 3D software and hardware Four key design issues: system performance,
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
An Introduction to Software Architecture
D. Sturzebecher, Institute of Operating Systems and Computer Networks, TU-Braunschweig Modular Advanced Collaboration System A Framework for Collaborative.
Graphical User Interfaces
Why Java? A brief introduction to Java and its features Prepared by Mithat Konar.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
MOBILE GROUPWARE Jason Tsay Advanced User Interface Software - Spring 2013.
GUI For A Virtual Pipeline Simulation Testbed By, Revathi Manni Ranganathan Major Professor: Dr.Virgil Wallentine.
Chapter 8: Operating Systems and Utility Programs Catherine Gifford Dan Falgares.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
Guide to Linux Installation and Administration, 2e1 Chapter 2 Planning Your System.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
1 Chapter 7 Operating System & Utility Programs.  consists of the programs that control or maintain the operations of the computer and its devices. It.
1 Senn, Information Technology, 3 rd Edition © 2004 Pearson Prentice Hall James A. Senn’s Information Technology, 3 rd Edition Chapter 12 Creating Web-Enabled.
August 2003 At A Glance VMOC-CE is an application framework that facilitates real- time, remote cooperative work among geographically dispersed mission.
Ch 3-4: GUI Basics Java Software Solutions Foundations of Program Design Sixth Edition by Lewis & Loftus Coming up: GUI Components.
10/8: Software What is software? –Types of software System software: Operating systems Applications Creating software –Evolution of software development.
C OMPUTING E SSENTIALS Timothy J. O’Leary Linda I. O’Leary Presentations by: Fred Bounds.
Copyright©2008 N.AlJaffan®KSU1 Chapter 7 Operating System and Utility Programs.
Model View Controller (MVC) Bigger than a Pattern: It’s an Architecture Rick Mercer with help from many of others 1.
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Ubiquitous Access for Collaborative Information System Using SVG July Sangmi Lee, Geoffrey Fox, Sunghoon Ko, Minjun Wang, Xiaohong Qui
Building Virtual Environments that are Reconfigurable, Scalable, Extensible Lance Arsenault John Kelso University Visualization and Animation Group
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
OPERATING SYSTEM BY KINSHUK RASTOGI. WHAT IS AN OPERATING SYSTEM? What is an operating system in the first place? An operating system is a software that.
August 21, 2002 Command and Control Visualization NAVCIITI Tasks 2.1a & 2.1b.
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
Application Sharing Bhavesh Amin Casey Miller Casey Miller Ajay Patel Ajay Patel Bhavesh Thakker Bhavesh Thakker.
J2EE Platform Overview (Application Architecture)
Design and realization of Payload Operation and Application system of China’s Space Station Wang HongFei 首页.
Observer Design Pattern
User Interface Design and Development
Presentation transcript:

Using Tweek to Create Graphical User Interfaces in Virtual Reality Patrick Hartling IEEE VR 2003

VR Juggler — Overview Problem description Goals for Tweek software Design overview Implementation overview Future work

VR Juggler — Problem Description Interaction in VR is primarily spatial Not all interactions map well to this method Alphanumeric input Fine-grained interaction List selection Per-application custom interfaces Map abilities of specific devices to interaction Typically use 3D input devices Why abandon effective 2D interaction techniques in 3D space?

VR Juggler — Motivation Why have GUIs in virtual reality? GUIs are everywhere in the computing world Most computer users understand how to use a GUI Why not have GUIs in VR?

VR Juggler — Issues with GUIs in Virtual Reality (1/2) Positives Typically more flexible and more extensible than other input devices – More input methods means less overloading of button presses, gestures, etc. More portable between VR systems than hardware input devices Familiarity from desktop experience

VR Juggler — Issues with GUIs in Virtual Reality (2/2) Negatives No direct physical correspondence – In VR, a user could grab an object with his/her hand or use a GUI – No GUI in real world for moving the object Remote users may not see GUI [Park00] Use of the interface may be difficult – Collision detection – Placement Immersive interfaces have to re-invent GUI technology

VR Juggler — Previous Work (1/3) Many areas of previous work Widget sets for VR PDAs as input devices Floating menus and heads-up displays Virtual User Interface (VUI) Originally developed at Iowa State University [Heath98] 3D immersive user interface May be an open source release from Fuel Tech

VR Juggler — Previous Work (2/3) Java Interface to Virtual Environment (JAIVE) Used Java interface on handheld computer [Hill00] Communicated with C++ applications Interface could be extended from C++ using JAIVE protocol

VR Juggler — Previous Work (3/3) PDA in a CAVE™ system Kent Watsen, Naval Postgraduate School Experimented with use of Palm PDA in CAVE [Watsen99] 3DI Group Doug Bowman, Virginia Tech Investigating differences in system interaction techniques between VE displays Active on 3DUI mailing list

VR Juggler — Tweek Framework for the development of cross- platform, cross-language, scalable GUIs GUIs communicate with remote applications GUIs can be use on the desktop, on a PDA, or in an immersive VR environment Features GUI panels are dynamically loaded components – Panels use standard 2D GUI “widgets” Dynamic interface update and extension Multi-language capabilities

VR Juggler — Goals Allow GUI scalability Same GUI runs on the desktop, a PDA, and a projection-based VR system Must provide an easily extendable framework for cross-platform, cross-device GUIs Interact with VR applications written in any programming language Fully separate the GUI from the application Reuse existing GUI technology We do not want to re-invent scrollbars, menus, etc. Avoid cluttering immersive space

VR Juggler — Same GUI, Multiple Uses (1/2) PDA in Projection System Offers force feedback High-resolution display – Back-lit display is needed Widely available – A person with a PDA can walk into the VR system and get the GUI dynamically

VR Juggler — Same GUI, Multiple Uses (2/2) Desktop simulation Standard GUI interface used to control VR software in simulator mode Immersive 3D space VRJ VNC incorporates 2D GUI into 3D visualization – Modeled after 3Dwm ( use of VNC and other VR VNC viewers

VR Juggler — Design Overview (1/3) Distributed Model/View/Controller

VR Juggler — Design Overview (2/3) Observer design pattern Simplified MVC: subject, observer VR application is the subject – Maintains user-defined state information – Per-application customizations GUI is the observer – Provides a view of subject’s state – GUI interactions manipulate application state Benefits – Distinct separation of application and GUI – Allows multiple GUIs to observe the same application

VR Juggler — Design Overview (3/3) Two-way communication between application and GUI Application can send data to the GUI GUI flexibility A GUI can load any component it needs to make interaction more effective Not limited to direct manipulation of application state

VR Juggler — Implementation Overview Language tools C++ VR applications Java-based GUI composed of JavaBeans – Beans can be “pushed” to the GUI while the user is in the virtual space – Dynamic extension of interface CORBA communication between C++ and Java

VR Juggler — Example Tweek Interface Multi-purpose tool – Navigation – Map visualization – Data visualization – Information storage to spreadsheet- friendly format

VR Juggler — VRJ VNC: Embedding 2D GUIs in 3D Space Embed any 2D GUI in 3D world Uses VNC Can be added to existing VR Juggler applications

VR Juggler — VRJ VNC: Presentations in VR Bring PowerPoint presentation into the 3D environment

VR Juggler — VRJ VNC: Embedding Tweek Tweek Java GUI is just another window on a desktop Set VNC desktop size to give the desired embedded frame size Interaction with the GUI is translated to the desktop via VNC

VR Juggler — Future Work Use Java Applets to allow Tweek to be used from a web browser – Make use of a familiar interface – Easy access to application GUI for remote demonstrations

VR Juggler — Online Information 3DUI Tweek Contains publications, guides, and programmer references

VR Juggler — References [Park00] Park, K. et al. “Lessons Learned from Employing Multiple Perspectives in a Collaborative Virtual Environment for Visualizing Scientific Data”. In Proceedings of ACM Conference on Collaborative Virtual Environments, San Francisco, California, September 10–12, [Heath98] Heath, D. “Virtual User Interface (VUI): A Windowing System for VR”. In Proceedings of 2nd Immersive Projection Technology Workshop, Ames, Iowa, May 11–12, [Hill00] Hill, L., Usability of 2D Palmtop Interaction Device in Immersive Virtual Environment. Master’s thesis, Iowa State University, Ames, IA, [Watsen99] Watsen, K. “A Handheld Computer as an Interaction Device to a Virtual Environment”, In Proceedings of 3rd Immersive Projection Technology Workshop, Stuttgart, Germany, May 10–11, 1999.