FPS Drops mit TFT in Counterstrike

  • Hallo Leute,


    seit ich meinen TFT besitze, habe ich ein großes Problem:


    Da der Monitor ja nur 60 Herz anzeigen kann werden alle meine FPS in Spielen auch logischerweise auf 60 runtergeregelt :(


    In Counsterstrike ist es nun z.B. egal ob ich fps_max auf 60 oder 100 setze, das Spielgefühl ist total gleich da der Monitor die FPS automatisch auf 60 limitiert :(


    Die Spieler unter euch werden wissen was ich meine und ich hoffe ihr habt eine Lösung für das Problem für mich parat, damit ich endlich wieder meine vollen 100 fps genießen kann ;(



    Gruß Christian

  • Wie willst du 100 FPS geniessen wenn du ja richtigerweise schon selber erwähnt hast, dass der Monitor nur 60 Bilder darstellen kann.


    Mir ist jetzt noch nicht so ganz klar wo dein Problem liegt.


    Mal mit aktiviertem Vsync gespielt?

  • VSync hab ich selbstverständlich deaktiviert.


    Das Problem liegt daran, dass mit den 60 FPS CS einfach nur noch ruckelt und mit den 100 fps schön flüssig lief ;(


    Kann man daran garnichts ändern oder mogeln oder sonstiges?

  • Quote

    Original von Grilli
    Ich hab also defintiv keine Chance über 60 FPS jemals wieder zu kommen? ;(


    Nein! Wenn du Vsync aktivierst muss ja die Grafikkarte darauf warten bis der Monitor das aktuelle Bild komplett dargestellt hat. Da 60Hz somit dann auch 60 Frames entsprechen kommst du nicht drüber.


    Selbst ohne Vsync sind es auch nur 60 Bilder wobei es dir bedingt durch die Arbeitsweise der Grafikkarte passieren wird, dass sich dann ein Bild aus mehreren Bildern zusammensetzt. Wo es sich zusammensetzt hast du dann einen Versatz, der auch unter dem Begriff Tearing bekannt ist. Im Bild hast du dann so eine Art horizontales Zucken, was du ja wiederum mit Vsync beseitgen willst.


    Ich denke der Konflikt ist klar ;)

  • Quote

    Original von Grilli
    Ergo keine Chance über 60 fps wieder zu kommen und vsync sollte bei TFTs immer aktiviert sein um das tearing zu vermeiden? Richtig?


    Sagen wir es mal so, es zwingt dich niemand Vsync zu verwenden. Ich kenne genügend Leute, die ohne Spielen weil es sie nicht stört oder weil sie es einfach nicht besser wissen :D


    Mit Vsync wirst du eben dieses Tearing los, hast aber den "Nachteil", dass das Bild unter Umständen geringfügig verzögert auf dem Bildschirm landet.


    Der einzig echte Nachteil ist wenn deine Grafikkarte nicht in der lage ist konstant die 60 Frames zu halten. Hast du z.B. ein sehr aufwendiges Spiel, wo sie zB. max. nur 55 schaft, dann bricht die Framerate jedoch auf 30 ein, was mit dem Timing zusammenhängt.


    Wenn der Monitor fertig ist und die Grafikkarte aber noch nicht mit der Berechnung des nächsten Frames fertig ist muss sie quasi eine Runde aussetzen wodurch es zu Verzögerungen kommt und die effektive Bildrate einbricht.


    Sofern du Spiele hast, wo das vorkommt, solltest du schauen ob es dort in den Grafikoptionen die Möglichkeit gibt Triple Buffering zu aktivieren. Dadurch stehen der Grafikkarte dann drei Bildpuffer zur Verfügung und es kann nicht mehr zu den Timing Problemen kommen. Die 55 Frames aus dem Beispiel werden dann auch wieder dargestellt.
    Kleiner Nachteil: es kostet nochmal ein wenig vom RAM der Grafikkarte um das dritte Bild zu puffern und die Bildausgabe ist um ein weiteres Frame verzögert.


    Falls das Spiel von sich aus kein Triple Buffer unterstützt lässt es sich z.B. bei ATI über das ATI Tray Tool erzwingen.

  • Den Tipp Vsync zu deaktivieren wirst du in der Regel aus zwei Gründen hören: zum einen um diesem Timing Problem mit dem Framerateneinbruch generell zu entgehen und zum anderen weil die Grafikkarte unbeirrt alle aktuell berechneten Bilder auf den Monitor wirft und du theoretisch ein aktuelleres Bild hast.


    Letzteres ist insofern ein Trugschluss weil die Grafikkarte ebenso sturr zwischen ihren Bildpuffern hin und her schaltet und du auf dem Monitor ein Bild siehst, dass aus zwei oder mehr unterschiedlichen Frames zusammengesetzt wird.


    Dein Monitor baut durch die 60Hz theoretisch alle 16,7ms ein Bild auf. Mal angenommen du hast ein Spiel, dass aber 100 FPS ausspuckt dann müsste der Monitor eigentlich alle 10ms ein Bild vollständig abarbeiten, was er aber natürlich nicht kann.


    Die Grafikkarte interessiert das ohne Vsync allerdings herzlich wenig. Sobald ein neues Bild fertig berechnet wurde schaltet sie auf den Bildpuffer mit dem aktuellen Bild - unabhängig davon ob das vorherige Bild überhaupt schon vollständig an den Monitor übertragen wurde. Das Fatale ist jetzt, dass die Grafikkarte exakt an der Stelle weiterliest, wo sie beim vorherigen Bild aufgehört hat. Während z.B. die obere Hälfte deines Monitors das vorherige Frame anzeigt, zeigt die untere Hälfe bereits ein neueres Bild. Da diese Bilder vor allem in Shootern kaum identisch sein werden hast du bei diesem Beispiel in der Mitte einen Bruch. Mal angenommen du stehst vor einem Baum und drehst dich nach links, dann ist der Baum auf der unteren Bildhälfte bereits ein kleines Stück weiter rechts als auf der oberen Hälfte.


    Durch diesen Effekt ensteht das Tearing.


    TheCracker : die 100-120 FPS berechnet zwar deine Grafikkarte aber der Monitor kann sie nicht vollständig(!) darstellen. Wenn du meinen Text da oben liest weisst du warum ;)