Zurück   3DCenter Forum > Diskussions-Foren > Technologie
Registrieren Hilfe Community Kalender Heutige Beiträge Suchen Uns unterstützen

Antwort
 
Themen-Optionen Ansicht
Alt 2006-04-24, 23:55:21   #1 (im Thread / einzeln)
Zephyroth
Master Member
 
Benutzerbild von Zephyroth
 
Registriert: 2006-02-07
Beiträge: 7.303
Wieso werden dynamische Schatten auf der CPU gerechnet?

Ich habe gerade NFSMW gespielt und habe mich jetzt von den dynamischen Schatten getrennt. Folge davon war ein sprunghafter Anstieg in der Framerate und ein Ansteigen der GPU-Temperatur.

Daraus schließe ich, das die GPU nun mehr zu rechnen hat, sprich mehr Frames pro Sekunde vom Prozessor her übermittelt werden. Das legt den Schluß nahe, das Schatten auf der CPU gerendert werden und NFSMW somit im CPU-Limit war.

Warum ist das so?
Sind Schatten nicht eigentlich eine Aufgabe der GPU?

Abgesehen davon ist es interressant wie die GPU-Auslastung (zeigt sich eben in der Temperatur) auf verschiedene Einstellungen reagiert:

Double Buffering 30fps: 78°C
Triple Buffering, Shadows: 82°C
Triple Buffering, no Shadows: 88°C

Somit komme ich der idealen GPU-Auslastung von 100% näher, mit dem ATI-Tool ist das ja zu erreichen (92°C).

Das System mit dem ich das ermittelt habe: Athlon 64 3200+ Venice mit einer Radeon X850XT

Grüße,
Zeph

Geändert von Zephyroth (2006-04-25 um 00:06:35 Uhr)
Zephyroth ist offline Computer-Informationen von Zephyroth anzeigen   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 00:17:24   #2 (im Thread / einzeln)
Quasar
User Awaiting Email Confirmation
 
Registriert: 2001-09-05
Beiträge: 19.433
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

NFSMW verwendet Shadow-Maps, die als Texturen sehr wohl Aufgabe der GPU sind. Vermutlich nimmt das Verrechnen der Shadowmap-Samples für die höchste Schattenqualität ziemlich viel Zeit in Anspruch, in denen andere Teile deiner GPU leer laufen und sich so die Temperaturunterschiede erklären.
Quasar ist offline   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 00:37:56   #3 (im Thread / einzeln)
Neomi
Admiral Member
 
Benutzerbild von Neomi
 
Registriert: 2005-03-19
Beiträge: 2.003
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

Das heißt nicht, daß die Schatten von der CPU berechnet werden, sondern nur, daß nicht alle Teile der GPU bei der Berechnung ausgelastet werden.

Was ist denn bei der Schattenberechnung zu machen? Im Grunde werden da nur Tiefeninformationen in Texturen gerendert. Es gibt zwar viele Möglichkeiten, aber bei Shadowmaps läuft es meist darauf hinaus. Keine Beleuchtung, nichts. Solange kein Alphatest verwendet wird (Alphablending-Schatten sind problematisch, da man schlecht mehrere Tiefeninfos in einem Kanal unterbringen kann), wird nur ein Z-Wert rausgehauen. Die Pixelshader haben also kaum was zu tun. Da keine Texturen gesampelt werden müssen (außer bei den Alphatest-Dinger natürlich), liegen noch ein paar Einheiten mehr brach. Da wird dann logischerweise auch nicht mehr so viel Hitze erzeugt.
Neomi ist offline   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 09:49:28   #4 (im Thread / einzeln)
gnomi
Grandmaster Member
 
Benutzerbild von gnomi
 
Registriert: 2003-01-09
Beiträge: 11.825
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

Mich würde mal interessieren, warum aktuell bei einigen Spielen auch in hohen Detailstufen verpixelte Schatten angezeigt werden. (Spellforce 2, Act of War- High Treason oder so wie ich gehört habe auch Schlacht um Mittelerde 2)
Hat da jemand eine technische Erklärung dafür. (Shadowmap Auflösung? Mangel an Rechenpower?)
gnomi ist offline Computer-Informationen von gnomi anzeigen   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 09:49:37   #5 (im Thread / einzeln)
Zephyroth
Master Member
Threadstarter
 
Benutzerbild von Zephyroth
 
Registriert: 2006-02-07
Beiträge: 7.303
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

Das heißt also das ich doch nicht am CPU-Limit war mit den Schatten? Es wäre mal interressant eine GPU-Auslastung a'la Taskmanager zu sehen, derzeit hat man ja wirklich nur die Temperatur als Indikator....

Beim Double-Buffering war mir klar, die GPU muß auf den Bildschirm warten, daher ist sie kühler. Anders beim Triple-Buffering, da rendert sie einfach vor sich hin, daher mehr Temperatur. Als ich dann eben die Schatten deaktiviert habe, wurde das Spiel noch schneller und die GPU besser ausgelastet. Daher habe ich eben angenommen, das die CPU der limitierende Faktor ist. Ich wußte ja nicht das die Pixelshader Däumchen drehen während Schatten berechnet werden.

Grüße,
Zeph

Geändert von Zephyroth (2006-04-25 um 09:52:35 Uhr)
Zephyroth ist offline Computer-Informationen von Zephyroth anzeigen   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 10:25:10   #6 (im Thread / einzeln)
Gast
Gast
 
Beiträge: n/a
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

Zitat von gnomi:
Mich würde mal interessieren, warum aktuell bei einigen Spielen auch in hohen Detailstufen verpixelte Schatten angezeigt werden. (Spellforce 2, Act of War- High Treason oder so wie ich gehört habe auch Schlacht um Mittelerde 2)
Hat da jemand eine technische Erklärung dafür. (Shadowmap Auflösung? Mangel an Rechenpower?)
Das liegt daran, dass "Soft-Shadows" momentan der Hype neben "HDR" sind. Shadowmaps haben feste Grenzen und um da weiche Kanten hinzubekommen werden mehrere Samples genommen. Nvidia-Hardware verfügt seit der GF3 (lt. Demirug) über die Möglichkeit, bilinear gefilterte Shadowmap-Samples in der TMU aufzubereiten - damit sehen die Kanten dann etwas softer aus. Andere HW muss diese Funktion entweder im Pixelshader nachbilden, was Leistung kostet, oder die Samples ungefiltert übernehmen, was dann in der Pixeligkeit resultiert (BF2, NFSMW, 3DMark05 u.a.). SUM2 filtert auf keiner Hardware die Shadowmaps, daher sieht's dort immer grob aus (vor Urzeiten habe ich dazu mal einen Thread im Technologie-Forum gestartet, inkl. Screenshots).


Das Flackern resultiert meist auf zu geringer Genauigkeit, sprich Auflösung. Ein klassisches Aliasing-Artefakt.


Q
  Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 11:05:40   #7 (im Thread / einzeln)
gnomi
Grandmaster Member
 
Benutzerbild von gnomi
 
Registriert: 2003-01-09
Beiträge: 11.825
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

Schade ist, wenn die Spiele nicht die passenden Einstelloptionen anbieten.
Bei Spellforce 2 hätte ich gerne schöne Softshadows, aber halt nicht auf allen Objekten.

Auf Bäumen und in Cutscenes sehen diese verpixelten Schatten bei "Hoch" sehr schlecht aus.
Das einzige, was man da machen kann, ist nun, die Einstellung auf "Sehr hoch" zu erhöhen.
Da gibt meine Grafikkarte aber dann endgültig auf. (reduziert davon abgesehen auch nur das Problem)
Bei "Mittel" werfen zwar weniger Objekte dynamische Schatten, aber die Schatten selber sind dann wiederum extrem unschön. (verpixeln dann auch bei Einheiten und Objekten)

Fazit: Man hätte einfach nur mehrere Schalter im Videomenü anbieten müssen. Einmal, was genau und wie Schatten wirft, und einmal, in welcher Qualität dies geschieht.
Sehr unverständlich muß ich sagen.
Alles bis "Mittel" sieht jetzt mies aus, und alles ab "Hoch" kostet extrem Leistung und hat trotzdem Schönheitsfehler.
Generell ist die techn. Implemtierung super, aber so kann man es dann in Sachen Nutzbarkeit denke ich auch versauen.
gnomi ist offline Computer-Informationen von gnomi anzeigen   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-04-25, 12:49:11   #8 (im Thread / einzeln)
RLZ
Avantgarde Member
 
Benutzerbild von RLZ
 
Registriert: 2003-04-11
Beiträge: 5.548
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

Man sollte den CPU-Overhead für die Shadowmaps nicht unterschätzen.
Das wird sich mit Vista und dann nochmal mit D3D10 verbessern.
Momentane GPU sind ja vorallem auf Belastungen im Pixelshaderbereich ausgelegt, die allerdings bei Z-Only Passes (Shadowmaps, Z-First, etc) brach liegen. Mit Unified Shader bessert sich dort die Situation auch.
Zitat von gnomi:
Mich würde mal interessieren, warum aktuell bei einigen Spielen auch in hohen Detailstufen verpixelte Schatten angezeigt werden. (Spellforce 2, Act of War- High Treason oder so wie ich gehört habe auch Schlacht um Mittelerde 2)
Hat da jemand eine technische Erklärung dafür. (Shadowmap Auflösung? Mangel an Rechenpower?)
Gegen die verpixelten Schatten fallen mir 4 Gegenmaßnahmen ein:
- höhere Shadowmapauflösung: kostet Speicher und Z-Füllrate
- bessere Ausnutzung der Shadowmaps (Lispm, Tsm,...): nicht immer ganz problemlos, aufwendig zu implementieren und man muss aufpassen, dass man nicht Softwarepatente verletzt
- SoftShadows (PCF,VSM,...): teuer
- Shadowvolumes: kennt ja jeder aus Doom3

Geändert von RLZ (2006-04-25 um 13:02:41 Uhr)
RLZ ist offline   Mit Zitat antworten Beitrag zum Zitieren auswählen
Alt 2006-05-05, 12:44:34   #9 (im Thread / einzeln)
Kabeldrachen
Senior Member
 
Benutzerbild von Kabeldrachen
 
Registriert: 2005-06-19
Beiträge: 109
Re: Wieso werden dynamische Schatten auf der CPU gerechnet?

ja das wird woll stimmen trozdem verstehe ich es nicht

Für Rechtschreibfehler Haftet mein ehemaliger Deutsch Lehrer
Kabeldrachen ist offline   Mit Zitat antworten Beitrag zum Zitieren auswählen
Antwort

Lesezeichen
  • Dieses Thema bei Twitter speichern
  • Dieses Thema bei Facebook speichern


Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:39:21 Uhr.


Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.