Download presentation
Presentation is loading. Please wait.
Published byJoel Fisher Modified over 9 years ago
1
Networked Graphics Building Networked Virtual Environments and Networked Games Chapter 11: Latency and Consistency
2
LATENCY IMPACT
3
Client A Client B CarA A=1, V=0 Car B A=1, V=0 CarA A=1, V=1 CarA A=1, V=2 CarA A=1, V=3 Car B A=1, V=1 Car B A=1, V=2 Car B A=1, V=3 Car A Car B Car A Car B
4
Can’t apply open state Door is Open & Locked Client A Client B Lock DoorOpen Door Door is Closed & Unlocked Door is Closed & Locked Door is Closed & Unlocked Door is Open & Unlocked
5
Client A Client B Server Shooter (Player A ) Target (Player B )
6
Client A Client B Server Shooter (Player A ) Target (Player B )
7
DUMB CLIENT AND LOCKSTEP SYNCHRONISATION
8
Quake Client A Read Input Rendering Quake Server Receive Input Simulate Quake Client B Read Input Rendering Mouse Keyboard Draw Lists, Game State Mouse Keyboard Draw Lists, Game State
9
CONSERVATIVE SIMULATIONS
10
Doom Client A Read Input Rendering Receive Input Simulate Doom Client B Read Input Rendering Receiv e Input Simulate Doom Client C Read Input Rendering Receive Input Simulate
11
Client A Message I Client=B Time=11.1 Message I+1 Client=C Time=13.5 Message I+2 Client=B Time=13.6 Message I+3 Client=C Time=18.0 Message I+4 Client=D Time=18.2 Client B Client C Client D Message Queue
12
TIME
13
Event Explode is delay at Client C until after Event Fire Client A Client B Client C Event Fire Event Explode
14
Client A Client B Client C Event Fire (0,1,0) Event Explode (1,1,0) Event Fire (2,1,1) Event Explode (2,1,0)
15
OPTIMISTIC ALGORITHMS
16
Client A Client B Lock Door Open Door Client C Add Zombies Remove Zombies Close Door t0t0 t1t1 t2t2 t3t3 t4t4
17
CLIENT PREDICT AHEAD
18
Client A Server P0P0 P1P1 Move P 0 to P 1 Move? P 1 to P 2 Move? P 2 to P 3 Move? P 3 to P 4 Move? P 0 to P 1 Move P 1 to P 2 Move P 2 to P 3 P2P2 P1P1 P3P3 P2P2 P4P4 P3P3 P0P0 P1P1 P2P2 P1P1 P3P3 P2P2
19
Client A Server P0P0 P1P1 Move P 0 to P 1 Move? P 1 to P 2 Move? P 2 to P 3 Move? P 0 to P 1 FailMove P 1 to Q 1 FailMove P 1 to Q 1 P2P2 P1P1 P3P3 P2P2 Q1Q1 P0P0 P1P1 Q1Q1 P1P1 P3P3 P2P2 Q1Q1
21
EXTRAPOLATION ALGORITHMS
22
1 st Order Model
23
2 nd Order Model
24
a) Player model sending three updates b) Ghost model path without blending toto t1t1 t2t2 c) Old ghost model and new ghost model at t 1
25
d) Blending between the old ghost and new ghost over several frames e) Ghost model path with blending
26
a) Old ghost position at t 0, new ghost position at t 0 and new ghost position at t 0 +t t0t0 New ghost t 0 +t New ghost t 0 Old ghost t 0 b) Dotted line shows the planned path to reach the target position and direction
27
a) Player model showing the timings of dead-reckoning updates at the peaks of a periodic motion Update at t 0 Update at t 1
28
b) On arrival of an update message, the ghost model plans to converge the current ghost model position with an extrapolation of the received position Correct player model path Convergence path Ghost model location at t 0 Player model update at t 0 Extrapolation of player model
29
c) On the next update message the ghost model is out of phase with the player model. T
30
toto t1t1 Player model update at t 1 a) Player model showing the object avoiding the wall Path of ghost model after update at t 0 b) After the update at t1 the ghost model cannot converge
31
2 nd Order Model with Error Threshold
32
INTERPOLATION, PLAYOUT DELAYS AND LOCAL LAG
33
SenderReceiver P1P1 P2P2 P3P3 P4P4 t1t1 t2t2 t3t3 t4t4
34
P0P0 P1P1 P2P2 P3P3 t0t0 t1t1 t2t2 t3t3 Interpolate P 0 →P 1 Playout delay
35
SenderReceiver P1P1 P2P2 P3P3 P4P4 t1t1 t2t2 t3t3 t4t4 t5t5 t6t6
36
t0t0 t1t1 t2t2 t3t3 Interpolate P 0 →P 1 Maximum latency P0P0 P1P1 P2P2 P3P3 Playout delay Sender Client A Client B
37
t0t0 t1t1 t2t2 t3t3 Interval (Tα) E A1 Playout delay (T ) Client A Client B Client C E C1 E C2 E B1 E B2 t4t4
38
PERCEPTION FILTERS
39
Client A Client B
40
x position 1.0 T network Added delay
41
Time 1.0 x position 1.0 2. 0 3.04.0
42
Time 1.0 x position 1.0 2.03.04.0 a) Both clients’ view of the ball x position using temporal corrections x position of ball as seen from Client A x position of ball as seen from Client B
43
Time 1.0 x position 1.0 2.03.04.0 b) Both clients’ view of the ball x position without using temporal corrections x position of ball as seen from Client B x position of ball as seen from Client A
44
REVEALING LATENCY
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.