Archiv verlassen und diese Seite im Standarddesign anzeigen : Grafikfehler - Bitte helft mir
BJudge
2002-03-28, 02:48:20
Hallo!
Ich habe bei einigen Spielen (z.B. Wolfenstein, MOHAA) ein wirklich nerviges Grafikproblem:
Auf dem Bildschirm entstehen horizontale Unterbrechungen in relativ gleichmäßigen Abständen, so daß senkrechte Bildelemente wie zum Beispiel Pfeiler einen Versatz zu haben scheinen.
Das ganze sieht man dann richtig, wenn man an einer Wand von links nach rechts "straft". Dann sieht das aus, wie wenn das Bild flackern würde.
Was kann ich dagegen tun, gibt es da Einstellungsmöglichkeiten?
Danke
Chris
Mein PC:
Intel P4 1,8GHz
Leadtek GeForce3-Ti200
256MB DDR-Ram PC266
ASUS P4B266-Board
Windows 2000 professional
P.S.: Habe aus Versehen zuerst im ATI-Forum gepostet. Sorry
mapel110
2002-03-28, 02:58:56
neueste treiber für alles ???
patches für games ??
übertaktet ?
windows 2000 service pack 2 ?
hast du ausser in spielen noch irgendwelche probs ?
monitor von windows erkannt ?
Modellkiller
2002-03-28, 07:21:55
Das Problem ist folgendes:
VSync ist bei RCTW und MoHAA nicht aktiviert, völlig unabhängig davon, was Du in den Treiberoptionen Deiner GraKa eingestellt hast.
Du kannst es aber bei beiden Spielen über die Konsole aktivieren.
Die Konsolenbefehle lauten wie folgt:
r_swapinterval 1
r_finish 1
Dann funzt es, aber mit Leistungsverlust.
Greetz
Micha
Der Leistungsverlust ist zu verschmerzen bei einer GF3.
Man sollte aber
"cg_maxfps" hoeher setzen als die Wiederholrate des Monitors.
Unregistered
2002-04-02, 20:55:09
genau das selbe problem habe ich auch
zuerst mit meiner radeon 8500. (dachte es würde an der graka liegen)
hab mir dan ne gf4 ti 4400 gekauft. und siehe da, das gleiche problem
besonders in CS fällt es mir auf (ist so kaum spielbar).
netzteil auch schon erneuert .
nächster schritt wäre das mainboard gewesen. bin aber nun erleichtert, daß es auch noch jemanden gibt der sich mit dem gleichen problem auseinander setzen muß
System:
AMD 1800+
ECS K7S5A
512 DDR Ram
GF4 TI 4400 MSI
SB Audigy Player
hoffe auch nun auf hilfe von euch allen
demoman
2002-04-02, 21:07:41
@unreg
Augen auf beim Eierkauf !:D
Ließ mal was Modellkiller geschrieben hat
((2 Posts über deinem))
ulrichanton
2002-04-02, 23:49:57
hi Modellkiller,
Du hast geschrieben:
"VSync ist bei RCTW und MoHAA nicht aktiviert, völlig unabhängig davon, was Du in den Treiberoptionen Deiner GraKa eingestellt hast.
Du kannst es aber bei beiden Spielen über die Konsole aktivieren.
Die Konsolenbefehle lauten wie folgt:
r_swapinterval 1
r_finish 1
(...)"
bei mir hat sich da leider nichts getan, vielleicht liegts in meinem Fall am Grafiktreiber ... .
Nur: Was die Eingabe angeht, ist es korrekt, wenn nach der Eingabe der Zeile die konsole nochmal wiederholt
wolfplayer: r_swapinterval 1
usw. Oder gibts da noch was zu beachten?
mfg
UlrichAnton
Soundman5000
2002-04-02, 23:59:00
Ja bei mir hab ich das gleiche Problem aber das ist glaub ich
Normal es kann auch am Monitor liegen
Ich habte schon 2 Orgial Redeon 8500 und jetzt eine von Hercules
keine Ahnung ???????????
Lightning
2002-04-03, 00:11:24
Originally posted by ulrichanton
bei mir hat sich da leider nichts getan, vielleicht liegts in meinem Fall am Grafiktreiber ... .
Nur: Was die Eingabe angeht, ist es korrekt, wenn nach der Eingabe der Zeile die konsole nochmal wiederholt
wolfplayer: r_swapinterval 1
usw. Oder gibts da noch was zu beachten?
mfg
UlrichAnton [/B]
Nein das ist nicht korrekt. Wenn du mitten im Spiel bist, musst du bei der Q3 Engine ein "\" vor die Befehle setzen, die man eingibt. Im Hauptmenü wird das automatisch gemacht.
Unregistered
2002-04-03, 00:38:03
hallo ich nochmal
der mit der radeon und jetzt gf4 ti4400
warum muß man denn erst in den konsolen rumpfriemeln, damit das spiel normal läuft. warum gibts das nicht im spielmenue zum einstellen ?
vielleicht kann einer so etwas ähnliches wie eine liste machen,
die spiele, die es betrifft
jedi knight 2
cs
nascar 2002
f12001
eigentlich alle spiele, außer aquanox, daß läuft komischerweise flüssig.
thx im voraus
pervert
2002-04-03, 01:03:10
VSYNC sollte in den Treibern nicht auf "always off" stehen, sonst geht es in manchem Q3-Spielen NICHT! Habe das bei FAKK2 beobachten können, aber nicht bei jedem Spiel getestet.
Um VSYNC GARANTIERT! zu aktivieren (in jedem Q3-Spiel) macht Ihr folgendes:
Im Treiber VSYNC auf "always on".
In der Q3-Konsole "/r_swapinterval 1" eingeben.
Um den aktiven STATUS des VSYNC zu testen "/r_swapinterval" eingeben, dann sollte die Meldung "r_swapinterval 1 default 0" kommen!
("\" klappt nicht in jedem Game)
Generell erkennt man "Tearing" ganz gut und einfach in flackernden Lichtquellen, oder im Mündungsfeuer einer Shooter-Waffe (wenn man sich nicht sicher ist).
Einige Q3-Spiele ersparen einem aber den Konsolenbefehl mit Menü-Optionen wie "sync every frame" o. Ä.
Bei anderen Spielen, z. B. DiretX, reicht es VSYNC im Treiber zu aktivieren.
Der Performanceeinbruch IST relevant. Er beträgt SITUTAIUONSbedingt bis zu 50%!!!!! Testet folgendes bei aktivem VSYNC:
Aktiviert den framecounter (cg_drawfps 1 oder fps 1 o. Ä.).
Guckt euch ein wenig um, mal auf den Boden, mal in einen langen Gang o. weites Areal!
Euch wird auffallen, dass an einigen Stellen die Framerate STARK einbricht! Dies ist ohne VSYNC nicht so extrem! Außerdem empfinde ich persönlich den Übergang zwischen diesen beiden Phasen als "Ruckeln" und somit sehr unangenehm. Diesen Einbruch konnte ich auch schon bei Spielen trotz aktivem Tripple Buffering beobachten!
(Hinweis: Ich spiele imemr mit 8x Ansio Filter. Bei std. Einstellungen mag sich das ein wenig anderes verhalten)
Nicht jedes Spiel ist in jeder Grafikeinstellung gleich stark vom sog. "Tearing"-Effekt, bedingt durch deaktivierten VSync betroffen. Bei den meisten Spielen ist es besser, diesen zu deaktivieren, da deutlich bessere Performance. Spiele auf der HalfLife bzw. Q1 (o. Q2?) Engine scheinen aber starkes Tearing aufzuweisen... Ist mir damals bei HalfLife auch sehr unangenehm aufgefallen.
Und der Vollständigkeit halber:
Hat man statt Tearing ein Problem mit der "Flüssigkeit" der Framerate (z. B. Rennspiel): VSYNC wieder an und im Spiel (falls vorhanden) "Tripple Buffering" einschalten. Dieses sollte man generell aktivieren, wenn man VSYNC AUCH verwendet, sonst inaktiv lassen. Belegt aber zusätzlichen Speicher auf der Grafikkarte.
Ich finde man sollte hier im Forum zu solch essentiellen Problemen permante FAQs anbieten!
ulrichanton
2002-04-04, 00:00:45
Danke für die Korrektur, jetzt läuft das Spiel ohne Fehler.
mfg
UlrichAnton
@Pervert
Leider sind deine Ausfuehrungen nicht ganz korrekt.
OGL kennt keine Vsync Einstellung "always on".
Es gibt nur "always off", "default on" bzw. "default off".
Das Verhalten des Vsync wird unter OGL immer durch die Applikation bestimmt.
Es ist also voellig wurscht, ob du im Treiber "default on/off" einstellst.
Nur bei "always off" ist Vsync immer aus.
Unter D3D ist das ganz anders.
Da gibt's nur "on", "off" und "automatic" (durch Appl. verwaltet).
pervert
2002-04-04, 22:41:19
pervert
2002-04-04, 22:41:29
Nur bei "always off" ist Vsync immer aus.
DARUM gehts hier doch auch!
Ob es jetzt "default" oder "always" heisst, ist doch völlig wurscht!
Das nötigen Einstellungen, bzw. das Resultat sind ABSOLUT IDENTISCH!
Und das man VSYNC in der Applikation einschalten muss (im Gegensatz zu D3D), habe ich auch geschrieben!
Immer diese sinnlosen Sptizfindigkeiten hier! :bonk:
Nevis
2002-04-04, 23:43:06
@pervert,
vielen Dank für deine Ausführungen. Allerdings ist mir eines noch nicht ganz klar. Ist der Performance Einbruch bei VSync ON von der jeweiligen Grafikkarte abhängig, d.h. gibt es da Unterschiede z.B. zwischen einer GeForce 1 und GeForce 3 ?
zeckensack
2002-04-04, 23:56:23
Originally posted by Nevis
@pervert,
vielen Dank für deine Ausführungen. Allerdings ist mir eines noch nicht ganz klar. Ist der Performance Einbruch bei VSync ON von der jeweiligen Grafikkarte abhängig, d.h. gibt es da Unterschiede z.B. zwischen einer GeForce 1 und GeForce 3 ?
Der Performanceverlust hängt nicht mit der Graka zusammen. Bestimmend ist hier die Wiederholfrequenz des Monitors. Bei 'nur' double-buffering und 85Hz zB, werden die fps auf ganzzahlige Teile von 85 gedrückt ( watt ???)
ehhh, also 85fps, 43,5fps, 28,3fps ...
Bei triple-buffer wird's mir jetzt zu kompliziert zu erklären. ;)
pervert
2002-04-05, 00:08:44
Da war schon wieder jemand schneller, aber egal...
Die Teiler sind falsch und lauten:
85 - 42.5 - 21.25
NACHTRAG: die 28.33 gehört auch dazu.
Es kommt nur auf die Relation der jeweils aktuellen Framerate zur Bildwiederholrate an. Schafft sie mehr als 75 Bilder bei 75Hz, wird sie auf 75 gebremst (bei Sync=ON), schafft sie weniger, muss sie auf die nächste Bildsynchro warten. Rechnet euch die Latenzen selbst aus, wenn Ihr die Muße habt. Ansonsten sollte ungefähr klar sein, was passiert. Deswegen lässt sich hier einfach keine präzise Aussage machen, wann wo und wieviel ein Spiel einbricht. Auch ein durchschnittliches Benchmarkergebnis hilft hier wenig, wenn die Karte vielleicht im worst case nur 15 Bilder liefert.
Das beste ist: immer Ausprobieren. Die Q3-Engines bieten einen Framecounter und unter DirectX kann man Tools wie das bekannte "Fraps" verwenden, um die Relation VSYNC an/aus zu testen.
Mein Tipp: nur bei starkem Tearing oder sehr "unflüssigem" Spielablauf VSYNC (wenn möglich) zusammen mit Tripple Buffering einschalten. Oder wenn die Framerate des Spiels möglichst hoch ist. Andere Effekte wie Anisotropen Filter, würde ich aber jederzeit bevorzugen und damit läuft nunmal kein Spiel mehr so schnell, dass ich es noch wagen würde den VSYNC einzuschalten :(.
Achja: Tripple Buffering dämmt den Einbruch etwas ein.
pervert
2002-04-05, 00:14:21
Hey Ihr Mathe-Genies??
Müssten bei Tripple Buffering nicht 3/4 der Bildwiederholrate erreicht werden?
Beziehungsweise:
DOUBLE: 85 -> 42.50 -> 21.25
TRIPPLE: 85 -> 63.75 -> 42.50 -> 31.88 -> 21.25
Nachtrag: es fehlen zumindest einige Teiler...
Sollte das so stimmen, betrüge der FPS-VERLUST gegenüber den real erreichten Frames bei üblichem Double Buffer BIS ZU 50 % und im Durchschnitt 25%
Bei Tripple Buffer demnach BIS ZU 25% und im Schnitt 12,5%.
(Kann das mal jemand nachrechnen?)
Originally posted by pervert
DARUM gehts hier doch auch!
Ob es jetzt "default" oder "always" heisst, ist doch völlig wurscht!
Das nötigen Einstellungen, bzw. das Resultat sind ABSOLUT IDENTISCH!
Und das man VSYNC in der Applikation einschalten muss (im Gegensatz zu D3D), habe ich auch geschrieben!
Immer diese sinnlosen Sptizfindigkeiten hier! :bonk: [/B]
Das ist eben nicht wurscht!!
"Always" erzwingt das Vsync Verhalten, "default" kann das nicht.
Und ich werde dich weiterhin korrigieren, wenn du hier was falsches schreibst. Damit sich solche Fehler nicht weiterverbreiten.
Ist mir egal, ob du das als spitzfindig betrachtest oder nicht.
Originally posted by pervert
Da war schon wieder jemand schneller, aber egal...
Die Teiler sind falsch und lauten:
85 - 42.5 - 21.25
Falsch. Rechne das lieber nochmal nach.
Originally posted by pervert
Hey Ihr Mathe-Genies??
Müssten bei Tripple Buffering nicht 3/4 der Bildwiederholrate erreicht werden?
Beziehungsweise:
DOUBLE: 85 -> 42.50 -> 21.25
TRIPPLE: 85 -> 63.75 -> 42.50 -> 31.88 -> 21.25
Sollte das so stimmen, betrüge der FPS-VERLUST gegenüber den real erreichten Frames bei üblichem Double Buffer BIS ZU 50 % und im Durchschnitt 25%
Bei Tripple Buffer demnach BIS ZU 25% und im Schnitt 12,5%.
(Kann das mal jemand nachrechnen?)
Auf welcher Annahme basiert dieser Quatsch, dass bei TB 3/4 erreicht werden sollten?
VoodooJack
2002-04-05, 13:06:48
BJudge, was ist denn nun? Hat der Vsync-Vorschlag zur Lösung deines Problems geholfen oder nicht?
Mich würde es allerdings stark überraschen, wenn er helfen würde. Ich hab weder beim Spielen von Wolfenstein noch beim Spielen von MoHAA auch nur den Hauch deines oben beschriebenen Problems erkennen können, obwohl ich wie immer mit Vsync OFF spielte. Vielleicht spielt die Qualität des Monitors eine Rolle?
Zur Vsync On/OFF-Diskussion ein paar Anmerkungen von mir:
1. Spielen, die eine In-game-Einstellungsmöglichkeit für Vsync haben, ist es egal, ob man im Control Panel unter OpenGL-Einstellungen Vsync auf Off oder On stellt. Sie tun das, was man ihnen in den In-game-Einstellungen oder meinetwegen in der Console vorgibt.
2. Bestimmte Spiele, die auf der Q3-Engine basieren, reagieren sehr empfindlich auf das Übertakten der CPU. FAKK2 ist so ein Kandidat. FAKK2 scheitert nicht an der Vsync-Frage, sondern am Übertakten der CPU. Ein ganz aktuelles Beispiel ist Jedi Knight 2. Zwar nicht ganz so übertaktungsempfindlich wie FAKK2, aber immerhin.
3. Consolen-Befehle in Spielen, die auf der Q3-Engine basieren, muss manchmal ein "/" vorangehen (und nicht der Backslash!), aber nicht immer, sonst reagieren sie nicht.
z. B. in Wolfenstein mit "/"
/r_swapinterval (1 oder 0)
z. B. in MoHAA ohne "/"
r_swapinterval (1 oder 0)
4. Wer den Frame Counter mitlaufen lässt und sich wundert, dass seine Frames nie über 90 fps hinausgehen, der muss unbedingt zuvor entweder in der jeweiligen Config-Datei oder in der Console den com_maxfps "85" Befehl verändern bzw. höher stellen. Ich persönlich stelle ihn immer auf 200 ein.
Zum Beispiel verändere ich in der jk2config-Datei, die ihr im "Base"-Unterverzeichnis findet, den vorgefundenen Befehl com_maxfps "85" in com_maxfps "200" oder aber ich gebe in der Console den Befehl com_maxfps 200 ein. Wie man sieht, braucht JK2 ebenfalls nicht das "/"-Zeichen.
Wer allerdings diese Spiele zuvor auf Vsync ON eingestellt hat, wird trotz com_maxfps 200 auf keinen Fall höhere Werte als ~90 fps sehen.
pervert
2002-04-05, 21:17:06
Originally posted by ow
Das ist eben nicht wurscht!!
"Always" erzwingt das Vsync Verhalten, "default" kann das nicht.
Und ich werde dich weiterhin korrigieren, wenn du hier was falsches schreibst. Damit sich solche Fehler nicht weiterverbreiten.
Ist mir egal, ob Du das als spitzfindig betrachtest oder nicht.
Na bitte, wenns dir Spass macht. Letzlich ging es nur darum, dass es nicht auf always off steht. Warscheinlich bist Du der Einzige, der das nicht ganz verstanden hat. Nebenbei bemerkt habe ich es nur "always" genannt, da ich den in OGL verwendeten Begriff nicht auswendig wusste. SPITZFINDIG ohne Ende. Aber Du bist mein Held! Achtest Du auch so gut auf DEINE "Rechtschreibung"? Ohne dich damit beleidigen zu wollen, aber sowas fällt gemeinhin unter "Klugscheißerei".
pervert
2002-04-05, 21:18:03
Originally posted by ow
Falsch. Rechne das lieber nochmal nach.
Aha??? Die anderen "Teiler" waren alle richtig, ja???
Dann rechne DU doch mal vor, wie es richtig geht! :bonk:
DARUM hatte ich ja auch gebeten!
Ich habe nicht behauptet es WÄRE richtig, was ich vorrechnete.
Nachtrag: Ich habe zumindest einige Teiler "ausgelassen", wie mir gerade auffiel. Wers genau weiss, sollte auf jeden FAll mal vorrechnen!
BJudge
2002-04-06, 00:40:50
@VoodooJack:
Ja, das VSync hat mir sehr geholfen. Die Grafikfehler sind jetzt weg. Aber jetzt kämpfe ich mit den Framerateeinbrüchen in JK2 ;)
Kann mir das mit diesen VSync Teilern mal jemand verständlich erklären? Bei mir zeigt der Counter auch nur 85 oder 43 (so um den Dreh) an. Ab und zu stürzt das Game dann noch unter 20FPS...ist das normal?
Mein PC:
Intel P4 1,8GHz
GeForce3Ti-200
256MB DDR-Ram PC266
Windows 2000
pervert
2002-04-06, 00:46:14
Letztlich hast Du nur 3 Möglichkeiten:
Vsync wieder abschalten
Tripple Buffering suchen?
Andere Bildwiederholrate wählen, z.b. 100Hz um vielleicht passendere Teiler zu erreichen - z. B. 50 statt 43 o. Ä.
VoodooJack
2002-04-06, 01:15:37
BJudge, dir ist es gelungen, mich zu überraschen, aber nicht, mich zu überzeugen. Würdest du mir aus Wolfenstein oder MoHAA eine präzise Ortsangabe (Levelname/Levelpunkt) machen, wo ich gezielt nach deinem "horizontalen Versetzungsphänomen" suchen könnte.
Außerdem hoffe ich, dass du in JK2 nicht schon wieder diesem Problem begegnet bist. Na, dann spiel doch JK2 so wie es guter Brauch ist (hehe) mit Vsync OFF und du hast keine Framerate-Einbrüche!
pervert
2002-04-06, 02:06:43
Originally posted by ow
Auf welcher Annahme basiert dieser Quatsch, dass bei TB 3/4 erreicht werden sollten?
Das war etwas unglücklich formuliert. Ich wollte damit sagen, dass ich vermute, dass sich die Latenzen nochmals halbieren. Rechnet man jetzt die von mir vegessenen Teiler noch mit ein, wirds besser...
Vielleicht SO: ???
DOUBLE: 85 -> (/2)42.50 -> (/3)28.33 -> (/4)21.25
TRIPPLE: 85 -> 63.75 -> 42.50 -> 31.88 -> 28.33 -> 21.25 ???
pervert
2002-04-10, 12:32:54
Warum korrigiert mich niemand, wenns mal wirklich nen Grund dafür gibt?
Dann muss ich das wohl selbst machen! :D
Ich hatte jetzt mal ein wenig Zeit, um von der Theorie zur Praxis zu wechseln...
In Max Payne kann man das ganze schön testen, mit FRAPS zur Frame-Messung. Das Spiel unterstützt Double und Tripple Buffering.
Die (unschwer) errechneten Werte für den Double Buffer stimmen wie zuletzt gepostet!
Das Spiel zeigt hier folgende gerundete Werte:
85, 43, 29, 22.
Aktiviert man aber Tripple Buffer sieht es BESSER aus!
Es war mir möglich die Framanzeige in Einzelframe Schritten fallen zu lassen. Die Maximale Framerate deckte sich mit der aktuellen Bildwiederholrate. Heisst das kein Nachteil durch Tripple Buffering? Vielleicht.
Selbst wenn die Framerate hier "flüssig" ist und nicht mehr an einen Teiler der Bildwiederholrate gebunden ist, bliebe noch auszutesten, ob die Geschwindigkeit (hier) GAR NICHT leidet. Auf jeden Fall wird zusätzliches RAM auf der Grafikkarte belegt, was vielleicht in einem bestimmten Spiel Performance kosten kann, wenn dieses sehr Speicherhungrig ist.
Gibt es eigentlich eine Möglichkeit, sprich Konsolenbefehl, um in einem Q3-Game Tripple Buffering zu verwenden???
Pervert
Da muss man nicht viel rechnen:
Angenommen sind jetzt mal 100Hz Refresh -> der Monitor zeigt 100 Bilder/s
Welche Bilder zeigt er? -> die gerenderten Frames natuerlich
wie oft zeigt er jedes gerenderte Frame? -> haengt davon ab, ob schon ein neues Frame fertig berechnet wurde.
Der RAMDAC gibt bei "VSync EIN" immer nur komplette Frames aus (kein Bufferswap waehrend der RAMDAC ein Frame an den Minitor ausgibt)
Also:
Der RAMDAC kann das Frame 1x ausgeben -> 100fps
er kann es zweimal ausgeben muessen -> 50fps
Und falls der Grafikchip dann das naechste Frame immer noch nicht fertig berechnet hat, gibt der RAMDAC das alte Frame eben noch ein drittes Mal aus -> 33fps,....... oder auch 4x -> 25fps....
Ob hierbei double oder triple buffering eingestellt ist spielt absolut keine Rolle.
Ich muss nur zaehlen, wie oft der RAMDAC das fertig gerenderte Frame im Frontbuffer ausgibt (ausgeben muss, bevor ein neues Frame fertig ist).
pervert
2002-04-16, 22:49:51
Der Vollständigkeit halber hier ein kleiner Nachtrag, habe gerade ein Zitat von ATHS entdeckt, der hier vermutlich irgendwo einen Artikel dazu verfasst hat? Wäre nett, wenn den evtl. einer verlinken könnte...
"Triple und Quad-Buffering erhöhen die Latenzzeit, ermöglichen dafür
allerdings eine etwas ausgeglichenere Framerate. Triple und erst recht
Quad-Buffering lohnen nur bei ohnehin hohen Frameraten, da die Latenzzeit
sonst zu groß wird."
Damit ist eigentlich alles gesagt.
Nun unschwer zu erraten und von mir nochmal getestet, FÄLLT die Framerate somit in Max Payne mit Tripple Buffering gegenüber VSYNC OFF deutlich ab!
vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd.