june 14, 2001. lance arsenault john kelso ron kriz

22
June 14, 2001

Upload: harold-lindsey

Post on 20-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Page 2: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Lance Arsenault John Kelso

Ron Kriz

Page 3: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

PhD Physics, Nonlinear Dynamics, 1996 University of Illinois at Urbana

Lance Arsenault

1999-presentResearch Assistant Professor, Virginia Tech

1996-1999Computer Programmer, NCSA,Caterpillar Inc., Virtual Prototyping System

Page 4: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

ES

RE

VI

D

econfigurable,econfigurable,

irtualirtualnvironments-nvironments-

eviceevicendependentndependent

calable,calable,xtensiblextensible

Page 5: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Page 6: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Sponsored by

NavCIITIPaul Quinn

NavCIITIPaul Quinn

Lockheed Martin

DURIPKam Ng

Pat McKenzie

Page 7: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

What is DIVERSE?

DIVERSE is:• free (GNU LGPL and GPL) software

Consisting of:•C++ Application Programming Interfaces (APIs)•Utility and Example programs

GNU/Linux SGI IRIX

Runs on:

Page 8: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

What is DIVERSE?

DIVERSE is for creating Applications like:

Crane Ship SimulatorCrane Ship Simulatorwithwith

CAVE and motion baseCAVE and motion base

Crane Ship SimulatorCrane Ship Simulatorwithwith

CAVE and motion baseCAVE and motion base

Page 9: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Who Else Uses DIVERSE?

• US Navy– Naval Undersea Warfare Center (NUWC)

• NIST– Scientific Applications and Visualization Group

• Penn State– Center for Academic Computing, Visualization Group

Page 10: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

The Same Program Runs on All Hardware

• With No Changes to the Program

evice

ndependent

Page 11: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Example: Crane Ship Simulator

In the CAVE

irtual

nvironmentsDesktop

econfigurable

calable

Idesk

GNU/Linux laptopAsk me to show you here at ONR-SBD

Page 12: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

We always tried to keep this in mind..

• Stay out of the user’s way– They know their job better than we

• Augment instead of replace– Build on existing packages, don’t reinvent

• Works by default– Lowest-common-form Defaults work anywhere

Page 13: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Two Separate Packages

• DIVERSE Toolkit (DTK)– Networking, I/O, not related to graphics– Remote Shared Memory

• DIVERSE Graphics Interface for

OpenGL Performer (DgiPf)– Built using DTK and Performer

Page 14: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

DIVERSE Toolkit (DTK)

• Library– C++ Classes to Build Server and Applications

• Networked Server– Manage Dynamic Shared Object (DSO) Services

• DSO I/O Services– Loaded/Unloaded on the Fly

Page 15: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

DTK Remote Shared Memoryis Simulator Glue

graphics

Local host

memory“wombat”

wombatdynamicsSimulate wombat

dynamics

File playback

graphics

Remote Display

memory“wombat” wombat

dynamicsRemote

wombat host

StopXRemote without

writing code

econfigurable

Page 16: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

DIVERSE Graphics Interface for

OpenGL Performer (DgiPf)• Uses DTK and Performer to provide:

– Configuration via DSOs

– Display-Independent Graphics

– Coordinate Systems and Scene Graph

– Viewing Frusta

– Stereo Graphics

– Input from Real and Emulated Devices

– Many Navigation Methods

xtensible

Page 17: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Hello.c++

#include <dgiPf.h>

int main(void) { pfInit(); dgiPf app; pfConfig(); app.display()->world()-

>addChild(pfdLoadFile(“model.pfb"); while(app.state & DGIPF_ISRUNNING) pfFrame(); pfExit();}

Page 18: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Program: Hello

• Can run on:– CAVETM

– ImmersaDeskTM

– HMD (Head Mounted Display)– Desktop– Laptop

With many Navigation Methods

With Stereo or Mono Display

Page 19: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Example: a CAVE Graphics DSO

Page 20: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Future

• Other OS platforms– HPUX, MS Windows, Mac OSX, Solaris

• DIVERSE for OpenGL

• DIVERSE for Open Inventor

Page 21: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001

Visit

• Download and Try it out

• Read the Friendly Documentation

www.diverse.vt.edu

• Virginia Tech Virtual Environments Workshop August 6-10 see details at: http://www.multimedia.vt.edu/ve_workshop/

Page 22: June 14, 2001. Lance Arsenault John Kelso Ron Kriz

June 14, 2001