Table of Contents Previous Chapter Details Viewpoint Slideshow Next Chapter Details X3D Resources

X3D Example Archives: Basic, Distributed Interactive Simulation

DIS Gimbals Example with F18

The IEEE Distributed Interactive Simulation (DIS) networking-protocol standard can be used for synchronized virtual environments and Live, Virtual, Constructive (LVC) simulations. Ongoing development work and DIS details are maintained by the Simulation Interoperability Standards Organization (SISO) which includes the DIS Product Development Group (PDG).

X3D nodes that include DIS support are EspduTransform, DISEntityManager, DISEntityTypeMapping, ReceiverPdu, SignalPdu and TransmitterPdu.

A supporting DIS chapter slideset is available online via Related work includes X3D-Edit DIS Support as well as the Open-DIS software library, which provides open-source implementations of DIS in C++, C#, Java, Objective-C and JavaScript.

X3D Scenes Descriptions
Aries Espdu Prototype Prototype for a DIS enabled (including articulated parameters) for inclusion in a VRML Scene. Articulation parameters are in AUV Dynamics (AUV Workbench) order.
Automated Entity Geometry Creator Example scene for DISEntityManager and DISEntityTypeMapping, showing design pattern to detect presence of new DIS entities and automatically produce EspduTransform holding an Inline copy of the appropriate model.
Baseball Backspin MV4472 example demonstration of the effects of backspin on baseball trajectory, communicated via DIS ESPDUs.
Beach Tanks NPS beach-site old sewage treatment tanks. Dimensions (127, 20, 35) feet = (38.3, 6.1, 10.7) meters.
Cannon Project Physically Based Modeling project for MV-4472, showing a projectile motion model that takes into account drag, changing air densities with altitude, and wind.
Coordinate Axes X3D DIS X Y Z axis arrows and labels in X3D and DIS coordinate systems. See CoordinateAxesExample for use as an Inline coordinate-system reference frame.
Coordinate Axes X3D DISGeo Loc X Y Z axis arrows and labels in X3D, DIS and GeoLocation coordinate systems. See CoordinateAxesExample for use as an Inline coordinate-system reference frame.
DISEntity Prototypes Prototype definitions for DISEntityManager and DISEntityTypeMapping.
Espdu Transform Example This is the simplest example on how to add DIS networking to a VRML/X3D scene.
Espdu Transform Prototypes Prototype definition for EspduTransform which handles network communications for multiple DIS Prototype Data Units (PDUs): EntityState, Collision, Detonate, Fire, CreateEntity and RemoveEntity. Also contains EspduTransformTrace which compatibly adds billboarded text-trace capabilities for run-time debugging inside a scene.
Espdu Transform Sender Receiver Example DIS communications: sending and receiving data via EspduTransform nodes.
Extern Proto Declare Definitions These developmental definitions provide ExternProtoDeclare examples for supported DIS PDUs. They are developmental and not needed for regular DIS usage, since they provide template outputs for the X3dToVrml97.xsl translation stylesheet. To do: add more appinfo descriptions for fields.
Gimbals Gimbals for user-driven roll pitch and yaw angle conversions, also shows conversion from X3D (VRML) to DIS coordinate system. Model inspiration by Bob McGhee.
Networked Camera Networked control of master/slave viewpoints using DIS EspduTransform node.
Radio Communications Observer Show how to reference ReceiverPdu SignalPdu and TransmitterPdu for radio communications
Radio Communications Prototypes Prototype definitions for ReceiverPdu SignalPdu and TransmitterPdu, all of which share share RadioCommunicationsPduScriptNode class
Test Box Espdu A simple EspduTransform test to move a Box.
Test Cube Provides a cube-shaped test model with each side face individually labeled.
Test Cube Espdu DIS-enabled test shape for DIS ESPDU test panel.
Test Images Verify renderability of png image textures using a Box.
User Scripted Entity Geometry Creator Example scene for DISEntityManager, setting up a Script to process new arrivals

Online at

Master source code archive is under subversion control at

Table of Contents Previous Chapter Details Viewpoint Slideshow Next Chapter Details X3D Resources

Also available: current and archived nightly builds and distributions of these examples, all published under an Open-Source License.

The X3D Resources: Examples page and Savage Developers Guide provide more information about the production of this archive.