Supporting Spectators in Online Multiplayer Games - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Supporting Spectators in Online Multiplayer Games

Description:

Supporting Spectators in Online Multiplayer Games. Ashwin Bharambe (CMU) ... Spectators in Online Games. Why? natural extension of TV model for physical games ... – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 26
Provided by: VenkatPad6
Category:

less

Transcript and Presenter's Notes

Title: Supporting Spectators in Online Multiplayer Games


1
Supporting Spectators in Online Multiplayer Games
  • Ashwin Bharambe (CMU)
  • Venkat Padmanabhan (Microsoft Research)
  • Srinivasan Seshan (CMU)
  • HotNets 2004

2
Spectators in Online Games
  • Why?
  • natural extension of TV model for physical games
  • greater participation, opportunity to improve
    skills
  • advertising opportunities
  • Spectating
  • enabling users to watch the proceedings of a game
  • spectators gtgt players
  • Cheering
  • enabling spectators to cheer the players
  • audio-based cheering may be most natural
  • cheers are heard by players and other spectators

3
(No Transcript)
4
Terminology
  • Virtual game world divided into game views
  • Each game view consists of a set of entities
  • Each entity has several attributes
  • An update of the game view comprises a frame

5
Spectating versus A/V streaming
raw user input
Computation
entity-level updates
bitmaps (like A/V)
Bandwidth
6
Spectating versus A/V streaming
  • Spectating
  • 1 disaggregation into entities
  • 2 persistence of game state
  • 3 multiple camera views
  • 4 flexible bandwidth adaptation
  • A/V streaming
  • bitmaps rather than entities
  • limited flexibility

7
1 Disaggregation
  • Each entity has a distinct identity
  • Spectating stream comprises a stream of updates
    for the individual entities
  • Differential importance of entities and
    attributes
  • race car gt debris gt billboard
  • position update gt scratch or dent
  • Enables flexible loss recovery and bandwidth
    adaptation

8
2 Persistence
  • Game state is persistent
  • entities continue to exist until destroyed
  • Selective patching
  • mask lost update for an entity by reusing or
    extrapolating state from previous update
  • Reliable updates
  • e.g., entity creation and deletion

9
3 Multiple Camera Views
  • Easy to generate
  • e.g., each players view, birds eye view
  • predefined views or spectators choice
  • Overlapping views
  • shared substreams to save bandwidth
  • Switching between views

10
4 Bandwidth Adaptation
  • Adaptation important for multiple reasons
  • bandwidth heterogeneity
  • congestion
  • Disaggregation permits flexible strategies that
    conform to good behavior
  • temporal subsampling
  • reduced update frequency
  • interpolation can mask artifacts to an extent
  • spatial subsampling
  • reduced field of view
  • subsampling can be based on location, importance,
    etc.

11
Spectating Design Outline
  • Assumption server-based game
  • popular architecture for low-latency action games
  • Game-specific spectating client
  • typically derived from the players version
  • includes game-specific optimizations (e.g., fast
    physics and rendering engines)
  • Generic communication library
  • end-host-based overlay multicast
  • multi-tree architecture for resilience (CoopNet)

12
Spectating System Architecture
Server
Spectators
Players
13
Design Elements
  • 1 Distributed delta encoding
  • 2 Reliable message delivery
  • 3 Bandwidth adaptation

14
1 Delta Encoding
  • Typically only a small number of entities change
    from one frame to the next
  • Delta encoding for server-player communication
  • server only sends updates for entities that
    changed
  • significant bandwidth savings (Quake 3 Mbps ?
    200 Kbps)
  • more efficient than frame differencing in A/V
    context
  • Reference frame for delta encoding
  • most recent frame is typically the best
  • sometimes older frame works better (e.g.,
    periodic events)

15
Distributed Delta Encoding
  • Key challenge
  • little direct server-spectator communication
  • each spectators state might be different
  • Solution distributed delta encoding
  • hop-by-hop delta encoding
  • parent computes delta with frames in common with
    child
  • disaggregation makes this cheap compared to say
    hop-by-hop transcoding
  • optimistic delta encoding
  • assume that most recent frame is available at
    child
  • recompute appropriate delta if assumption is
    invalid

16
2 Reliable Message Delivery
  • Persistence ? certain missing updates can have
    lingering effect
  • entity creation deletion
  • e.g., bumper breaking off car
  • Reliable message delivery
  • certain updates marked as reliable
  • not subsumed by later updates when computing
    delta
  • Optimization
  • later update can cancel earlier one
  • e.g., entity creation followed by deletion
  • avoids flooding new spectator with useless updates

17
3 Bandwidth Adaptation
  • Goal flexibility while conforming to good
    behavior
  • Temporal subsampling
  • receive updates at reduced frequency
  • interpolation can mask jerkiness for certain
    attributes
  • delta encoding becomes less effective
  • Spatial subsampling
  • receive updates for only a subset of entities
  • spatial ? location, view, importance, etc.
  • spectating stream quality undiminished for chosen
    subset
  • Temporal spatial subsampling for max flexibility

18
Mechanisms
  • Striping
  • multiple distribution trees
  • different substream transmitted down each tree
  • Filtering
  • single logical tree
  • parent transmit filtered stream to child
  • Key tradeoff
  • neither mechanism by itself is efficient
  • pure striping ? lots of p2p relationships to be
    maintained
  • pure filtering ? cumbersome
  • Proposal
  • temporal striping spatial filtering

19
Spatial Striping
S
S
S
S
1
1
2
1
1
20
Temporal Striping
S
S
S
S
1
1
2
1
1
21
Filtering
S
1
2
22
Temporal Striping Spatial Filtering
S
S
S
S
1
1
1
1
3
2
2
2
2
23
Cheering
  • Audio is most natural medium for cheering
  • Key differences compared to A/V conferencing
  • minimal floor control (simultaneous cheers)
  • less stringent delay requirements
  • different combination of cheers for each player
  • Alternatives
  • fake cheers based on 1-bit from each spectator
  • hard to accommodate diversity in language,
    accent, phrases
  • composite cheering stream with in-network
    aggregation
  • Can we recreate the stadium experience?

24
Open Issues
  • Spectating can enable cheating
  • not an issue for certain games (e.g., sports)
  • delay can blunt cheating potential for some games
    (e.g., first-person shooter)
  • but this might make cheering less effective
  • cheating is a real possibility for slow, strategy
    games
  • but perhaps spectating is not so interesting for
    these anyway
  • Metric for measuring spectating quality
  • entities rather than bits are what count
  • classical PSNR needs to be rethought

25
Conclusion
  • Spectating cheering present an interesting set
    of challenges
  • Commonality and differences compared to classical
    applications (e.g., A/V streaming)
  • Unique opportunities for optimization
Write a Comment
User Comments (0)
About PowerShow.com