Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Multiplayer & MMO Games
Edwin Foris
2
Übersicht Einführung Anforderungen Interest Management
Netzwerkarchitektur Datenkommunikation Interest Management Publisher/Subscriber Aura-Nimbus Modell World Space Partitioning Quadrate/Hexagone Triangulation Dead Reckoning prediction technique convergence technique
3
Einführung Was ist ein MMO? Massively Multiplayer Online Game
mehrere tausend Spieler gleichzeitig möglich persistente Welt
4
Anforderungen Netzwerkarchitektur Client-Server
jeder Client hat Verbindung zum Server Server leitet relevante Informationen an Client weiter Server/Server-Cluster werden vom Spielehersteller bereitgestellt
5
Anforderungen Vorteile: Nachteile: zentrale Kontrolle durch Provider
einfache Implementierung für den Datenaustausch und für die Gewährleistung der Sicherheit Nachteile: architektonischer Engpass beschränkte Anzahl an Spielern
6
Anforderungen Peer-to-Peer keine zentrale Kontrolle
Computer untereinander verbunden direkter Datenaustausch Vorteile: Skalierbarkeit Fehlertoleranz Nachteil: Sicherheit und Datenaustausch nur schwer realisierbar
7
Anforderungen Datenkommunikation Unicast
Nachrichten werden an einen Empfänger übermittelt Multicast Nachrichten werden an einen oder mehrere Empfänger versendet, die einer Multicast- Gruppe beigetreten sind Broadcast Nachrichten werden an alle Empfänger
8
Überblick Einführung Anforderungen Interest Management
Netzwerkarchitektur Datenkommunikation Interest Management Publisher/Subscriber Aura-Nimbus Modell World Space Partitioning Quadrate/Hexagone Triangulation Dead Reckoning prediction technique convergence technique
9
Interest Management Was ist das?
Vorgehensweise zur Bestimmung der für den Spieler relevanten Informationen Wichtige Informationen hängen meist mit der Wahrnehmung des Spielcharakters (= Avatar) zusammen
10
Interest Management Publisher/Subscriber Modell
Publisher = Objekte, die Events erzeugen Subscriber = Objekte, die Events verbrauchen Ein Objekt kann auch beides sein, z.B. der Avatar eines Spielers. Interest Management bestimmt, wann ein Subscriber einen Publisher entdeckt und sich für Updates registriert bzw. wieder abmeldet.
11
Interest Management Aura-Nimbus Modell Aura: Bereich, in dem ein
Objekt wahrgenommen werden kann. Nimbus: Bereich, den ein Objekt wahrnimmt.
12
Interest Management
13
Interest Management Vorteil des Aura-Nimbus Modells: Nachteil:
Nur relevante Informationen werden den Subscribern geschickt und von den Publishern erhalten. Nachteil: Hoher Berechnungsaufwand bei Überschneidung von Auren und Nimben mehrerer Objekte ohne Broad-/Multicast Aufteilung der Welt in feste Gebiete
14
Überblick Einführung Anforderungen Interest Management
Netzwerkarchitektur Datenkommunikation Interest Management Publisher/Subscriber Aura-Nimbus Modell World Space Partitioning Quadrate/Hexagone Triangulation Dead Reckoning prediction technique convergence technique
15
World Space Partitioning
1. Möglichkeit: Aufteilung der Welt in gleich große Quadrate jedem Quadrat wird eine Multicast-Gruppe zugeordnet Aura umfasst 9 Quadrate Spieler registriert sich in diesen Quadraten Bei Veränderung in einem Quadrat wird jeder Spieler, der in diesem Quadrat registriert ist, informiert.
16
World Space Partitioning
2. Möglichkeit: Einteilung der Welt in gleiche Hexagone Spieler registriert sich in den Hexagonen, die sich mit seiner Aura überschneiden
17
World Space Partitioning
3. Möglichkeit: Aufteilung der Welt in Dreiecke (Triangulation) 1. Schritt: Umwandlung der Spielwelt in ein Polygon mit Leerstellen
18
World Space Partitioning
2. Schritt: Algorithmus zur Erstellung von Dreiecken am Beispiel der Delaunay Triangulation conforming Delaunay constrained Delaunay constrained conforming Delaunay Conforming Delaunay Umkreis jedes Dreiecks darf keine weiteren Punkte enthalten zusätzliche Steiner Punkte möglich
19
World Space Partitioning
20
World Space Partitioning
Nachteile: zu lange und dünne Dreiecke viele verschiedene Größen schlechte Approximation an die Aura eines Spielers Constrained Delaunay jedes Segment der Karte ist gezwungen Teil der Triangulation zu sein keine Steiner Punkte keine Umkreisbedingung
21
World Space Partitioning
22
World Space Partitioning
Nachteile: viele verschiedene Größen große Dreiecke in Gebieten ohne Hindernisse schlechte Approximation an die Aura eines Spielers Constrained Conforming Delaunay Constrained Delaunay Triangulation mit Steiner Punkten Anzahl der Steiner Punkte variierbar
23
World Space Partitioning
24
World Space Partitioning
Path Distance Algorithmus kürzester Pfad zwischen den Mittelpunkten benachbarter Dreiecke Subscriber an Dreiecken innerhalb einer bestimmten Reichweite interessiert Ergebnisse können zwischengespeichert oder sogar vorausberechnet werden
25
World Space Partitioning
26
Überblick Einführung Anforderungen Interest Management
Netzwerkarchitektur Datenkommunikation Interest Management Publisher/Subscriber Aura-Nimbus Modell World Space Partitioning Quadrate/Hexagone Triangulation Dead Reckoning prediction technique convergence technique
27
Dead Reckoning „Kurs Extrapolation“ Herkunft aus der Nautik
Vorhersage der Position anhand von vorherigen Positions- und Geschwindigkeitsinformationen eines Knotens verringert die Anzahl der gesendeten Informationen bei falscher Vorhersage wird die Position korrigiert
28
Dead Reckoning prediction technique
Verwendung von Polynomen und deren Ableitungen Zero-order Prediction technique: Position First-order Prediction technique: Position und Geschwindigkeit Second-order Prediction technique: Position, Geschwindigkeit und Beschleunigung
29
Dead Reckoning Polynome höheren Grades erhöhen das Risiko für ungenaue Vorhersagen Vorhersage höhergradiger Polynome benötigt mehr Rechenaufwand und Bandbreite Einsatz von Hybrid-Systemen, die zwischen Polynomen ersten und zweiten Grades wechseln
30
Dead Reckoning Approximation von Termen höheren Grades im
empfangenden Knoten Position History-Based Dead Reckoning protocol (nur Positionsübermittlung) Schätzen von Geschwindigkeit und Beschleunigung Update bei Abweichung um einen gegebenen Bereich Dynamische Änderung des Grenzbereichs im Verhältnis zur Entfernung
31
Dead Reckoning convergence technique
Positionsänderung eines Objekts bei Update Zero-order convergence setzt das Objekt auf die neue vorausberechnete Position ruckartige Bewegungen Bei Update muss die Position des Objekts geändert werden - Gute Technik ist schnell und nicht wahrnehmbar
32
Dead Reckoning Linear convergence
33
Dead Reckoning unnatürliche Bewegungen
Fließende Übergänge durch Kurvengleichung möglich Je höher der Grad der Kurvenformel, desto höher der Rechenaufwand
34
Vielen Dank für die Aufmerksamkeit!
Fragen?
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.