• Mitspieler gesucht? Du willst dich locker mit der Community austauschen? Schau gerne auf unserem ComputerBase Discord vorbei!

Netzwerk-Glättungsfaktor

@SubZero1987: Ich gebe nur das wieder, was ich mal in nem Interview irgendwo gelesen habe. Darüber hinaus kannst du dir mal diesen Thread durchlesen. "Headshotlegende" bringt es da sehr gut auf den Punkt.


Es ist kein Blödsinn und auch nicht unmöglich.

PS: Unter dem Link wird auch die Netzwerkglättung nochmal beschrieben.
 
Ich hab da mal was aus dem Battlog-Forum gefischt. Kann das jemand bestätigen ?

ESL-Forum | mT
WTF ist eigentlich "Interpolation"?
Interpolation ist in der hohen Mathematik eine bekannte Methode, um zwischen 2 Positionen einen nicht vorhandenen Zwischenweg zu berechnen (Interpolation von lat. 'interpolare' = "verfälschen, entstellen", im übertragenen Sinne auch "zwischen einfügen").
Weil ein Server Datenpakete nicht konstant in einem durchgehenden "Strang" zum Spieler gesendet werden, sondern immer Abschnittsweise, ist die Interpolation auch in Games bzw. CS:S wichtig.

Gegnerpositionen werden bekanntermaßen in Datenpaketen überliefert und kommen visualisiert so beim Spieler an:
x x x x x x x x
0 15 30 45 60 75 90 105

Die Zahlen geben in Millisekunden an, wann das nächste Paket ankam (Nur fiktive Zahlen ums anschaulich zu halten). Denkt man jetzt logisch, so kommt man zu der Erkenntnis, dass jede Position des Gegners auf dem Monitor alle 15ms verändert wird. Da wir keine Interpolation haben, bewegt sich der Gegner also mit "Miniteleports" (= Laggendes Model = cl_interpolate 0) im 15ms Takt vorwärts. Er hat ja keine Zwischenbewegungen!!!

Mit Interpolation sähe das Ganze so aus:
x-----x-----x----x-----x-----x-----x-----x
0 15 30 45 60 75 90 105

Die "-"-Striche geben die hinzuberechnete Zwischenbewegung an. Ihr seht, dass egal wieviele Pakete pro Sekunde ankommen würden, wir immer eine flüssige Gegnerbewegung hätten. Da diese Positionen allerdings hinzuberechnet wurden und nicht wirklich existieren, sind sie 1. ungenau und wenn die Rechnungen aufgrund von Fehlern falsch laufen 2. falsch. Heißt im Klartext: Falsche Interpolation führt zur Anzeige einer falschen Gegnerposition (= "ALTER ICH WAR SO DRAUF, ABER ES GEHT NICHTS REIN!")
Die Interpolation findet auf eurem PC statt und nicht auf dem Server. Darum gibt es viele Faktoren bei euch, die diese Interpolation nochmals verfälscht oder beeinträchtigt.

Danke an mT aus dem ESL-Forum für diese anschauliche Erklärung.

Bei BF2 z.B. ist es wie folgt. (Wohl auch auf BF3 übertragbar)

jb4 | http://www.tacticalgamer.com
By default, Battlefield 2 appears to have a 100 millisecond buffer for interpolation. The problem with this is that while making things appear smoother, it also means that when firing upon a fast-moving object you may miss where they actually are as you're effectively facing an additional 100ms delay. At least that's the theory, and in general in my experimentation I found slightly improved hit detection results (and no noticeable increase in jerkiness) by using a lower value of 50 or even 30 for this setting. Note however that this variable should not be set too low (and certainly not a value of 0) as it will result in increased warping/jerky movements, and if you generally have a ping higher than 100 you shouldn't lower this setting. For those who do try this, also remember that the improvement from lowering this setting is not dramatic, since we're talking a difference of say 50ms (1/20th of a second). However particularly in situations where your opponent(s) are moving fast and/or erratically your accuracy should be noticeably improved.


Soll heißen, um so weiter der Regler rechts steht, desto stärker wird interpoliert, was aber, da es nur eine Berechnung ist, zu Ungenauigkeiten führen kann. Der Regler sollte also weiter nach links geschoben werden, besonders wenn man einen guten Ping hat, da man dadurch diesen Effekt minimiert. Aber man muss auch darauf achten, das sich gegnerische Models weiterhin flüssig bewegen. Denn wenn man die Interpolation, bei nicht ausreichender Leitungsstärke, zu weit reduziert, scheint es so als würden die Models teleportiert, weil einfach vom System berechnete Zwischenbilder fehlen.
 
Wie gesagt, nach dem Patch seinerzeit stand dieser Regler ganz rechts bei mir, ohne mein zutun. Es ist kaum zu glauben, wie das Spiel danach aussieht, praktisch keine Bewegung ist mehr flüssig, ein absolutes Rumgezapple der Figuren inkl. der eigenen Figur. Momentan hab ich den Regler in der Mitte, finde ich völlig in Ordnung. Zu weit links beginnen wiederum komische Figurenverhalten aufzutreten, daher lass ich jetzt meine Finger von dem Regler...
 
Ein riesiges Fachgesimpel hier und ich weiss immer noch nicht wie ich mit dieser Option umgehen soll.

Lässt sich das nicht einfacher in wenigeren Worten und vor allem pauschaler erklären?!

Z. B. anhand meiner Situation:

Provider: Unitymedia 32000er Leitung
Battlelog: Ping vom Server ca. 15 ~ 20
Sollte ich noch im Router irgenwelche Paketoptimierungs Optionen generl ausschalten bzw. einschalten?
Sooo, und wo sollte jetzt bei mir der Regler stehen?
Rechts, Mitte oder links?!?

Es regt mich gewaltig auf, dass ich gefühle 2m um die Ecke bin (in Sicherheit) und sterbe!
Meine Figur liegt dann tatsächlich 1m bis 2m um die Ecke und werden dann reanimiert?!?
Genauso ist es auch mit dem hinlegen hinter einer Mauer! Beginnge schon zu kriechen und kassier plötzlich noch einen tötlichen treffer.

Hat jemand Ideen?
 
Setz' den Regler weiter nach links (Du musst ausprobieren, welche Einstellung für dich am Besten ist), das sollte deine Probleme beheben.
 
Glättungsfaktor ist einfach der Grad, mit dem die Bewegungen interpoliert werden. Wenn er ganz links steht, werden die Bewegungen ruckelig, dafür ist die Position der Gegner/Panzer oder was auch immer genau. Steht er ganz rechts, ist die Bewegung der Gegner absolut flüssig, dafür passen aber die Hitboxen eher weniger, weil die Position der Gegner veraltet ist.

amcooper schrieb:
Es regt mich gewaltig auf, dass ich gefühle 2m um die Ecke bin (in Sicherheit) und sterbe!
Meine Figur liegt dann tatsächlich 1m bis 2m um die Ecke und werden dann reanimiert?!?
Genauso ist es auch mit dem hinlegen hinter einer Mauer! Beginnge schon zu kriechen und kassier plötzlich noch einen tötlichen treffer.

Hat jemand Ideen?

Das hat nichts mit Glättung zu tun. Der Gegner sieht dich einfach zeitlich verzögert, weil die Paketübertragung eine gewisse Zeit braucht. Ist doch logisch. Und so wie der Gegner dich sieht, so ist deine Position bei ihm. Du musst einfach vorausschauend spielen. Also früher in Deckung gehen und nicht z.B. bis 15% Leben warten.
 
Zuletzt bearbeitet:
Lass den Regler in der Mitte. Das Problem mit um die Ecke getötet werden liegt an der clientside Berechnung. Deal with it :D Scheiss Coding halt
 
Naja, jetzt kann ich auf jeden fall was damit anfangen. . .
Ich werde es mal ausprobieren und bedanke mich. . .

Kurz und knapp:

Linke Stellung = genauere Position der Hitbox
Mitte = naja, ist doch klar. . .
Rechte Stellung = sieht schöner aus, aber die Hitbox lahmt.
 
Zurück
Oben