chapter two - the origin of networked virtual environments department of defense networked virtual...

91
Chapter Two - The Origin of Networked Virtual Environments Department of Defense Department of Defense Networked Virtual Networked Virtual Environments 20 Environments 20 SIMNET 20 SIMNET 20 Distributed Distributed Interactive Simulation Interactive Simulation 26 26 Networked Games and Demos Networked Games and Demos 34 34 SGI Flight and SGI Flight and Dogfight 34 Dogfight 34 Doom 35 Doom 35 Other Games 36 Other Games 36

Upload: geoffrey-williamson

Post on 18-Dec-2015

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Chapter Two - The Origin of Networked Virtual Environments

Department of Defense Department of Defense Networked Virtual Networked Virtual Environments 20Environments 20

• SIMNET 20SIMNET 20

• Distributed Interactive Distributed Interactive Simulation 26Simulation 26

Department of Defense Department of Defense Networked Virtual Networked Virtual Environments 20Environments 20

• SIMNET 20SIMNET 20

• Distributed Interactive Distributed Interactive Simulation 26Simulation 26

Networked Games and Networked Games and Demos 34Demos 34

• SGI Flight and Dogfight 34SGI Flight and Dogfight 34

• Doom 35Doom 35

• Other Games 36Other Games 36

Networked Games and Networked Games and Demos 34Demos 34

• SGI Flight and Dogfight 34SGI Flight and Dogfight 34

• Doom 35Doom 35

• Other Games 36Other Games 36

Page 2: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Chapter Two - The Origin of Networked Virtual Environments

Academic Networked Academic Networked Virtual Environments 37Virtual Environments 37

• NPSNET 37NPSNET 37

• PARADISE 42 PARADISE 42

• DIVE 44DIVE 44

• BrickNet 46BrickNet 46

• MR Toolkit Peer Package MR Toolkit Peer Package 4848

• Others 49Others 49

Academic Networked Academic Networked Virtual Environments 37Virtual Environments 37

• NPSNET 37NPSNET 37

• PARADISE 42 PARADISE 42

• DIVE 44DIVE 44

• BrickNet 46BrickNet 46

• MR Toolkit Peer Package MR Toolkit Peer Package 4848

• Others 49Others 49

Conclusion 49Conclusion 49

References 50References 50

Conclusion 49Conclusion 49

References 50References 50

Page 3: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Department of Defense Networked Virtual Environments

Page 4: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETSIMNET (simulator networking) is a distributed SIMNET (simulator networking) is a distributed military virtual environment originally developed military virtual environment originally developed for DARPA by Bolt, Beranek and Newman (BBN), for DARPA by Bolt, Beranek and Newman (BBN), Perceptronics, and Delta Graphics. Perceptronics, and Delta Graphics.

SIMNET was begun in 1983 and delivered to the SIMNET was begun in 1983 and delivered to the U.S. Army at the end of March 1990. U.S. Army at the end of March 1990.

SIMNET (simulator networking) is a distributed SIMNET (simulator networking) is a distributed military virtual environment originally developed military virtual environment originally developed for DARPA by Bolt, Beranek and Newman (BBN), for DARPA by Bolt, Beranek and Newman (BBN), Perceptronics, and Delta Graphics. Perceptronics, and Delta Graphics.

SIMNET was begun in 1983 and delivered to the SIMNET was begun in 1983 and delivered to the U.S. Army at the end of March 1990. U.S. Army at the end of March 1990.

Page 5: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETThe goal of the The goal of the SIMNET project SIMNET project was to develop a was to develop a “low-cost” “low-cost” networked virtual networked virtual environment for environment for training small training small units to fight as a units to fight as a team. team.

The goal of the The goal of the SIMNET project SIMNET project was to develop a was to develop a “low-cost” “low-cost” networked virtual networked virtual environment for environment for training small training small units to fight as a units to fight as a team. team.

Page 6: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETThe key technical challenges for the SIMNET The key technical challenges for the SIMNET project were project were

• How to fabricate high quality, low-cost simulators How to fabricate high quality, low-cost simulators and and

• How to network them together to create a How to network them together to create a consistent, virtual battlefield.consistent, virtual battlefield.

• To carry out the study of these technical To carry out the study of these technical challenges, the SIMNET project created an eleven challenges, the SIMNET project created an eleven site testbed with from 50 to 100 simulators at site testbed with from 50 to 100 simulators at each site.each site.

The key technical challenges for the SIMNET The key technical challenges for the SIMNET project were project were

• How to fabricate high quality, low-cost simulators How to fabricate high quality, low-cost simulators and and

• How to network them together to create a How to network them together to create a consistent, virtual battlefield.consistent, virtual battlefield.

• To carry out the study of these technical To carry out the study of these technical challenges, the SIMNET project created an eleven challenges, the SIMNET project created an eleven site testbed with from 50 to 100 simulators at site testbed with from 50 to 100 simulators at each site.each site.

Page 7: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNET• SIMNET could be entered from anywhere on the SIMNET could be entered from anywhere on the

network using a simulator as the portal into the network using a simulator as the portal into the synthetic environment. Once that synthetic synthetic environment. Once that synthetic environment was entered, the “player” could interact environment was entered, the “player” could interact with others who were also online in the synthetic with others who were also online in the synthetic battlefield. battlefield.

• Play in that synthetic environment was unscripted, Play in that synthetic environment was unscripted, basically free-play, done within the confines of basically free-play, done within the confines of whatever chain of command was imposed on the whatever chain of command was imposed on the simulation participants. simulation participants.

• SIMNET could be entered from anywhere on the SIMNET could be entered from anywhere on the network using a simulator as the portal into the network using a simulator as the portal into the synthetic environment. Once that synthetic synthetic environment. Once that synthetic environment was entered, the “player” could interact environment was entered, the “player” could interact with others who were also online in the synthetic with others who were also online in the synthetic battlefield. battlefield.

• Play in that synthetic environment was unscripted, Play in that synthetic environment was unscripted, basically free-play, done within the confines of basically free-play, done within the confines of whatever chain of command was imposed on the whatever chain of command was imposed on the simulation participants. simulation participants.

Page 8: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNET Architecture

Computer Image Generation Software

Other-Vehicle State Table

Network Interface Software

Sound Generation Software

Own-Vehicle Dynamics

Control and Interface Software

Local area network

Page 9: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETThe SIMNET network software architecture has The SIMNET network software architecture has three basic components: three basic components:

• An object-event architecture, An object-event architecture,

• A notion of autonomous simulation nodes, and A notion of autonomous simulation nodes, and

• An embedded set of predictive modeling An embedded set of predictive modeling algorithms called “dead reckoning” algorithms called “dead reckoning”

The SIMNET network software architecture has The SIMNET network software architecture has three basic components: three basic components:

• An object-event architecture, An object-event architecture,

• A notion of autonomous simulation nodes, and A notion of autonomous simulation nodes, and

• An embedded set of predictive modeling An embedded set of predictive modeling algorithms called “dead reckoning” algorithms called “dead reckoning”

Page 10: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETThe SIMNET object-event architecture modeled The SIMNET object-event architecture modeled the world as a collection of objects whose the world as a collection of objects whose interactions with each other are just a interactions with each other are just a collection of events. collection of events.

• Objects are the vehicles and weapons systems Objects are the vehicles and weapons systems that can interact across the network. that can interact across the network.

• Events in SIMNET are messages to the network Events in SIMNET are messages to the network indicating a change in world or object state.indicating a change in world or object state.

The SIMNET object-event architecture modeled The SIMNET object-event architecture modeled the world as a collection of objects whose the world as a collection of objects whose interactions with each other are just a interactions with each other are just a collection of events. collection of events.

• Objects are the vehicles and weapons systems Objects are the vehicles and weapons systems that can interact across the network. that can interact across the network.

• Events in SIMNET are messages to the network Events in SIMNET are messages to the network indicating a change in world or object state.indicating a change in world or object state.

Page 11: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNET• In SIMNET, the notion of autonomous simulation nodes In SIMNET, the notion of autonomous simulation nodes

means that individual players (vehicles and weapons means that individual players (vehicles and weapons systems) on the network are responsible for placing systems) on the network are responsible for placing messages, or packets, onto the network to accurately messages, or packets, onto the network to accurately represent their current state. represent their current state.

• Packet recipients are responsible for receiving such Packet recipients are responsible for receiving such state change information and making the appropriate state change information and making the appropriate changes to their local model of the world. changes to their local model of the world.

• In SIMNET, the notion of autonomous simulation nodes In SIMNET, the notion of autonomous simulation nodes means that individual players (vehicles and weapons means that individual players (vehicles and weapons systems) on the network are responsible for placing systems) on the network are responsible for placing messages, or packets, onto the network to accurately messages, or packets, onto the network to accurately represent their current state. represent their current state.

• Packet recipients are responsible for receiving such Packet recipients are responsible for receiving such state change information and making the appropriate state change information and making the appropriate changes to their local model of the world. changes to their local model of the world.

Page 12: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETThis lack of a central server means that single This lack of a central server means that single point failures in the system do not take the point failures in the system do not take the entire simulation down. entire simulation down.

Additionally, it allows players to join and leave Additionally, it allows players to join and leave the simulation at any time.the simulation at any time.

This lack of a central server means that single This lack of a central server means that single point failures in the system do not take the point failures in the system do not take the entire simulation down. entire simulation down.

Additionally, it allows players to join and leave Additionally, it allows players to join and leave the simulation at any time.the simulation at any time.

Page 13: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNET• Placing changes in state on the network means that a Placing changes in state on the network means that a

node must place packets onto the network whenever node must place packets onto the network whenever its objects have changed enough so that the other its objects have changed enough so that the other players should be made cognizant of the changes. players should be made cognizant of the changes.

• Placing current state onto the network also means that Placing current state onto the network also means that a node must provide a regular “heartbeat” message, a node must provide a regular “heartbeat” message, usually every 5 seconds, to keep other players usually every 5 seconds, to keep other players informed that a particular object is alive and still in the informed that a particular object is alive and still in the system (and hence should be displayed).system (and hence should be displayed).

• Placing changes in state on the network means that a Placing changes in state on the network means that a node must place packets onto the network whenever node must place packets onto the network whenever its objects have changed enough so that the other its objects have changed enough so that the other players should be made cognizant of the changes. players should be made cognizant of the changes.

• Placing current state onto the network also means that Placing current state onto the network also means that a node must provide a regular “heartbeat” message, a node must provide a regular “heartbeat” message, usually every 5 seconds, to keep other players usually every 5 seconds, to keep other players informed that a particular object is alive and still in the informed that a particular object is alive and still in the system (and hence should be displayed).system (and hence should be displayed).

Page 14: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETDead-ReckoningDead-Reckoning

• To reduce packet traffic in SIMNET, the objects To reduce packet traffic in SIMNET, the objects and ghosts paradigm was created. The idea and ghosts paradigm was created. The idea behind this paradigm is that objects only place behind this paradigm is that objects only place packets onto the network when their home node packets onto the network when their home node determines that the other nodes on the network determines that the other nodes on the network are no longer able to predict their state within a are no longer able to predict their state within a certain threshold amount. certain threshold amount.

Dead-ReckoningDead-Reckoning

• To reduce packet traffic in SIMNET, the objects To reduce packet traffic in SIMNET, the objects and ghosts paradigm was created. The idea and ghosts paradigm was created. The idea behind this paradigm is that objects only place behind this paradigm is that objects only place packets onto the network when their home node packets onto the network when their home node determines that the other nodes on the network determines that the other nodes on the network are no longer able to predict their state within a are no longer able to predict their state within a certain threshold amount. certain threshold amount.

Page 15: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNETDead-Reckoning continuedDead-Reckoning continued

• This paradigm assumes that the other nodes in This paradigm assumes that the other nodes in the system are maintaining “ghost” copies of the the system are maintaining “ghost” copies of the object in their memories and that the last object in their memories and that the last reported direction, velocity, and position are reported direction, velocity, and position are sufficient to predict, within the threshold amount, sufficient to predict, within the threshold amount, where that entity is now.where that entity is now.

Dead-Reckoning continuedDead-Reckoning continued

• This paradigm assumes that the other nodes in This paradigm assumes that the other nodes in the system are maintaining “ghost” copies of the the system are maintaining “ghost” copies of the object in their memories and that the last object in their memories and that the last reported direction, velocity, and position are reported direction, velocity, and position are sufficient to predict, within the threshold amount, sufficient to predict, within the threshold amount, where that entity is now.where that entity is now.

Page 16: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SIMNET Scalability• The SIMNET network software architecture proved The SIMNET network software architecture proved

scalable with an exercise in March of 1990 having scalable with an exercise in March of 1990 having some 850 objects at five sites, with most of those some 850 objects at five sites, with most of those objects being semi-automated forces.objects being semi-automated forces.

• Objects in that test averaged one packet per Objects in that test averaged one packet per second, with each packet being some 156 bytes second, with each packet being some 156 bytes in size for a peak requirement of 1.06 in size for a peak requirement of 1.06 Mbits/second, just under the T-1 speed of the Mbits/second, just under the T-1 speed of the connecting links.connecting links.

• The SIMNET network software architecture proved The SIMNET network software architecture proved scalable with an exercise in March of 1990 having scalable with an exercise in March of 1990 having some 850 objects at five sites, with most of those some 850 objects at five sites, with most of those objects being semi-automated forces.objects being semi-automated forces.

• Objects in that test averaged one packet per Objects in that test averaged one packet per second, with each packet being some 156 bytes second, with each packet being some 156 bytes in size for a peak requirement of 1.06 in size for a peak requirement of 1.06 Mbits/second, just under the T-1 speed of the Mbits/second, just under the T-1 speed of the connecting links.connecting links.

Page 17: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• The DIS network software architecture is a direct The DIS network software architecture is a direct

descendent from SIMNET but has packets that are more descendent from SIMNET but has packets that are more general than SIMNET’s. general than SIMNET’s.

• DIS has the same three basic componentsDIS has the same three basic components

– an object-event architecturean object-event architecture

– notion of fully distributed simulation nodesnotion of fully distributed simulation nodes

– embedded set of predictive modeling algorithms for embedded set of predictive modeling algorithms for “dead reckoning”“dead reckoning”

• The DIS network software architecture is a direct The DIS network software architecture is a direct descendent from SIMNET but has packets that are more descendent from SIMNET but has packets that are more general than SIMNET’s. general than SIMNET’s.

• DIS has the same three basic componentsDIS has the same three basic components

– an object-event architecturean object-event architecture

– notion of fully distributed simulation nodesnotion of fully distributed simulation nodes

– embedded set of predictive modeling algorithms for embedded set of predictive modeling algorithms for “dead reckoning”“dead reckoning”

Page 18: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• The core of the DIS network software architecture The core of the DIS network software architecture

is the protocol data unit (PDU). is the protocol data unit (PDU).

• Determining when each vehicle (node) of the Determining when each vehicle (node) of the simulation should issue a PDU is the key to this simulation should issue a PDU is the key to this architecture. architecture.

• The core of the DIS network software architecture The core of the DIS network software architecture is the protocol data unit (PDU). is the protocol data unit (PDU).

• Determining when each vehicle (node) of the Determining when each vehicle (node) of the simulation should issue a PDU is the key to this simulation should issue a PDU is the key to this architecture. architecture.

Page 19: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• The DIS (IEEE 1278) standard defines 27 different PDUs, The DIS (IEEE 1278) standard defines 27 different PDUs,

only four of which (Entity State, Fire, Detonation, and only four of which (Entity State, Fire, Detonation, and Collision) are used by nodes to interact with the virtual Collision) are used by nodes to interact with the virtual environment. environment.

• In fact, most DIS-compliant simulations only implement In fact, most DIS-compliant simulations only implement those four PDUs, either throwing away the other 23 PDUs those four PDUs, either throwing away the other 23 PDUs without comment or issuing a brief error message indicating without comment or issuing a brief error message indicating a non-supported PDU was received.a non-supported PDU was received.

• The DIS (IEEE 1278) standard defines 27 different PDUs, The DIS (IEEE 1278) standard defines 27 different PDUs, only four of which (Entity State, Fire, Detonation, and only four of which (Entity State, Fire, Detonation, and Collision) are used by nodes to interact with the virtual Collision) are used by nodes to interact with the virtual environment. environment.

• In fact, most DIS-compliant simulations only implement In fact, most DIS-compliant simulations only implement those four PDUs, either throwing away the other 23 PDUs those four PDUs, either throwing away the other 23 PDUs without comment or issuing a brief error message indicating without comment or issuing a brief error message indicating a non-supported PDU was received.a non-supported PDU was received.

Page 20: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• A demonstration at the 1993 Interservice/Industry A demonstration at the 1993 Interservice/Industry

Training and Education Conference (I/ITSEC) Training and Education Conference (I/ITSEC) showed that Entity State PDUs comprised 96% of showed that Entity State PDUs comprised 96% of the total DIS trafficthe total DIS traffic

• Remaining 4% distributed mainly amongst Remaining 4% distributed mainly amongst Transmitter (50%), Emission (39%), Fire (4%), and Transmitter (50%), Emission (39%), Fire (4%), and Detonation (4%). Detonation (4%).

• A demonstration at the 1993 Interservice/Industry A demonstration at the 1993 Interservice/Industry Training and Education Conference (I/ITSEC) Training and Education Conference (I/ITSEC) showed that Entity State PDUs comprised 96% of showed that Entity State PDUs comprised 96% of the total DIS trafficthe total DIS traffic

• Remaining 4% distributed mainly amongst Remaining 4% distributed mainly amongst Transmitter (50%), Emission (39%), Fire (4%), and Transmitter (50%), Emission (39%), Fire (4%), and Detonation (4%). Detonation (4%).

Page 21: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• The simulation contained 79 players sending PDUs, though The simulation contained 79 players sending PDUs, though

the actual mix of vehicles involved in this exercise is not the actual mix of vehicles involved in this exercise is not available. available.

• Air vehicles issued one ESPDU/second average in that Air vehicles issued one ESPDU/second average in that demonstration, with land vehicles averaging 0.17 demonstration, with land vehicles averaging 0.17 ESPDUs/second. Some participants in that demonstration ESPDUs/second. Some participants in that demonstration issued packets at frame rate, and some produced 20 issued packets at frame rate, and some produced 20 ESPDUs/second ESPDUs/second

• The simulation contained 79 players sending PDUs, though The simulation contained 79 players sending PDUs, though the actual mix of vehicles involved in this exercise is not the actual mix of vehicles involved in this exercise is not available. available.

• Air vehicles issued one ESPDU/second average in that Air vehicles issued one ESPDU/second average in that demonstration, with land vehicles averaging 0.17 demonstration, with land vehicles averaging 0.17 ESPDUs/second. Some participants in that demonstration ESPDUs/second. Some participants in that demonstration issued packets at frame rate, and some produced 20 issued packets at frame rate, and some produced 20 ESPDUs/second ESPDUs/second

Page 22: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• In DIS, we get more of a notion that any type of In DIS, we get more of a notion that any type of

computer plugged into the network that computer plugged into the network that reads/writes DIS PDUs and manages the state of reads/writes DIS PDUs and manages the state of those PDUs properly can fully participate in a DIS those PDUs properly can fully participate in a DIS environment.environment.

• This fully distributed, heterogeneous network This fully distributed, heterogeneous network software architecture means that workstation software architecture means that workstation class machines can play against PC class class machines can play against PC class machines. machines.

• In DIS, we get more of a notion that any type of In DIS, we get more of a notion that any type of computer plugged into the network that computer plugged into the network that reads/writes DIS PDUs and manages the state of reads/writes DIS PDUs and manages the state of those PDUs properly can fully participate in a DIS those PDUs properly can fully participate in a DIS environment.environment.

• This fully distributed, heterogeneous network This fully distributed, heterogeneous network software architecture means that workstation software architecture means that workstation class machines can play against PC class class machines can play against PC class machines. machines.

Page 23: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Distributed Interactive Simulation (DIS)• Additionally, it means that the environment can Additionally, it means that the environment can

include virtual players (driven by a live human at include virtual players (driven by a live human at a computer console of some sort), constructive a computer console of some sort), constructive players (computer-driven players), and live players (computer-driven players), and live players (actual weapons systems plugged into the players (actual weapons systems plugged into the DIS network).DIS network).

• Additionally, it means that the environment can Additionally, it means that the environment can include virtual players (driven by a live human at include virtual players (driven by a live human at a computer console of some sort), constructive a computer console of some sort), constructive players (computer-driven players), and live players (computer-driven players), and live players (actual weapons systems plugged into the players (actual weapons systems plugged into the DIS network).DIS network).

Page 24: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

DIS Scalability• There are several instances of fairly large DIS There are several instances of fairly large DIS

engagements, much larger than the 300 to 500 engagements, much larger than the 300 to 500 players for which DIS is designed. players for which DIS is designed.

• However, these “DIS” engagements actually However, these “DIS” engagements actually modify the DIS network software architecture for modify the DIS network software architecture for their particular circumstances to achieve useful their particular circumstances to achieve useful demonstrations. demonstrations.

• There are several instances of fairly large DIS There are several instances of fairly large DIS engagements, much larger than the 300 to 500 engagements, much larger than the 300 to 500 players for which DIS is designed. players for which DIS is designed.

• However, these “DIS” engagements actually However, these “DIS” engagements actually modify the DIS network software architecture for modify the DIS network software architecture for their particular circumstances to achieve useful their particular circumstances to achieve useful demonstrations. demonstrations.

Page 25: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

A DIS Networked VE - CCTT• The US Army's The US Army's

Close Combat Close Combat Tactical Trainer Tactical Trainer (CCTT) is one of (CCTT) is one of the larger scale the larger scale networked networked virtual virtual environments. environments.

• The US Army's The US Army's Close Combat Close Combat Tactical Trainer Tactical Trainer (CCTT) is one of (CCTT) is one of the larger scale the larger scale networked networked virtual virtual environments. environments.

Page 26: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Games & Demos

Page 27: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SGI Flight & Dogfight• Gary Tarolli of Silicon Graphics, Inc. is probably the person Gary Tarolli of Silicon Graphics, Inc. is probably the person

that most in the networked virtual environment community that most in the networked virtual environment community would credit as the originator of their thoughts on would credit as the originator of their thoughts on networking virtual environments. networking virtual environments.

• Gary was the original programmer of the Silicon Graphics Gary was the original programmer of the Silicon Graphics demo program, Flight, in the summer of 1983. Flight is the demo program, Flight, in the summer of 1983. Flight is the program everyone showed you if they had purchased an SGI program everyone showed you if they had purchased an SGI workstation in the 1984-1992 time period.workstation in the 1984-1992 time period.

• Gary Tarolli of Silicon Graphics, Inc. is probably the person Gary Tarolli of Silicon Graphics, Inc. is probably the person that most in the networked virtual environment community that most in the networked virtual environment community would credit as the originator of their thoughts on would credit as the originator of their thoughts on networking virtual environments. networking virtual environments.

• Gary was the original programmer of the Silicon Graphics Gary was the original programmer of the Silicon Graphics demo program, Flight, in the summer of 1983. Flight is the demo program, Flight, in the summer of 1983. Flight is the program everyone showed you if they had purchased an SGI program everyone showed you if they had purchased an SGI workstation in the 1984-1992 time period.workstation in the 1984-1992 time period.

Page 28: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SGI Flight & Dogfight• Networking was added into Flight in stages, Networking was added into Flight in stages,

beginning in 1984. beginning in 1984.

• The initial networked version of Flight actually The initial networked version of Flight actually used a serial cable between two SGI workstations used a serial cable between two SGI workstations and ran at something like 7 frames per second on and ran at something like 7 frames per second on a Motorola 68000 based workstation (about 1 a Motorola 68000 based workstation (about 1 MIPS with maybe 500 polygons per second MIPS with maybe 500 polygons per second graphics capability). graphics capability).

• Networking was added into Flight in stages, Networking was added into Flight in stages, beginning in 1984. beginning in 1984.

• The initial networked version of Flight actually The initial networked version of Flight actually used a serial cable between two SGI workstations used a serial cable between two SGI workstations and ran at something like 7 frames per second on and ran at something like 7 frames per second on a Motorola 68000 based workstation (about 1 a Motorola 68000 based workstation (about 1 MIPS with maybe 500 polygons per second MIPS with maybe 500 polygons per second graphics capability). graphics capability).

Page 29: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SGI Flight & Dogfight• That demonstration was then upgraded to use That demonstration was then upgraded to use

XNS multicasting on an Ethernet network in time XNS multicasting on an Ethernet network in time for SIGGRAPH 1984. for SIGGRAPH 1984.

• Flight was distributed in networked form on all SGI Flight was distributed in networked form on all SGI workstations sometime after SIGGRAPH 1984 and workstations sometime after SIGGRAPH 1984 and could be seen in practically every SGI-outfitted lab could be seen in practically every SGI-outfitted lab at that time, either during the day on breaks or at that time, either during the day on breaks or after hours. after hours.

• That demonstration was then upgraded to use That demonstration was then upgraded to use XNS multicasting on an Ethernet network in time XNS multicasting on an Ethernet network in time for SIGGRAPH 1984. for SIGGRAPH 1984.

• Flight was distributed in networked form on all SGI Flight was distributed in networked form on all SGI workstations sometime after SIGGRAPH 1984 and workstations sometime after SIGGRAPH 1984 and could be seen in practically every SGI-outfitted lab could be seen in practically every SGI-outfitted lab at that time, either during the day on breaks or at that time, either during the day on breaks or after hours. after hours.

Page 30: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SGI Flight & Dogfight• Sometime after the release of the networked Sometime after the release of the networked

version of Flight, in early 1985 it is believed, SGI version of Flight, in early 1985 it is believed, SGI engineers modified the code of Flight to produce engineers modified the code of Flight to produce the demonstration program Dogfight. the demonstration program Dogfight.

• This modification dramatically upgraded the This modification dramatically upgraded the visibility of net-VEs as players could now interact visibility of net-VEs as players could now interact by shooting at each other. by shooting at each other.

• Sometime after the release of the networked Sometime after the release of the networked version of Flight, in early 1985 it is believed, SGI version of Flight, in early 1985 it is believed, SGI engineers modified the code of Flight to produce engineers modified the code of Flight to produce the demonstration program Dogfight. the demonstration program Dogfight.

• This modification dramatically upgraded the This modification dramatically upgraded the visibility of net-VEs as players could now interact visibility of net-VEs as players could now interact by shooting at each other. by shooting at each other.

Page 31: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SGI Flight & Dogfight• People spent more time in play, and many SGI People spent more time in play, and many SGI

administrators removed Dogfight from their administrators removed Dogfight from their systems as soon as the new machines were systems as soon as the new machines were installed. installed.

• It did not help that Dogfight packets were It did not help that Dogfight packets were transmitted at frame rate and were clogging the transmitted at frame rate and were clogging the network.network.

• People spent more time in play, and many SGI People spent more time in play, and many SGI administrators removed Dogfight from their administrators removed Dogfight from their systems as soon as the new machines were systems as soon as the new machines were installed. installed.

• It did not help that Dogfight packets were It did not help that Dogfight packets were transmitted at frame rate and were clogging the transmitted at frame rate and were clogging the network.network.

Page 32: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

SGI Flight & Dogfight• Flight/Dogfight inspired many to develop their own net-VEs. Flight/Dogfight inspired many to develop their own net-VEs.

• We believe that networked Flight/Dogfight inspired the We believe that networked Flight/Dogfight inspired the development of more networked VEs and games than development of more networked VEs and games than SIMNET and DIS combined. SIMNET and DIS combined.

• SGI made the source code to Flight and Dogfight freely SGI made the source code to Flight and Dogfight freely available and many people asked for the code just so they available and many people asked for the code just so they could learn how to read and write UDP packets.could learn how to read and write UDP packets.

• Flight/Dogfight inspired many to develop their own net-VEs. Flight/Dogfight inspired many to develop their own net-VEs.

• We believe that networked Flight/Dogfight inspired the We believe that networked Flight/Dogfight inspired the development of more networked VEs and games than development of more networked VEs and games than SIMNET and DIS combined. SIMNET and DIS combined.

• SGI made the source code to Flight and Dogfight freely SGI made the source code to Flight and Dogfight freely available and many people asked for the code just so they available and many people asked for the code just so they could learn how to read and write UDP packets.could learn how to read and write UDP packets.

Page 33: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Doom• While workstation-based VEs are some of the While workstation-based VEs are some of the

earliest inspiration for Net-VEs, the personal earliest inspiration for Net-VEs, the personal computer (PC) has taken the desire and interest computer (PC) has taken the desire and interest for such connected worlds to the next level. for such connected worlds to the next level.

• On 10 December 1993, id Software released its On 10 December 1993, id Software released its shareware game Doom. shareware game Doom.

• While workstation-based VEs are some of the While workstation-based VEs are some of the earliest inspiration for Net-VEs, the personal earliest inspiration for Net-VEs, the personal computer (PC) has taken the desire and interest computer (PC) has taken the desire and interest for such connected worlds to the next level. for such connected worlds to the next level.

• On 10 December 1993, id Software released its On 10 December 1993, id Software released its shareware game Doom. shareware game Doom.

Page 34: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Doom• The shareware giveaway of the first level of Doom The shareware giveaway of the first level of Doom

is probably singularly responsible for the rush of is probably singularly responsible for the rush of startups into the business of providing online startups into the business of providing online gaming networks. gaming networks.

• The posting of Doom caught most network The posting of Doom caught most network administrators’ eyes when their LANs started administrators’ eyes when their LANs started bogging down. Doom did no dead reckoning and bogging down. Doom did no dead reckoning and flooded LANs with packets at frame rate.flooded LANs with packets at frame rate.

• The shareware giveaway of the first level of Doom The shareware giveaway of the first level of Doom is probably singularly responsible for the rush of is probably singularly responsible for the rush of startups into the business of providing online startups into the business of providing online gaming networks. gaming networks.

• The posting of Doom caught most network The posting of Doom caught most network administrators’ eyes when their LANs started administrators’ eyes when their LANs started bogging down. Doom did no dead reckoning and bogging down. Doom did no dead reckoning and flooded LANs with packets at frame rate.flooded LANs with packets at frame rate.

Page 35: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Doom• This networked ability to blast people in a This networked ability to blast people in a

believable 3D environment created enormous believable 3D environment created enormous demand for further 3D networked games. demand for further 3D networked games.

• An estimated 15 million shareware copies of An estimated 15 million shareware copies of Doom have been downloaded around the world, Doom have been downloaded around the world, passed from player to player by floppy disk or passed from player to player by floppy disk or online networks.online networks.

• This networked ability to blast people in a This networked ability to blast people in a believable 3D environment created enormous believable 3D environment created enormous demand for further 3D networked games. demand for further 3D networked games.

• An estimated 15 million shareware copies of An estimated 15 million shareware copies of Doom have been downloaded around the world, Doom have been downloaded around the world, passed from player to player by floppy disk or passed from player to player by floppy disk or online networks.online networks.

Page 36: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Academic Networked Virtual Environments

Page 37: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET• The NPSNET Research Group is the longest continuing The NPSNET Research Group is the longest continuing

academic research effort in networked virtual environments. academic research effort in networked virtual environments. The focus of the group is on the complete breadth of The focus of the group is on the complete breadth of human-computer interaction and software technology for human-computer interaction and software technology for implementing large-scale virtual environments (LSVEs).implementing large-scale virtual environments (LSVEs).

• There have been several generations of software formally There have been several generations of software formally named NPSNET and several precursor systems.named NPSNET and several precursor systems.

• The NPSNET Research Group is the longest continuing The NPSNET Research Group is the longest continuing academic research effort in networked virtual environments. academic research effort in networked virtual environments. The focus of the group is on the complete breadth of The focus of the group is on the complete breadth of human-computer interaction and software technology for human-computer interaction and software technology for implementing large-scale virtual environments (LSVEs).implementing large-scale virtual environments (LSVEs).

• There have been several generations of software formally There have been several generations of software formally named NPSNET and several precursor systems.named NPSNET and several precursor systems.

Page 38: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Early NPS Networked VEs• The origins of the NPSNET virtual environment are an The origins of the NPSNET virtual environment are an

introductory computer graphics class project, fall quarter introductory computer graphics class project, fall quarter 1986. In that class, two students, Doug Smith and Dale 1986. In that class, two students, Doug Smith and Dale Streyle, developed a visual simulator for the fiber-optically Streyle, developed a visual simulator for the fiber-optically guided missile (FOG-M) system [Smith/Streyle 87 and Zyda guided missile (FOG-M) system [Smith/Streyle 87 and Zyda 88]. 88].

– The implementation of FOG-M came at the same time The implementation of FOG-M came at the same time that Mike Zyda went to Japan for an extended three that Mike Zyda went to Japan for an extended three week consulting visit.week consulting visit.

• The origins of the NPSNET virtual environment are an The origins of the NPSNET virtual environment are an introductory computer graphics class project, fall quarter introductory computer graphics class project, fall quarter 1986. In that class, two students, Doug Smith and Dale 1986. In that class, two students, Doug Smith and Dale Streyle, developed a visual simulator for the fiber-optically Streyle, developed a visual simulator for the fiber-optically guided missile (FOG-M) system [Smith/Streyle 87 and Zyda guided missile (FOG-M) system [Smith/Streyle 87 and Zyda 88]. 88].

– The implementation of FOG-M came at the same time The implementation of FOG-M came at the same time that Mike Zyda went to Japan for an extended three that Mike Zyda went to Japan for an extended three week consulting visit.week consulting visit.

Page 39: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Early NPS Networked VEs• VEH was the vehicle simulator. VEH and FOG-M VEH was the vehicle simulator. VEH and FOG-M

connected via a simple open socket that allowed connected via a simple open socket that allowed VEH and FOG-M to do basic Unix read()/write() VEH and FOG-M to do basic Unix read()/write() functions for exchange of state information. By functions for exchange of state information. By July of 1987, the NPSNET group had networked July of 1987, the NPSNET group had networked FOG-M and VEH.FOG-M and VEH.

• VEH was the vehicle simulator. VEH and FOG-M VEH was the vehicle simulator. VEH and FOG-M connected via a simple open socket that allowed connected via a simple open socket that allowed VEH and FOG-M to do basic Unix read()/write() VEH and FOG-M to do basic Unix read()/write() functions for exchange of state information. By functions for exchange of state information. By July of 1987, the NPSNET group had networked July of 1987, the NPSNET group had networked FOG-M and VEH.FOG-M and VEH.

Page 40: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Early NPS Networked VEs• The Moving Platform Simulator (MPS) was the The Moving Platform Simulator (MPS) was the

NPSNET group’s testbed for looking at how to NPSNET group’s testbed for looking at how to achieve more players in the networked virtual achieve more players in the networked virtual environment. MPS-1, MPS-2 and MPS-3 utilized an environment. MPS-1, MPS-2 and MPS-3 utilized an ASCII, NPS-invented protocol and broadcasting to ASCII, NPS-invented protocol and broadcasting to exchange state information exchange state information [Fichten/Jennings,1988], [Strong/Winn,1989], [Fichten/Jennings,1988], [Strong/Winn,1989], [Cheeseman,1990], [Zyda/Fichten/Jennings 1990], [Cheeseman,1990], [Zyda/Fichten/Jennings 1990], [Zyda/McGhee/McConkle/Nelson/Ross,1990].[Zyda/McGhee/McConkle/Nelson/Ross,1990].

• The Moving Platform Simulator (MPS) was the The Moving Platform Simulator (MPS) was the NPSNET group’s testbed for looking at how to NPSNET group’s testbed for looking at how to achieve more players in the networked virtual achieve more players in the networked virtual environment. MPS-1, MPS-2 and MPS-3 utilized an environment. MPS-1, MPS-2 and MPS-3 utilized an ASCII, NPS-invented protocol and broadcasting to ASCII, NPS-invented protocol and broadcasting to exchange state information exchange state information [Fichten/Jennings,1988], [Strong/Winn,1989], [Fichten/Jennings,1988], [Strong/Winn,1989], [Cheeseman,1990], [Zyda/Fichten/Jennings 1990], [Cheeseman,1990], [Zyda/Fichten/Jennings 1990], [Zyda/McGhee/McConkle/Nelson/Ross,1990].[Zyda/McGhee/McConkle/Nelson/Ross,1990].

Page 41: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-1, 2 & 3• NPSNET-1 was demonstrated live at the NPSNET-1 was demonstrated live at the

SIGGRAPH 91 conference as part of the SIGGRAPH 91 conference as part of the Tomorrows Realities Gallery [Zyda/Pratt 1991]. Tomorrows Realities Gallery [Zyda/Pratt 1991]. NPSNET-1 did not use dead-reckoning. NPSNET-1 NPSNET-1 did not use dead-reckoning. NPSNET-1 flooded the network with packets at frame rate.flooded the network with packets at frame rate.

• NPSNET-2 and 3 were utilized to explore better, NPSNET-2 and 3 were utilized to explore better, faster ways to do graphics, and to extend the size faster ways to do graphics, and to extend the size of the terrain databases possible.of the terrain databases possible.

• NPSNET-1 was demonstrated live at the NPSNET-1 was demonstrated live at the SIGGRAPH 91 conference as part of the SIGGRAPH 91 conference as part of the Tomorrows Realities Gallery [Zyda/Pratt 1991]. Tomorrows Realities Gallery [Zyda/Pratt 1991]. NPSNET-1 did not use dead-reckoning. NPSNET-1 NPSNET-1 did not use dead-reckoning. NPSNET-1 flooded the network with packets at frame rate.flooded the network with packets at frame rate.

• NPSNET-2 and 3 were utilized to explore better, NPSNET-2 and 3 were utilized to explore better, faster ways to do graphics, and to extend the size faster ways to do graphics, and to extend the size of the terrain databases possible.of the terrain databases possible.

Page 42: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-1, 2 & 3• NPS-Stealth was spawned off from NPSNET-1, with NPS-Stealth was spawned off from NPSNET-1, with

the goal of developing a system capable of the goal of developing a system capable of reading SIMNET terrain databases and SIMNET reading SIMNET terrain databases and SIMNET networking protocols.networking protocols.

• NPS-Stealth was operational in March of 1993. It NPS-Stealth was operational in March of 1993. It was the only workstation-based virtual was the only workstation-based virtual environment capable of interoperating with the environment capable of interoperating with the $350,000 per copy SIMNET system.$350,000 per copy SIMNET system.

• NPS-Stealth was spawned off from NPSNET-1, with NPS-Stealth was spawned off from NPSNET-1, with the goal of developing a system capable of the goal of developing a system capable of reading SIMNET terrain databases and SIMNET reading SIMNET terrain databases and SIMNET networking protocols.networking protocols.

• NPS-Stealth was operational in March of 1993. It NPS-Stealth was operational in March of 1993. It was the only workstation-based virtual was the only workstation-based virtual environment capable of interoperating with the environment capable of interoperating with the $350,000 per copy SIMNET system.$350,000 per copy SIMNET system.

Page 43: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-IV• In March of 1993, Silicon Graphics came out with their Performer In March of 1993, Silicon Graphics came out with their Performer

API for developing virtual environments and visual simulation API for developing virtual environments and visual simulation systems. The NPSNET group looked at the SGI Performer demos systems. The NPSNET group looked at the SGI Performer demos and decided to build NPSNET-IV. NPSNET-IV was DIS-compliant, and decided to build NPSNET-IV. NPSNET-IV was DIS-compliant, dead-reckoned and had spatial sound.dead-reckoned and had spatial sound.

• NPSNET-IV has many capabilities that in some ways, make it one of NPSNET-IV has many capabilities that in some ways, make it one of the most ambitious virtual environments of its day. In Swiss-Army-the most ambitious virtual environments of its day. In Swiss-Army-knife-fashion, a player using NPSNET-IV can be a fully-articulated knife-fashion, a player using NPSNET-IV can be a fully-articulated human, a ground vehicle of almost any type, an air vehicle of any human, a ground vehicle of almost any type, an air vehicle of any type, and any type of surface and subsurface vessel.type, and any type of surface and subsurface vessel.

• NPSNET-IV has interoperated with almost every DIS-compliant NPSNET-IV has interoperated with almost every DIS-compliant virtual environment ever constructed.virtual environment ever constructed.

• In March of 1993, Silicon Graphics came out with their Performer In March of 1993, Silicon Graphics came out with their Performer API for developing virtual environments and visual simulation API for developing virtual environments and visual simulation systems. The NPSNET group looked at the SGI Performer demos systems. The NPSNET group looked at the SGI Performer demos and decided to build NPSNET-IV. NPSNET-IV was DIS-compliant, and decided to build NPSNET-IV. NPSNET-IV was DIS-compliant, dead-reckoned and had spatial sound.dead-reckoned and had spatial sound.

• NPSNET-IV has many capabilities that in some ways, make it one of NPSNET-IV has many capabilities that in some ways, make it one of the most ambitious virtual environments of its day. In Swiss-Army-the most ambitious virtual environments of its day. In Swiss-Army-knife-fashion, a player using NPSNET-IV can be a fully-articulated knife-fashion, a player using NPSNET-IV can be a fully-articulated human, a ground vehicle of almost any type, an air vehicle of any human, a ground vehicle of almost any type, an air vehicle of any type, and any type of surface and subsurface vessel.type, and any type of surface and subsurface vessel.

• NPSNET-IV has interoperated with almost every DIS-compliant NPSNET-IV has interoperated with almost every DIS-compliant virtual environment ever constructed.virtual environment ever constructed.

Page 44: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive
Page 45: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNETNPSNET has gone NPSNET has gone through a number through a number of versions ...of versions ...

NPSNET has gone NPSNET has gone through a number through a number of versions ...of versions ...

Page 46: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-IVNPSNET-IV CapabilitiesNPSNET-IV Capabilities

• Building walkthroughs.Building walkthroughs.

• Articulated humans - Articulated humans - mounting/dismounting mounting/dismounting capability.capability.

• Networking - play across the Networking - play across the multicast backbone of multicast backbone of Internet.Internet.

NPSNET-IV CapabilitiesNPSNET-IV Capabilities

• Building walkthroughs.Building walkthroughs.

• Articulated humans - Articulated humans - mounting/dismounting mounting/dismounting capability.capability.

• Networking - play across the Networking - play across the multicast backbone of multicast backbone of Internet.Internet.

• Terrain database integration, Terrain database integration, terrain paging (70km x 70km).terrain paging (70km x 70km).

• Any vehicle capability - air, Any vehicle capability - air, ground, articulated human.ground, articulated human.

• Testbed for VE NSA issues.Testbed for VE NSA issues.

• Interoperability - SIMNET/DISInteroperability - SIMNET/DIS

– Constructive model integration Constructive model integration - Janus World Modeler- Janus World Modeler

– ModSAFModSAF

• Terrain database integration, Terrain database integration, terrain paging (70km x 70km).terrain paging (70km x 70km).

• Any vehicle capability - air, Any vehicle capability - air, ground, articulated human.ground, articulated human.

• Testbed for VE NSA issues.Testbed for VE NSA issues.

• Interoperability - SIMNET/DISInteroperability - SIMNET/DIS

– Constructive model integration Constructive model integration - Janus World Modeler- Janus World Modeler

– ModSAFModSAF

Page 47: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-IV

Page 48: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-IV

Page 49: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-IV

Page 50: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

NPSNET-IV

Page 51: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive
Page 52: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

ParadiseThe PARADISE (Performance Architecture for The PARADISE (Performance Architecture for Advanced Distributed Interactive Simulation Advanced Distributed Interactive Simulation Environments) project was initiated in 1993 by Environments) project was initiated in 1993 by David Cheriton, Sandeep Singhal, and Hugh David Cheriton, Sandeep Singhal, and Hugh Holbrook of the Distributed Systems Group at Holbrook of the Distributed Systems Group at Stanford University. Stanford University.

The PARADISE (Performance Architecture for The PARADISE (Performance Architecture for Advanced Distributed Interactive Simulation Advanced Distributed Interactive Simulation Environments) project was initiated in 1993 by Environments) project was initiated in 1993 by David Cheriton, Sandeep Singhal, and Hugh David Cheriton, Sandeep Singhal, and Hugh Holbrook of the Distributed Systems Group at Holbrook of the Distributed Systems Group at Stanford University. Stanford University.

Page 53: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

ParadisePARADISE’s designers focused on bandwidth PARADISE’s designers focused on bandwidth reduction. reduction.

The PARADISE system used IP multicast, The PARADISE system used IP multicast, assigning a different multicast address to each assigning a different multicast address to each active object. active object.

• They did this by creating a mini-MBone among the They did this by creating a mini-MBone among the non-multicast-capable hosts on an otherwise non-multicast-capable hosts on an otherwise multicast-aware network.multicast-aware network.

PARADISE’s designers focused on bandwidth PARADISE’s designers focused on bandwidth reduction. reduction.

The PARADISE system used IP multicast, The PARADISE system used IP multicast, assigning a different multicast address to each assigning a different multicast address to each active object. active object.

• They did this by creating a mini-MBone among the They did this by creating a mini-MBone among the non-multicast-capable hosts on an otherwise non-multicast-capable hosts on an otherwise multicast-aware network.multicast-aware network.

Page 54: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

ParadiseHosts transmit updates for local objects in Hosts transmit updates for local objects in much the same way as SIMNET and DIS. much the same way as SIMNET and DIS.

• However, to further reduce bandwidth, a However, to further reduce bandwidth, a hierarchy of Area of Interest (AOI) servers collect hierarchy of Area of Interest (AOI) servers collect information subscriptions from each host. information subscriptions from each host.

• The servers monitor the positions of objects and The servers monitor the positions of objects and notify hosts about which objects' multicast groups notify hosts about which objects' multicast groups they should subscribe to. they should subscribe to.

Hosts transmit updates for local objects in Hosts transmit updates for local objects in much the same way as SIMNET and DIS. much the same way as SIMNET and DIS.

• However, to further reduce bandwidth, a However, to further reduce bandwidth, a hierarchy of Area of Interest (AOI) servers collect hierarchy of Area of Interest (AOI) servers collect information subscriptions from each host. information subscriptions from each host.

• The servers monitor the positions of objects and The servers monitor the positions of objects and notify hosts about which objects' multicast groups notify hosts about which objects' multicast groups they should subscribe to. they should subscribe to.

Page 55: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

ParadiseUnlike SIMNET, PARADISE treats all objects, including Unlike SIMNET, PARADISE treats all objects, including terrain, uniformly as first-class entities. terrain, uniformly as first-class entities.

• Each is capable of transmitting state updates. Each is capable of transmitting state updates.

• At the same time, PARADISE’s designers tried to correct At the same time, PARADISE’s designers tried to correct several of the mistakes made by DIS. For example, several of the mistakes made by DIS. For example, PARADISE recognizes that entities represented a spectrum PARADISE recognizes that entities represented a spectrum ranging from rapidly-changing objects that needed to ranging from rapidly-changing objects that needed to generate frequent updates to slowly-changing objects that generate frequent updates to slowly-changing objects that rarely needed to send updates. rarely needed to send updates.

Unlike SIMNET, PARADISE treats all objects, including Unlike SIMNET, PARADISE treats all objects, including terrain, uniformly as first-class entities. terrain, uniformly as first-class entities.

• Each is capable of transmitting state updates. Each is capable of transmitting state updates.

• At the same time, PARADISE’s designers tried to correct At the same time, PARADISE’s designers tried to correct several of the mistakes made by DIS. For example, several of the mistakes made by DIS. For example, PARADISE recognizes that entities represented a spectrum PARADISE recognizes that entities represented a spectrum ranging from rapidly-changing objects that needed to ranging from rapidly-changing objects that needed to generate frequent updates to slowly-changing objects that generate frequent updates to slowly-changing objects that rarely needed to send updates. rarely needed to send updates.

Page 56: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

ParadisePARADISE supports multiple independent PARADISE supports multiple independent communication flows per object, with each communication flows per object, with each flow enabling remote dead reckoning at a flow enabling remote dead reckoning at a different level of accuracy. different level of accuracy.

PARADISE also provides techniques for PARADISE also provides techniques for combining information about groups of combining information about groups of objects, based both on their virtual world objects, based both on their virtual world location and based on their type.location and based on their type.

PARADISE supports multiple independent PARADISE supports multiple independent communication flows per object, with each communication flows per object, with each flow enabling remote dead reckoning at a flow enabling remote dead reckoning at a different level of accuracy. different level of accuracy.

PARADISE also provides techniques for PARADISE also provides techniques for combining information about groups of combining information about groups of objects, based both on their virtual world objects, based both on their virtual world location and based on their type.location and based on their type.

Page 57: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Paradise ScalabilityThe system's flying The system's flying helicopter helicopter demonstration demonstration could support 50-70 could support 50-70 simultaneous simultaneous entities, being entities, being bound by bound by performance of the performance of the graphics hardware. graphics hardware.

The system's flying The system's flying helicopter helicopter demonstration demonstration could support 50-70 could support 50-70 simultaneous simultaneous entities, being entities, being bound by bound by performance of the performance of the graphics hardware. graphics hardware.

Page 58: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

DIVEThe Swedish Institute of Computer Science The Swedish Institute of Computer Science Distributed Interactive Virtual Environment Distributed Interactive Virtual Environment (DIVE) is another early and ongoing academic (DIVE) is another early and ongoing academic virtual environment.virtual environment.

The Swedish Institute of Computer Science The Swedish Institute of Computer Science Distributed Interactive Virtual Environment Distributed Interactive Virtual Environment (DIVE) is another early and ongoing academic (DIVE) is another early and ongoing academic virtual environment.virtual environment.

Page 59: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Swedish Institute of Computer Science - DIVE• DIVE has a DIVE has a

homogeneous homogeneous distributed database distributed database like SIMNET and DIS-like SIMNET and DIS-compliant systems.compliant systems.

• DIVE uses the ISIS DIVE uses the ISIS toolkit to implement toolkit to implement the concept of process the concept of process groups.groups.

• DIVE has a DIVE has a homogeneous homogeneous distributed database distributed database like SIMNET and DIS-like SIMNET and DIS-compliant systems.compliant systems.

• DIVE uses the ISIS DIVE uses the ISIS toolkit to implement toolkit to implement the concept of process the concept of process groups.groups.

Page 60: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Swedish Institute of Computer Science - DIVE• However, unlike However, unlike

SIMNET the entire SIMNET the entire database is database is dynamic and uses dynamic and uses reliable multicast reliable multicast protocols to protocols to actively replicate actively replicate new objects.new objects.

• However, unlike However, unlike SIMNET the entire SIMNET the entire database is database is dynamic and uses dynamic and uses reliable multicast reliable multicast protocols to protocols to actively replicate actively replicate new objects.new objects.

Page 61: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Swedish Institute of Computer Science - DIVE• A disadvantage with this approach is that it is difficult to A disadvantage with this approach is that it is difficult to

scale-up because of the communications costs associated scale-up because of the communications costs associated with maintaining reliability and consistent data.with maintaining reliability and consistent data.

• For example, modeling terrain interactions, such as building For example, modeling terrain interactions, such as building a berm, still would be very expensive (though highly a berm, still would be very expensive (though highly desirable) in terms of the number of polygons that would desirable) in terms of the number of polygons that would need to be created, changed, and communicated in DIVE.need to be created, changed, and communicated in DIVE.

• A disadvantage with this approach is that it is difficult to A disadvantage with this approach is that it is difficult to scale-up because of the communications costs associated scale-up because of the communications costs associated with maintaining reliability and consistent data.with maintaining reliability and consistent data.

• For example, modeling terrain interactions, such as building For example, modeling terrain interactions, such as building a berm, still would be very expensive (though highly a berm, still would be very expensive (though highly desirable) in terms of the number of polygons that would desirable) in terms of the number of polygons that would need to be created, changed, and communicated in DIVE.need to be created, changed, and communicated in DIVE.

Page 62: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Swedish Institute of Computer Science - DIVE• Carlsson C. & Carlsson C. &

Hagsand, O. DIVE Hagsand, O. DIVE - A platform for - A platform for multi-user virtual multi-user virtual environments, environments, Computers & Computers & Graphics, 17(6), Graphics, 17(6), 663-669, 1993.663-669, 1993.

• Carlsson C. & Carlsson C. & Hagsand, O. DIVE Hagsand, O. DIVE - A platform for - A platform for multi-user virtual multi-user virtual environments, environments, Computers & Computers & Graphics, 17(6), Graphics, 17(6), 663-669, 1993.663-669, 1993.

Page 63: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

BrickNetBrickNet is the work of Gurminder Singh at the BrickNet is the work of Gurminder Singh at the Institute of Systems Science at the National Institute of Systems Science at the National University of Singapore.University of Singapore.

A client-server model in which the database is A client-server model in which the database is partitioned among clients.partitioned among clients.

Communication is mediated by central servers.Communication is mediated by central servers.

BrickNet is the work of Gurminder Singh at the BrickNet is the work of Gurminder Singh at the Institute of Systems Science at the National Institute of Systems Science at the National University of Singapore.University of Singapore.

A client-server model in which the database is A client-server model in which the database is partitioned among clients.partitioned among clients.

Communication is mediated by central servers.Communication is mediated by central servers.

Page 64: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

BrickNet

S1

S2 S3

Clients of S1

Clients of S3Clients of S2

ServerCommunication

Page 65: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

BrickNet• For example, as an entity moves through the VE, For example, as an entity moves through the VE,

its database is updated by an object-request its database is updated by an object-request broker on a server that has knowledge of which broker on a server that has knowledge of which client maintains that part of the world. client maintains that part of the world.

• BrickNet shows us the limitations/possibilities of BrickNet shows us the limitations/possibilities of client-server architectures for Net-VEs.client-server architectures for Net-VEs.

• For example, as an entity moves through the VE, For example, as an entity moves through the VE, its database is updated by an object-request its database is updated by an object-request broker on a server that has knowledge of which broker on a server that has knowledge of which client maintains that part of the world. client maintains that part of the world.

• BrickNet shows us the limitations/possibilities of BrickNet shows us the limitations/possibilities of client-server architectures for Net-VEs.client-server architectures for Net-VEs.

Page 66: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

BrickNet - CyberBug Demo

Page 67: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• Funkhouser, Thomas A. “RING: A Client-Server Funkhouser, Thomas A. “RING: A Client-Server

System for Multi-user Virtual Environments,” System for Multi-user Virtual Environments,” Proceedings of the 1995 Symposium on Proceedings of the 1995 Symposium on Interactive 3D Graphics, Monterey, April 1995, pp. Interactive 3D Graphics, Monterey, April 1995, pp. 85-92.85-92.

– Funkhouser is at ATT Bell Labs, which just Funkhouser is at ATT Bell Labs, which just turned into Lucent Technologies.turned into Lucent Technologies.

• Funkhouser, Thomas A. “RING: A Client-Server Funkhouser, Thomas A. “RING: A Client-Server System for Multi-user Virtual Environments,” System for Multi-user Virtual Environments,” Proceedings of the 1995 Symposium on Proceedings of the 1995 Symposium on Interactive 3D Graphics, Monterey, April 1995, pp. Interactive 3D Graphics, Monterey, April 1995, pp. 85-92.85-92.

– Funkhouser is at ATT Bell Labs, which just Funkhouser is at ATT Bell Labs, which just turned into Lucent Technologies.turned into Lucent Technologies.

Page 68: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• Similar to BrickNet.Similar to BrickNet.

• A client-server system that supports real-time A client-server system that supports real-time visual interaction between a large number of visual interaction between a large number of users in a shared 3D VE.users in a shared 3D VE.

• Similar to BrickNet.Similar to BrickNet.

• A client-server system that supports real-time A client-server system that supports real-time visual interaction between a large number of visual interaction between a large number of users in a shared 3D VE.users in a shared 3D VE.

Page 69: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• The key feature of the system is that server-based The key feature of the system is that server-based

visibility algorithms compute potential visual visibility algorithms compute potential visual interactions between entities representing users interactions between entities representing users in order to reduce the number of messages in order to reduce the number of messages required to maintain consistent state among required to maintain consistent state among many workstations distributed across a wide-area many workstations distributed across a wide-area network.network.

• The key feature of the system is that server-based The key feature of the system is that server-based visibility algorithms compute potential visual visibility algorithms compute potential visual interactions between entities representing users interactions between entities representing users in order to reduce the number of messages in order to reduce the number of messages required to maintain consistent state among required to maintain consistent state among many workstations distributed across a wide-area many workstations distributed across a wide-area network.network.

Page 70: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• When an entity changes state, update messages When an entity changes state, update messages

are sent only to workstations with entities that are sent only to workstations with entities that can potentially perceive the change - i.e. ones to can potentially perceive the change - i.e. ones to which the update is visible.which the update is visible.

– Experiments in the paper show a 40x decrease Experiments in the paper show a 40x decrease in message traffic processed by client in message traffic processed by client workstations during tests with 1,024 entities workstations during tests with 1,024 entities interacting in a large densely occluded VE.interacting in a large densely occluded VE.

• When an entity changes state, update messages When an entity changes state, update messages are sent only to workstations with entities that are sent only to workstations with entities that can potentially perceive the change - i.e. ones to can potentially perceive the change - i.e. ones to which the update is visible.which the update is visible.

– Experiments in the paper show a 40x decrease Experiments in the paper show a 40x decrease in message traffic processed by client in message traffic processed by client workstations during tests with 1,024 entities workstations during tests with 1,024 entities interacting in a large densely occluded VE.interacting in a large densely occluded VE.

Page 71: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs

Server Server

Server

FastNetwork

Client

B C DA

A C DB

A B DC

A B CD

Client

ClientClient

Page 72: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• Every RING entity is managed by exactly one Every RING entity is managed by exactly one

client workstation.client workstation.

• Clients execute the programs necessary to Clients execute the programs necessary to generate behavior for their entities.generate behavior for their entities.

• In addition to managing their own entities, clients In addition to managing their own entities, clients maintain surrogates for some entities managed maintain surrogates for some entities managed by other clients (remote entities - like dead by other clients (remote entities - like dead reckoning “ghosts” of the SIMNET and DIS reckoning “ghosts” of the SIMNET and DIS standard).standard).

• Every RING entity is managed by exactly one Every RING entity is managed by exactly one client workstation.client workstation.

• Clients execute the programs necessary to Clients execute the programs necessary to generate behavior for their entities.generate behavior for their entities.

• In addition to managing their own entities, clients In addition to managing their own entities, clients maintain surrogates for some entities managed maintain surrogates for some entities managed by other clients (remote entities - like dead by other clients (remote entities - like dead reckoning “ghosts” of the SIMNET and DIS reckoning “ghosts” of the SIMNET and DIS standard).standard).

Page 73: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• Communication between clients is managed by Communication between clients is managed by

servers.servers.

– Again, this is the ideal organization for revenue Again, this is the ideal organization for revenue generating networked games and it is not generating networked games and it is not surprising to see a phone company developing surprising to see a phone company developing such ideas.such ideas.

• Communication between clients is managed by Communication between clients is managed by servers.servers.

– Again, this is the ideal organization for revenue Again, this is the ideal organization for revenue generating networked games and it is not generating networked games and it is not surprising to see a phone company developing surprising to see a phone company developing such ideas.such ideas.

Page 74: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• The primary advantage of the RING system design The primary advantage of the RING system design

is that the storage, processing, and network is that the storage, processing, and network bandwidth requirements of the clients bandwidth requirements of the clients workstations are not dependent on the number of workstations are not dependent on the number of entities in the LSVE.entities in the LSVE.

• Client workstations must store, simulate, and Client workstations must store, simulate, and process update messages only for the subset of process update messages only for the subset of entities visible to one of the client’s local entities.entities visible to one of the client’s local entities.

– So this can be a low-cost $500 home box...So this can be a low-cost $500 home box...

• The primary advantage of the RING system design The primary advantage of the RING system design is that the storage, processing, and network is that the storage, processing, and network bandwidth requirements of the clients bandwidth requirements of the clients workstations are not dependent on the number of workstations are not dependent on the number of entities in the LSVE.entities in the LSVE.

• Client workstations must store, simulate, and Client workstations must store, simulate, and process update messages only for the subset of process update messages only for the subset of entities visible to one of the client’s local entities.entities visible to one of the client’s local entities.

– So this can be a low-cost $500 home box...So this can be a low-cost $500 home box...

Page 75: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• Another advantage of the architecture is that Another advantage of the architecture is that

high-level management of the VE can be high-level management of the VE can be performed by servers without the involvement of performed by servers without the involvement of every client.every client.

– For instance, adding/removing an entity to/from For instance, adding/removing an entity to/from the VE requires the notification of only one the VE requires the notification of only one server.server.

– That server handles notification of other That server handles notification of other servers & clients.servers & clients.

• Another advantage of the architecture is that Another advantage of the architecture is that high-level management of the VE can be high-level management of the VE can be performed by servers without the involvement of performed by servers without the involvement of every client.every client.

– For instance, adding/removing an entity to/from For instance, adding/removing an entity to/from the VE requires the notification of only one the VE requires the notification of only one server.server.

– That server handles notification of other That server handles notification of other servers & clients.servers & clients.

Page 76: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

RING: A Client-Server System for Multi-User VEs• Disadvantages of RING: extra latency is Disadvantages of RING: extra latency is

introduced when messages are routed through introduced when messages are routed through servers.servers.

– Sometimes messages are routed through Sometimes messages are routed through multiple servers.multiple servers.

– Also computation at the server is a bottleneck.Also computation at the server is a bottleneck.

• Tests performed - 16 clients with varying numbers Tests performed - 16 clients with varying numbers of servers (1 to 16) with 256 entities distributed of servers (1 to 16) with 256 entities distributed across all clients and servers --> real-time.across all clients and servers --> real-time.

• Disadvantages of RING: extra latency is Disadvantages of RING: extra latency is introduced when messages are routed through introduced when messages are routed through servers.servers.

– Sometimes messages are routed through Sometimes messages are routed through multiple servers.multiple servers.

– Also computation at the server is a bottleneck.Also computation at the server is a bottleneck.

• Tests performed - 16 clients with varying numbers Tests performed - 16 clients with varying numbers of servers (1 to 16) with 256 entities distributed of servers (1 to 16) with 256 entities distributed across all clients and servers --> real-time.across all clients and servers --> real-time.

Page 77: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Also Read• Funkhouser, Thomas A. “Network Topologies for Funkhouser, Thomas A. “Network Topologies for

Scalable Multi-User Virtual Environments,” Scalable Multi-User Virtual Environments,” Proceedings of the 1996 VRAIS Conference, April Proceedings of the 1996 VRAIS Conference, April 1996, pp. 222- 228.1996, pp. 222- 228.

– Paper investigates trade-offs of different Paper investigates trade-offs of different network topologies and messaging protocols for network topologies and messaging protocols for multi-user VEs.multi-user VEs.

• Show video of RING?Show video of RING?

• Funkhouser, Thomas A. “Network Topologies for Funkhouser, Thomas A. “Network Topologies for Scalable Multi-User Virtual Environments,” Scalable Multi-User Virtual Environments,” Proceedings of the 1996 VRAIS Conference, April Proceedings of the 1996 VRAIS Conference, April 1996, pp. 222- 228.1996, pp. 222- 228.

– Paper investigates trade-offs of different Paper investigates trade-offs of different network topologies and messaging protocols for network topologies and messaging protocols for multi-user VEs.multi-user VEs.

• Show video of RING?Show video of RING?

Page 78: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs• Barrus, John, Waters, Richard and Anderson, Barrus, John, Waters, Richard and Anderson,

David B. “Locales and Beacons: Efficient and David B. “Locales and Beacons: Efficient and Precise Support for Large Multi-User Virtual Precise Support for Large Multi-User Virtual Environments,” Proceedings of the 1996 VRAIS Environments,” Proceedings of the 1996 VRAIS Conference, April 1996, pp.204-213.Conference, April 1996, pp.204-213.

• Barrus, John, Waters, Richard and Anderson, Barrus, John, Waters, Richard and Anderson, David B. “Locales and Beacons: Efficient and David B. “Locales and Beacons: Efficient and Precise Support for Large Multi-User Virtual Precise Support for Large Multi-User Virtual Environments,” Proceedings of the 1996 VRAIS Environments,” Proceedings of the 1996 VRAIS Conference, April 1996, pp.204-213.Conference, April 1996, pp.204-213.

Page 79: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs• Locales are an efficient method for managing the Locales are an efficient method for managing the

flow of data between large numbers of users in a flow of data between large numbers of users in a LSVE.LSVE.

• The concept of locales is based on the idea that The concept of locales is based on the idea that while a VE may be very large, most of what can while a VE may be very large, most of what can be observed by a single user at a given moment is be observed by a single user at a given moment is local in nature.local in nature.

• Locales are an efficient method for managing the Locales are an efficient method for managing the flow of data between large numbers of users in a flow of data between large numbers of users in a LSVE.LSVE.

• The concept of locales is based on the idea that The concept of locales is based on the idea that while a VE may be very large, most of what can while a VE may be very large, most of what can be observed by a single user at a given moment is be observed by a single user at a given moment is local in nature.local in nature.

Page 80: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs• Locales divide a VE into compact regions that can Locales divide a VE into compact regions that can

be process separately. Here’s how:be process separately. Here’s how:

– Separate multicast addresses - each locale is Separate multicast addresses - each locale is associated with a separate communication associated with a separate communication channel. This makes it possible for a process to channel. This makes it possible for a process to attend to what is happening in some locales attend to what is happening in some locales without expending any resources on the locales without expending any resources on the locales that are being ignored.that are being ignored.

• Locales divide a VE into compact regions that can Locales divide a VE into compact regions that can be process separately. Here’s how:be process separately. Here’s how:

– Separate multicast addresses - each locale is Separate multicast addresses - each locale is associated with a separate communication associated with a separate communication channel. This makes it possible for a process to channel. This makes it possible for a process to attend to what is happening in some locales attend to what is happening in some locales without expending any resources on the locales without expending any resources on the locales that are being ignored.that are being ignored.

Page 81: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs

– Separate coordinate systems - each locale has Separate coordinate systems - each locale has its own coordinate system. This gives the effect its own coordinate system. This gives the effect of always having high precision in whatever of always having high precision in whatever locale is the current focus of attention, with locale is the current focus of attention, with gradually decreasing precision for locales that gradually decreasing precision for locales that are distant from the current focus of attention.are distant from the current focus of attention.

– Separate coordinate systems - each locale has Separate coordinate systems - each locale has its own coordinate system. This gives the effect its own coordinate system. This gives the effect of always having high precision in whatever of always having high precision in whatever locale is the current focus of attention, with locale is the current focus of attention, with gradually decreasing precision for locales that gradually decreasing precision for locales that are distant from the current focus of attention.are distant from the current focus of attention.

Page 82: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs

– Arbitrary geometry - rather than cutting up a Arbitrary geometry - rather than cutting up a VE by some regular pattern, locales are a basis VE by some regular pattern, locales are a basis for constructing a VE from pieces. The shape, for constructing a VE from pieces. The shape, size and relative orientation of individual pieces size and relative orientation of individual pieces can be chosen freely based on whatever is can be chosen freely based on whatever is most convenient from the perspective of most convenient from the perspective of designing the individual pieces themselves. designing the individual pieces themselves. This facilitates the combination of many pieces This facilitates the combination of many pieces designed by many people into an LSVE.designed by many people into an LSVE.

– Arbitrary geometry - rather than cutting up a Arbitrary geometry - rather than cutting up a VE by some regular pattern, locales are a basis VE by some regular pattern, locales are a basis for constructing a VE from pieces. The shape, for constructing a VE from pieces. The shape, size and relative orientation of individual pieces size and relative orientation of individual pieces can be chosen freely based on whatever is can be chosen freely based on whatever is most convenient from the perspective of most convenient from the perspective of designing the individual pieces themselves. designing the individual pieces themselves. This facilitates the combination of many pieces This facilitates the combination of many pieces designed by many people into an LSVE.designed by many people into an LSVE.

Page 83: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs• Beacons - are a special class of objects that can Beacons - are a special class of objects that can

be located without knowing what locale they are be located without knowing what locale they are in (to solve the “how do I join the VE problem”).in (to solve the “how do I join the VE problem”).

• Beacons act as a content-addressable index from Beacons act as a content-addressable index from tags to the multicast address of locales. They tags to the multicast address of locales. They make it possible to decide what locales to attend make it possible to decide what locales to attend to based on what the locales contain.to based on what the locales contain.

• Beacons - are a special class of objects that can Beacons - are a special class of objects that can be located without knowing what locale they are be located without knowing what locale they are in (to solve the “how do I join the VE problem”).in (to solve the “how do I join the VE problem”).

• Beacons act as a content-addressable index from Beacons act as a content-addressable index from tags to the multicast address of locales. They tags to the multicast address of locales. They make it possible to decide what locales to attend make it possible to decide what locales to attend to based on what the locales contain.to based on what the locales contain.

Page 84: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MERL Efforts in Large-Scale Multi-User VEs• Beacons broadcast messages about themselves Beacons broadcast messages about themselves

via the multicast address of the locale they are in via the multicast address of the locale they are in AND they broadcast messages about themselves AND they broadcast messages about themselves via a special beacon multicast address.via a special beacon multicast address.

– To ensure that this mechanism is scalable to To ensure that this mechanism is scalable to large VEs, a large number of potential beacon large VEs, a large number of potential beacon multicast addresses are provided.multicast addresses are provided.

• Beacons broadcast messages about themselves Beacons broadcast messages about themselves via the multicast address of the locale they are in via the multicast address of the locale they are in AND they broadcast messages about themselves AND they broadcast messages about themselves via a special beacon multicast address.via a special beacon multicast address.

– To ensure that this mechanism is scalable to To ensure that this mechanism is scalable to large VEs, a large number of potential beacon large VEs, a large number of potential beacon multicast addresses are provided.multicast addresses are provided.

Page 85: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

The MERL Implementation - Diamond Park• The MERL The MERL

Diamond Park VE Diamond Park VE is built using is built using SPLINE (Scalable SPLINE (Scalable PLatform for PLatform for INteractive INteractive Environments) Environments) which provides the which provides the implementation of implementation of locales & beacons.locales & beacons.

• The MERL The MERL Diamond Park VE Diamond Park VE is built using is built using SPLINE (Scalable SPLINE (Scalable PLatform for PLatform for INteractive INteractive Environments) Environments) which provides the which provides the implementation of implementation of locales & beacons.locales & beacons.

Page 86: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

The MERL Implementation - Diamond Park• Diamond Park has Diamond Park has

multiple users that multiple users that interact in the park interact in the park by riding around by riding around on bicycles and on bicycles and talking to each talking to each other (Social VR).other (Social VR).

• Show video of Show video of Diamond ParkDiamond Park

• Diamond Park has Diamond Park has multiple users that multiple users that interact in the park interact in the park by riding around by riding around on bicycles and on bicycles and talking to each talking to each other (Social VR).other (Social VR).

• Show video of Show video of Diamond ParkDiamond Park

Page 87: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MR Toolkit Peers Package• Another early effort in networked virtual environments is the MR Another early effort in networked virtual environments is the MR

Toolkit Peer Package (MR-TPP), an extension of the University of Toolkit Peer Package (MR-TPP), an extension of the University of Alberta’s MR (minimal reality) Toolkit [Shaw1993].Alberta’s MR (minimal reality) Toolkit [Shaw1993].

• MR-TPP is based on User Datagram Protocol (UDP) packets for MR-TPP is based on User Datagram Protocol (UDP) packets for network communication.network communication.

• MR-TPP has a software architecture in which local copies of shared MR-TPP has a software architecture in which local copies of shared data are maintained in a distributed fashion.data are maintained in a distributed fashion.

• Another early effort in networked virtual environments is the MR Another early effort in networked virtual environments is the MR Toolkit Peer Package (MR-TPP), an extension of the University of Toolkit Peer Package (MR-TPP), an extension of the University of Alberta’s MR (minimal reality) Toolkit [Shaw1993].Alberta’s MR (minimal reality) Toolkit [Shaw1993].

• MR-TPP is based on User Datagram Protocol (UDP) packets for MR-TPP is based on User Datagram Protocol (UDP) packets for network communication.network communication.

• MR-TPP has a software architecture in which local copies of shared MR-TPP has a software architecture in which local copies of shared data are maintained in a distributed fashion.data are maintained in a distributed fashion.

Page 88: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

MR Toolkit Peers Package• MR-TPP maintains a complete graph connection topology, which MR-TPP maintains a complete graph connection topology, which

means that each MR process that wishes to communicate with means that each MR process that wishes to communicate with other processes must open a connection.other processes must open a connection.

• In the MR-TPP architecture, there is apparently no notion of In the MR-TPP architecture, there is apparently no notion of predictive modeling similar to DIS’ dead-reckoning.predictive modeling similar to DIS’ dead-reckoning.

• MR-TPP maintains a complete graph connection topology, which MR-TPP maintains a complete graph connection topology, which means that each MR process that wishes to communicate with means that each MR process that wishes to communicate with other processes must open a connection.other processes must open a connection.

• In the MR-TPP architecture, there is apparently no notion of In the MR-TPP architecture, there is apparently no notion of predictive modeling similar to DIS’ dead-reckoning.predictive modeling similar to DIS’ dead-reckoning.

Page 89: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Other Net-VEs ...There are many other net-VE research efforts There are many other net-VE research efforts worth mentioning. worth mentioning.

This section has covered those that were there This section has covered those that were there first or had the broadest influence on the net-first or had the broadest influence on the net-VE field. VE field.

There are many other net-VE research efforts There are many other net-VE research efforts worth mentioning. worth mentioning.

This section has covered those that were there This section has covered those that were there first or had the broadest influence on the net-first or had the broadest influence on the net-VE field. VE field.

Page 90: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

A Brief Timeline of Net-VEs

1980 1985 1990 1995

SIM

NE

T S

tart

(83

)

SG

I F

lig

ht

(84)

SG

I D

og

fig

ht

(85)

Am

aze

(84)

SIM

NE

T F

irst

Dem

o (

86)

NP

S F

OG

-M (

86)

NP

S V

EH

(87

)

NP

S M

PS

-1 (

88)

SIM

NE

T t

o A

rmy

(90)

NP

SN

ET

-1 (

90)

Bri

ckN

et (

91)

DIS

(93

)

DIV

E (

92)

NP

S-S

teal

th (

93)

NP

SN

ET

-IV

(93

)D

oo

m (

93)

Par

adis

e (9

3)

Page 91: Chapter Two - The Origin of Networked Virtual Environments Department of Defense Networked Virtual Environments 20 SIMNET 20SIMNET 20 Distributed Interactive

Networked Virtual Environments - Design & Implementation

The submitted cover The submitted cover design …design …The submitted cover The submitted cover design …design …