160 likes | 265 Views
Graphical Interaction Devices for Distributed Virtual Reality Systems. Marcelo de Paiva Guimarães paiva@lsi.usp.br Bruno Barberi Gnecco brunobg@lsi.usp.br Marcelo Knorich Zuffo mkzuffo@lsi.usp.br Integrated Systems Laboratory Polytechnic School - University of São Paulo - Brazil 200 4.
E N D
Graphical Interaction Devices for Distributed Virtual Reality Systems Marcelo de Paiva Guimarães paiva@lsi.usp.br Bruno Barberi Gnecco brunobg@lsi.usp.br Marcelo Knorich Zuffo mkzuffo@lsi.usp.br Integrated Systems Laboratory Polytechnic School - University of São Paulo - Brazil 2004
Introduction • The contribution of the present research project is to simplify the design of graphical interfaces and their interaction with the VR application • freeing the designer from having to know all the details of the individual technologies, and to use PDAs as interaction device • No programming knowledge from the GUI designer
Introduction • The PDA application communicates transparently with a cluster, via any underlying network system, which processes the events and maintains the synchrony of the rendered images in real-time • the interface and its configuration can be changed at run-time • This solution is part of Glass
What is Glass? • A library for distributed computing • Extensible and flexible • Portable and interoperable • Easy to use and learn: transparent • High performance • Network protocol independent • Reliable and fault tolerant • Completely thread safe
Overview • Written in C++ • Easy to interface with C, C++, Java, etc • All functionality is provided by plugins • Glass core provides internal functionality • Network system • Plug-in management (Barriers, Events,Alias...) • Node management • Fault tolerant • If a node dies, Glass detects and deals with it. • Computation does not stop • Deadlocks are prevented
PDA Editor • Born from desire to control our CAVE with a PDA • Glass runs in PDA • Editor generates GUI in a straightforward, graphical way • No programming knowledge required
PDA Editor • Code is generated automatically • Programmer has only to write an event handler • Interface is in Java • Run it anywhere: PDA or desktop
PDA Applicaton: screenshot • All input are propagated as asynchronous events, which can be either polled or handled by callbacks on the application. • There’s no limit to the number of PDAs that can be used simultaneously in an application • Each PDA may be controlling a different vehicle, or the participants may share a GUI and work collectively on a project.
The PDA is a cluster node • Glass is used underneath • To Glass, the PDA is just another node
Application Java Java Virtual Machine JNI Glass Operational System (Linux, Windows CE, Windows) PDA software layers
Conclusions • PDAs • improve the user interaction in immersive environments • can be used to control the VR system itself • running applications • controlling lights and projectors, etc • It’s an efficient way to manipulate large volumes of data • the user is already familiar with the GUI approach used
Conclusions • The tool for designing GUIs presented • which generates code automatically, requiring no knowledge of computer programming from the user • The interface runs on Java, which has the advantage of easy portability to any platform • The routine for treatment of events on the main application is also generated automatically
Conclusions • The interface integrates directly with the main application, which is running on a cluster. • As future work, we plan to enhance GUIs to be multimedia, including animations and sounds