Distribuerade VR-spel Vad är distribuerade spel?Vad är distribuerade spel? Vad är VR-spel?Vad är VR-spel?
Historik MUD (Multi-User Dimension)MUD (Multi-User Dimension) ForskningForskning Militära simulatorer, SIMNETMilitära simulatorer, SIMNET Enklare flygsimulatorerEnklare flygsimulatorer Doom, Quake m.fl.Doom, Quake m.fl.
Design av distribuerade VR-miljöer KompatibilitetKompatibilitet BandbreddBandbredd Distribuerad interaktionDistribuerad interaktion
Kommunikation Centraliserad modellCentraliserad modell –Begränsad antal deltagare Distribuerad modellDistribuerad modell –Stor meddelande trafik
Kommunikationstyper 2 spelare på ett LAN2 spelare på ett LAN Client-serverClient-server Client-server med multipla servrarClient-server med multipla servrar Peer-to-peerPeer-to-peer
2 spelare på ett LAN Spelare 1 LAN
Client-Server Server Spelare 1Spelare 2Spelare 3 Kommunikationsvägar
Client-Server med multipla servrar Spelare 2,1Spelare 2,2 Spelare 1,1Spelare 1,2 Spelare 3,1Spelare 3,2 Server 2 Server 3 Server 1
Peer-to-Peer Spelare 1 LAN Spelare 2Spelare n …
Kommunikation Nätverksfördröjning (latency)Nätverksfördröjning (latency) DatahanteringDatahantering SocketsSockets BroadcastingBroadcasting MulticastingMulticasting Hantering av delat tillståndHantering av delat tillstånd Minimering av paketenMinimering av paketen
Broadcast & Multicast RadiosändningRadiosändning TidningsdistributionTidningsdistribution
Hantering av delat tillstånd FilarkivFilarkiv Frequent state regenerationFrequent state regeneration Dead-reckoningDead-reckoning KollisionsdetekteringKollisionsdetektering
Protokoll för VR-miljö Den akademiskaDen akademiska –DIVE - Distributed Interactive Virtual Environment Den militära Den militära –DIS - Distributed Interactive Simulation Ad-hocAd-hoc –Nätverk spel
Arkitektur Object-event arkitekturObject-event arkitektur Autonoma simuleringsnoderAutonoma simuleringsnoder Dead reckoningDead reckoning Dynamisk databas (DIVE)Dynamisk databas (DIVE)
Vilken information behövs? ID (unikt nummer)ID (unikt nummer) TypTyp VärldskoordinaterVärldskoordinater Rotationsmatris (orientering)Rotationsmatris (orientering) Utseende/färgUtseende/färg StatusStatus HastighetsvektorHastighetsvektor
Exempel: Quake 3 Arena
Exempel 2: Q3A
Spelidéer Shoot’em upShoot’em up MissionMission ProblemlösningProblemlösning SamarbeteSamarbete Rollspel/InteraktionRollspel/Interaktion Träning (simulatorer)Träning (simulatorer)