Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lance Arsenault John Kelso Ron Kriz Virginia Tech Blacksburg, Virginia www.diverse.vt.edu.

Similar presentations


Presentation on theme: "Lance Arsenault John Kelso Ron Kriz Virginia Tech Blacksburg, Virginia www.diverse.vt.edu."— Presentation transcript:

1 Lance Arsenault John Kelso Ron Kriz Virginia Tech Blacksburg, Virginia www.diverse.vt.edu

2 www.diverse.vt.ed u April 18, 2001 The only thing you should say before giving a demo is “watch this”…

3 www.diverse.vt.ed u April 18, 2001 The DIVERSE group Lance Arsenault Assistant research professor, Virginia Tech dept. of Engineering, Science and Mechanics John Kelso Research associate, Virginia Tech’s University Visualization and Animation Group Ron Kriz Associate professor, Virginia Tech dept. of Engineering, Science and Mechanics

4 evice ndependent irtual nvironments- econfigurable, calable, xtensible

5 www.diverse.vt.ed u April 18, 2001 Motivation Toolkits and libraries exist, but most have at least one of these problems: follow the “center of the universe” paradigm are very expensive are proprietary can’t be extended or modified

6 www.diverse.vt.ed u April 18, 2001 Who uses or supports DIVERSE? US Navy: 3d target-acquisition visualization for submarines Dynamic ship-crane project Lockheed-Martin: Extending DIVERSE with collaborative tools. NIST: Haptic device for probing data set densities

7 www.diverse.vt.ed u April 18, 2001 Overview C++ API Free, Open source LGPL libraries, GPL applications SGI IRIX and GNU/Linux Support for all three IRIX binary types

8 www.diverse.vt.ed u April 18, 2001 Goals Modular Only use the parts you need Flexible Easy to reconfigure and extend Same program works on all hardware No changes to application

9 www.diverse.vt.ed u April 18, 2001 We always tried to keep this in mind… Stay out of the user’s way They know better than we do how to do their job Augment instead of replace Build on existing packages, don’t reinvent new ones Works by default Lowest-common-denominator defaults work anywhere

10 www.diverse.vt.ed u April 18, 2001 Two separate packages DTK- the DIVERSE ToolKit Contains classes not related to graphics A standalone package in its own right dgiPf- the DIVERSE graphics interface for OpenGL Performer™ Built using DTK and Performer

11 www.diverse.vt.ed u April 18, 2001 DTK DIVERSE ToolKit Library C++ classes used to build everything else Server Manager process Services Interfaces to hardware devices or virtual surrogates Clients Programs that control and interact with the server

12 www.diverse.vt.ed u April 18, 2001 DTK Library of C++ classes provide: Remote shared memory Data queuing Utilities, such as an affine matrix class Dynamically Shared Object (DSO) loading: Small separately compiled programs Reconfiguration with recompiling Loaded at run-time Configurations can be changed while program is running

13 www.diverse.vt.ed u April 18, 2001 DTK Server Manages services, memory, queues Run as a regular process or as a true Unix daemon Lightweight select server Multiple simultaneous copies can run using different ports

14 www.diverse.vt.ed u April 18, 2001 DTK Services Usually DSOs (shared libraries loaded in run-time) Can be loaded and unloaded without restarting server Each service interfaces to a specific device Devices can be real hardware or software emulations

15 www.diverse.vt.ed u April 18, 2001 DTK Clients Take the form of installed application programs- examples: Control and query server Start/stop on specified port Load/unload services Connect to remote shared memory of other hosts Read and write data from remote shared memory Write remote shared memory to Unix System V shared memory in VRCO trackd™ compatible format

16 www.diverse.vt.ed u April 18, 2001 dgiPf DIVERSE Graphics Interface for Performer Uses DTK and Performer to provide: Configuration via DSOs Display-independent graphics Coordinate systems and scenegraph Viewing frusta and stereo parallax Generic input devices Navigation New Performer node types

17 www.diverse.vt.ed u April 18, 2001 dgiPf Configuration via DSOs: Used to specify: Graphics configurations Available input devices Navigation techniques Interaction techniques Minor modifications- tweak files DSOs can load other DSOs, so groups can be created

18 www.diverse.vt.ed u April 18, 2001 dgiPf Configuration via DSOs, continued: Application can define default set “works by default” Default can be overridden by user “stay out of the user’s way”

19 www.diverse.vt.ed u April 18, 2001 dgiPf Display-independent graphics Same program runs on systems from a CAVE™ to a GNU/Linux laptop without modification Display configurations are usually DSOs Doesn’t prevent display-dependent programs from being written if desired

20 www.diverse.vt.ed u April 18, 2001 dgiPf Display-independent graphics, continued Simulator- allows programs to simulate an immersive environment on a desktop Virtual head (locator) and wand (valuator and buttons) Can be displayed and positioned Useful as immersive development/debugging tool Can jump outside of ether world and look back in Loaded as a DSO CAVE Simulator Objects displayed at physically correct size in simulator

21 www.diverse.vt.ed u April 18, 2001 dgiPf Three coordinate systems: dgiPf normalized [ -1.0  1.0 ] ether fixed model units like 19 th century physics world navigated model units ether + current navigational transformation As a world moves through the ether it takes its frame of reference along with it

22 www.diverse.vt.ed u April 18, 2001 dgiPf dgiPf coordinate cube

23 www.diverse.vt.ed u April 18, 2001 dgiPf Immersive systems can specify coordinates in physical units Models are displayed with correct physical size regardless of immersive display size A meter stick should appear to be a meter long

24 www.diverse.vt.ed u April 18, 2001 dgiPf default scenegraph

25 www.diverse.vt.ed u April 18, 2001 dgiPf Viewing frusta Symmetric Typically desktop Base of frusta moves with user’s view Asymmetric Typically immersive Base of frusta is fixed Point moves with view Always perpendicular to base

26 www.diverse.vt.ed u April 18, 2001 dgiPf Stereo parallax Automatically generates correctly positioned stereo pairs based on view position, interoccular distance and orientation. Symmetric frusta can also specify a convergence factor

27 www.diverse.vt.ed u April 18, 2001 dgiPf Generic input devices Locator- a position and orientation Valuator- an array of continuous values Button- a 32 bit mask Keyboard- returns “X” key codes Pointer- returns normalized cursor position within a window

28 www.diverse.vt.ed u April 18, 2001 dgiPf Input devices, continued Real or virtual Application unaware of data’s hardware Local or remote Application unaware of data’s source

29 www.diverse.vt.ed u April 18, 2001 dgiPf Input devices, continued Any device can be polled or queued Polled- reads latest value Typically used for continuous data, such as locators, valuators and pointers Queued- all values are save in a circular queue Typically used for discrete data, such as buttons and keyboards

30 www.diverse.vt.ed u April 18, 2001 dgiPf Navigation Navigation technique can be encapsulated in a DSO Use mouse when on desktop Use wand and joystick when in CAVE Independent of and transparent to, application By loading a navigation DSO, navigation can be added to a static application

31 www.diverse.vt.ed u April 18, 2001 dgiPf Navigation, continued Multiple navigators can be loaded Can switch between them to: Change interaction technique Change position in the world (portal effect) Navigation based on the dgiPfTransform class: Provides affine transformation on a scenegraph node which can be placed anywhere in scenegraph

32 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPf dgiPfAugment dgiPfDisplay

33 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPf Single instance (singleton) Application’s entry point into dgiPf system Factory of other objects Loads DSOs in form of dgiPfAugment objects

34 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPfAugment Adds functionality without program modification Four entry points, invoked by dgiPf object Before and after pfConfig Before and after pfFrame return values tell dgiPf how to proceed

35 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPfAugment dgiPf DSOs are objects based on this class, or classes derived from this class Example of classes based on dgiPfAugment: dgiPfInput dgiPfNav dgiPfTransform dgiPfTweakFile

36 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPfDisplay Singleton created by dgiPf object Creates scenegraph Sets up coordinate systems Usually configured by DSO

37 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPfDisplay, continued Manages frusta, parallax and views Factory of other objects based on configuration Structures Performer classes

38 www.diverse.vt.ed u April 18, 2001 dgiPf C++ classes: dgiPfDisplay, continued

39 www.diverse.vt.ed u April 18, 2001 dgiPf New Performer nodes Data-driven programming as opposed to object- oriented methods. Examples include: dgiPfDCS Update a node’s transformation by modifying a variable dgiPfToggle Change a node’s visibility by modifying a bit-mask

40 www.diverse.vt.ed u April 18, 2001 dgiPf Distribution includes examples: Several dozen small programs to illustrate specific features of dgiPf Written so they can easily be moved and modified

41 www.diverse.vt.ed u April 18, 2001 dgiPf Diversifly: a dgiPf application Loads and navigates through model files No programming required

42 www.diverse.vt.ed u April 18, 2001 Future directions dgiPf head’s up displays (summer 2001) hooks to VTK (summer 2001) more navigation and simulation techniques (summer 2001)

43 www.diverse.vt.ed u April 18, 2001 Future directions DTK collaborative tools (fall 2001) motion queuing (fall 2001) new devices Phantom haptic device (fall 2001) Xwand (summer 2001) PocketPC (summer 2001)

44 www.diverse.vt.ed u April 18, 2001 Want to know more? Visit www.diverse.vt.edu andwww.diverse.vt.edu Download and try it out Read the friendly manuals Contact: Lance Arsenault (lanceman@vt.edu)lanceman@vt.edu John Kelso (kelso@vt.edu)kelso@vt.edu Ron Kriz (kriz@vt.edu)kriz@vt.edu

45 www.diverse.vt.ed u April 18, 2001


Download ppt "Lance Arsenault John Kelso Ron Kriz Virginia Tech Blacksburg, Virginia www.diverse.vt.edu."

Similar presentations


Ads by Google