§9.4 Local Perception Filters §9.4 Local Perception Filters Exploiting Exploiting Perceptual Limitations Perceptual Limitations � exploiting human’s perceptual limitations exploiting human’s perceptual limitations � Humans Humans have have inherent perceptual limitations inherent perceptual limitations � � � level level- -of of- -detail: less details where they cannot be observed detail: less details where they cannot be observed � � image, video and audio compression image, video and audio compression � � local perception filters local perception filters � � exploits temporal perception exploits temporal perception � � shows possibly out shows possibly out- -of of- -date information ( ≠ dead reckoning) date information ( ≠ dead reckoning) � � ensures consistent interaction ensures consistent interaction � � allows to introduce artificial delays (e.g., bullet time) allows to introduce artificial delays (e.g., bullet time) � Two approaches to exploit Two approaches to exploit � Information can provided at multiple levels of detail and at Information can provided at multiple levels of detail and at � different update rates different update rates � Mask the timeliness characteristics of information Mask the timeliness characteristics of information � Exploiting Level- -of of- -Detail Perception Detail Perception Multiple- -Channel Architecture Channel Architecture Exploiting Level Multiple � Nearby viewers Nearby viewers � Multiple independent data channels for each entity Multiple independent data channels for each entity � � � expect full graphical expect full graphical details details � � accurate structure, position, orientation accurate structure, position, orientation � Low- Low -resolution channel resolution channel → local frame rate � update rate update rate → local frame rate � Low- Low -frequency frequency, , ( ( x x , , y y ) ) ( ( x x , , y y ) ) � Distant viewers Distant viewers low low- -bandwidth bandwidth � information information � can tolerate can tolerate less less graphical graphical details details � High- High -resolution channel resolution channel � less accurate structure, position, orientation less accurate structure, position, orientation � High High- -frequency, frequency, high high- -bandwidth bandwidth � User’s focus is typically nearby User’s focus is typically nearby information information � � Many inaccuracies cannot even be detected on a fine Many inaccuracies cannot even be detected on a fine- - � resolution display resolution display ⇒ ⇒ The overall bandwidth The overall bandwidth requirements are reduced requirements are reduced A Implementation Examples Selecting the Channels to Provide Implementation Examples Selecting the Channels to Provide � Client Client- -server server � How many channels to provide for an entity? How many channels to provide for an entity? � � � each transmission identifies its channel each transmission identifies its channel � � more channels: better service for subscribers more channels: better service for subscribers � � server dispatches data from channels to clients server dispatches data from channels to clients � � each channel imposes a cost (bandwidth and each channel imposes a cost (bandwidth and � � Multicast group for each region Multicast group for each region � computational) computational) � assign multiple assign multiple addresses addresses for each region for each region � � To satisfy the To satisfy the trade trade- -off off, three channels for each entity , three channels for each entity � � one group provides all of the entities’ high one group provides all of the entities’ high- -resolution channels, resolution channels, � is typically needed is typically needed 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 � � channels channels provide order provide order- -of of- -magnitude differences in magnitude differences in � � assign multiple assign multiple addresses addresses for each entity for each entity � � structural and positional accuracy structural and positional accuracy � � packet rate packet rate � � Different reliabilities to each channel Different reliabilities to each channel � Rigid Rigid- -body channel body channel Far- Far -range viewers range viewers � low low- -frequency updates are frequency updates are important important � Approximate Approximate- -body channel body channel Mid- Mid -range viewers range viewers � lost packets can have a significant impact lost packets can have a significant impact � Full Full- -body channel body channel Near- Near -range viewers range viewers 1
Rigid- Rigid -Body Channel Body Channel Approximate- Approximate -Body Channel Body Channel � Demands the least bandwidth and computation Demands the least bandwidth and computation � � More frequent position and orientation updates More frequent position and orientation updates � � Represents the entity as a rigid body Represents the entity as a rigid body � � Hosts can render a rough approximation of the entity’s Hosts can render a rough approximation of the entity’s � � Ignores changes in the entity’s structure Ignores changes in the entity’s structure � dynamic structure dynamic structure � Update types: Update types: � � appendages and other articulated parts appendages and other articulated parts � � position position � � orientation orientation � Provided information is entity Provided information is entity- -specific specific � � � structure structure � � corresponds corresponds to the dominant changes of the structure to the dominant changes of the structure � Common Approximations Full- -Body Channel Body Channel Common Approximations Full � Radial length Radial length � � Highest level of detail Highest level of detail � � motion towards and away from a motion towards and away from a � Radius Radius centre point centre point � High bandwidth and computational requirements High bandwidth and computational requirements � � update packets include the update packets include the � � viewer viewer can subscribe to a limited number of full can subscribe to a limited number of full- -body body channels channels current radius current radius � � Articulation vector Articulation vector � � Frequent transmissions Frequent transmissions � � the current direction of the the current direction of the � appendage appendage � Position and orientation Position and orientation � � models a rotating turret, arms and models a rotating turret, arms and � legs legs � Accurate structure information Accurate structure information � � Local co Local co- -ordinate system points ordinate system points � � subset of the entity’s significant subset of the entity’s significant � vertices relative to the entity’s vertices relative to the entity’s local co- local co -ordinate system ordinate system � the entity is composed of the entity is composed of � multiple components multiple components Local Perception Filters (LPFs) Active and Passive Entities Local Perception Filters (LPFs) Active and Passive Entities � introduced by Sharkey, Ryan & Roberts (1998) introduced by Sharkey, Ryan & Roberts (1998) � An active An active entity (i.e., player) entity (i.e., player) � A passive entity A passive entity � � � � takes actions on its own takes actions on its own � reacts to events from the reacts to events from the � a method for hiding communication delays in networked a method for hiding communication delays in networked � � � environment, does not generate environment, does not generate virtual environments � generates updates generates updates virtual environments � its own actions its own actions � human participants, computer human participants, computer- - � � exploits the human perceptual limitations by rendering entities exploits the human perceptual limitations by rendering entities � � inanimate objects (e.g., rocks, inanimate objects (e.g., rocks, controlled entities controlled entities � slightly out- slightly out -of of- -date locations based on the underlying network date locations based on the underlying network balls, books) balls, books) � cannot be predicted typically cannot be predicted typically � delays delays � active entities interact with active entities interact with � � rendered using state updates rendered using state updates � passive entities passive entities � causality of events is preserved causality of events is preserved � adjusted for the latency adjusted for the latency � rendered according to the latency rendered according to the latency � rendered view may have temporal distortions rendered view may have temporal distortions � � of its nearest active entity of its nearest active entity � rendered view ≠ real view rendered view ≠ real view � � reacts reacts instantaneously to instantaneously to the the � actions of actions of a nearby a nearby active entity active entity 2
Recommend
More recommend