+ All Categories
Home > Documents > Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer...

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer...

Date post: 27-Dec-2015
Category:
Upload: mark-blair
View: 216 times
Download: 0 times
Share this document with a friend
Popular Tags:
32
riad Scalable Scene Graph, VRST 2005, Monterey, CA ad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin Schaeffer Peter Brinkmann George Francis Camille Goudeseune Jim Crowell Hank Kaczmarski Integrated Systems Lab University of Illinois Urbana-Champaign
Transcript
Page 1: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Myriad: Scalable VR via Peer-to-Peer Connectivity,PC Clustering, and Transient Inconsistency

Benjamin SchaefferPeter BrinkmannGeorge Francis

Camille GoudeseuneJim Crowell

Hank Kaczmarski

Integrated Systems Lab

University of Illinois Urbana-Champaign

Page 2: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Syzygy: PC Cluster Virtual Reality

In production use at 3 PC Cluster CAVEs at the Integrated Systems Lab.3.5 years of continuous psychology experiments using PC Cluster CAVEs.Over 5 years of development. First release September 2000.70,000 words of documentation.

InexpensiveHigh performanceFocus on quality cluster synchronizationCross-platform: Windows, Linux, Mac OS X, SGI

OPEN SOURCE

Page 3: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Peer-to-Peer Reality (Terms)

Myriad operates using a network of reality peers, each of which holds a scene graph.

Scene graph updates are messages that travel the peer network, altering peers as they go.

The network uses connection feedback to reduce message traffic between peers.

Further message filtering (on peer connections) occurs because of fine-grained sharing and reality maps, which enable complex relationships between peers, such as subjective views.

Fine-grained sharing means that the sharing properties are controllable down to the level of theindividual scene graph node.

A reality map relates scene graph nodes in connected peers.

Transient inconsistency means that connected peers can drift into and out of agreement with oneanother, based both on user and system action.

The system is highly threaded and so must be fully thread safe.

Page 4: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Applications

Collaborative editing of 3D worlds, particularly of large scale environments.Potential uses in the animation industry, for instance.

3D collaboration across systems with very heterogeneous network, compute,and graphics resources.

The future… what would terascale or petascale virtual reality look like? How about a decentralized, ad hoc network with sufficient power and storageto recreate the world?

Page 5: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

WorldWideCrowd: Demo Configuration

Can be easily set up because the peer network is scriptable in Python.

Page 6: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Multiple views

3D manipulation

Python-basedmanipulation

Many-to-Many Collaboration

Page 7: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Peer 1

Peer 5

Peer 2

Peer 4

Peer 3

Peer connection

Messages discarded here.

Peer Network: Handling Connection Cycles

Page 8: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Peer 1

Peer 2

ConsistencyProcess

Time

TransientInconsistency

Page 9: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Late-Joiner State Transfer: Transient Inconsistency

Avatar canmove while stateis transferred inbackground.

Thread safety

Time

Page 10: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Myriad Scene Graph

points1

normals1

colors1 colors2

drawable(triangles)

drawable(triangles)

points1normals1colors1

points1normals1colors2

Node Types

transformtexturebounding spherebillboardvisibilityblendlightmaterialgraphics statenormal3color4tex2indexpointsdrawablepersp cameraviewer

Geometry

Page 11: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Node levels

1. Structure2. Stable3. Optional4. Transient

Data flow between top nodes

Stable Stable

Outbound filter:Structure

Outbound filter:Transient

Reality maps not necessarily “onto”.

Reality Map: Node Levels and Outbound Filters

Fine-grained Sharing

Page 12: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Peer 1 Peer 2

Map filter:Transient

Limb transform nodeshave transient level.

Message Filtering: Transient NodesConnection feedback and Fine-grained sharing

1. Connected peers send one another their framerates.2. Each transient node keeps track of when it last sent an update to each connected peer.3. Message send rate throttled to framerate by filtering.

Page 13: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

A merging algorithm is needed because graph isomorphism is a difficult problem. The system must support partial sharing (subjective views, transient inconsistency, connection feedback).

1. Assume parent node is mapped.2. Given a local child node. a. If it is not a name node, search below the parent node’s image for an unmapped node of the same name and type. b. If it is a name node, search below the parent node’s image for an unmapped name node.3. If a node is found on the remote peer, extend the map.4. If no node is found, create a new node on the remote peer and extend the map.

The mapping process can also transfer node contents (depending on node level and mapping level).

Local Peer Remote Peer(image)

Mapping direction

Constructing Reality Maps: Merge Algorithm

Page 14: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

1. When a peer receives a message, update the message’s internal history. Discard the message if it has already visited this peer.2. If the message is from a mapped node, use the reality mapping to determine its local destination, altering the message (which stores its destination node ID).3. Discard if the message goes to a locked node, but its origin is not the lock’s owner.4. Update the local peer’s scene graph.5. If the message creates or deletes nodes, update the inbound reality map (for the incoming connection) and the outbound filters (on all other connections). Note that the “merge” algorithm uses node creation messages.6. Return node mapping information back to the sending peer upon node creation.7. Send to connected peers if conditions on node level/ mapping level and transient node updates are met.

Inbound Reality Map(translates between node IDs)

Peer Connection

Message Filtering Algorithm

Outbound filter(discard based on node level)

Page 15: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Subjective ViewsD

iffere

nt a

vata

rsTransient Inconsistency

Page 16: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Subjective ViewsD

iffere

nt A

nim

ati o

ns

Transient Inconsistency

Page 17: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Root

Material node

Transform nodes

Spheregeometry

Reality Map: Inserting Material Nodes

Page 18: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Root

Material node

Spheregeometry

Transform nodes

New material nodes

Peer connection

Peer

1Peer

2Reality Map: Inserting

Material Nodes

Page 19: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Peer 1 Peer 2

Reality Map: Inserting Transform Nodes

Torii rotate in each peer.

Page 20: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Peer Connection

Scalability: Peers on Underpowered Computers

Underpoweredcomputer

Page 21: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Time

Peer 1

Peer 2

Scalability: Peers on Underpowered Networks

Share only one avatarat a time, varying theavatar over time.

Slow network

Page 22: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Virtual Reality View

CAVE screenjunction…picture taken away fromviewpoint.

Page 23: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Smooth Pan Down into the CrowdConnection feedback, scalability

Time

Page 24: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Simulation peer

Motion culled from display peer

Display peer

Display wall: Connection feedback (motion culling)

Page 25: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Drawn for Tile 1 Culled from Tile 1

VR View: Scalable Tiled Wall

Page 26: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Editing this avatar.

Interactive Editing at the Python Prompt

Partial database listing.

Page 27: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

New texture. Command to make change.

Page 28: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Different transform.

Page 29: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Entirely new avatar.

Page 30: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Changing individual point position.

Fine-Grained Sharing

Page 31: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Python CollaborationThread safetyPeer 1 Peer 2

Page 32: Myriad Scalable Scene Graph, VRST 2005, Monterey, CA Myriad: Scalable VR via Peer-to-Peer Connectivity, PC Clustering, and Transient Inconsistency Benjamin.

Myriad Scalable Scene Graph, VRST 2005, Monterey, CA

Getting the Software

Source code and data to recreate the experiments described here can be downloaded from www.isl.uiuc.edu

DVDs with precompiled SDKs, source code, many demos, etc. areavailable here at VRST. Please ask! Everything necessary to recreate our lab’s operation.

Full documentation available on the lab website.


Recommended