Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : GeForce3 – Triple Buffer nicht möglich?


Pixelfehler
2007-12-12, 20:21:06
Hallo

Ich bau grad ein Rechner für meine Nichte aus alten Teilen zusammen, unter anderem eine GeForce 3. Ich krieg aber kein triple buffering aktiviert, egal welcher Treiber. Mit Rivatuner gehts auch nicht. Geht das nun überhaupt nicht? Kann mich gar nicht mehr erinnern, ob ichs früher an hatte oder nicht. Wäre zu schade wenns nicht geht, die armen Augen der Kleine :wink: ;(

bye

Gast
2007-12-12, 21:02:51
TripleBuffer kann man nur in OGL per treiber erzwingen, in D3D muss die applikation TP anfordern.

AnarchX
2007-12-12, 21:05:32
TripleBuffer kann man nur in OGL per treiber erzwingen, in D3D muss die applikation TP anfordern.

Bei NV geht es auch für D3D, jedenfalls mit neueren Treibern.

Mr.Postman
2007-12-12, 21:07:06
Mit D3DOverrider kann man in DX Applikationen Triple Buffering erzwingen.

Gast
2007-12-12, 21:45:25
Bei NV geht es auch für D3D, jedenfalls mit neueren Treibern.

das wäre mir neu, es gibt zwar einen schalter im treiber und keinen expliziten hinweis dass er nur mit OGL funktioniert, allerdings hat dieser meines wissens niemals unter D3D eine wirkung gezeigt.

im nhancer wird auch explizit darauf hingewiesen dass der schalter nur unter OGL TP aktiviert.

Pixelfehler
2007-12-13, 17:32:06
wenn mann im Treiber die Zusatzoptionen per Registry Hack freischaltet kann mann triple buffer unter D3D einschalten, nur es geht nicht !!!
Bei Vsync gehen die fps halt von 85 auf 42,5 zurück ( crt-Monitor ). Bei OpenGL gehts auch nicht :frown: :frown:

bye

Saro
2007-12-13, 17:52:07
wenn mann im Treiber die Zusatzoptionen per Registry Hack freischaltet kann mann triple buffer unter D3D einschalten, nur es geht nicht !!!
Bei Vsync gehen die fps halt von 85 auf 42,5 zurück ( crt-Monitor ). Bei OpenGL gehts auch nicht :frown: :frown:

bye

Interessant dein Monitor läuft mit 42,5 HZ? :eek:

VSync begrenz die FPS auf die eingestellt Hz Zahl wenn dein Monitor 85Hz hat z.B. haben die Spiele 85fps aber davon das VSync die fps um die hälfte halbiert höre ich zum ersten mal.

Wenn dies nicht der fall ist, ist

a) Treiber durcheinander im System
b) das entsprechende Spiel einfach müllig programmiert.

Pixelfehler
2007-12-13, 18:54:39
Interessant dein Monitor läuft mit 42,5 HZ? :eek:

VSync begrenz die FPS auf die eingestellt Hz Zahl wenn dein Monitor 85Hz hat z.B. haben die Spiele 85fps aber davon das VSync die fps um die hälfte halbiert höre ich zum ersten mal.

Wenn dies nicht der fall ist, ist

a) Treiber durcheinander im System
b) das entsprechende Spiel einfach müllig programmiert.

LOL, du verstehst das ganze nicht. Nicht die HZ vom Monitor geht zurück, sondern die fps Rate :tongue:. Wenn das Spiel halt nicht mindestens 85 fps bringen kann um für jedes Bild auf dem Monitor ein Frame darzustellen, muss das Spiel auf 42,5 fps runter und jeden Frame halt 2 mal pro Monitor-Bild darstellen. Daswegen hat mann ja auch triple buffering entwickelt :biggrin:

Ich habe jetzt festgestellt, daß Triple Buffer nicht mit AA funktioniert. Es geht wenn ich AA deaktiviere! Mist :mad:

bye

Saro
2007-12-13, 22:38:47
LOL, du verstehst das ganze nicht. Nicht die HZ vom Monitor geht zurück, sondern die fps Rate :tongue:. Wenn das Spiel halt nicht mindestens 85 fps bringen kann um für jedes Bild auf dem Monitor ein Frame darzustellen, muss das Spiel auf 42,5 fps runter und jeden Frame halt 2 mal pro Monitor-Bild darstellen. Daswegen hat mann ja auch triple buffering entwickelt :biggrin:

Ich habe jetzt festgestellt, daß Triple Buffer nicht mit AA funktioniert. Es geht wenn ich AA deaktiviere! Mist :mad:

bye

Was gibts da nicht zu verstehen? Egal welches Spiel sobald ich VSync aktiviere gehen die fps halt nicht über (bei mir z.B. 75 fps hinaus das die fps sich halbieren mit VSync habe ich noch nie gesehen bzw. bemerkt. Das hat auch wenig mit wenn das Spiel dies nicht schafft zu tun.

WoW läuft bei mir z.B. meistens mit 75fps trotzdem sinkt die fps oftmals wenn viel los ist auf so 50fps trotzdem tut VSync da die fps nicht auf 37,5 halbieren.

Wenn VSync bei dir die FPS halbiert stimmt mit deinem System was nicht.

VSync macht nix anderes als die FPS auf die Anzeigbarem Bilder vom Monitor zu beschränken (bei 75Hz z.B. 75fps), die FPS geschwindigkeit bleibt davon aber unberührt.

Kleines Beispiel bei mir z.B.

Counterstrike Source ohne VSync 320,7fps
Counterstrike Source mit VSync 75,0fps

Oder WIC:

WIC ohne VSync avg 39fps Max 81fps
WIC mit VSync avg 39fps Max 75fps

Mr.Magic
2007-12-13, 23:51:41
@Saro

Auch wenn es schon 1000x erwähnt wurde, bei der GF8 gibt es (unter XP) nur vSync mit Triple Buffering.

Bei NV geht es auch für D3D, jedenfalls mit neueren Treibern.

Ist leider GF8-exklusiv.

Saro
2007-12-14, 00:30:33
Es war aber auch bei meinen Ex Karten nie anders... Radeon X1950 Pro, Geforce 6600GT usw. schon bei meiner Voodoo 5 5500 war es so.

Spasstiger
2007-12-14, 00:46:31
Es war aber auch bei meinen Ex Karten nie anders... Radeon X1950 Pro, Geforce 6600GT usw. schon bei meiner Voodoo 5 5500 war es so.
War es ganz sicher nicht. Nur weil deine fps-Anzeige-Tools Durchschnittswerte ermitteln und anzeigen, heißt das nicht, dass sich die fps nicht halbieren. Weißt du überhaupt, was VSync macht? Weißt du für was Triple Buffering zuständig ist?

Saro
2007-12-14, 01:00:54
War es ganz sicher nicht. Nur weil deine fps-Anzeige-Tools Durchschnittswerte ermitteln und anzeigen, heißt das nicht, dass sich die fps nicht halbieren. Weißt du überhaupt, was VSync macht? Weißt du für was Triple Buffering zuständig ist?

Hab ich doch geschrieben VSync beschneidet die fps auf die Maximalen darstellbaren Bilder die der Monitor darstellt mehr nicht.

Und diese Tools wie du sie nennst sind die in den Spielen einstellbaren Benchmarks.

Edit: Aber ich lasse mich gerne eines besseren Belehren...

http://s3.bilder-hosting.de/tbnl/5GKB7.jpg (http://www.bilder-hosting.de/show/5GKB7.html)

im NVidia CP ist Triple Buffering ebenfalls auf "Aus" das dürfte dann ja garnicht möglich sein.

Spasstiger
2007-12-14, 01:24:29
Wäre ich ein Lehrer, würde ich für die Aussage, dass VSync die Bildwiederholrate auf die Monitorfrequenz begrenzt, nur einen halben von drei möglichen Punkten geben.

VSync sorgt dafür, dass die Abfertigungsrate von Bildern mit der Monitorfrequenz synchronisiert wird. Vertical Sync heißt es, weil früher bei CRTs die vertikale Frequenz die darstellbaren Bilder pro Sekunde angegeben hat und weil Grafikkarten ein Bild vertikal in Zeilenblöcken abarbeiten.
Als Effekt werden nur vollständig berechnete Frames ohne Überlagerung mit dem Vorgängerframe ausgegeben. Es gibt keine horizontalen Schnitte im Bild.
In Konsquenz werden Frames auch immer mindestens so lange angezeigt wie der Monitor vorgibt. Liegt kein neu berechneter ganzer Frame bis zum nächsten Monitortakt vor, wird das gleiche Bild nochmal einen Monitortakt lange angezeigt. Das Spielchen setzt sich solange fort bis ein fertig gerenderter Frame vorliegt. Ein Frame wird also immer mit der Dauer eines Vielfachen der Monitortaktdauer angezeigt.

Nun bringen wir mal Double Buffering in Spiel, was Grafikkarten üblicherweise verwenden, selbst wenn VSync an ist (außer bei GeForce 8 oder wenn die Anwendung Triple-Buffering erzwingt): Double-Buffering bedeutet, dass ein Buffer für die Bildausgabe (wird nur gelesen) und ein Buffer für die Speicherung des nächsten Frames zur Verfügung steht. Ist nun die GPU mit Rechnen fertig bevor der Monitor ein neues Bild anfordert, muss die GPU warten. Sie kann nirgendwo mehr einen neuen Frame hinschreiben. Wenn das Rechnen für eine längere Folge von Frames nun jeweils 1,5 Monitortakte lange dauert, muss die Grafikkarte bei jedem Frame noch 0,5 Monitortakte lang warten. Statt 40 Bilder in der Sekunde werden nun bei 60 Hz Monitorwiederholfrequenz nur noch 30 Bilder in der Sekunde angezeigt.

Des Problems Lösung: Man führt einen zweiten Buffer für die Speicherung des übernächsten Frames ein und hat dann insgesamt drei Buffer (Triple-Buffering). Die Grafikkarte muss dann nur noch warten, wenn ein Frame schneller berechnet wird als ein Monitortakt dauert.

Saro
2007-12-14, 01:31:55
Ja aber wie bitte kommen dann ohne Triple Buffer bei WoW mit VSync solche fps werte zustande?

http://s3.bilder-hosting.de/tbnl/5GYMS.jpg (http://www.bilder-hosting.de/show/5GYMS.html)

zumindest 71/18fps hätte er dann ja entsprechend runden müssen oder nicht? Wenn Vsync ja wenn die leistung nicht ausreicht die FPS angeblich halbiert hätte also aus den 71fps ohne Triple Buffer ja bei 75Hz 37,5fps werden müssen oder nicht.

Coda
2007-12-14, 01:35:54
Evtl. mittelt die Frameanzeige von WoW über einen Zeitraum. VSync macht wirklich das was Spasstiger sagt.

san.salvador
2007-12-14, 01:37:23
Dass man mit einer 8800 TriBuff unter D3D gar nicht ausschalten kann wisst ihr aber schon, oder? :|

Mr.Magic
2007-12-14, 01:38:25
Dass man mit einer 8800 TriBuff unter D3D gar nicht ausschalten kann wisst ihr aber schon, oder? :|

Darauf wurde jetzt alleine in diesem Thread dreimal hingewiesen. :wink:

Übrigens nicht ganz richtig. Ich habe z.B. bei BioShock unter Vista geflucht, weil nur Double Buffering möglich ist, und dadurch die Maus beim FPS-Einbruch irgendwie zäh und schwammig wird.

Saro
2007-12-14, 01:38:33
Dass man mit einer 8800 TriBuff unter D3D gar nicht ausschalten kann wisst ihr aber schon, oder? :|

Es hat sich auf meiner alten Radeon X1950 Pro nicht anders verhalten. Wie gesagt ich rede nicht von der Geforce 8800GT alleine es war auf meiner X700, 6600GT und Radeon X1950 Pro nicht anders.

Edit: Achja und die Anzeige von Fraps stimmt überein mit der Anzeige von WoW also wenn WoW 71fps anzeigt, zeigt fraps auch 71fps an.

Mr.Magic
2007-12-14, 01:42:04
Es hat sich auf meiner alten Radeon X1950 Pro nicht anders verhalten. Wie gesagt ich rede nicht von der Geforce 8800GT alleine es war auf meiner X700, 6600GT und Radeon X1950 Pro nicht anders.

Edit: Achja und die Anzeige von Fraps stimmt überein mit der Anzeige von WoW also wenn WoW 71fps anzeigt, zeigt fraps auch 71fps an.

Ist Triple Buffering direkt in WoW aktiviert?

Saro
2007-12-14, 01:45:25
Sieht man doch im ersten Bild, nein es hat bei WoW keinerlei wirkung darauf gehabt. Genauso war es früher es hatte keinerlei Wirkkung ob mit oder ohne... es kamen immer krumme FPS zwischendurch wenn er absackt von 54, 62 usw. raus mit oder ohne Triple Buffer, allerdings hat sich auch in sachen FPS mit oder ohne Triple Buffer nix geändert. Vielleicht isses ja wieder eine der eigenheiten der WoW Engine... AA lässt sich zumindest bei NVidia ja auch nicht per CP erzwingen, bei ATI könnte ich schwören hat es früher geklappt.

Mr.Magic
2007-12-14, 01:47:45
Sieht man doch im ersten Bild, nein es hat bei WoW keinerlei wirkung darauf gehabt.

Mit der GeForce 8 aus der Sig? :rolleyes:

Spasstiger
2007-12-14, 01:48:32
Es hat sich auf meiner alten Radeon X1950 Pro nicht anders verhalten. Wie gesagt ich rede nicht von der Geforce 8800GT alleine es war auf meiner X700, 6600GT und Radeon X1950 Pro nicht anders.
Die fps-Anzeige von Fraps und den meisten Spielen mitteln über mehrere Frames, meist über den Zeitraum von einer Sekunde ("Wieviele Bilder wurden in der letzten Sekunden ausgegeben?"). Wenn die Framerate innerhalb dieser Sekunde schwankt, kann man nicht auf die tatsächliche Framerate eines jeden Frames zurückschließen.
Ein Beispiel: Im Mittelungszeitraum treten 48 Frames mit einer Framerate von 75 fps (= 13,33 ms pro Frame) auf und 17 Frames mit einer Framerate von 37,5 fps (= 26,67 ms pro Frame). Sind insgesamt 65 Bilder innerhalb von 48*13,33 ms + 17*26,67 ms = 1093,23 ms. Also ungefähr 65 Bilder in einer Sekunde. Die tatsächliche und damit auch fühlbare Framerate springt dennoch zwischen 75 fps und 37,5 fps hin und her.

Saro
2007-12-14, 01:55:45
Die fps-Anzeige von Fraps und den meisten Spielen mitteln über mehrere Frames, meist über den Zeitraum von einer Sekunde ("Wieviele Bilder wurden in der letzten Sekunden ausgegeben?"). Wenn die Framerate innerhalb dieser Sekunde schwankt, kann man nicht auf die tatsächliche Framerate eines jeden Frames zurückschließen.
Ein Beispiel: In einer Sekunde treten 48 Frames mit einer Framerate von 75 fps auf und 17 Frames mit einer Framerate von 37,5 fps. Sind im Mittel 65 fps.

Viel mehr wunder mich halt das ständig ungenaue fps rauskommen wie 54 53 fps usw. Jedenfalls ist 42,5fps noch weit im grünen Bereich... und ich frage mich was man an 42,5fps so schlimm sein sollte. Dann wäre Crysis ja auf fast jedem System derzeit unspielbar da zählen 40fps schon zu absoluten Top Werten.

Mit der GeForce 8 aus der Sig? :rolleyes:

Nochmals NEIN ich habe Triple Buffer bei WoW schon immer deaktiviert mit allen Karten auch mit den alten Grakas. Wieso? Na weil es weder was bringt noch ändert, und dort von Blizzard nur steht "Das hinzuschalten dieser funktion kann leistung kosten". Also wieso sollte ich es anschalten wenn sich rein garnix ändert.

Spasstiger
2007-12-14, 02:00:38
Viel mehr wunder mich halt das ständig ungenaue fps rauskommen wie 54 53 fps usw. Jedenfalls ist 42,5fps noch weit im grünen Bereich... und ich frage mich was man an 42,5fps so schlimm sein sollte. Dann wäre Crysis ja auf fast jedem System derzeit unspielbar da zählen 40fps schon zu absoluten Top Werten.
Hast du irgendeine von den Erklärungen hier überhaupt gelesen? Die angezeigten Werte sind MITTELWERTE. Spürbar sind aber die springenden momentanen Frameraten.

Übrigens nicht ganz richtig. Ich habe z.B. bei BioShock unter Vista geflucht, weil nur Double Buffering möglich ist, und dadurch die Maus beim FPS-Einbruch irgendwie zäh und schwammig wird.
Dieses schwammige Gefühl bekommst du auch mit Triple-Buffering nicht los, Stichwort Mikroruckeln. Zwei Frames werden z.B. 33,33 ms lang angezeigt, drei Frames 50 ms lang. Ohne Triplebuffering wären es halt gar keine Frames mit 33,33 ms, sondern nur welche mit 50 ms. Und spüren tust du in beiden Fällen primär die Frames mit 50 ms.

Saro
2007-12-14, 02:18:16
Hast du irgendeine von den Erklärungen hier überhaupt gelesen? Die angezeigten Werte sind MITTELWERTE. Spürbar sind aber die springenden momentanen Frameraten.

Naja genauso wie 100fps einen sichtbaren unterschied zu 25fps bringen... Und das Fraps mittelwerte anzeigt halte ich für ein Gerücht...

Fakt ist das Vsync egal wieviel fps es doch schice egal ist ob triple oder double buffer solange die fps im grünen bereich bleiben.

Spasstiger
2007-12-14, 02:26:15
Und das Fraps mittelwerte anzeigt halte ich für ein Gerücht...
Wäre es nicht so, könntest du die hintere Ziffer gar nicht lesen, weil sie z.B. 65-mal in der Sekunde mit einer neuen Ziffer überschrieben wird.

Saro
2007-12-14, 02:36:44
Wäre es nicht so, könntest du die hintere Ziffer gar nicht lesen, weil sie z.B. 65-mal in der Sekunde mit einer neuen Ziffer überschrieben wird.

Genau das ist der fall wenn man kein häckchen bei die Anzeige nur in der Sekunde anzeigen aktiviert. Dann kann man es höchsten später aus einer Excel Tabelle raus lesen.

Vsynch mag eine nette sache sein aber in der Praxis funzt es meines erachtens meistens nicht richtig... so habe ich schon öfters beobachtet das ich z.B. trotz VSynch Tearing in spielen hatte.

Spasstiger
2007-12-14, 03:27:52
Genau das ist der fall wenn man kein häckchen bei die Anzeige nur in der Sekunde anzeigen aktiviert.
Das hat damit nix zu tun, es wird immer der Mittelwert aus mehreren Frames ermittelt.

/EDIT: Hab auch mal was getestet, eine Szene, in der ich gezielt für einen schlagartigen fps-Abfall von konstanten 45 fps auf konstante 17 fps sorgen kann. Die Fraps-Anzeige rattert dabei munter von 45 fps über den 30er- und 20er-Bereich hin zu den 17 fps. Wenn ich die fps logge statt sie anzeigen zu lasse, sehe ich in der frametimes.txt aber einen sofortigen Abfall von 45 fps auf 17 fps ohne Zwischenstufen.
Also mittelt Fraps ganz offenbar die Framerate über die zuletzt angeigten Frames. Wenn die Frameraten nur leicht schwanken, z.B. 52 fps, 51 fps, 53 fps, 52 fps, 53 fps, 51 fps, ..., dann werden halt konstant 52 fps angezeigt und die Ziffern springen nicht bei jedem angezeigten Frame (sonst könnte man eventuell gar nichts mehr ablesen).

Marty98
2007-12-14, 06:09:49
Bin mir mittlerweile recht sicher dass es sowohl bei NVidia als auch ATI nur unter OpenGL geht. In den NVidia Treiberoptionen steht zwar was von Tripple Buffer da, aber bei nHancer wird es schon als OpenGL Triple Buffer angezeigt und beide ändern den selben Registry Wert.

Marty98
2007-12-14, 06:11:11
Vsynch mag eine nette sache sein aber in der Praxis funzt es meines erachtens meistens nicht richtig... so habe ich schon öfters beobachtet das ich z.B. trotz VSynch Tearing in spielen hatte.

Ich machte auch diese Beobachtung, z.B. in NFS Carbon.

Mr.Postman
2007-12-14, 13:15:41
Um welches Argument ging es nochmal? Achso!
Wenn VSync bei dir die FPS halbiert stimmt mit deinem System was nicht.
Wenn VSync die Frames halbiert, weil die Bildwiederholrate nicht mehr mit der Monitorfrequenz übereinstimmt, ist alles in Butter.

Diese Halbierung findet, solange alles korrekt funktioniert, auf jeder Graka statt, auch auf einer 6600GT und X1950Pro.

Hat denn Pixelfehler den D3DOverrider mitlerweile probiert?

Coda
2007-12-14, 13:35:58
Vsynch mag eine nette sache sein aber in der Praxis funzt es meines erachtens meistens nicht richtig... so habe ich schon öfters beobachtet das ich z.B. trotz VSynch Tearing in spielen hatte.
VSync funktioniert genau so wie es soll wenn es eingeschaltet ist.

Tesseract
2007-12-14, 13:50:03
Was gibts da nicht zu verstehen? Egal welches Spiel sobald ich VSync aktiviere gehen die fps halt nicht über (bei mir z.B. 75 fps hinaus das die fps sich halbieren mit VSync habe ich noch nie gesehen bzw. bemerkt.

das ist aber exakt das verhalten, dass man mit vsync zu erwarten hat.

mit z.B. 60 Hz brauchst du genau 60 frames pro sekunde.
wenn genau zu diesem zeitpunkt, zu dem du den neuen frame brauchst erst ein teil davon fertig ist, wird der alte "ersatzweise" ein zweites mal ausgegeben und damit halbiert sich die aktualisierungsrate/framerate. (ohne vsyc würde jetzt z.B. der halbe neue frame ausgegeben werden und das bild ist zerstückelt in alt/neu)

wenn der FPS-messer aber die mittleren frames über eine größere zeitspanne ermittelt (bis zu mehrere sekunden - so auch in wow) wirst du diese genaue halbierung allerdings in den seltensten fällen sehen da sich die framerate in sekundenbruchteilen mehrmals ändern kann.

und wenn du mit der theoretisch berechenbaren framerate immer über der Hz-zahl bleibst (also jeder frame rechtzeitig fertig ist) hast du natürlich immer die volle framerate.

Pixelfehler
2007-12-14, 18:44:02
... so habe ich schon öfters beobachtet das ich z.B. trotz VSynch Tearing in spielen hatte.

das kann nicht sein! Tearing entsteht wenn ein Bild durch mehrerer Frames zusammengesetzt wird, dabei "zerreisst" das Bild ( was tearing auch wörtlich heisst :rolleyes: )

Bin mir mittlerweile recht sicher dass es sowohl bei NVidia als auch ATI nur unter OpenGL geht. In den NVidia Treiberoptionen steht zwar was von Tripple Buffer da, aber bei nHancer wird es schon als OpenGL Triple Buffer angezeigt und beide ändern den selben Registry Wert.

ich hab ja schon geschrieben, daß es unter OpenGl und D3D funktioniert, aber nur ohne AA! Das verstehe ich nun aber nicht. Kann das jemand bestätigen?

bye