OnlineSpiel ruckelt
13. Sep 2006, 11:41
Hallo zusammen.
Ich habe versucht ein PingPong Spiel fürs Internet zu programmieren, es klappt auch alles ausser, dass das Spiel beim gegenüber ruckelt und nicht so flüssig wie bei mir läuft.
Das Programm ist folgendermassen aufgebaut:
Es gibt zwei Softwaren, zum einen die Serversoftware, die benutze ich zum spielen und die Clientsoftware, die benutzt mein Gegner.
Die Serversoftware besitzt einen Timer der auf 20 gestellt ist, in jedem Zeitintervall werden an den Client die Position des Balles sowie die Position meines Schlägers und die momentanen Punktestände versendet. Die Position des Gegners wird auf der Clientsoftware ermittelt.
Die Clientsoftware sendet lediglich Signale OnKeyPress oder OnKeyUp Ereignisse auftauchen, dann sendet die Clientsoftware, welche Taste momentan betätigt wurde.
Für die Verarbeitung der Daten vom Server also Position des Balls usw. hab ich einen Buffer erstellt, der erstmal alle angegkommenen Daten speichert, und dann abarbeitet mithilfe einer Whileschleife.
Die Verbingung zwischen Client und Server erhalte ich mithilfe TServer-/TClientSocket Komponenten.
Leider ruckelt das Spiel wenn es online gespielt wird im gegensatz zum Lan, da läuft es relativ flüssig. Liegt es an der Verbindung? Der Server sendet ja lediglich einen String aus maximal 30 Zeichen, mehr nicht. Wenn ich den Timer einwenig runter setze dann läuft es ein wenig flüssiger, aber auch nciht erheblich. Wo ist der Fehler in meinem Konzept?
Bei Bedarf würde ich auch den Quelltext verschicken.
Gruß
|