school of computer science and software engineering a networked virtual environment communications...
Post on 20-Dec-2015
221 views
TRANSCRIPT
School of Computer Science and Software Engineering
A Networked Virtual Environment Communications Model using Priority Updating
Monash University
Yang-Wai ChowRonald PoseMatthew Regan
Overview
• Introduction• Design challenges• Related work• Motivation• System framework• Experimental results• Conclusion
• Networked Virtual Environments (net-VEs) create shared environments where multiple users can interact together through a shared sense of Presence Space Time Communication, etc.
• These multiple users who might be physically located all over the world, can interact with each other in real-time across vast distances
Networked Virtual Environments (net-VEs) are real-time simulations of synthetic virtual worlds where multiple users may interact together
Introduction
• Net-VEs are being used in a variety of different fields ranging from education and training, for engineering and design, for commerce, entertainment, etc.
• Advances in the various aspects of technology (e.g. graphics engines, display devices, faster processors, etc.) has made it possible for such virtual environments to be adequately represented on the standard PC
• This has lead to an influx in the number of virtual environment users among the general public
• The growing popularity of net-VEs has resulted in the demand for very large scale net-VE applications where thousands of users can participate in the virtual world
The increasing popularity of networked virtual environment applications nowadays, has lead to the development of very large scale virtual worlds
Large scale net-VEs
• Net-VE developers are faced with many design challenges, for example: Limitations in networking resources Concurrency versus throughput Real-time interactivity versus consistency Scalability and so on…
• Often tradeoffs have to be made in balancing between various net-VE characteristics
• Many of these issues have to do with the amount of information being transmitted between the various participating systems
The performance, usability and scalability of very large scale networked virtual environments are constrained by a number of different issues
Challenges in net-VE design
• As the number of participants of a net-VE increases, so does the amount of information required to be transmitted
• Distributed systems are face with networking issues such as: Latency Bandwidth Computational power
• This highlights the need for efficient network communication models, in order to decrease the quantity of message exchanges whilst maintaining reasonable consistency
Net-VE developers are presented with the challenge of having to design efficient network communication models around the limited networking resources
Network constraints
• Related WorkDIS standardDead reckoningArea-of-Interest (AOI)Visibility culling
• The SIMNET system– One of the earliest large scale net-VEs
– Developed within the US department of defense for distributed military training simulations
– Lead to the establishing of the Distributed Interactive Simulation (DIS) standard
• The DIS software architecture introduced the Protocol Data Unit (PDU) in order to regulate data exchange between participating systems
• A number of dead reckoning algorithms were also defined by the DIS standard to reduce the overall amount of message exchanges
A number of existing net-VEs have adopted various strategies to govern the exchange of shared virtual environment data
Related work
Some net-VEs take advantage of the virtual world spatial characteristics in order to reduce the amount of network communication channels and decrease the amount of network traffic
• SPLINE system uses the concept of locales• NPSNET introduced Area-of-Interest (AOI) Management
– Network communication channels are only established between neighboring systems/areas
Spatial exploits
At time t At time t + 1
• The RING system is an example of a client/server net-VE system that only sends updates for objects that can be seen by the client
• The state of objects that were occluded by walls or outside the user’s viewing range were culled from the message updates, thus reducing the amount of information exchange
Other net-VEs have used visibility as a criterion for determining whether to update a particular object over the network
Visibility culling
• System DesignMotivation – The Address Recalculation
Pipeline and Region Priority RenderingThe Priority Updating Model
The priority updating network communications model presented in this paper is based on a rendering technique known as Priority Rendering
• Priority Rendering is a rendering technique designed for use in conjunction with an Address Recalculation Pipeline (ARP) virtual reality system
• The Address Recalculation Pipeline is a hardware graphics architecture specifically designed for use in immersive Head Mounted Display (HMD) virtual reality to reduce the latency suffered by such systems
• The purpose of priority rendering was to reduce the overall rendering load for the Address Recalculation Pipeline system
Motivation
In Priority Rendering different sections of the scene can be rendered onto separate display memories which can be updated at different update rates
• Priority rendering is based on the concept of Image Composition• Different section of the scene rendered on separate display
memories can be combined to form an image of the whole scene
Image Composition
Using Region Priority Rendering, different regions of the virtual world can be updated at different update rates
Region Priority Rendering
• Objects in the regions were assigned to the display memories with the different update rates based on spatial locality
• Regions closer to the user were therefore updated at higher update rates compared to regions further away
• This succeeded in reducing the overall rendering load, whilst still maintained an illusion of reality within the virtual world
For the purposes of network communications, priority updating allowed different regions of the virtual world to be updated over the network at different update rates
• Priority updating involved spatially divide the virtual world into equal-sized regions
• The regions must comfortably cover the entire virtual world without leaving any gaps or overlapping
• The choice of region shapes can affect the number of neighboring region contacts
System Framework
Objects in the neighboring regions were updated at different update rates depending on how close the regions were with respect to the user
• Note that the user’s interaction range is different from the user’s viewing range
• All objects within the user’s viewing range are still updated
Priority updating
Update strategies can be adjusted to suit the requirements of a particular net-VE application
• Rather than updating everything within the user’s viewing range at the same update rate every update cycle, priority updating allowed different regions to be updated at different update rates
• Other region updating strategies may also be adopted depending of the adequate update rate required by the particular net-VE application in question
Update rate strategies
The implementation of priority updating is possible because in typical net-VE applications a user can only interact with objects immediately surrounding the user
• Less accurate representation of distant objects are tolerable because the user cannot interact with distant objects
• Using priority updating distant objects are still represented although updated less frequently, thus maintaining an illusion of a large and extensive viewing range
• By the time the user moves close enough to interact with previously distant objects, these objects would now be updated at high update rates
Different update rates
• Experimental Results
Experimental simulations implementing the priority updating network communications model were conducted on a client/server system
Experimental simulation
Objects in the different regions were updated over the network at different update rates
Different region update rates
The implementation of the priority updating model succeeded in reducing the overall amount of message updates
0
10
20
30
40
50
60
70
80
0 5000 10000 15000 20000 25000 30000Simulation Update Cycles
Ave
rag
e N
um
ber
of
Ob
ject
s U
pd
ated
Without update strategy
Update strategy 1
Update strategy 2
Average number of objects updates
• The priority updating model reduced the amount of information exchanged thus also decreasing the overall network traffic and bandwidth utilization of the system
Percentage savings
0
10
20
30
40
50
60
70
80
90
100
0 5000 10000 15000 20000 25000 30000
Simulation Update Cycles
Per
cen
tag
e S
avin
gs
(%)
Update strategy 1
Update strategy 2
• The amount of savings in message exchanges depends on the adopted update strategy
The use of regions also allows for the possibility of distributing and managing the virtual world over multiple servers
• Multiple servers can be used to share the load of managing objects/entities within the large virtual worlds
• This further enhances the scalability of the net-VE system
Multiple servers
• The suitability of the priority updating model depends of the particular net-VE application
• Efficient dead reckoning algorithms can be used to smoothen the representation of distant objects between updates
• System can also be modified to implement a peer-to-peer system
Conclusions
Questions
or
Suggestions?