Special Course on Networked Virtual Environments February 26, 2004 Jouni Smed 1
Exploiting Level Exploiting Level-
- of
- f-
- Detail Perception
Detail Perception
- Nearby viewers
Nearby viewers
- expect full graphical
expect full graphical details details
- accurate structure, position, orientation
accurate structure, position, orientation
- update rate
update rate → → local frame rate local frame rate
- Distant viewers
Distant viewers
- can tolerate
can tolerate less less graphical graphical details details
- less accurate structure, position, orientation
less accurate structure, position, orientation
- User’s focus is typically nearby
User’s focus is typically nearby
- Many inaccuracies cannot even be detected on a fine
Many inaccuracies cannot even be detected on a fine-
- resolution display
resolution display
AMultiple Multiple-
- Channel Architecture
Channel Architecture
- Multiple independent data channels for each entity
Multiple independent data channels for each entity
Low Low-
- resolution channel
resolution channel
( (x x, , y y) ) ( (x x, , y y) )
High High-
- resolution channel
resolution channel
High High-
- frequency,
frequency, high high-
- bandwidth
bandwidth information information Low Low-
- frequency
frequency, , low low-
- bandwidth
bandwidth information information
⇒ ⇒The overall bandwidth The overall bandwidth requirements are reduced requirements are reduced
Implementation Examples Implementation Examples
- Client
Client-
- server
server
- each transmission identifies its channel
each transmission identifies its channel
- server dispatches data from channels to clients
server dispatches data from channels to clients
- Multicast group for each region
Multicast group for each region
- assign multiple
assign multiple addresses addresses for each region for each region
- ne group provides all of the entities’ high
- ne group provides all of the entities’ high-
- resolution channels,
resolution channels, another group provides all of the entities’ low another group provides all of the entities’ low-
- resolution channels
resolution channels
- Multicast group for each entity
Multicast group for each entity
- assign multiple
assign multiple addresses addresses for each entity for each entity
- Different reliabilities to each channel
Different reliabilities to each channel
- low
low-
- frequency updates are
frequency updates are important important
- lost packets can have a significant impact
lost packets can have a significant impact
Selecting the Channels to Provide Selecting the Channels to Provide
- How many channels to provide for an entity?
How many channels to provide for an entity?
- more channels: better service for subscribers
more channels: better service for subscribers
- each channel imposes a cost (bandwidth and
each channel imposes a cost (bandwidth and computational) computational)
- To satisfy the
To satisfy the trade trade-
- off
- ff, three channels for each entity
, three channels for each entity is typically needed is typically needed
- channels
channels provide order provide order-
- of
- f-
- magnitude differences in
magnitude differences in
- structural and positional accuracy
structural and positional accuracy
- packet rate
packet rate Rigid Rigid-
- body channel
body channel Approximate Approximate-
- body channel
body channel Full Full-
- body channel
body channel Far Far-
- range viewers
range viewers Mid Mid-
- range viewers
range viewers Near Near-
- range viewers
range viewers
Rigid Rigid-
- Body Channel
Body Channel
- Demands the least bandwidth and computation
Demands the least bandwidth and computation
- Represents the entity as a rigid body
Represents the entity as a rigid body
- Ignores changes in the entity’s structure
Ignores changes in the entity’s structure
- Update types:
Update types:
- position
position
- rientation
- rientation
- structure
structure
Approximate Approximate-
- Body Channel
Body Channel
- More frequent position and orientation updates
More frequent position and orientation updates
- Hosts can render a rough approximation of the entity’s
Hosts can render a rough approximation of the entity’s dynamic structure dynamic structure
- appendages and other articulated parts
appendages and other articulated parts
- Provided information is entity
Provided information is entity-
- specific
specific
- corresponds
corresponds to the dominant changes of the structure to the dominant changes of the structure