Ping Pong - Netzwerkfunktionalität
-
Hallo,
wie wird das Netzwerkgedöns in 2D-Spielen behandelt? Angenommen beide Spieler sind, bei Ping Pong, bereit und der Ball fliegt los, wie sehen dann die Datenpakete aus? Sollte dem Clienten einfach nur gesagt werden: "Die Richtung" oder sollen ihm pro Frame die neuen Koordinaten gesendet werden? Oder realisiert man sowas sogar ganz anders? Sollte der Server bei einer Kollidierung immer die Berechnungen übernehmen oder sollte sowas jedes Programm selber handlen?Danke im Voraus!
-
"Kollidierung"?
Bei 1 vs. 1 Spielen lohnt sich ein dedizierter Server wohl nicht. Deshalb wird man es so machen, dass einer, nämlich der leistungsfähigere, der beiden Rechner den Serverjob mitübernimmt.
Er empfängt so oft wie möglich die Positions des zweiten Paddels und sendet so oft wie möglich die Position des Balls. Dazu aber auch die Momentangeschwindigkeit des Balls, und der Client muss die Zeit bis zum nächsten Paket dann anhand dieser Daten durch Interpolieren überbrücken. Um so besser der Client interpoliert, umso weniger Sprünge gibt es, wenn er die Ballposi korrigieren muss.
EDIT: In die Pakete muss auch unbedingt noch die Zeitinformation mit rein, damit es im Takt bleibt.
-
Ergänzend zum Vorredner: Als ich vor längerer Zeit hier mal nach Infos zum Thema gesucht habe, wurde ich auf die Tickrate http://de.wikipedia.org/wiki/Tickrate aufmerksam gemacht.
Darf ich mal spielen wenns fertig ist?