Immersive training simulator prototype for the US Army using commercially available hardware and software.

C++Source EngineGameHardware



Game Distributed Interactive Simulation (GDIS) was developed for the US Army as a system for training soldiers using virtual missions. The goal was to use low-cost commercial video game engines instead of larger more expensive simulation software. GDIS is not specific to any particular video game engine and has "adapters" for the Source, Gambryo, CryEngine, and Unity 3D engines.

GDIS also has an immersion component called MMIST/VIKENG. This incorporated full-body motion capture and voice and gesture recognition using commercially available hardware.

There is a huge explanation of the features and use cases for GDIS on the website at


The team of programmers was very small, and during the course of my employment with Research Network, Inc. our team fluctuated between 2 and 5 programmers. I became responsible for managing the team, doing demonstrations for clients, as well as writing code.

The code that I primarily focused on was called SimBridge. SimBridge is a home-grown real-time message passing system where the non-visual heaving lifting takes place. The code is highly multi-threaded and incorporates TCP and UDP transport mechanisms as well as various extensibility hooks. SimBridge is responsible for managing hardware devices (such as motion capture equipment), voice and gesture recognition, network communication between the simulation and video game engines, as well as any other message passing between the various extensions. SimBridge is extensible via a C++ SDK as well as scriptable in a limited fashion using JavaScript.

I could go into great detail about GDIS, MMIST, and SimBridge but I don't want to bore you :) So if you're curious, ask me.