Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : Diskussion zu: News des 29. Juni 2009


Leonidas
2009-06-30, 09:37:10
Link zur News:
http://www.3dcenter.org/news/2009-06-29

Gast
2009-06-30, 10:13:06
Hallo Leonidas,

die Aussage, dass Triplebufferung und Vsync nur für OpenGL in Nvidia und ATI Treibern aktivierbar sind, ist zumindest für Nvidia falsch.

Ich verwende einen TFT-Monitor mit 60Hz Bildwiederholrate und hatte die im Artikel beschriebene Frameratenbeschränkung auf 30Hz. Im Nvidia Treiber kann ich ohne Probleme Vsync und Triplebuffering zusammen aktivieren. Bei allen DirectX und OpenGL Spielen ist dann mit Fraps messbar das Frameratenlimit aufgehoben inkl. der Tearingeffekte. Dieser Teil der News stimmt. :-)

Gast
2009-06-30, 10:45:12
ich dachte bis jetzt immer, dass Triple Buffering bei nvidia unter direct3d standardmäßig aktiviert ist und deswegen keine extra funktion im treiber vorhanden ist. jedenfalls kann ich persönlich weder tearing noch frameeinbrüche von 60 auf 30fps unter direct3d feststellen.

greeny
2009-06-30, 11:23:58
Energissparwunder: Frosch kann mehrere Jahre verschlafen [Der Spiegel]
Energiesparwunder ;)

Ernie
2009-06-30, 11:43:29
nVidia bietet sehr wohl unter D3D treiberseitiges TripleBuffering an. Ferner sei der Hinweis erlaubt, dass Tearing nur ein Problem bei sehr niedrigen Refreshraten darstellt, also 75 Hz und weniger. Auf einem CRT oder TFT mit 100Hz ist es kaum noch wahrnehmbar.

Mr. Lolman
2009-06-30, 11:47:51
Bei AnandTech gibt es einen interessanten Artikel, welches das oftmals vergessene Thema Triple Buffering beleuchtet. Beim Triple Buffering erzeugt die Grafikkarte prinzipiell gleich drei Bilder im voraus, womit man die üblichen Probleme der default-Einstellung (Double Buffering + Vsync on) umgehen kann: Double Buffering alleine kann dazu führen, daß (bei sehr hohen Frameraten) Teile verschiedener Frames auf dem Monitor angezeigt werden (Tearing-Effekt) – weswegen man Double Buffering gewöhnlich nur mit Vsync=on benutzt. Diese Option kann dann aber die Framerate erheblich nach unten drücken, gerade bei TFT-Displays mit üblicherweise nur 60 Hz Bildwiederholfrequenz wird die Framerate oftmals auf nur noch 30 fps abgesenkt werden, obwohl die Grafikkarte mehr leisten könnt


Den Tearing Effekt hat man mit deaktiviertem VSync immer. Egal ob Double oder Tripple Buffering. Jeder der mit deaktiviertem VSync spielt, hat auch normalerweise auch Double-Buffering aktiv (alles andere wäre unsinnig).



EDIT - BTW: Über ATT-Profile kann man auch Triple-Buffering für D3D erzwingen.


nVidia bietet sehr wohl unter D3D treiberseitiges TripleBuffering an. Ferner sei der Hinweis erlaubt, dass Tearing nur ein Problem bei sehr niedrigen Refreshraten darstellt, also 75 Hz und weniger. Auf einem CRT oder TFT mit 100Hz ist es kaum noch wahrnehmbar.

Zu pauschalisiert. Es kommt immer auch auf den Bildinhalt und auf die Framerate an. Bei nem Stroboskopflackern hat man je nach Frequenz des Lichtflackerns und der Framerate auch bei 100Hz noch gut sichtbares Tearing.

geezer
2009-06-30, 12:39:03
Interessanter Artikel auf AnandTech.

Mir ist nur nicht vollends klar, wie ich am besten das Prerender Limit handhaben soll. Habe bisher Vsync und Triple Buffering per ATT benutzt und werde dies mit meiner GTX 260 und nHancer hoffentlich fortsetzen können. Kann man denn in dieser Konstellation das Limit auf 0 setzen (oder zumindest 1), um Inputlag möglichst auszuschließen? Denn wenn ich Anandtech richtig verstehe, können beim Prerendering keine "abgelaufenen" Frames verworfen werden.

Mr . reL@X
2009-06-30, 12:39:43
nVidia bietet sehr wohl unter D3D treiberseitiges TripleBuffering an. ...
Bei der nVidia 3d Verwaltung gibt es nur noch ein Menü zur Einstellung der OpenGL und D3D Optionen. Die TB Funktion gilt aber nur für OpenGL.

Spasstiger
2009-06-30, 13:42:30
Bei der nVidia 3d Verwaltung gibt es nur noch ein Menü zur Einstellung der OpenGL und D3D Optionen. Die TB Funktion gilt aber nur für OpenGL.
Unter D3D ist Triple Buffering bei NV standardmäßig aktiv, wenn man VSync anschaltet.

Bei Radeons kann man Triple Buffering unter D3D ganz leicht mit dem D3DOverrider erzwingen, zumindest klappt das Tool bei mir unter WinXP 100% zuverlässig.

RainingBlood
2009-06-30, 16:51:49
wenn man das Prerenderlimit heruntersetzt, spart das eigentlich Videospeicher ein?

|MatMan|
2009-06-30, 17:27:47
also ich finde unter WoW funktioniert Triple Buffering sehr gut (ingame Option), wenn ich das ausschalte und V-Sync an lasse ist es an einigen Stellen praktisch unspielbar - mit aktivierter TP-Option geht es wunderbar. Also funktioniert es doch auch unter D3D?!

puntarenas
2009-06-30, 19:41:46
Also funktioniert es doch auch unter D3D?!
Mir ist nicht ganz klar, was du meinst. Natürlich funktioniert Vsync unter D3D und natürlich sind sowohl Double Buffering, als auch Triple Buffering möglich. Allerdings sieht Microsoft für D3D im Gegensatz zu OpenGL nicht vor, dass Triple Buffering extern erzwungen werden kann. Soweit ich das mitbekommen habe, muss sich das Spiel beim API-Aufruf selbst darum kümmern.

Wenn es In-Game keine Option gibt, kann man Triple Buffering bei D3D-Spielen also nicht gezielt im Treibermenü oder in einem Fremdtool erzwingen. Dass zum Beispiel die ATI Tray Tools im Zusammemhang mit D3D trotzdem ermöglichen, Triple Buffering explizit zu forcieren liegt daran, dass sich die ATT zwischen Anwendung und API schalten, diesen Hack bemerkst du dann, wenn zum Beispiel Punk Buster anspricht.

TheGoD
2009-06-30, 22:50:02
Wenn es In-Game keine Option gibt, kann man Triple Buffering bei D3D-Spielen also nicht gezielt im Treibermenü oder in einem Fremdtool erzwingen. Dass zum Beispiel die ATI Tray Tools im Zusammemhang mit D3D trotzdem ermöglichen, Triple Buffering explizit zu forcieren liegt daran, dass sich die ATT zwischen Anwendung und API schalten, diesen Hack bemerkst du dann, wenn zum Beispiel Punk Buster anspricht.

Also ich hatte mit den ATT eigentlich nie Probleme mit Punkbuster, auch nicht bei eingeschalteten TB. Und Nvidia verwendet wie bereits geschrieben wurde immer TB wenn Vsync im Treiber forciert ist. Von daher ist das in der News beschriebene Problem praktisch nicht vorhanden.

|MatMan|
2009-06-30, 23:59:45
Mir ist nicht ganz klar, was du meinst. Natürlich funktioniert Vsync unter D3D und natürlich sind sowohl Double Buffering, als auch Triple Buffering möglich. Allerdings sieht Microsoft für D3D im Gegensatz zu OpenGL nicht vor, dass Triple Buffering extern erzwungen werden kann. Soweit ich das mitbekommen habe, muss sich das Spiel beim API-Aufruf selbst darum kümmern.
In der News klang es für mich eher so als wäre Triple Buffering allgemein ein Problem unter D3D (kann auch an meiner Interpretation liegen). Da ich das Gefühl hatte, dass kaum ein TP benutzt, sondern die meisten einfach mit V-Sync aus spielen um max Performance zu bekommen, wollte ich halt ein praktisches Beispiel posten wo TP meiner nach sehr gut unter D3D funktioniert...

Gast
2009-07-01, 01:49:29
Warum soll denn Tearing nur ein Problem bei hohen Frameraten sein? Das kann bei niedrigen ebenso gut auftreten und auch störend sein. Die Grafikkarte wartet ja auch bei niedrigen Frameraten nicht auf einen neuen Bildrefresh.