Table of Contents Previous Chapter Summary Chapter Viewpoint Slideshow Javadoc for translated java source Next Chapter Summary X3D Resources

X3D Example Archives: Basic, Distributed Interactive Simulation

DIS Gimbals Example with F18

Distributed Interactive Simulation (DIS) is an IEEE standard for conducting real-time platform-level gaming across multiple host computers and is used worldwide, especially by military organizations but also by other agencies such as those involved in space exploration and medicine.

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.

  21 X3D Scenes       Scene Descriptions
AriesEspduPrototype 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.
AutomatedEntityGeometryCreator 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.
BaseballBackspin Baseball Backspin MV4472 example demonstration of the effects of backspin on baseball trajectory, communicated via DIS ESPDUs.
BeachTanks Beach Tanks NPS beach-site old sewage treatment tanks. Dimensions (127, 20, 35) feet = (38.3, 6.1, 10.7) meters.
CannonProject 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.
CoordinateAxesX3dDIS 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.
CoordinateAxesX3dDISGeoLoc 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.
DISEntityPrototypes DISEntity Prototypes Prototype definitions for DISEntityManager and DISEntityTypeMapping.
EspduTransformExample Espdu Transform Example This is the simplest example on how to add DIS networking to a VRML/X3D scene.
EspduTransformPrototypes 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.
EspduTransformSenderReceiver Espdu Transform Sender Receiver Example DIS communications: sending and receiving data via EspduTransform nodes.
ExternProtoDeclareDefinitions 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 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.
NetworkedCamera Networked Camera Networked control of master/slave viewpoints using DIS EspduTransform node.
RadioCommunicationsObserver Radio Communications Observer Show how to reference ReceiverPdu SignalPdu and TransmitterPdu for radio communications
RadioCommunicationsPrototypes Radio Communications Prototypes Prototype definitions for ReceiverPdu SignalPdu and TransmitterPdu, all of which share share RadioCommunicationsPduScriptNode class
TestBoxEspdu Test Box Espdu A simple EspduTransform test to move a Box.
TestCube Test Cube Provides a cube-shaped test model with each side face individually labeled.
TestCubeEspdu Test Cube Espdu DIS-enabled test shape for DIS ESPDU test panel.
TestImages Test Images Verify renderability of png image textures using a Box.
UserScriptedEntityGeometryCreator User Scripted Entity Geometry Creator Example scene for DISEntityManager, setting up a Script to process new arrivals

Online at

Validate XHTML 1.1

Master source-code model archive is under subversion control at

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

Table of Contents Previous Chapter Summary Chapter Viewpoint Slideshow Javadoc for translated java source Next Chapter Summary X3D Resources