Frage zu minimierten Anwendungen
Übersicht

LastsamuraiBetreff: Frage zu minimierten Anwendungen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,
ich habe, wie der Titel schon sagt, eine Frage zu minimierten Anwendungen in BB. Ich habe einen UDP - Server + Clienten geschrieben und wollte ausprobieren we gut sie funktionieren. Ich erkläre mal ^^ Also starte ich einmal den Server und danach den Clienten. Mit dem logge ich mich bei dem Server ein... so weit funktioniert alles wunderbar. Danach lande ich in der 3D Welt und kann rumlaufen Monster bekämpfen etc. Nur gibt es noch keine anderen Spieler und deswegen starte ich den Clienten ein zweites mal und logge mich mit anderen Daten ein. Das klappt auch und ich sehe auf beiden Clienten den jeweiligen anderen Spieler. Nur wenn ich anfange zu laufen und dann zu überprüfen ob der andere Client die Position richtig erhält dann kommt es manchmal zu Problemen. Es kommt nämlich zum Lag ^^ und ich sehe den Spieler zuerst normal laufen und dann teleportiert er sich plötzlich wieder an die alte Position und fängt wieder an zu laufen oder bleibt stehen etc. halt das was man unter lag versteht ( das zurückteleportieren liegt daran, dass ich ne kleine Sicherung eingebaut habe, wobei die Positionsdaten jede Sekunde synchronisiert werden ). Wenn ich mir den Server so angucke dann stelle ich fest, dass er manchmal nicht jede Sekunde die Daten erhält, sondern manchmal 5 Sekunden stehen bleibt und dann plötzlich wieder weiterläuft und die alten Daten in einem Ruck verarbeitet. Und nun zu der eigentlich Frage... kann dieser Stillstand vom Server daran liegen, dass ich die beiden anderen Clienten in der Zeit, wo ich das Serverfenster offen habe, minimiert habe? Wenn ja, warum empfängt er dann trotzdem meistens alle Daten korrekt in normalem Abstand? Kann man irgendwie die Anwendungen so minimieren, dass sie korrekt im Hintergrund weiterarbeiten? Der Server empfängt und versendet ja nur Daten mehr nicht... Ich sitze schon mehrere Tage da dran und hab auch schon die Suche benutzt aber leider nicht gefunden wie ich das Problem lösen kann... wenn jemand so nett wäre diesen langen Text durchzulesen und versuchen könnte mir zu helfen wär ich sehr dankbar ![]() Falls Code benötigt wird dann sagt es mir und schreibt dazu welche Stelle benötigt wird ( den ganzen kann und will ich nicht posten, denn es sind fast 600 Zeilen alleine vom Server ) Thx schonmal im Voraus ![]() MfG. Lasti |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde mal behaupten, dass es daran liegt, dass alle 3 Programme, wenn ich dich richtig verstanden habe, zur gleichen Zeit auf ein und demselben Pc laufen, daraus werden die Verzögerungen resultieren.
Setze doch mal in dein Clientprogramm ein delay 1/2 ein und schau obs sich bessert oder wenn du die Möglichkeit hast, starte das 2. Clientprogramm auf einem anderen Pc. |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
Lastsamurai |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja ich starte alle 3 Programme auf einem PC... habe leider keine 2 zur Verfügung, aber das mit dem Delay werde ich ausprobieren, thx für den Tipp ! | ||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Nur wenn ich anfange zu laufen und dann zu überprüfen ob der andere Client die Position richtig erhält dann kommt es manchmal zu Problemen.
Wenn dir das so wichtig ist, dann nehm lieber TCP! Du musst nicht immer prüfen, ob der Spieler auf der richtiegen Pos ist, denn ich nehme mal an, der Client wird pro Sekunde mehrere male die Pos senden. Wenn die also mal nicht ankommen sollte, wirds in der nächsten 10/Sekunde schon wieder richtig sein!^^ |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Diese Verzögerungen gibt es immer.
Dazu solltest du dir am besten eine Interpolationsroutine schreiben. Dein Client sieht also mithilfe einer kleinen KI (wenn man das so nennen darf) keine Teleports, sondern eben schnellere Bewegungen in die neue Richtung, keine sofortigen Positionsänderungen. |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Lastsamurai |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
So... das mit dem Delay klappt schon besser und es kommt nur selten zu diesen Lags... Interpolation... wär ich nie selber drauf gekommen ^^ dann versuche ich mal so eine kleine KI zu schreiben... wenn du noch nen kleinen Ansatz hättest dann wäre ich dir sehr dankbar ![]() ![]() |
||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Uhhh. Sowas hab ich noch nie probiert.
Du kannst aber mal versuchen, 19 mal die Anfangsposition und ein mal die neue Position und das ganze durch 20 teilen. So kann es nie zu extrem großen Abweichungen kommen und es ist nicht mehr ganz so schlimm. |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group