1 of 20

RV - AULA 08 - PSI3502/2022

Networked VR

2 of 20

Outline

Networked VR systems are used to power distributed VE. Such environments can be deployed over various types of computer networks including Local Area Networks (LAN) and Wide Area Networks (WAN) such as Internet.

We will discuss:

  • The architecture of the network, and
  • The method of synchronization of the state of VE.

In addition, we will talk a bit about web-based VR solutions.

3 of 20

Networked VE

Also known as “Cyberspace”.

Networked VE are a form of distributed computer systems.

4 of 20

Applications of Networked VE

  • Military simulations
  • Telepresence / Teleconferencing
  • Distance learning
  • Online communities
  • Entertainment, etc.

5 of 20

Distributed Environment Issues

  • How to maintain the consistency of VE
  • The speed of data transfer and latency of the network
  • Compatibility of systems running VE
  • Heterogeneity of system running VE
  • Failure management methods, etc.

6 of 20

Architectures

Serverless systems, such as P2P.

Centralized server-based architectures: small single server systems, multi-server systems, very large coordinated multi-server platforms.

7 of 20

Serverless Architectures

The serverless architectures have no dedicated server to facilitate the exchange of data. Instead, the network consists of equal peers, which need to communicate very directly.

https://youtubemusicsucks.com/peer-to-peer-p2p-networks-explained/

8 of 20

Peer-to-Peer Pros and Cons

Pros:

No single point of failure of the system.

No central communication bottleneck.

Cons:

Management difficulty.

Issues with bandwidth size.

9 of 20

Single Server Architecture

This architecure makes the network less complex and reduces the amount of the needed updated messages. However, the server becomes the critical point in the architecure.

https://security.stackexchange.com/questions/166188/p2p-network-how-to-determine-the-main-server

10 of 20

Multi-Server Architecture

http://help.autodesk.com/view/VAULT/Help/ENU/?guid=GUID-329BDED8-B76E-42A5-AAF1-2ADA4BC0C1BF

11 of 20

Coordinated Multi-Server Architecture

Coordinated multi-server architecture is an extension of standard multi-server solutions in order to accomodate a very large number of servers.

This network architecture relies on a hierarchy of servers.

This approach is used for very large distributed systems.

Example: Google Search Engine.

12 of 20

Coordinated Multi-Server Architecture Pros and Cons

Pros:

Dynamic sharing of the workload between clusters of servers and individual servers within one cluster and a large redundancy.

Cons:

Very complex network structure, as communication between servers within clusters needs to be treated separately from the communication between clusters and between servers and client machines.

13 of 20

State Synchronization

Different synchronization strategies are chosen depending on the type of the distributed system. These strategies can be grouped in three big categories:

  • Shared repository
  • Frequent state regeneration
  • Dead reckoning (predição de navegação)

14 of 20

Shared Repository

In this method, individual clients send the information about the changes that they have made in the VE to the server and receive from the server the updates about the changes made by others.

15 of 20

Frequent State Regeneration

Clients or peers need to broadcast the update information to every other node in the network. In order to maintain the true state synchronization, these updates needs to be frequent and in regular time intervals.

16 of 20

Dead Reckoning (previsão de trajetória)

Dead reckoning refers to a class of algorithms that are typically employed to predict the state of objects and mitigate the effects of network latencies for clients in a networked game to improve player experience.

Each client or peer in the network maintains its own copy of VE. However, state updates between nodes are relatively rare. The fusion of data predicted by an individual client with the actual data is known as convergence.

17 of 20

WEB 3D (https://www.web3d.org/)

https://3dxplorer.wordpress.com/2008/09/10/meet-in-3d-where-web3d-meets-web-30/

18 of 20

X3D

X3D is a member of the XML family of markup languages. It was designed specifically to be easily integrated into HTML documents and interpreted by HTML-enabled browsers.

http://plugins.netbeans.org/plugin/6191/x3d-edit

19 of 20

WebGL

WebGL is a JavaScript API that supports rendering of interactive 3D graphics.

http://labotech.dmm.com/entry/2016/06/30/122403

20 of 20

Referências

Virtual Reality and Virtual Environments in 10 Lectures - Stanislav Stankovic.

A. L. Ames, D. R. Nadeau, J. L. Moreland, VRML 2.0 Sourcebook, Wiley, Second edition, December 2006.

E. Lengyel, Mathematics for 3D Game Programming And Computer Graphics, Second Edition. Charles River Media, 2004.

T. Parisi, WebGL: Up and Running, O’Reilly Media, Inc., August 2012.

S. Singhal, M. Zyda, Networked Virtual Environments: Design and Implementation, Addison-Wesley Professional, July 1999.

https://www.web3d.org/