Title: UTSAF: A Simulation Bridge between OneSAF and the Unreal Game Engine
1UTSAF A Simulation Bridge between OneSAF and the
Unreal Game Engine
- J. Manojlovich, P. Prasithsangaree, J. Chen, and
M. Lewis
This project is supported by AFOSR contract
F49640-01-1-0542.
2Agenda
- Introduction and Motivation
- Some Background
- Challenges in Bridging Distributed Simulation
- Our Proposed UTSAF Architecture
- Snapshots from our testbed
- Conclusions
3Background
- Modular Semi-Automated Force (ModSAF) and OneSAF
- SIMNET, DIS and PDU
- Unreal Tournament (UT) Game Engine
- RETSINA
4ModSAF
- Military simulation environment
- Provide a platform within which all services
(Army, Air Force, Navy, etc.) could expand the
synthetic battle space - Provide an architecture to support a community of
SAF developers who would expand the battle space
through the integration of individual code
modules
5(No Transcript)
6ModSAF Communication
- IP multicast
- ModSAF uses the Distributed Interactive
Simulation protocol (DIS, IEEE1278 1993). - Protocol Data Unit is basic packet of information
- There are roughly 100 different classes of PDU,
but generally only the Entity State PDU is
interesting for simulation purposes
7Distributed Interactive Simulation
- The purpose of DIS is to create and maintain an
interactive virtual environment for the following
purposes - Training
- Replace and supplement field training
- Testing
- Planning
- Standard for communicating a ground truth
database among hosts
8Distributed Interactive Simulation (cont.)
- Basic unit of DIS is the entity
- These are typically vehicles in the simulation,
such as tanks, trucks, aircraft, or missiles - DIS also specifies how to transmit terrain
information, and electromagnetic emissions like
radio and radar
9What is Unreal Tournament?
- UT is a multiplayer video game
- Produced by Epic games (http//www.epicgames.com)
- Runs on Windows, Linux, Macintosh, PlayStation,
and Xbox - http//www.unrealtournament2003.com
10(No Transcript)
11Why Use UT?
- By using UT as a base, we can avoid needless
reinventing while benefiting from a proven
development platform - UT is designed for programming, and many tools
and resources are available to assist outside
developers - UT runs well on commodity hardware and software,
such as Windows and Linux
12Why Use UT? (cont.)
- UT has numerous user interface enhancements over
ModSAF - Three dimensional, instead of two
- Ability to attach view to entity
- Much easier to dynamically change the field of
view in UT - Can use other projects that are built on UT
13Problems
- When the virtual simulators are not exactly the
same, it gets harder to pass entity information
between these simulators - UT was not designed for full external control, so
the built-in functionality must be overridden
many times
14Attribute Transfer Between Virtual Domains
- What is absolutely necessary?
- Entity identification
- Position in virtual world
- Coordinate systems
- What else is useful?
- Entity velocity, appearance, orientation
15Entity Conversion
- Naturally one would like to know what each object
looks like in the original virtual environment,
so that the corresponding objects in the other
environment resemble them - Appearance includes such things like color and
texture
16Entity Conversion (cont.)
- ModSAF does not have 3D models for the entities
in the simulations - For UTSAF, we had to both acquire from public
sources, and create from scratch, our 3D models - 3D Studio Max
- Milkshape3D
17Terrain Conversion
- Once you have the entities moved into the other
simulator, you naturally want the static portions
of the simulation as well - Walls, floors, ground, sky
- Two approaches
- Convert what's in the original simulation
- Create new terrains from scratch, hand tune to
look like original simulation
18Terrain Conversion (cont.)
- We chose to convert the ModSAF terrains directly
to the Unreal format - Multi-step conversion pipeline
- ModSAF ? OpenFlight ? 3D Studio ? Unreal
- TerraVista DART
- NuGraf
- 3ds2unr
- Unreal levels are restricted in size, so ModSAF
terrains are converted piecemeal
19UTSAF Testbed
CAVE Theater
OneSAF Testbed DIS Network
RETSINA Agents and Server
Unreal Game Engine and Gamebots
20RETSINA Agent Architecture
- Reusable Environment for Task-Structured
Intelligent Networked Agents - http//www.cs.cmu.edu/softagents
- Multi-agent system (MAS) that supports
communities of heterogeneous agents - Implements distributed infrastructural services
that facilitate the interactions between agents,
as opposed to managing them
21RETSINA in Multi-Agent Environments
22Why use Agents?
- Weve found agents to be effective glue for
tying together disparate proprietary software
that cannot be linked by conventional means - Allows for loose coupling of different pieces of
software, and sharing of information among
software that normally cannot do so
23Problems with Agents
- Communication lag
- Network lag
- Operating system latency
- Architecture complexity
- The more components in a system the more
susceptible it is to failure - Agent programming being more loosely coupled than
other types, is more immune to this type of
failure however
24Unreal Tournament Agents
- The most important of the remaining agents are
the ones that talk to UT - Since this currently is a one way street, these
are not referred to as brokers, but they will
eventually become them - These agents listen for the DIS information from
the broker, and pass the updated entity
information to UT
25Gamebots Network Extension
Network
Gamebots Server
Gamebots Client
Port 1
Gamebots Module
Port 2
Gamebots Client
. . .
Port n
Unreal Tournament Server
Gamebots Client
Gamebots is an extension module for the Unreal
Tournament multiplayer video game, that allows
easy control of players in the game from external
software, using simple TCP/IP commands.
26Gamebots Shot
27UTSAF Architecture
28SAF Broker Agent
29Gamebots Agent
30A BioChem Depot in ModSAF
31A BioChem Depot in UTSAF
32A Typical UTSAF Screenshot
33Communication Lag
- There is a tremendous amount of packets that come
out of ModSAF - If the broker cannot keep up with the traffic, a
gap in communication will develop between what
ModSAF is sending, and what the broker is telling
the UT agents
34User Disorientation
- When ModSAF environments are large, people can
easily get lost and disoriented - Common problem Where is north?
- There is a need for a world-centered frame of
reference of the entire virtual environment - An overall map, for example
35Future Work
- We are currently investigating the effects of
network packet filtering - Preliminary results suggest that filtering out
even 80 of incoming packets has little
noticeable effect on the simulation - We are working to expand the size of ModSAF
terrain represented - Our major focus for UTSAF currently is to
represent uninhabited aerial vehicles (UAVs) in
realistic 3D