|
|
OpenSkies
Architecture
OpenSkies
is a simulation system designed with a modular architecture. This
means that any of its components can be replaced with custom versions
to achieve the desired functionality. This is only one of the key
technologies in the OpenSkies architecture, however.

- Realistic
Terrain and Environment
- OpenSkies provides an accurate virtual representation of the
real world including terrain and landmarks extracted from real
geological and cartographic databases. Cultural features and details
such as urban areas, forests, and roads are represented graphically
in 3D. Using OpenSkies environment tools, you can also create
your own custom worlds to suit your specific needs. Want to fly
over the Grand Canyon? Grab the publicly available data from the
US Geological Survey's web site, run it through our loader, and
voila, the Grand Canyon is imported into OpenSkies, complete with
accurate roads and terrain types. OpenSkies can even import your
favorite SCASM format airports! As you fly over the different
terrain, you can call up the moving map display to show your current
location plotted on a scanned map as well. You can define weather
cells and cloud layers to further tailor your simulation experience.
- Multi-User
Networking
- Networking is an essential part of OpenSkies as well. As a truly
distributed simulation system, each of the connected PCs runs
a separate piece of the simulation. This system takes advantage
of the latest advance in military simulation networking, the High
Level Architecture (HLA). This standard networking system was
developed to foster interoperability between simulations. Using
the HLA standard, a flight simulator can participate with different
types of simulators, such as attacking ground vehicles or even
landing on aircraft carriers. This interoperability leads to unprecedented
capabilities for constructing simulations from custom pieces.
- Scenario
Editing and Recording
- OpenSkies also includes a scenario scripting capability suitable
for designing and executing specific missions. Mission recording
and playback is also included to allow post-exercise evaluation
and review.
- SEDRIS
- SEDRIS
is a data interchange mechanism designed to facilitate the interchange
of synthetic environments between simulators. For example, say
a tank simulator needs to participate in a simulation with an
aircraft simulator. For a fair fight, these simulators need to
agree on a common representation of the playing field. If there
is no "ground truth", then the terrain and objects may end up
in slightly different places for each simulator. This leads to
problems when the tank driver thinks he is hiding inside a building,
but the aircraft pilot sees the building in a slightly different
location which may not be providing the concealment that the tank
driver assumes. If the aircraft pilot can see the tank when the
tank driver thinks he in inside a building, there will be a problem.
SEDRIS addresses this problem by providing a lossless data interchange
mechanism defining a data model with standard access methods (API).
Using this API, different simulations can use a common environment
database and extract the data into whatever format they need.
The tank simulation can extract the data into its own proprietary
format and the aircraft simulator can do the same. Because SEDRIS
is a lossless interchange mechanism, the data will remain accurate
for both simulator formats. Since both simulators extracted the
data from the same "ground truth" database, the buildings and
objects will be represented consistently in both simulators, allowing
a fair fight. OpenSkies supports the SEDRIS API to make our environments
available to other applications. By supporting this standard interchange
mechanism, we are further opening the doors of expandability.
- Object
and Vehicle Creation
- The OpenSkies software is designed to be as open as possible,
and can be modified by users with varying levels of programming
ability. With no programming experience, general users will still
be able to create fully functional land, sea, and air vehicles
by using their favorite VRML authoring tool and OpenSkies' pre-built
vehicle models. The advanced programmer can write additional code
modules and easily create custom objects for OpenSkies using the
full functionality of OpenGL and C/C++.
We
used this system to develop simulations of a T-34 Mentor single
engine aircraft and a TH-57 Bell Ranger helicopter. We developed
these modules under government contract for use in training
US Naval aviators and provide the OpenSkies aircraft modules
to the public to enjoy and use in developing other simulations.
The collection of modules that comprise these aircraft include
graphical models written in OpenGL, parameterized flight models,
panel models using real photography, and force feedback based
on the flight model rather than canned special effects.
To
populate the environment, OpenSkies supports the creation of
custom dynamically loaded libraries (DLLs) that describe behavior
and appearance of all sim objects. This gives the user the power
to create anything from a spinning windmill to an artificial
intelligence entity flying in a holding pattern. The possibilities
are endless when the graphics are based on OpenGL and the behavior
code is specified in C++. Non-programming users can easily add
custom simulation modules developed by others in the community
and posted to the OpenSkies site, supporting a growing base
of content.
|