onr gathering april 24, 2002 navciiti visualization thrust tasks 2.1a & 2.1b command and control...
TRANSCRIPT
ONR Gathering April 24, 2002
NAVCIITI Visualization ThrustTasks 2.1a & 2.1b
Command and Control Visualization
Year 3 & 4 (4/1/01 - 3/31/03)
ONR Gathering April 24, 2002
NAVy Collaborative Integrated Information Technology Initiative
“The vision of the program is to provide the precursor of development, demonstration, and configuration of high payoff technologies in support of the Navy’s Command and Control vision.”
ONR project management started March, 1999 year 1: 4/1/99 - 3/31/00
Year 3 & 4 funding: $8,300,000
ONR Gathering April 24, 2002
Command and Control Visualization Objectives
Task 2.1a:A collaboration between NUWC, NRL and VT to develop an ASW tactical interface for littoral battle space.
Task 2.1b: Extend the DIVERSE API to facilitate its use by Task 2.1a researchers.
ONR Gathering April 24, 2002
Task 2.1a
Funding:Years 3 & 4: $252,000
Personnel:Ron Kriz, Co-PI
Fernando Das Neves, student developer
ONR Gathering April 24, 2002
Task 2.1b
Funding:Years 3 & 4:$553,000
Personnel:Lance Arsenault, Co-PI & developer
John Kelso, developer
Chris Logie, student developer
ONR Gathering April 24, 2002
Task 2.1a Year 3 & 4 Statement of Work
• Development of C&C acoustic model scenegraph based on OpenGL API developed in Task 2.1b.
• Create interfaces for HMDs, IWBs, CAVEs, and desktop flat panels across heterogeneous OSs- IRIX, GNU/Linux, MS Windows.
ONR Gathering April 24, 2002
Task 2.1b Year 3 & 4 Statement of Work
• Create DGL, an OpenGL DIVERSE API for IRIX, GNU/Linux, MS Windows.
• Support OpenGL-based scenegraphs, such as Open Inventor and OpenScenegraph, using DGL.
• Create navigation tools and a GUI manager.• Expand on network extensions, including data
abstractions and security.• Integrate networked device tools.
ONR Gathering April 24, 2002
Ken Lima covered Task 2.1a in his talk “Virtual Reality for Multi Warfare Planning”.
This talk will focus on Task 2.1b.
ONR Gathering April 24, 2002
Some background :
1998:• VT CAVE activated- soon realized available graphics
software insufficient- needed support for IWB, etc..
1999:• DIVERSE graphics started. (Kelso)• ONR MURI & DURIP grants for crane ship simulator
and motion platform. (Arsenault)
ONR Gathering April 24, 2002
By 1999 we knew what we needed:
• Software to facilitate the display and creation of device independent virtual environments.
• Framework to support highly reconfigurable asynchronous distributed simulations.
ONR Gathering April 24, 2002
What we needed… features
• Applications run unmodified on all supported devices- real/simulated, local/remote.
• Free open source, both cost and redistribution.• Tools to support non-programmers.
ONR Gathering April 24, 2002
What we needed…philosophy
• 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– Reasonable lowest-common-denominator defaults.
ONR Gathering April 24, 2002
What we needed…design
• Modular– Only use the parts you need.
• Flexible– Easy to reconfigure and extend.
• Reusable– Components work across multiple applications.
ONR Gathering April 24, 2002
What we looked at:
• CAVElib, dVise, WorldToolkit, Vega, MR Toolkit– Not free or not freely redistributable.
• VRJuggler– Not open source when surveyed. (7/99)
– Callback paradigm can get in the user’s way.
– No tools for distributed asynchronous simulations.
ONR Gathering April 24, 2002
So we wrote DIVERSE
• Includes: – C++ library of classes for application development.– Stand-alone application programs and utilities.– Dozens of small programs to illustrate specific features,
designed to be easily moved and modified.– Extensive documentation, including “man” pages and
Programmer’s Guide.
ONR Gathering April 24, 2002
DIVERSE is comprised of three modules
1) DTK- the DIVERSE ToolKit• Contains classes not related to graphics
– Remote shared memory.
– Input devices- local or remote.
• A standalone package in its own right– Complete non-graphical simulations.
– Graphical modules can be added as separate processes.
ONR Gathering April 24, 2002
DIVERSE is comprised of three modules
2) DPF- the DIVERSE graphics interface for OpenGL Performer
• Built using DTK and Performer– Uses Performer scenegraph and multi-pipe support for
ease of use and efficiency.
– Includes command-line tools for non-programmers.
– Only runs on Performer’s platforms- IRIX and GNU/Linux.
ONR Gathering April 24, 2002
DIVERSE is comprised of three modules
3) DGL- the DIVERSE graphics interface for OpenGL
• Built using DTK and OpenGL– Multi-threaded draw callback.
• Scenegraph agnostic– Able to use any scenegraph that generates OpenGL.
• Potential to run on almost any platform– OpenGL runs on almost anything.
ONR Gathering April 24, 2002
All of these modules form DIVERSE
Timeline:• DTK- started by Arsenault in 1999 for MURI/DURIP-
continued in NAVCIITI Task 2.1b years 3 & 4.• DPF- started by Kelso in 1999 using non-Navy funds-
continued in 2000 with NAVCIITI Task 2.1 year 2. Currently funded by non-Navy sources.
• DGL- started by Logie in 2000 using non-Navy funds- continued in NAVCIITI Task 2.1b years 3 & 4.
All modules also benefited from non-Navy funding.
ONR Gathering April 24, 2002
Classes
Input class• The usual logical devices, transparently networked.
Augment class• Base class for DSOs.
Manager class• Loads/unloads Augment DSOs.• Manages Augment callbacks.
ONR Gathering April 24, 2002
A word about DSOs…
DSOs- Dynamic Shared Objects:• Encapsulated functionality.• C++ programs, loaded/unloaded at run-time.• Invoked via Manager- standard entry points.• No restriction on what the code does
• Can load and modify other DSOs.
• Known as DLLs in MS Windows.
ONR Gathering April 24, 2002
Classes...
Display:• Creates and manages classes related to hardware
pipes, windows and channels.• Creates multiple coordinate systems.• Calculates symmetric and asymmetric view
frusta.• Calculates stereo parallax.• Displays objects with correct physical
dimensions.
ONR Gathering April 24, 2002
Classes...
Nav - generalized navigation• Based on Augment class.• Application independent.• Parameters set each frame.• Usually time based, not frame based.• Load and switch between multiple navigations.
ONR Gathering April 24, 2002
DIVERSE library relationships:
ONR Gathering April 24, 2002
In summary, a DIVERSE program will run, unmodified:
• On a range of systems, from desktops to HMDs to CAVEs to simulators.
• With a variety of input devices, real or simulated, local or remote.
• With any number of navigation techniques.• With any other added functionality from run-time
loadable DSOs.
ONR Gathering April 24, 2002
Task 2.1b Year 3 & 4 Statement of Work revisited:
Item:• Create DGL, an OpenGL DIVERSE API for IRIX,
GNU/Linux, MS Windows.
Status:
• Beta version of DGL for GNU/Linux released. IRIX is next. MS Windows version of DGL awaiting MS Windows of DTK version.
ONR Gathering April 24, 2002
Task 2.1b Year 3 & 4 Statement of Work revisited:
Item:• Support OpenGL-based scenegraphs, such as
Open Inventor and OpenScenegraph, using DGL.
Status:
• Open Inventor works with beta version of DGL.
ONR Gathering April 24, 2002
Task 2.1b Year 3 & 4 Statement of Work revisited:
Item:• Create navigation tools and a GUI manager. Status:
• Navigation tools working with DPF. Need to be ported to DGL. GUI tools and manager working with DTK.
ONR Gathering April 24, 2002
Task 2.1b Year 3 & 4 Statement of Work revisited:
Item:• Expand on network extensions, including data
abstractions and security.Status:
• Queued messages part of most recent DTK.• General XML-based messaging being developed.• OpenSSL being investigated for security.
ONR Gathering April 24, 2002
Task 2.1b Year 3 & 4 Statement of Work revisited:
Item:• Integrate networked device tools. Status:
• PocketPC implemented as a DTK device.
ONR Gathering April 24, 2002
Task Conclusions:
Task 2.1b has:• Facilitated the Navy’s ability to create a scaleable,
reconfigurable tactical interface for littoral battle space ASW.
• Leveraged from, and contributed to, the capabilities of an open source VE and distributed simulation API.
ONR Gathering April 24, 2002
Who else uses DIVERSE?
Open source model means developments by one can be used by all:
• DIVERSE has generated an additional $200,000 in non-Navy funding, but Navy gets to use the work.
Open source license has allowed others to use DIVERSE at no cost:
• Universities and high schools, Governor's schools.• Research labs.
ONR Gathering April 24, 2002
Who else uses DIVERSE?
NUWC:• Undersea Weapon Design and Optimization.
NIST:• Visualization of complex data sets.• Haptic devices for probing data set densities.TASC:• Battlefield visualization GIS.Lockheed-Martin:• Tools for collaborative engineering.
ONR Gathering April 24, 2002
Contributions to the larger community
Technical workshops: VT (3), ODU, Penn State
Technical presentations:SGI, Penn State, NIST
Advanced degrees:Graduate thesis
ONR Gathering April 24, 2002
Contributions: papers and presentations:
• L. Arsenault, A. H. Nayfeh, J. Kelso, D. T. Mook, and R. D. Kriz, Crane and Ship Simulator, MURI Nonlinear Active Control of Dynamical Systems, Oct 16, 2000.
• L. Arsenault and J. Kelso, DIVERSE: An open-source VE software API, Keynote address, ONR Undersea Weapon Simulation Based Design Workshop,University of Maryland, College Park, MD, June 14, 2001.
• L. Arsenault, J. Kelso, R. Kriz, F. Das Neves, DIVERSE: a Software Toolkit to Integrate Distributed Simulations with Heterogeneous Virtual Environments, JAWS 2001, San Diego, CA, July 17, 2001.
• J. Kelso, L. Arsenault, S. Satterfield, R. Kriz, DIVERSE: A Framework for Building Extensible and Reconfigurable Device Independent Virtual Environments, VR2002, Orlando FL, March 28, 2002.
ONR Gathering April 24, 2002
Want to know more?
• Visit www.diverse.vt.edu• Contact the DIVERSE project at: [email protected]
• Attend our free workshop, May 20-21.
ONR Gathering April 24, 2002
www.diverse.vt.edu