PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wann setzt sich Deferred Shading endlich durch?


Garst
2007-04-14, 16:35:34
Hab mir im Inet sone DS-Demo geladen namens DeferredShading_MaciejSawitus.zip, mit dem läuft die Grafik doppelt so schnell wie mit herkömmlichen Shadern. Warum setzte keiner bisher darauf, wann steigen alle um. Hat Crytek DS, ab welchem SM geht DS bei Stalker und Unreal3, für dieses Demo reichte jedenfalls meine Shader2 Radeon 95pro mit MRT. Welche Games nutzen bald DS.

Gast
2007-04-14, 16:54:53
Solange ich dafür auf MSAA verzichten muss, hoffe ich, dass sich DS gar nicht durchsetzt.

Gast
2007-04-14, 16:56:43
Warum setzte keiner bisher darauf
Weil du einerseits zusätzlichen Videospeicher benötigst und andererseits sich das ganze erst ab einer bestimmten Szenenkomplexität wirklich lohnt. Weite, leere Level wie bei vielen älteren Games würden mit DS eher langsamer.

dargo
2007-04-14, 17:18:26
Solange ich dafür auf MSAA verzichten muss, hoffe ich, dass sich DS gar nicht durchsetzt.
Mit D3D10 sollte es doch möglich sein. Oder verwechsle ich hier was?

Gast
2007-04-14, 17:20:32
Mit D3D10 sollte es doch möglich sein. Oder verwechsle ich hier was?Nein, schon richtig. Mit D3D10 ist dann auch MSAA möglich.

Gast
2007-04-14, 17:24:06
Nein, schon richtig. Mit D3D10 ist dann auch MSAA möglich.
Ja, aber das ist AFAIK kein Selbstgänger, sondern muss im Spiel explizit so vorgesehen sein. Natürlich reicht es auch nicht, einfach nur eine D3D10-Karte zu besitzen...

Gast
2007-04-14, 20:44:33
Hab mir im Inet sone DS-Demo geladen namens DeferredShading_MaciejSawitus.zip, mit dem läuft die Grafik doppelt so schnell wie mit herkömmlichen Shadern.

deferred-shading hat auch einige nachteile.

unter anderem wird sehr viel VRAM und bandbreite verbraucht, MSAA ist ohne DX10 nicht möglich und weniger komplexe szenen laufen langsamer als der herkömliche weg.

wird nun mit D3D10 nun endlich MSAA möglich steigt der VRAM-verbrauch nochmals stärker an.

Defered Shading ist eine zusätzliche möglichkeit das problem der grafischen darstellung zu lösen aber kein allheilmittel.

deekey777
2007-04-14, 21:07:20
Hab mir im Inet sone DS-Demo geladen namens DeferredShading_MaciejSawitus.zip, mit dem läuft die Grafik doppelt so schnell wie mit herkömmlichen Shadern. Warum setzte keiner bisher darauf, wann steigen alle um. Hat Crytek DS, ab welchem SM geht DS bei Stalker und Unreal3, für dieses Demo reichte jedenfalls meine Shader2 Radeon 95pro mit MRT. Welche Games nutzen bald DS.
In diesem Thread wird einiges erklärt: X-Ray Engine: das Maß aller Dinge? (http://www.forum-3dcenter.org/vbulletin/showthread.php?t=222837)
Die Cryengine verwendet kein DS. Ob UE3 ein Deferred Renderer ist, ist immernoch nicht klar.

Gast
2007-04-14, 21:12:43
Ob UE3 ein Deferred Renderer ist, ist immernoch nicht klar.

die UE3-engine verwended deferred shading (kein deferred renderer)

Gast
2007-04-14, 21:27:49
Kaman mit OGL das AA-Problem von D3D9 nicht umgehen oder müssen sich jetzt alle ne D3D10-Karte kaufen?

deekey777
2007-04-14, 21:35:20
die UE3-engine verwended deferred shading (kein deferred renderer)
Hast du den verlinkten Thread gelesen?
Deferred Rendering ist ein Oberbegriff wie Pipeline.
Deferred Shading oder Deferred Lighting geben an, welche Stufe der Pipeline "deferred" ist.


Nur weil kein MSAA in Verbindung mit dem Schattenalgo (laut Epic aber auch Nebel und nochwas) möglich ist, macht es die UE3 noch nicht zu einem Deferred Renderer.

Gast
2007-04-14, 21:43:04
Kaman mit OGL das AA-Problem von D3D9 nicht umgehen oder müssen sich jetzt alle ne D3D10-Karte kaufen?Selbst wenn es möglich wäre, wird das nicht plötzlich alle Spieleentwickler zum Umschwenken auf OpenGL bringen.

Gast
2007-04-14, 21:50:41
Kaman mit OGL das AA-Problem von D3D9 nicht umgehen oder müssen sich jetzt alle ne D3D10-Karte kaufen?

ich nehme stark an dass es auch mit OGL möglich sein wird FSAA mit deferred shading zu verwenden, um eine graka mit "DX10-fähigkeiten" wirst du aber nicht herumkommen.

Gast
2007-04-15, 01:47:41
Ob UE3 ein Deferred Renderer ist, ist immernoch nicht klar.
Doch ist es. UE3 ist ein deferred shader.

Gast
2007-04-15, 13:38:53
deferred-shading hat auch einige nachteile.

unter anderem wird sehr viel VRAM und bandbreite verbraucht, MSAA ist ohne DX10 nicht möglich und weniger komplexe szenen laufen langsamer als der herkömliche weg.

dann halt höher auflösen statt aa, bei doppelter leistung und besserer gesamtqualität kann ich auf aa auch verzichten. einerseits muß überall hdr rein aber wenn wirklich mal was vernünftiges kommt, heult man dem aa hinterher.

SgtTynis
2007-04-16, 09:46:34
Doch ist es. UE3 ist ein deferred shader.

Allerdings nicht in dem Ausmaß wie bei der X-Ray Engine von Stalker. In UE3 wird nur die Schattenberechnung verzögert und nicht die gesamte Lichtkalkulation.

Coda
2007-04-16, 12:01:57
Das ist gar nicht möglich. Du kannst nicht nachträglich Schatten hinzufügen wenn schon Licht da ist in einem Bild. Schatten- und Lichtberechnung hängen in einer 3D-Engine ganz stark und eng zusammen.

Zudem würde das mal überhaupt keinen Sinn ergeben zuerst mit einem IMR das Licht zu rendern, dann dazu noch die deferred infos zu schreiben (was übel teuer ist) und dann die Schatten. Ganz sicher nicht.

Man baut einen deferred shader oder nicht, aber nix dazwischen. Das einzige was man evtl. nachzieht ist das Alpha-Blending.

deekey777
2007-04-16, 12:46:38
http://www.forum-3dcenter.org/vbulletin/showthread.php?p=5364849#post5364849
Und das Posting des Gastes.

Gast
2007-04-16, 20:27:19
dann halt höher auflösen statt aa, bei doppelter leistung und besserer gesamtqualität kann ich auf aa auch verzichten. einerseits muß überall hdr rein aber wenn wirklich mal was vernünftiges kommt, heult man dem aa hinterher.


selbst wenn man durch das deferred shading doppelt so schnell rendern kann bräuchte man um AA zu ersetzen mindestens die 4x auflösung, abgesehen davon machen das die wiedergabegeräte nicht mit.

alternativ könnte natürlich auch die software in ein größeres rendertarget rendern und dann auf die zielauflösung verkleinern, und man hätte dann auch FSAA. nur reicht auch der leistungsgewinn durch deferred shading dadurch nicht aus.

no_surrender
2007-04-16, 22:27:20
bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante garnix, als bei Stalker kann man da sehr gut verzichten drauf.

Edit: Threadstarter, kannst du mal bitte den Link posten zu dieser "DeferredShading_MaciejSawitus.zip" Demo ?
Danke

BAGZZlash
2007-04-16, 23:08:06
bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante garnix, als bei Stalker kann man da sehr gut verzichten drauf.

Find' ich nicht. Auf meiner Glotze sieht man ohne FSAA bei 1.600 x 1.200 sehr wohl noch Treppchen.


Edit: Threadstarter, kannst du mal bitte den Link posten zu dieser "DeferredShading_MaciejSawitus.zip" Demo ?
Danke

Ja, das wär' super, Google ist da leider hilflos.

Aquaschaf
2007-04-16, 23:58:15
Das ist gar nicht möglich. Du kannst nicht nachträglich Schatten hinzufügen wenn schon Licht da ist in einem Bild.

Hm? Macht man nicht genau das bei modulativem Shadowmapping?

Neomi
2007-04-17, 01:31:44
Hm? Macht man nicht genau das bei modulativem Shadowmapping?

Damit würdest du quasi sämtliches Licht modulieren, auch Ambient. Natürlich kann man das so machen, das Ergebnis ist aber nicht das gewünschte. Wenn man eine halbwegs korrekte Beleuchtung will, muß man einen Schatten schon auf das jeweilige Licht beschränken. Ob das nun direkt passiert oder etwas verzögert in einem kumulativen Buffer ist egal, aber nach dem Aufaddieren der einzelnen Lichtquellen ist es zu spät.

Aquaschaf
2007-04-17, 13:41:29
Ok, hier habe ich noch etwas Verständnisarbeit zu leisten :)

EcHo
2007-04-17, 14:03:11
bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante garnix, als bei Stalker kann man da sehr gut verzichten drauf.

Edit: Threadstarter, kannst du mal bitte den Link posten zu dieser "DeferredShading_MaciejSawitus.zip" Demo ?
Danke

Nein, man kann den Effekt von AA nicht einfach durch höhre Auflösung ausgleichen. Man kann den Effekt mindern, aber im Idealfall braucht man beides...

Gast
2007-04-17, 17:22:15
und zweitens: wieso nutzen alle nicht mal ne gescheite Streaming Engine für den PC, damit man sich für seine elektronische Schreibmaschine nicht 4GB Ram kaufen muß.

Spasstiger
2007-04-17, 17:41:07
und zweitens: wieso nutzen alle nicht mal ne gescheite Streaming Engine für den PC, damit man sich für seine elektronische Schreibmaschine nicht 4GB Ram kaufen muß.
Gibt es doch. Bei Oblivion und Test Drive Unlimited z.B. kommt man auch mit 1 GB RAM klar.

Nein, man kann den Effekt von AA nicht einfach durch höhre Auflösung ausgleichen.
Doch kann man. Statt 1280x800 mit 2x2-SSAA kann man auch 2560x1600 fahren. Bei gleicher scheinbarer Monitordiagonale kommt es aufs selbe raus. Das Bild mit 2560x1600-Pixeln enthält letztendlich sogar mehr Details.

Gast
2007-04-17, 20:46:48
Nein, man kann den Effekt von AA nicht einfach durch höhre Auflösung ausgleichen. Man kann den Effekt mindern, aber im Idealfall braucht man beides...


theoretisch schon, nur muss auch der monitor mitmachen.

Gast
2007-04-17, 20:50:32
bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante garnix, als bei Stalker kann man da sehr gut verzichten drauf.



bei stalker stört das fehlende FSAA wirklich recht wenig, was einerseits am düsteren content liegt, wo es kaum hochkontrastige kanten gibt, andererseits dass stalker offenbar einen shader mit kantenerkennung und blurfilter verwendet, der das aliasing zwar nicht verhindern aber abschwächen kann.

Gast
2007-04-18, 14:01:52
Gibt es doch. Bei Oblivion und Test Drive Unlimited z.B. kommt man auch mit 1 GB RAM klar.

Wieso ein GB, zum Briefeschreiben habe ich mittlerweile statt 64Mb 512Mb (danke MS), tdu auf ps2 braucht auch nur 32 MB (so siehts im Vgl. zu GTA SA allerdings auch aus). Streamingengines auf PC gibts doch nur bei Konsolenports. Außer Obl, Gta und TDU nirgends. Und PCs sind wg. Festplatte viel geeigneter für flüssiges Spielen.
Und jetzt der finale Endbash, intelligentes Lodding ohne Horrortexturen bitte auch noch, und das in jeder Engine, ich hab die Schnauze voll von ewigen Ladezeiten wie in Far Cry und im Todesfalle wieder.

P.S. Sucht einfach nach Deffered Shading Demo download mit/ohne sawitus

EcHo
2007-04-19, 00:09:43
Doch kann man. Statt 1280x800 mit 2x2-SSAA kann man auch 2560x1600 fahren. Bei gleicher scheinbarer Monitordiagonale kommt es aufs selbe raus. Das Bild mit 2560x1600-Pixeln enthält letztendlich sogar mehr Details.
Ich glaube, ich habe es dann falsch verstanden.

Ist es nicht so, dass der Informationsgehalt der Selbe ist (Also 1280x800 2x2 SSAA und 2560x1600 haben die gleiche Anzahl an "Abtastungen")?

Weil, auch bei einer Noch so hohen Auflösung kann ich "harrte Brüche" haben, wenn der Winkel der Linie ungünstig ist. (Treppschien- Effekt)
Dazu kommt noch das Kantenflimmern.
Beides doch eher Effekte, die FÜR SSAA spricht, oder wo ist mein Denkfehler?

Gast
2007-04-19, 21:23:10
Ist es nicht so, dass der Informationsgehalt der Selbe ist (Also 1280x800 2x2 SSAA und 2560x1600 haben die gleiche Anzahl an "Abtastungen")?


richtig, allerdings geht beim downsampling ein teil der zusätzlichen informationen wieder verloren.


Weil, auch bei einer Noch so hohen Auflösung kann ich "harrte Brüche" haben, wenn der Winkel der Linie ungünstig ist. (Treppschien- Effekt)
Dazu kommt noch das Kantenflimmern.


bei höherer auflösung und gleicher diagonale sind die pixel deutlich kleiner, und damit noch weniger flimmern und treppchen zu sehen als wenn man "nur" SSAA verwenden würde.

Gast
2007-04-21, 01:18:30
richtig, allerdings geht beim downsampling ein teil der zusätzlichen informationen wieder verloren.Ja, aber neben Nutzdaten eben auch ein Teil des Aliasing.
bei höherer auflösung und gleicher diagonale sind die pixel deutlich kleiner, und damit noch weniger flimmern und treppchen zu sehen als wenn man "nur" SSAA verwenden würde.Nö, flimmern tuts immer noch mehr als wenn man die berechnete Auflösung auf eine niedrigere eindampfen würde. Die flimmernden Elemente sind bei höherer Auflösung nur kleiner und mehr geworden, während mit SSAA das Flimmern (!aus jeglicher Quelle, ob nun Geometrie, Texturen oder Shader!) eingedämmt wird. Auflösung alleine ist keine geeignete Waffe gegen Aliasing, und selbst wenn sie es wäre hätten 99,99% der Spieler immer noch keine Monitore, die selbige darstellen können.

micki
2007-04-21, 11:03:21
eine greossere aufloesung hat weit mehr informationen als AA das hat. stellt euch nur unmengen von 1pixel breiten weissen linien (auf schwarzem hintergrund) vor die sich bewegen. mit AA sind das nur graue linien und bewegungen unter 2pixel bemerkt man wohl kaum. deswegen hat AA weniger informationsgehalt, trotz gleicher quelldaten.

man hat also immer die wahl zwischen aliasing oder verschwommenen daten. beides ist eigentlich dem anderen nicht ueberlegen.

aths
2007-04-21, 13:13:56
richtig, allerdings geht beim downsampling ein teil der zusätzlichen informationen wieder verloren.Ja, aber nur das was nicht ins Pixelraster passt. Idealerweise geht nur der Aliasing-Inhalt (bezogen auf das Pixelraster) verloren. Tatsächlich bleibt meistens etwas Aliasing im Bild, weil nicht hoch genug abgetastet und weil mit einem schlechten Verfahren gedownsampelt wurde.


eine greossere aufloesung hat weit mehr informationen als AA das hat. stellt euch nur unmengen von 1pixel breiten weissen linien (auf schwarzem hintergrund) vor die sich bewegen. mit AA sind das nur graue linien und bewegungen unter 2pixel bemerkt man wohl kaum. deswegen hat AA weniger informationsgehalt, trotz gleicher quelldaten.

man hat also immer die wahl zwischen aliasing oder verschwommenen daten. beides ist eigentlich dem anderen nicht ueberlegen.Antialiasing ist überlegen, da es unseren Sehgewohnheiten entgegenkommt.

aths
2007-04-21, 13:15:40
Doch ist es. UE3 ist ein deferred shader.Quelle?

bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante garnix, als bei Stalker kann man da sehr gut verzichten drauf.Ich sehe auch in 1600x1200 noch heftiges Aliasing. Natürlich braucht "man" Antialiasing.

Gast
2007-04-21, 14:05:53
Ich bin auch der Meinung, das AntiAliasing auf Dauer nicht mehr nötig ist im Gaming Bereich.

Dafür müsste es aber erstmal passende Anzeigegeräte geben. Bei Games mit HDR (gibts da einen Zusammenhang?) wie Oblivon fiel mir das gar nicht mehr so negativ auf.

Da reichte schon eine anständige Auflösung um die Kanten kaum noch zu sehen.

Höhere Auflösungen bzw. Bildschirmen hätten auch noch andere Vorteile, man könnte mehr Informationen darstellen und auch besser damit arbeiten. Allerdings wird es noch etwas dauern, bis 2560x1600 für unter 800,- zu haben ist.

Bis dahin hat man keine große Wahl ...

3d
2007-04-21, 14:29:17
bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante
hast du dir die 1600x1200 auf einer 17" röhre angekukt? :biggrin:

Ringwald
2007-04-21, 17:44:07
Edit: Threadstarter, kannst du mal bitte den Link posten zu dieser "DeferredShading_MaciejSawitus.zip" Demo ?
Danke

http://edu.oeiizk.waw.pl/~danuta.sawitus/downloads/DeferredShading_MaciejSawitus.zip

oder

http://edu.oeiizk.waw.pl/~danuta.sawitus/downloads/DeferredShading2_MaciejSawitus.zip

Der Maciej arbeitet anscheinend bei dem Painkiller machern.

aths
2007-04-21, 17:45:57
Ich bin auch der Meinung, das AntiAliasing auf Dauer nicht mehr nötig ist im Gaming Bereich.Antialiasing ist im Gamerbereich auf Dauer sinnvoll.

Da reichte schon eine anständige Auflösung um die Kanten kaum noch zu sehen.Vernünftiges Antialiasing ist immer wesentlich effizienter.

Höhere Auflösungen bzw. Bildschirmen hätten auch noch andere Vorteile, man könnte mehr Informationen darstellen und auch besser damit arbeiten. Allerdings wird es noch etwas dauern, bis 2560x1600 für unter 800,- zu haben ist. Dieses Mehr an Informationen müsste man erst mal berechnen. (Einfach nur Texturen zu vergrößern, bringt es ja nicht.) Das Mehr an Berechnung kostet. Es ist für beste Bildqualität sinnvoll, es mit der Feinkörnigkeit nicht zu übertreiben und die Rechenleistung in bessere (statt zusätzliche) Pixel zu stecken.

Coda
2007-04-21, 18:48:06
Da reichte schon eine anständige Auflösung um die Kanten kaum noch zu sehen.
Die meisten Leute haben inzwische einen TFT, und da siehst du die Kanten immer.

Gast
2007-04-21, 22:03:48
Höhere Auflösungen bzw. Bildschirmen hätten auch noch andere Vorteile, man könnte mehr Informationen darstellen und auch besser damit arbeiten. Allerdings wird es noch etwas dauern, bis 2560x1600 für unter 800,- zu haben ist.


das problem ist nicht nur einen bildschir zu bezahlen der diese auflösung darstellen kann sondern auch ein grafiksystem, welches diese in echtzeit berechnen kann. dafür sind dann nochmals 1000€ fällig, und dass alle 8-12Monate, dagegen ist die einmalausgabe für den bildschirm fast zu vernachlässigen.

MegaManX4
2007-04-22, 13:51:46
bei Stalker und ner Auflösung von 1600x1200 brauch man doch garkein AA mehr man sieht keine Kante garnix, als bei Stalker kann man da sehr gut verzichten drauf.

Edit: Threadstarter, kannst du mal bitte den Link posten zu dieser "DeferredShading_MaciejSawitus.zip" Demo ?
Danke

kommt ganz auf die dpi des Monitors an.

OBrian
2007-04-23, 00:09:22
Was ist denn mit Supersampling? geht das? Schließlich muß dabei ja nicht der Szeneninhalt betrachtet werden, SSAA kann man doch wirklich ganz zum Schluß drüberstülpen. Oder irre ich da?

Vielleicht läßt sich ja auch mal Ati herab, SS auf ihren Chips zu aktivieren. Bandbreite dürfte ein R600 dafür ja wohl wirklich mehr als ausreichend haben.

Neomi
2007-04-23, 00:36:03
Was ist denn mit Supersampling? geht das? Schließlich muß dabei ja nicht der Szeneninhalt betrachtet werden, SSAA kann man doch wirklich ganz zum Schluß drüberstülpen. Oder irre ich da?

Keine Form von Antialiasing läßt sich nachträglich "drüberstülpen". Antialiasing ist kein Postfilter, das war es nie und wird es niemals sein.

deekey777
2007-04-23, 00:42:50
Keine Form von Antialiasing läßt sich nachträglich "drüberstülpen". Antialiasing ist kein Postfilter, das war es nie und wird es niemals sein.
OGSSAA geht per DXTweaker. Nur wird die Bildqualität nicht so gut wie mit richtigem RGMSAA.

Gemeint ist STALKER.

Neomi
2007-04-23, 01:34:25
OGSSAA geht per DXTweaker. Nur wird die Bildqualität nicht so gut wie mit richtigem RGMSAA.

Gemeint ist STALKER.

Mag ja sein, widerspricht aber nicht meiner Aussage. Man kann keine Form von Antialiasing "ganz zum Schluß drüberstülpen". Wenn die Szene erstmal berechnet ist, kann man nicht noch nachträglich FSAA drüberjagen, egal ob OGSSAA, RGMSAA oder eine beliebige andere Form.

aths
2007-04-23, 03:16:09
Was ist denn mit Supersampling? geht das? Schließlich muß dabei ja nicht der Szeneninhalt betrachtet werden, SSAA kann man doch wirklich ganz zum Schluß drüberstülpen. Oder irre ich da?Gerade Supersampling berücksichtig alles. Multisampling hingegen berücksichtigt nur Geometrie-Kanten.

Vielleicht läßt sich ja auch mal Ati herab, SS auf ihren Chips zu aktivieren. Bandbreite dürfte ein R600 dafür ja wohl wirklich mehr als ausreichend haben.SSAA kostet ungefähr so viel zusätzliche Füllrate wie zusätzliche Bandbreite. Was vorrangig Bandbreite und nur wenig Füllraste kostet, ist Multisampling.

Auch Multisampling lässt sich nicht "zum Schluss" drüberstülpen. Man muss schon beim Rastern der Dreieckedie feinere Auflösung der Geomtrie mitberechnen. Ganz zum Schluss findet lediglich das Downsampling statt. Hier könnte man allerdings noch Verbesserungen einfügen, von denen alle 3D-Antialiasing-Arten profitieren würden. Allerdings darf diese besondere, bessere Form eines Downsampling dann nicht mehr "ganz zum Schluss" stattfinden, sondern muss gemacht werden, bevor Elemente wie das HUD und Schriften ins Bild eingefügt werden.

Mr. Lolman
2007-04-23, 10:47:40
Mag ja sein, widerspricht aber nicht meiner Aussage. Man kann keine Form von Antialiasing "ganz zum Schluß drüberstülpen".

Doch, mit nem Downsampling des Rendertargets.

Coda
2007-04-23, 11:21:51
Dann ist Das Bild ja nicht mehr gleich groß. Das gilt nicht ;)

MegaManX4
2007-04-23, 11:26:34
Fragt sich nur, warum mit der 88'er Nvidia mit dem 158'er Treiber MSAA bei Rainbow Six Vegas geht.

deekey777
2007-04-23, 12:29:28
Fragt sich nur, warum mit der 88'er Nvidia mit dem 158'er Treiber MSAA bei Rainbow Six Vegas geht.
Weil UE3 eben kein Deferred Renderer ist.:smile:

MegaManX4
2007-04-23, 12:35:29
Weil UE3 eben kein Deferred Renderer ist.:smile:

Tja, das ist doch gut, würd ich sagen. Fragt sich nur, warum dann Ubisoft das für die ATI X1x00 Karten und für die 88'er von NVidia nicht gleich mit anbieten.

deekey777
2007-04-23, 12:45:50
Tja, das ist doch gut, würd ich sagen. Fragt sich nur, warum dann Ubisoft das für die ATI X1x00 Karten und für die 88'er von NVidia nicht gleich mit anbieten.
Geht MSAA wirklich auf allen grünen Grafikkarten oder nur auf G80ern?:smile:
http://forum.beyond3d.com/showpost.php?p=744476&postcount=64
The only reasonable excuses I've heard for lack of AA other than not enough time is the one Epic uses to justify it in the Unreal3 engine games. Basically their shadowing algorythm projects screen space pixels back into light space so they would have to do 2x or 4x the work for shadowing if AA was enabled, but that's true reguardless of the AA implementation.
Der G80 ist schon ein fixer Grafikchip, es wäre denkbar, dass nVidia bei der Entwicklung des G80 auch die Entwicklung der Unreal Engine von 2 auf 3 mitberücksichtigt hat.

Neomi
2007-04-23, 13:01:04
Doch, mit nem Downsampling des Rendertargets.

Und wann wurden die Samples im Rendertarget, die beim Downsampling zusammengerechnet werden, berechnet? Richtig, beim Rendern der Szene. Und vorhanden waren sie logischerweise schon, bevor mit dem Rendern der Szene angefangen wurde. Also ist es kein nachträglich drübergerechnetes Antialiasing, sondern nur das normale (und anders nicht praktikable) nachträgliche Downsampling im Zuge von normalem Antialiasing. Es ist egal, ob die "Subpixel" von Anfang an als solche gedacht waren oder aus als solche interpretierten Pixeln bestehen, indem man z.B. ein 10 Jahre altes Bild in der Auflösung runterrechnet.

Antialiasing ist nunmal kein Postfilter und kann auch nicht durch Haarspalterei dazu uminterpretiert werden.

Mr. Lolman
2007-04-24, 01:56:14
Dann ist Das Bild ja nicht mehr gleich groß. Das gilt nicht ;)

Dann halt mit nem temporal alternierendem Grid ;)

aths
2007-04-24, 10:04:38
Dann halt mit nem temporal alternierendem Grid ;)Das ist weder Antialiasing noch etwas, was nachträglich drübergestülpt wurde.

Mr. Lolman
2007-04-24, 11:48:29
Das ist weder Antialiasing noch etwas, was nachträglich drübergestülpt wurde.

Ja was denn sonst?


Als Alias-Effekte [ˈeɪliəs] oder Aliasing-Effekte werden im Bereich der Signalanalyse Fehler bezeichnet, die durch die Nichtbeachtung des Abtasttheorems (zu geringe Abtastfrequenz) beim digitalen Abtasten von Signalen auftreten.

AA könnte man auch mit nem Blurfilter realisieren. (wenn auch mit nem äußerst suboptimalen Ergebnis) Und wenn man mal soweit ums Eck gedacht hat, dann kann man auch akzeptieren, dass Temporales AA - 1. AA ist und 2. auch nachträglich realisiert werden kann ;)

deekey777
2007-04-24, 11:54:34
Wieso "könnte"?
nVidia empfieht den Einsatz eines "intelligenten" Blur-Filters:
http://img136.imageshack.us/my.php?image=drdrvb8.png
Auch STALKER versucht mittels eines Blur-Filter das Aliasing zu verstecken, was schon etwas hilft.

Neomi
2007-04-24, 12:57:10
AA könnte man auch mit nem Blurfilter realisieren. (wenn auch mit nem äußerst suboptimalen Ergebnis) Und wenn man mal soweit ums Eck gedacht hat, dann kann man auch akzeptieren, dass Temporales AA - 1. AA ist und 2. auch nachträglich realisiert werden kann ;)

Da nach deinem Zitat Aliasing durch eine zu geringe Abtastfrequenz entsteht (was soweit richtig ist), muß Antialiasing logischerweise die Abtastfrequenz erhöhen. Ein Blurfilter tut das nicht, er zaubert keine vorher fehlenden Samples herbei. Richtiges Antialiasing bekämpft die Ursache von Aliasing, nicht die Symptome.

Temporales Antialiasing macht nur eine Sache nachträglich, das Downsampling von mehreren bereits vorhandenen Samples pro Ergebnispixel. Damit unterscheidet es sich im Prinzip nicht vom ansonsten üblichen Antialiasing, das auch erstmal mehrere Samples pro Pixel berechnet und diese dann nachträglich verrechnet.

Zuerst dachte ich, du willst nur Haare spalten, aber du scheinst das mit dem (prinzipiell nicht möglichen) nachträglichen Antialiasing ernst zu meinen. Bei dir hatte ich eigentlich ein größeres technisches Verständnis in Erinnerung.

PS: natürlich kann man mit einem Blurfilter Aliasing teilweise verstecken, aber das kann man mit einer Kontrastverringerung auch. Beides vernichtet Bildinformationen, Antialiasing fügt welche hinzu.

Mr. Lolman
2007-04-24, 13:32:46
Spar dir die Sticheleien. Anti Aliasing ist ein Effekt zur Verminderung von Aliasing. Haut man nen Blurfilter übers gesamt Bild vermindert man auch das Aliasing. (Nirgendwo ist definiert, dass AA ausschliesslich durch eine Erhöhung der Sampleanzahl zu realisieren ist)


Temporales Antialiasing macht nur eine Sache nachträglich, das Downsampling von mehreren bereits vorhandenen Samples pro Ergebnispixel. Damit unterscheidet es sich im Prinzip nicht vom ansonsten üblichen Antialiasing, das auch erstmal mehrere Samples pro Pixel berechnet und diese dann nachträglich verrechnet.


Damit ignorierst du völlig den zeitlichen Faktor. Denn sobald man den miteinbezieht, hat man automatisch mehrere Samples, ohne dass diese eine Verringerung des Aliaseffekts hervorrufen. Dies kann man dann in der Tat nachträglich durch ein alternierendes Grid realisieren. Verrechnet wird dabei garnix. Der AA-Effekt entsteht dabei ausschliesslich durch die Grenzen der menschlichen Wahrnehmung von bewegten Bildern...

Neomi
2007-04-24, 13:58:35
Spar dir die Sticheleien. Anti Aliasing ist ein Effekt zur Verminderung von Aliasing. Haut man nen Blurfilter übers gesamt Bild vermindert man auch das Aliasing. (Nirgendwo ist definiert, dass AA ausschliesslich durch eine Erhöhung der Sampleanzahl zu realisieren ist)

Das sollte keine STichelei sein, aber wenn du Haare spalten willst, das kann ich auch. Antialiasing ist kein Effekt und ein Blurfilter vermindert kein Aliasing, sondern versteckt es höchstens teilweise. Anderenfalls wäre es nach deiner Definition auch Antialiasing, wenn man den Monitor ausschaltet, immerhin sieht man dann keinerlei Aliasing mehr.

Damit ignorierst du völlig den zeitlichen Faktor. Denn sobald man den miteinbezieht, hat man automatisch mehrere Samples, ohne dass diese eine Verringerung des Aliaseffekts hervorrufen. Dies kann man dann in der Tat nachträglich durch ein alternierendes Grid realisieren. Verrechnet wird dabei garnix. Der AA-Effekt entsteht dabei ausschliesslich durch die Grenzen der menschlichen Wahrnehmung von bewegten Bildern...

Temporales Antialiasing kann die temporalen Samples auch verrechnen, was sogar dann sinnvoll ist, wenn die Framerate deutlich über den Fähigkeiten des Monitors liegt. Natürlich kann man auch die Bilder alle auf dem Monitor ausgeben, wenn der das mitmacht, dann wird eben erst durch die Trägheit des Auges im Auge bzw. Gehirn verrechnet. Aber auch hier sind die einzelnen Samples (in dem Fall komplette Bilder) schon vor dem Downsampling vorhanden. Und ein alternierendes Grid wird auch nicht nachträglich gesetzt, sondern muß schon vor der Brechnung des jeweiligen Bildes festgelegt werden.

Wenn du Antialiasing anders interpretierst, ist deine Interpretation falsch. Antialiasing ist nie nachträglich machbar. Alles, was nachträglich machbar ist, ist kein Antialiasing, egal ob es nun Aliasing versteckt oder nicht.

Gast
2007-04-24, 14:14:40
Antialiasing ist jedes Verfahren, dass Frequenzen überhalb der Nyquist-Frequenz dämpft. Damit führt jeder Tiefpassfilter (auch Blurfilter) nach Definition Antialiasing durch. Auch wenn es natürlich nicht das ist, was man in Praxis wirklich will.
"Schön" dass ihr Lolman bashen wollt, aber von der Theorie her hat er recht.

Neomi
2007-04-24, 14:39:30
Antialiasing ist jedes Verfahren, dass Frequenzen überhalb der Nyquist-Frequenz dämpft. Damit führt jeder Tiefpassfilter (auch Blurfilter) nach Definition Antialiasing durch. Auch wenn es natürlich nicht das ist, was man in Praxis wirklich will.

Monitor aus -> kein Bild, kein Aliasing, ist also Antialiasing
Helligkeit auf 0 -> schwarzes Bild, kein Aliasing, ist also Antialiasing
Kontrast auf 0 -> graues Bild, kein Aliasing, ist also Antialiasing

Bei allen drei Beispielen werden alle Frequenzen oberhalb der Nyquist-Frequenz sogar vollständig eliminiert. Dummerweise gehen auch die niedrigeren Frequenzen komplett verloren. Helligkeit bzw. Kontrast verringern (statt ganz auf 0 zu stellen) läßt immerhin noch etwas übrig, "bekämpft" Aliasing aber noch genauso stark wie den Rest des Bildes. Im Prinzip also das, was ein Blurfilter auch tut. Trotzdem würde ich nichts davon als Antialiasing durchgehen lassen.

"Schön" dass ihr Lolman bashen wollt, aber von der Theorie her hat er recht.

Unschön, daß du das Bashing einer Person schön finden würdest. Dabei bin ich nicht gegen Lolman, sondern gegen das, was er in diesem Thread schreibt.

Gast
2007-04-24, 14:43:05
Ihr habt generell einen sehr emotionalen Umgangston. Aufeinander losdreschen, als auch beleidigt sein, ist hier komischerweise Alltag. Mehr Sachlichkeit würde hier insgesamt der Sache gut tun.

Novox
2007-04-24, 15:14:15
Antialiasing ist jedes Verfahren, dass Frequenzen überhalb der Nyquist-Frequenz dämpft. Damit führt jeder Tiefpassfilter (auch Blurfilter) nach Definition Antialiasing durch.

Das mit dem Tiefpaß zur Vermeidung von Aliasing müsste schon funktionieren – sofern man das vor dem Samplen macht.
Andererseits: Überabtastung mit anschließendem Downfiltering (Tiefpaß + Unterabtastung) ist ja eigentlich nichts anderes, oder?

aths
2007-04-24, 15:16:48
Ja was denn sonst? Na das Grid muss bereits beim Rastern berücksichtigt werden und ist nicht nachträglich. Und du bekommst neue Artefakte rein.

Was ATI "temporal AA" nennt ist eigentlich "temporal A", weil zusätzliches temporales Aliasing eingefügt wird: Sogar im Standbild flimmern die Kanten. ATIs Methode tauscht praktisch zeitliche Auflösung für räumliche Auflösung ein. Aber genau das Gegenteil ist erstrebenswert: Echtes Motionblur, also echtes temporales Antialiasing.

AA könnte man auch mit nem Blurfilter realisieren. (wenn auch mit nem äußerst suboptimalen Ergebnis) Und wenn man mal soweit ums Eck gedacht hat, dann kann man auch akzeptieren, dass Temporales AA - 1. AA ist und 2. auch nachträglich realisiert werden kann ;)Da der Blurfilter einen Tiefpass darstellt ist die Anwendung des Blurfilters ganz grob damit vergleichbar, den downgesampelten Buffer wieder hochskaliert auszugeben. Außerdem liegt es auf der Hand, dass Antialiasing keine BQ-Verschlechterung sein darf, was ein einfacher Blurfilter aber ist. Nur weil irgendeine Methode auch das Aliasing bekämpft ist es deswegen alleine noch kein Antialiasing – hier, weil auch noch andere Informationen weggehauen werden.

aths
2007-04-24, 15:19:09
Monitor aus -> kein Bild, kein Aliasing, ist also Antialiasing
Helligkeit auf 0 -> schwarzes Bild, kein Aliasing, ist also Antialiasing
Kontrast auf 0 -> graues Bild, kein Aliasing, ist also AntialiasingDas mit dem Kontrast ist ein gutes Beispiel. Senkt man den Kontrast, sinkt das wahrgenommene Aliasing, da man alles in der Amplitude dämpft – auch Aliasing-Effekte. Genau wie ein reines Blurren ist das natürlich kontraproduktiv. Kürzlich empfahl tatsächlich jemand (ein Gast, nicht der Lachmann) die PS2-Aliasing-Effekte durch eine Senkung des TV-Kontrastes zu minimieren.


Das mit dem Tiefpaß zur Vermeidung von Aliasing müsste schon funktionieren – sofern man das vor dem Samplen macht.
Andererseits: Überabtastung mit anschließendem Downfiltering (Tiefpaß + Unterabtastung) ist ja eigentlich nichts anderes, oder?Es gibt bessere Downsampling-Methoden als der derzeit genutzte Boxfilter. Insofern ist mit leicht erhöhter Unschärfe Aliasing besser bekämpfbar. Wichtig ist, dass die Unschärfe nicht auf das fertige Bild appliziert wird. Und dass Elemente wie Ingame-Schrift und Hud-Elemente nach dem Downsampling ins Bild kopiert/geblendet werden.

Mr. Lolman
2007-04-24, 17:06:50
Außerdem liegt es auf der Hand, dass Antialiasing keine BQ-Verschlechterung sein darf, was ein einfacher Blurfilter aber ist. Nur weil irgendeine Methode auch das Aliasing bekämpft ist es deswegen alleine noch kein Antialiasing – hier, weil auch noch andere Informationen weggehauen werden.

Warum empfiehlt dann NV selbst einen Blurfilter? (Link von DK777) Und warum hatte Epic in ihrer Unrealengine 1 ein schönes Feature namens "Screensmoothing" engebaut? Siehe auch das "Stalker-Beispiel" von DK777.

Ihr dürft eure Definition nicht aufs objektive Optimum beschränken. Der Begriff Aliasing ist genau definiert. Anti-Aliasing hingegen ist ALLES, was dem Aliasing entgegen steuert. So erzielt man in der Tat auch mit einer Kontrastabschwächung des Ausgabegeräts einen AA-Effekt. Welche Methoden nun sinnvoll oder nicht sind, steht dabei auf nem ganz anderen Blatt.

Im Grunde ging es mir nur darum div. Eventualität abzustecken, die Neomies Aussage:
Mag ja sein, widerspricht aber nicht meiner Aussage. Man kann keine Form von Antialiasing "ganz zum Schluß drüberstülpen".
widersprechen. Dass die negativem Beieffekte (in Form von Informationsverlust) nur dann vermieden werden können, wenn AA in Form von Mehrfachsampling direkt im Rasterizer berücksichtigt wird, sollte eigentlich ohnehin jedem klar sein. Hoffentlich.

aths
2007-04-25, 13:50:41
Warum empfiehlt dann NV selbst einen Blurfilter? (Link von DK777)Blurring à la Quincunx ist das gleiche, wie ein Bild mit 2x RGMSSAA zu 50% mit einem rein geblurrten, AA-losen Bild zu überblenden. Solche Unschärfe nützt keinem. Vernünftiges Randsubpixel-Blurring (mit mehr echten Samples) allerdings kann einen Vorteil bringen, weil das auf einen besseren Rekonstruktionsfilter (der digital vorliegenden Bildpixel) hinausläuft. Mit Antialiasing ansich hat das weniger zu tun, als man denkt.

Und warum hatte Epic in ihrer Unrealengine 1 ein schönes Feature namens "Screensmoothing" engebaut? Das kenne ich gar nicht.

Siehe auch das "Stalker-Beispiel" von DK777. Was ist damit?

Ihr dürft eure Definition nicht aufs objektive Optimum beschränken. Der Begriff Aliasing ist genau definiert. Anti-Aliasing hingegen ist ALLES, was dem Aliasing entgegen steuert.Also auch die Senkung des Kontrastes?

So erzielt man in der Tat auch mit einer Kontrastabschwächung des Ausgabegeräts einen AA-Effekt. Welche Methoden nun sinnvoll oder nicht sind, steht dabei auf nem ganz anderen Blatt. Es liegt auf der Hand, dass "ALLES, was dem Aliasing entgegensteuert" für sich alleine kein sinnvolles Kriterium ist. Antialiasing heißt, das Aliasing zu reduzieren, aber nicht, die Frequenzen die noch unterhalb der Grenzfrequenz liegen zu beeinträchtigen.

Angenommen man hat einen Lattenzaun in weiter Ferne. Mal sind die Latten sichtbar, mal nicht. Das ist Aliasing. Bekommt man das durch einen Blurfilter weg? Nur dann, wenn der Kernel so groß ist, dass man gar nichts mehr sieht. Angenommen, man hat jetzt ein so unglückliches Pixelraster, dass alle Pixel bis zur Hälfte links nur "Latte" sichtbar ist, und rechts nur "Loch". Auch das ist Aliasing. Was tut der Blurfilter dagegen? Nix.

Im Grunde ging es mir nur darum div. Eventualität abzustecken, die Neomies Aussage:

widersprechen. Dass die negativem Beieffekte (in Form von Informationsverlust) nur dann vermieden werden können, wenn AA in Form von Mehrfachsampling direkt im Rasterizer berücksichtigt wird, sollte eigentlich ohnehin jedem klar sein. Hoffentlich.Blurring verschmiert den Treppen-Effekt. Die vorher auf ein Pixel beschränkten Auswirkungen werden dabei noch verbreitert. Die Treppen gehen erst dann weg, wenn der Kernel so groß gemacht wird, dass die Lokalitätsinformation generell extrem stark geschwächt wird (man also nicht mehr sagen kann, wo genau die eigentliche Kante sein soll. Vorher war das immerhin auf +- 0,5 Pixel klar.) Außerdem ist das eine Form von "Antialiasing", die eine höhere Zielauflösung fordert. Schon damit ist klar, dass das als AA-Methode nicht sinnvoll ist.

Wenn es gilt, aus der Hose einen Fettfleck zu entfernen, würdest du den Ansatz den Fleck einfach mit der Schere auszuschneiden sicher auch nicht als "Fettlöser" betrachten.

Noch mal zur Unschärfe: Etwas anders ist der Fall bei sinnvollem Randsubpixel-Blurring gelagert. Hiermit verbessert man die Möglichkeit, die Position einer Kante zu bestimmen sogar.

Gast
2007-04-25, 14:32:07
Wieso "könnte"?
nVidia empfieht den Einsatz eines "intelligenten" Blur-Filters:
http://img136.imageshack.us/my.php?image=drdrvb8.png
Auch STALKER versucht mittels eines Blur-Filter das Aliasing zu verstecken, was schon etwas hilft.

Scheint sich dabei ja offenbar um einen maßgeschneiderten Filter für Anti-Aliasing zu handeln. Warum da bisher sonst noch keiner drauf gekommen ist... ;)


Q

Gast
2007-04-25, 15:01:20
Also auch die Senkung des Kontrastes?


prinzipiell würde ich mal sagen ja.

bei digitalkameras werden ja beispielsweise tiefpassfilter+demosaikfilter verwendet um aliasing zu vermeiden und auch teilweise als antialiasingfilter bezeichnet. bei kameras mit fixen objektiven geht man auch oft den weg auf den tiefpassfilter zu verzichten und gezielt leicht unscharfe objektive zu verbauen. all diese methoden verringern die schärfe um aliasing zu vermeiden. ein blurfilter ist vom prinzip her nichts anderes.


Angenommen man hat einen Lattenzaun in weiter Ferne. Mal sind die Latten sichtbar, mal nicht. Das ist Aliasing. Bekommt man das durch einen Blurfilter weg? Nur dann, wenn der Kernel so groß ist, dass man gar nichts mehr sieht. Angenommen, man hat jetzt ein so unglückliches Pixelraster, dass alle Pixel bis zur Hälfte links nur "Latte" sichtbar ist, und rechts nur "Loch". Auch das ist Aliasing. Was tut der Blurfilter dagegen? Nix.


es heißt ja nicht dass der blurfilter jede form von aliasing verhindert bzw. verringert, MSAA reduziert auch nicht jede form von aliasing.


Schon damit ist klar, dass das als AA-Methode nicht sinnvoll ist.


volle zustimmung, einfachs blurring des gesamten bildes ist sicher keine sinnvolle antialiasingmethode, aber es ist eine methode aliasing zu verringern und damit antialiasing ;)

Aquaschaf
2007-04-25, 15:07:11
prinzipiell würde ich mal sagen ja.

Was bei Kameras Verwendung findet ist kein guter Vergleich, dort korrigiert man die Eingangsdaten weil man sie nicht direkt kontrollieren kann. Die Kontraste in einem Computerspiel hingegen sind dort absichtlich so wie sie sind. D.h. ein Absenken sollte generell nicht nötig bzw. sinnvoll sein.

Scheint sich dabei ja offenbar um einen maßgeschneiderten Filter für Anti-Aliasing zu handeln. Warum da bisher sonst noch keiner drauf gekommen ist... ;)

Es ist eben kein Anti-Aliasing sondern eine Approximation dafür. Und die funktioniert immer schlechter je niedriger die Auflösung gewählt ist.

aths
2007-04-25, 15:40:44
Scheint sich dabei ja offenbar um einen maßgeschneiderten Filter für Anti-Aliasing zu handeln. Warum da bisher sonst noch keiner drauf gekommen ist... ;)Darauf kam 3dfx schon vor über 10 Jahren, wendete es allerdings genau umgekehrt an. Eben weil Kontraste, die dort hinsollen, meistens bewusst sind wo sie sind. Gerade was NV angeht – erst Quincunx, jetzt CSAA – wage ich jetzt mal die Behauptung, dass Antialiasing keine Kernkompetenz von Nvidia ist.


prinzipiell würde ich mal sagen ja.

bei digitalkameras werden ja beispielsweise tiefpassfilter+demosaikfilter verwendet um aliasing zu vermeiden und auch teilweise als antialiasingfilter bezeichnet. bei kameras mit fixen objektiven geht man auch oft den weg auf den tiefpassfilter zu verzichten und gezielt leicht unscharfe objektive zu verbauen. all diese methoden verringern die schärfe um aliasing zu vermeiden. ein blurfilter ist vom prinzip her nichts anderes.Was wie bezeichnet wird spielt für die korrekte Verwendung eines Begriffes keine Rolle. FX10 wird teilweise auch als HDR bezeichnet. (ATI) PAL-Spiele mit 512 Zeilen werden teilweise auch als balkenfrei bezeichnet (gewisse Spielbeschreibungen für PS2-Spiele). 2:1-Komprimierung wird manchmal auch als 4:1-Komprimierung bezeichnet (ATI) oder gar keine Komprimierung wird schon mal als 2:1-Komprimierung bezeichnet (Nvidia.) 4x-Antialiasing wurde schon mal 6x genannt (Nvidia), 8x und 12x wurde schon mal 10x bzw. 14x genannt (ATI.) Minimale Steigerung der Framerate mit dem Nachteil, dass vormals ruhige Texturen jetzt flimmern werden öfters als "Optimierung" oder "künstliche Intelligenz" verkauft (Nvidia, ATI.)

Dass gezielt leicht unscharfe Objektive gebaut werden halte ich für unzutreffend. Vielmehr wäre es sehr aufwändig (und teuer) scharfe Objektive zu bauen, welche die optische Auflösung für 5 oder 7 Megapixel noch bringen würden. Bei Digitalkameras hat man unter anderem das Problem, dass die Bildelemente einen Rand haben, wo der Lichteinfall nicht berücksichtigt werden kann. Durch das Mosaikmuster der RGB-Elemente (mit doppelt so viel G-Sensoren wie R- oder B-Sensoren) muss ohnehin interpoliert werden. Eine gewisse Unschärfe wird (bevor bei den meisten Modellen je nach Einstellung noch ein Schärfefilter appliziert wird) wohl eher zur Rauschreduktion genutzt.

es heißt ja nicht dass der blurfilter jede form von aliasing verhindert bzw. verringert, MSAA reduziert auch nicht jede form von aliasing.Jede Form von geometrischem Aliasing wird reduziert. Für Texturen sind Texturfilter zuständig.

volle zustimmung, einfachs blurring des gesamten bildes ist sicher keine sinnvolle antialiasingmethode, aber es ist eine methode aliasing zu verringern und damit antialiasing ;)Wie mehrfach gezeigt – Neomi hatte hier gute Ausführungen, warum – ist die Verringerung von Aliasing kein hinreichendes Kriterium für eine Methode, die man Antialiasing nennen kann.

Gast
2007-04-25, 20:15:17
Darauf kam 3dfx schon vor über 10 Jahren, wendete es allerdings genau umgekehrt an. Eben weil Kontraste, die dort hinsollen, meistens bewusst sind wo sie sind. Gerade was NV angeht – erst Quincunx, jetzt CSAA – wage ich jetzt mal die Behauptung, dass Antialiasing keine Kernkompetenz von Nvidia ist.
Ich spreche dich bei Gelegenheit nächsten Monat nochmal drauf an. Den Smiley ->;)<- hast du aber gesehen, oder? Ob die Idee so toll ist, wird sich ja zeigen. :)


Q

Xmas
2007-04-26, 02:23:18
Es ist nicht nur nicht sinnlos, Samples "von Nachbarpixeln" beim Herunterrechnen mit einzubeziehen, es ist sogar meist empfehlenswert.

Etwas offensichtlich, Carsten, findest du nicht? ;)

Darauf kam 3dfx schon vor über 10 Jahren, wendete es allerdings genau umgekehrt an. Eben weil Kontraste, die dort hinsollen, meistens bewusst sind wo sie sind. Gerade was NV angeht – erst Quincunx, jetzt CSAA – wage ich jetzt mal die Behauptung, dass Antialiasing keine Kernkompetenz von Nvidia ist.
Wieso erwähnst du hier CSAA?

Gast
2007-04-26, 17:36:48
Monitor aus -> kein Bild, kein Aliasing, ist also Antialiasing

Das ist schonmal falsch, denn das Aliasing ist nach wie vor da.
Das Signal das die Karte ausgibt wird nämlich nicht verändert wenn du keinen Monitor anschließt (oder ihn ausschaltest).

Es regnet trotzdem draussen, auch wenn du es im Keller nicht siehst. ;-)

Als "Verfahren" technischer Natur würde ich Monitor ausschalten auch nicht sehen.

aths
2007-04-26, 17:37:40
Das ist schonmal falsch, denn das Aliasing ist nach wie vor da.
Das Signal das die Karte ausgibt wird nämlich nicht verändert wenn du keinen Monitor anschließt (oder ihn ausschaltest).Aber man sieht es nicht mehr. Lt. der Definition einiger wäre damit das Kriterium für "Antialiasing" erfüllt.



Wieso erwähnst du hier CSAA?Quincunx wurde als Methode angespriesen, die 4x-Qualität fast zum Preis von 2x liefere. (Für die Dummen müsste Quincunx sogar besser sein, da 5 Samples verrechnet werden.) CSAA wird als Methode angepriesen, 16x fast zum Preis von 4x zu erhalten.

Xmas
2007-04-26, 18:33:16
"16x" ist ja keine quantisierte Qualität, sondern die Anzahl der Samples. Außerdem weiß ich nicht was Marketingaussagen mit Kernkompetenzen zu tun haben.

Coda
2007-04-26, 19:13:46
Ich frage mich auch was an CSAA genau schlecht sein soll. Es wird nichts geblurt und hat auf jeden Fall die Qualität von 4xMSAA bei 16x und meistens sogar noch bessere.

Gast
2007-04-26, 21:44:34
Gerade was NV angeht – erst Quincunx, jetzt CSAA – wage ich jetzt mal die Behauptung, dass Antialiasing keine Kernkompetenz von Nvidia ist.
Ich wage die Behauptung, einfach nur immer die Sampleanzahl zu erhöhen, spräche auch nicht unbedingt für "Kernkompetenz".

Gast
2007-04-26, 21:52:59
CSAA wird als Methode angepriesen, 16x fast zum Preis von 4x zu erhalten.

was hast du gegen CSAA? es ermöglicht eine sehr gute qualität zu einem relativ geringen preis. dadurch bekommen sogar mainstreamkarten die möglichkeit über 4xMSAA zu nutzen, und die qualität ist in 99% der fälle deutlich besser als 4xMSAA und eim schlimmsten fall gleich gut.

Mr. Lolman
2007-04-27, 08:03:00
was hast du gegen CSAA? es ermöglicht eine sehr gute qualität zu einem relativ geringen preis. dadurch bekommen sogar mainstreamkarten die möglichkeit über 4xMSAA zu nutzen, und die qualität ist in 99% der fälle deutlich besser als 4xMSAA und eim schlimmsten fall gleich gut.

CSAA bringt u.U auch sogar schlechtere Qualität, als MSAA ohne CSAA (iin Form von längeren Zwischenstufen). Sieht man auch direkt auf der dev Seite von NV....

PCGH_Carsten
2007-04-27, 09:19:54
CSAA bringt u.U auch sogar schlechtere Qualität, als MSAA ohne CSAA (iin Form von längeren Zwischenstufen). Sieht man auch direkt auf der dev Seite von NV....

Das ist aber immer das Problem, wenn man unterschiedliche Sample-Raster vergleicht - das ist sogar das Problem mit jedem "Raster": Irgendwas fällt immer durch. :)

aths
2007-04-27, 23:21:17
Ich wage die Behauptung, einfach nur immer die Sampleanzahl zu erhöhen, spräche auch nicht unbedingt für "Kernkompetenz".Aus 2 Samples 5 zu machen (Quincunx) und bei der räumlichen Z-Auflösung à la CSAA zu sparen (da gibt es z. B. mit Z3 aufwändigere, aber qualitativ bessere Verfahren) zeugen imo nicht von AA-Kernkompetenz bei NV. Das wird auch damit belegt, dass das 4x-Muster lange Zeit nur ein OG-Raster nutzte.

was hast du gegen CSAA? es ermöglicht eine sehr gute qualität zu einem relativ geringen preis. dadurch bekommen sogar mainstreamkarten die möglichkeit über 4xMSAA zu nutzen, und die qualität ist in 99% der fälle deutlich besser als 4xMSAA und eim schlimmsten fall gleich gut.CSAA kann für eine ungleichmäßigere Glättung sorgen als MSAA. Hinzu kommt, dass "16x CSAA" z. B. Stencilschatten-Kanten je nach Modus nur mit 4x oder 8x glättet. Auch das sorgt für eine nicht wünschenswerte Ungleichheit im Bild. Ich halte CSAA für eine Methode, dem G80 irgendwie 16x AA andichten zu können. Irgendwie kann er das ja auch, aber nicht in allen Situationen, wo es sinnvoll wäre.

SgtTynis
2007-04-27, 23:33:41
Genaugenommen wäre diese Deferred Shading/Deferred Shadowing (Forward Shadowing) Geschichte doch einen Artikel auf 3DC wert; in der Qualität und Quantität wie seiner Zeit die AA und AF Artikel! ...gerade jetzt, wo die ganze Thematik dank Stalker, UE3 und GRAW noch "warm" ist :rolleyes:

Xmas
2007-04-28, 16:16:56
Aus 2 Samples 5 zu machen (Quincunx) und bei der räumlichen Z-Auflösung à la CSAA zu sparen (da gibt es z. B. mit Z3 aufwändigere, aber qualitativ bessere Verfahren) zeugen imo nicht von AA-Kernkompetenz bei NV. Das wird auch damit belegt, dass das 4x-Muster lange Zeit nur ein OG-Raster nutzte.
Quincunx macht nicht aus 2 Samples 5, sondern nutzt einen größeren Downsample-Filterkernel. Das ist prinzipiell gar nicht schlecht, nur sind 2 Samples einfach zu wenig. Was das Marketing dann daraus macht, ist eine andere Geschichte.

Z3 wurde noch nie in Hardware eingesetzt. Wenn du das als Maßstab nimmst, ist AA wohl bei niemandem Kernkompetenz?

CSAA kann für eine ungleichmäßigere Glättung sorgen als MSAA. Hinzu kommt, dass "16x CSAA" z. B. Stencilschatten-Kanten je nach Modus nur mit 4x oder 8x glättet. Auch das sorgt für eine nicht wünschenswerte Ungleichheit im Bild. Ich halte CSAA für eine Methode, dem G80 irgendwie 16x AA andichten zu können. Irgendwie kann er das ja auch, aber nicht in allen Situationen, wo es sinnvoll wäre.
MSAA hilft auch nicht in allen Situationen, Z3 erst recht nicht. Das Primärziel bei der Entwicklung von CSAA war sicherlich nicht ein Modus der "16x" genannt werden kann, sondern bessere Qualität als reines MSAA bei ähnlich niedrigen Kosten.

Piffan
2007-04-29, 00:32:54
Genaugenommen wäre diese Deferred Shading/Deferred Shadowing (Forward Shadowing) Geschichte doch einen Artikel auf 3DC wert; in der Qualität und Quantität wie seiner Zeit die AA und AF Artikel! ...gerade jetzt, wo die ganze Thematik dank Stalker, UE3 und GRAW noch "warm" ist :rolleyes:

Ja, das wäre was. Zumal das FSAA später noch kommen wird mit DX10........

Ich finde die Vorteile so bemerkenswert, dass man glatt anehmen könnte, dass sich das auf breiter Front durchsetzt......Klar ist das Flimmern störend, aber mit der Zeit kann unser Hirn das prima ignorieren......

Chris Lux
2007-04-29, 08:37:19
Ja, das wäre was. Zumal das FSAA später noch kommen wird mit DX10........
bei echtem deferred shading geht das nicht so ohne weiteres. SSAA geht, wenn man es von hand nachbaut, aber MSAA geht nicht.

Gast
2007-04-29, 10:17:01
http://msawitus.awardspace.com/homepage/deferred_shading_demo2.php

anderer gast;)...google ist auch dein freund

Aquaschaf
2007-04-29, 11:36:17
Ich finde die Vorteile so bemerkenswert, dass man glatt anehmen könnte, dass sich das auf breiter Front durchsetzt......Klar ist das Flimmern störend, aber mit der Zeit kann unser Hirn das prima ignorieren......

Fehlendes Anti Aliasing ist nicht der einzige Nachteil der Technik. Z.B. ist man eingeschränkt darin wieviele verschiedene Oberflächenshader man verwenden kann. Transparenz ist auch nicht so einfach. Defered shading macht in manchen Situationen Sinn, in anderen nicht.

aths
2007-04-29, 15:04:27
Quincunx macht nicht aus 2 Samples 5, sondern nutzt einen größeren Downsample-Filterkernel. Das ist prinzipiell gar nicht schlecht, nur sind 2 Samples einfach zu wenig. Was das Marketing dann daraus macht, ist eine andere Geschichte.Ein Quincunx-Bild lässt sich auch erzeugen, wenn man das 2x-RGMSAA-Bild mit einem 2x2-Reinblurfilter-Bild zu jeweils 50% überblendet. Damit ist der Anteil an Unschärfe ein reiner Blur-Anteil. Das verbessert imo nicht die Bildqualität.

Z3 wurde noch nie in Hardware eingesetzt. Wenn du das als Maßstab nimmst, ist AA wohl bei niemandem Kernkompetenz?Wenn man keine Verfahren à la Z3 nutzt, darf man eben nicht einfach so an der Z-Auflösung sparen.

MSAA hilft auch nicht in allen Situationen, Z3 erst recht nicht. Das Primärziel bei der Entwicklung von CSAA war sicherlich nicht ein Modus der "16x" genannt werden kann, sondern bessere Qualität als reines MSAA bei ähnlich niedrigen Kosten.There is no lunch for free: Während CSAA in speziellen Techdemos hervorragend aussieht, offenbaren sich in der Spielepraxis die Probleme. Der echte 8x-Modus ("8xQ") liefert in allen Situationen volle 8x-Sparse-Glättung der Geometrie. Matrox wollte mit FAA auch schon einen 16x-Modus bieten. Im Moment sehe ich (bei einem sparse-grid) keine echte Notwendigkeit für mehr als 8x. Wenn schon 8x, hätte ich es gerne auch richtig.

Gast
2007-04-29, 17:55:43
offenbaren sich in der Spielepraxis die Probleme.

wo?

ich hatte bisher eher den umgekehrten eindruck, CSAA sieht z.b. im FSAA-tester ziemlich schlecht aus, da sieht sogar 8xQ besser als 16x aus, in echten spielen ist es eher umgekehrt.

aths
2007-04-29, 18:56:07
wo?Da gibts einige Screenshots, die ich im moment leider nicht finde.

ich hatte bisher eher den umgekehrten eindruck, CSAA sieht z.b. im FSAA-tester ziemlich schlecht aus, da sieht sogar 8xQ besser als 16x aus, in echten spielen ist es eher umgekehrt.Das hängt vom Spiel ab – in Doom 3 beispielsweise müsste 8xS deutlich besser sein als 16x.

Xmas
2007-04-29, 20:27:33
Ein Quincunx-Bild lässt sich auch erzeugen, wenn man das 2x-RGMSAA-Bild mit einem 2x2-Reinblurfilter-Bild zu jeweils 50% überblendet. Damit ist der Anteil an Unschärfe ein reiner Blur-Anteil. Das verbessert imo nicht die Bildqualität.
Das hätte ich gerne genauer erläutert.

Wenn man keine Verfahren à la Z3 nutzt, darf man eben nicht einfach so an der Z-Auflösung sparen.
Warum nicht?

There is no lunch for free: Während CSAA in speziellen Techdemos hervorragend aussieht, offenbaren sich in der Spielepraxis die Probleme. Der echte 8x-Modus ("8xQ") liefert in allen Situationen volle 8x-Sparse-Glättung der Geometrie. Matrox wollte mit FAA auch schon einen 16x-Modus bieten. Im Moment sehe ich (bei einem sparse-grid) keine echte Notwendigkeit für mehr als 8x. Wenn schon 8x, hätte ich es gerne auch richtig.
Du hast die Wahl, und mit Anwendungsprofilen soweit ich weiß auch noch die Möglichkeit CSAA nur dort zu verwenden wo es auch gut funktioniert.

Gast
2007-04-29, 21:53:39
Da gibts einige Screenshots, die ich im moment leider nicht finde.


aber bitte keine screenshots die nur die unterschiedlichen muster von CSAA und MSAA zeigen, wo manche winkel beim einen, und manche beim anderen besser aussehen.

aths
2007-04-29, 21:58:20
aber bitte keine screenshots die nur die unterschiedlichen muster von CSAA und MSAA zeigen, wo manche winkel beim einen, und manche beim anderen besser aussehen.CSAA kann für ungleichmäßigere Glättung sorgen.

Gast
2007-04-29, 22:50:17
Da gibts einige Screenshots, die ich im moment leider nicht finde.


naja, nachdem du sie nichtmal findest dürften sie sich auch nicht sehr leicht reproduzieren lassen, und diese ungleichmäßigkeiten nur sehr sehr selten auftreten. dementsprechend haben die entsprechenden modi durchaus ihre berechtigung wenn man die allgemein sehr gute glättung und den geringen performanceverlust sieht.

für die 1% der fälle in denen CSAA probleme macht kann man ja immer noch auf MSAA wechseln.

Mr. Lolman
2007-04-29, 23:10:33
Beim vorletzten Bild sind die Abstufungen mit CSAA größer. NV verkauft das als Vorteil, weil die harte Kante kleiner ist. Das ist aber Blödsinn, weil ja harte Kanten durchaus gewollt sind, solangs in Bewegung nicht flimmern, oder sichtbare Treppenartefakte hervorrufen. (mit CSAA wird idF das Bild also unschärfer, bei gleichzeitig größeren Abstufungen):

http://developer.nvidia.com/object/coverage-sampled-aa.html

Gast
2007-04-29, 23:15:02
ich spreche von spielen, nicht von irgendwelchen theoretischen demos.

aths
2007-04-30, 12:42:30
naja, nachdem du sie nichtmal findest dürften sie sich auch nicht sehr leicht reproduzieren lassen, und diese ungleichmäßigkeiten nur sehr sehr selten auftreten. dementsprechend haben die entsprechenden modi durchaus ihre berechtigung wenn man die allgemein sehr gute glättung und den geringen performanceverlust sieht.

für die 1% der fälle in denen CSAA probleme macht kann man ja immer noch auf MSAA wechseln.Auch bei Transparenz-Glättung gibt es nur den tatsächlich zugrunde liegenden MSAA-Modus bei CSAA. Wenn die Geometrie-Glättung dann besser ist als die Transparenz-Glättung von Alphatest-Kanten, bringt das neue Ungleichheit ins Bild. Mit dem gleichen Argument bin ich auch gegen ATIs "Performance"-AAA-Modi.

aths
2007-04-30, 12:49:11
Das hätte ich gerne genauer erläutert.Bei Texturen wirkt Quincunx wie ein zu 50% gewichteter reiner 2x2-Blurfilter.

Warum nicht?Weil man die Z-Auflösung oft braucht. Wie es mir scheint, ordnet CSAA die C-Samples den MS-Samples etwas seltsam zu, jedenfalls ist man weit entfernt davon, das 16x-Grid adäquat auszunutzen.

Du hast die Wahl, und mit Anwendungsprofilen soweit ich weiß auch noch die Möglichkeit CSAA nur dort zu verwenden wo es auch gut funktioniert.Ich glaube nicht, dass sich solche Methoden durchsetzen, denn wie gut man die Coverage trifft, bleibt Glückssache. Jedenfalls finde ich ATIs CFAA-Methode interessanter solange man als Entwickler Zugriff auf die Gewichtungen hat und man den Downsampling-Prozess vorziehen kann (bevor Schrift und HUD-Elemente ins Bild kommen.) Es kommt darauf an, effizient viele Samples zu berechnen und aus den Samples das beste zu machen und imo nicht, irgendwo "unintelligent" an Tiefen- und Farbinformationen zu sparen.

Coda
2007-04-30, 12:56:57
CFAA kann man mit D3D10 eh beliebig selber machen. Das ist imho eine reine Treibersache.

Und ich teile deine Meinung bzgl. CSAA immer noch nicht. Das ist einfach der logische nächste Schritt, weil es unwahrscheinlich ist, dass 16 verschiedene Farbwerte auf einen Pixel zutreffen. Reines 16xMultisampling ist dann doch einfach nur noch Verschwendung.

Chris Lux
2007-04-30, 13:04:01
CFAA kann man mit D3D10 eh beliebig selber machen. Das ist imho eine reine Treibersache.

Und ich teile deine Meinung bzgl. CSAA immer noch nicht. Das ist einfach der logische nächste Schritt, weil es unwahrscheinlich ist, dass 16 verschiedene Farbwerte auf einen Pixel zutreffen. Reines 16xMultisampling ist dann doch einfach nur noch Verschwendung.
genau dasselbe wollte ich grad schreiben. ich finde den ansatz die farbsamples zu wichten schon richtig und sehe ehrlichgesagt nicht, wo es rein von dem ansatz her schlechter aussehen sollte. die coverage samples bei dem 16x modus kommen 4 coverage samples auf ein farbsample. ich finde es ist schon eine logische weiterentwicklung gewesen. und ich stimme dir aber auch zu, wenn du meinst, dass es faelle gibt, wo man nachteile haben _kann_, diese denke ich sind aber extrem selten (die faelle, wie wirklich mehr als 4 farbsamples auf ein fragment kommen).

CFAA kann man mit D3D10 eh beliebig selber machen. Das ist imho eine reine Treibersache.
soweit ich das sehe, kann man mit der nv extension auch diese modi configurieren. es gibt aber nur bestimmte kombinationen, die dann auch funktionieren (also 16/4, 16/8, 8/8, 8/4 usw.). ich denke das ist bei d3d10 genauso, also nicht komplett frei konfigurierbar.


p.s. aths, dein neuer avatar macht mir albtraume! ;) diese schief aufgemalten augenbrauen... brrr

Gast
2007-04-30, 15:01:17
Auch bei Transparenz-Glättung gibt es nur den tatsächlich zugrunde liegenden MSAA-Modus bei CSAA. Wenn die Geometrie-Glättung dann besser ist als die Transparenz-Glättung von Alphatest-Kanten, bringt das neue Ungleichheit ins Bild. Mit dem gleichen Argument bin ich auch gegen ATIs "Performance"-AAA-Modi.


es stimmt schon, CSAA KANN gegenüber normalem MSAA nachteile haben. ebenso KANN MSAA gegenüber SSAA unter bestimmten umständen qualitative nachteile haben. in beiden fällen sind diese nachteile aber imo selten genug und der performancevorteil groß genug dass die "moderneren" modi durchaus ihre daseinsberechtigung haben.

auf jeden fall wandelt CSAA die vorhandene leistung am effizientesten, von allen genannten modi, in sichtbare qualität um.

aths
2007-04-30, 17:02:26
genau dasselbe wollte ich grad schreiben. ich finde den ansatz die farbsamples zu wichten schon richtig und sehe ehrlichgesagt nicht, wo es rein von dem ansatz her schlechter aussehen sollte. die coverage samples bei dem 16x modus kommen 4 coverage samples auf ein farbsample. ich finde es ist schon eine logische weiterentwicklung gewesen. und ich stimme dir aber auch zu, wenn du meinst, dass es faelle gibt, wo man nachteile haben _kann_, diese denke ich sind aber extrem selten (die faelle, wie wirklich mehr als 4 farbsamples auf ein fragment kommen).Soweit ich das sehe, kann man einem Coverage-Sample nicht beliebig einem der vier Color/Z-Samples zuordnen.

p.s. aths, dein neuer avatar macht mir albtraume! ;) diese schief aufgemalten augenbrauen... brrr;( (http://www.dudv.de/files/Bilder/Christl/Image12.jpg)

aths
2007-04-30, 17:36:29
es stimmt schon, CSAA KANN gegenüber normalem MSAA nachteile haben. ebenso KANN MSAA gegenüber SSAA unter bestimmten umständen qualitative nachteile haben. in beiden fällen sind diese nachteile aber imo selten genug und der performancevorteil groß genug dass die "moderneren" modi durchaus ihre daseinsberechtigung haben.

auf jeden fall wandelt CSAA die vorhandene leistung am effizientesten, von allen genannten modi, in sichtbare qualität um.Dem widerspreche ich.

Multisampling ist im Vergleich zu Supersampling schon ein "Performance-Hack": Nur noch Geometriekanten werden geglättet. Aber dieser "Hack" ist imo "legal", da Textur-Inhalte vom Texturfilter geglättet werden sollten und für prozedurale Texturen das Antialiasing im Pixelshader vorgenommen werden sollte (was allerdings manchmal sehr schwierig ist.) Multisampling erlaubt im Zusammenspiel mit Z- und Color-Compression, nicht nur den Füllraten-, sondern auch den Bandbreiten-Verbrauch ganz erheblich zu senken.

Gerade jetzt wo die Option auf Transparenz-AA zum guten Ton gehört, kombiniert man mit MSAA+TAA alle Vorteile.

CSAA glättet weniger als Multisampling. Stencilschatten-Ränder bekommen die zusätzliche Glättung nicht ab. TAA glättet nur so viel wie es Multisamples gibt. Die Coveragesamples wirken nur noch bei reiner Polygongeometrie und dort nicht mit voller Effektivität. Ein echtes 16x MS-Raster böte eine viel gleichmäßigere Abstufung.

Bei vernünftigem Downfiltering sind mehr als 8 Multisamples derzeit imo nicht unbedingt erforderlich. Wie man 16x AA realisiert, kann man dann fragen, wenn die Zeit reif ist. Ich sage nicht, dass man auf alle Zeiten für jedes Coverage-Sample ein eigenes Multisample braucht. Aber die Zuordnung sollte besser gewählt werden als das jetzt bei CSAA der Fall ist.

LovesuckZ
2007-04-30, 19:27:53
Beim Einsatz mit TAA ist CSAA eine gute Alternative, um eine bessere Glättung zu erreichen und nicht den Tod der geringeren Texturleistung durch den Textur - Anteil zu sterben. 8 Color/Z - Samples und TAA bringen selbst das Spieleerlebnis auf einer 8800GTX in Bereiche, wo man auf das eine oder andere verzichten muss.
Mit 16xCSAA (4C/Z Samples) erreicht man in vielen Fällen eine bessere Glättung und bleibt mit TAA in spielbaren Bereichen.

Mr. Lolman
2007-04-30, 20:03:31
ich spreche von spielen, nicht von irgendwelchen theoretischen demos.

Kennst du dich auch ein bisschen aus, oder willst du nur mitbashen? Es ist egal, ob der Winkel in nem Spiel oder in ner theoretischen Demo vorkommt. Geglättet wird immer gleich...

Gast
2007-04-30, 20:48:33
Kennst du dich auch ein bisschen aus, oder willst du nur mitbashen? Es ist egal, ob der Winkel in nem Spiel oder in ner theoretischen Demo vorkommt. Geglättet wird immer gleich...

ist es im falle von CSAA eben nicht, wobei nebenbei gesagt bei deinen verlinkten screenshots CSAA perfekt aussieht.

beispielsweise werden gleiche winkel im FSAA-tester von CSAA kaum geglättet, es ist zwar ein unterschied zu reinem MSAA erkennbar, dieser aber kaum der rede wert.

dagegen hab ich noch in keinem spiel derartige probleme bemerkt.

Mr. Lolman
2007-04-30, 21:08:07
dagegen hab ich noch in keinem spiel derartige probleme bemerkt.

In TDU gabs mal so ein Problem, wo 16xCSAA ca wie 4xAA aussah. Vll hat noch jemand nen Link parat. Ansonsten such ich ihn raus, bei Bedarf...

Xmas
2007-04-30, 22:30:52
Weil man die Z-Auflösung oft braucht. Wie es mir scheint, ordnet CSAA die C-Samples den MS-Samples etwas seltsam zu, jedenfalls ist man weit entfernt davon, das 16x-Grid adäquat auszunutzen.
Die Z-Auflösung braucht man eigentlich nur an Schnittkanten, die man bis auf ein paar Ausnahmen (Stencil-Schatten) sowieso vermeiden sollte.
16x CSAA scheint nur 14 der 16 Zeilen/Spalten zu nutzen, und die Verteilung der Z-Samples ist nicht ideal, das stimmt. Schlecht ist es aber auch keinesfalls.

Ich glaube nicht, dass sich solche Methoden durchsetzen, denn wie gut man die Coverage trifft, bleibt Glückssache. Jedenfalls finde ich ATIs CFAA-Methode interessanter solange man als Entwickler Zugriff auf die Gewichtungen hat und man den Downsampling-Prozess vorziehen kann (bevor Schrift und HUD-Elemente ins Bild kommen.) Es kommt darauf an, effizient viele Samples zu berechnen und aus den Samples das beste zu machen und imo nicht, irgendwo "unintelligent" an Tiefen- und Farbinformationen zu sparen.
D3D 10 bietet Multisample-Texturen bei denen man die Samples einzeln auslesen kann. Das ist allerdings, genau wie Multisampling selbst, optional. Spätestens mit 10.1 wird es aber jede Karte können müssen. Wenn CFAA auf Lob trifft, wird NVidia wahrscheinlich ähnliche Filter anbieten.

Multisampling spart "intelligent" an Farbinformationen. Das funktioniert leider nicht immer. CSAA spart "intelligent" an Z/Stencil-Informationen. Das funktioniert auch nicht immer. Aber häufig genug.

Gast
2007-04-30, 22:33:00
Multisampling spart "intelligent" an Farbinformationen. Das funktioniert leider nicht immer. CSAA spart "intelligent" an Z/Stencil-Informationen.

und auch an weiteren farbinformationen.

Gast
2007-05-02, 09:33:58
Wenn CFAA auf Lob trifft, wird NVidia wahrscheinlich ähnliche Filter anbieten.Wollen wirs hoffen. Vor allem, wenn sich der Downfilter als Option, wie z.B. TSAA , unabhängig zu jedem FSAA-Modus dazuschalten ließe, könnten mit den SSAA- und Hybridmodi wirklich sehr leckere Ergebnisse entstehen.

Coda
2007-05-02, 09:55:16
Bei reinem Supersampling wird das ganze aber nicht funktionieren.

Gast
2007-05-02, 10:09:41
Bei reinem Supersampling wird das ganze aber nicht funktionieren.Wieso sollte dem so sein? Der Downfilter hat doch mit der zugrundeliegenden Sampleart erstmal absolut nichts zu tun. Hab vielleicht das falsche Beispiel gewählt, gammakorrigiertes Downfiltering wäre wohl der passendere Vergleich gewesen, da weniger irreführend.

Coda
2007-05-02, 10:34:25
Weil das Supersampling nur ein einfaches runterskalieren ist, da wird auch nichts gammakorrigiert.

Theoretisch ging es zwar, aber ich glaub nicht, dass man im Downfilter-Shader die Samples von 4 Pixeln + umliegenden verrechnen wird.

Gast
2007-05-02, 11:22:07
Weil das Supersampling nur ein einfaches runterskalieren ist, da wird auch nichts gammakorrigiert.

Theoretisch ging es zwar, aber ich glaub nicht, dass man im Downfilter-Shader die Samples von 4 Pixeln + umliegenden verrechnen wird.Naja, NVs typischer Erstreflex auf neue AA-Modi der Konkurrenz wars immer, ein oder zwei inoffizielle Hybridmodi zu offiziellen zu adeln. Wenn dann noch CFAA beliebt genug wird, um weiteren Handlungsbedarf zu erzeugen, braucht mans eh wieder auch in einer Form, die mit Hybridmodi zusammenarbeiten kann. Dann wäre alle Arbeit, die für die reinen SSAA-Modi nötig wäre, durch die Hybriden bereits getan.

BTW:
Vielleicht splitten, werte Modschaft?

Gast
2007-05-02, 14:15:52
Naja, NVs typischer Erstreflex auf neue AA-Modi der Konkurrenz wars immer, ein oder zwei inoffizielle Hybridmodi zu offiziellen zu adeln.


Wann soll das gewesen sein? Zur Erinnerung schon die GF3 konnte mit 4xS einen Hybrid-Modus und da gab es keine Konkurrenz, die auch nur einen brauchbaren AA-Modus anbot.

Mr. Lolman
2007-05-02, 14:56:22
Wann soll das gewesen sein? Zur Erinnerung schon die GF3 konnte mit 4xS einen Hybrid-Modus und da gab es keine Konkurrenz, die auch nur einen brauchbaren AA-Modus anbot.

Damals hatten noch viele Leute Voodookarten im Rechner ;)

Gast
2007-05-02, 15:12:32
Wann soll das gewesen sein? Zur Erinnerung schon die GF3 konnte mit 4xS einen Hybrid-Modus und da gab es keine Konkurrenz, die auch nur einen brauchbaren AA-Modus anbot.Tja, zumindest bei korrekter Mondphase und nach Opferung diverser Kleintiere auf einer einsamen nebelfreien Waldlichtung konnte der R200 auch mehr als OGSSAA (und 4xS nutzte ich schon, bevor es so genannt wurde :D Wie nannte es der Rivatuner damals noch mal... 2x + 1x2?). Wäre 3dfx nicht über den Jordan gehüpft hätte man sich noch mit den V5 und später Rampage prügeln können. Dann mit NV30 vs R300 bekamen wir offiziell 8xS, zuerst das heutzutage als 8xS old bezeichnete, dann mit NV40 den neuen 8xS mit sparsamerem SSAA-Einsatz und höherer EER (aber IMHO geringerer Qualität, bin halt SSAA-Junkie). War nicht 16x auf OGMSAA-Basis auch mal kurz offiziell per CP verfügbar? Evtl. nur unter OpenGL?
Dann noch TMAA/TSAA/AAA/EATM und diverse weitere Abkürzungen für Alphatestflimmerkiller. Wer war hier Vorreiter? NV? ATI? Ich glaube eher Demirug...

BAGZZlash
2007-05-03, 00:37:52
Tja, zumindest bei korrekter Mondphase und nach Opferung diverser Kleintiere auf einer einsamen nebelfreien Waldlichtung konnte der R200 auch mehr als OGSSAA (und 4xS nutzte ich schon, bevor es so genannt wurde :D Wie nannte es der Rivatuner damals noch mal... 2x + 1x2?). Wäre 3dfx nicht über den Jordan gehüpft hätte man sich noch mit den V5 und später Rampage prügeln können. Dann mit NV30 vs R300 bekamen wir offiziell 8xS, zuerst das heutzutage als 8xS old bezeichnete, dann mit NV40 den neuen 8xS mit sparsamerem SSAA-Einsatz und höherer EER (aber IMHO geringerer Qualität, bin halt SSAA-Junkie). War nicht 16x auf OGMSAA-Basis auch mal kurz offiziell per CP verfügbar? Evtl. nur unter OpenGL?
Dann noch TMAA/TSAA/AAA/EATM und diverse weitere Abkürzungen für Alphatestflimmerkiller. Wer war hier Vorreiter? NV? ATI? Ich glaube eher Demirug...

Was will uns der Autor damit sagen?

Aber mal was anderes, kurz OT, falls gestattet: Was steckt eigentlich hinter 8xS old? Bin nVidia-Neuling, hatter vorher immer ATI (und davor VooDoo, Hercules stingray pro, 256 kB VGA, EGA und C64, aber das tut ja hier nix zur Sache :rolleyes: )? Also im Ernst: Was ist "8xS old"?

Gast
2007-05-03, 01:22:21
Was will uns der Autor damit sagen?Dass es damals sehr wohl eine Menge ernstzunehmende Konkurrenz in Sachen FSAA gab und NV darauf meist mit Hybriden geantwortet hat.

Aber mal was anderes, kurz OT, falls gestattet: Was steckt eigentlich hinter 8xS old? Bin nVidia-Neuling, hatter vorher immer ATI (und davor VooDoo, Hercules stingray pro, 256 kB VGA, EGA und C64, aber das tut ja hier nix zur Sache :rolleyes: )? Also im Ernst: Was ist "8xS old"?8xS old ist 2x2 OGSSAA + 2xSGMSAA, also 8 MSAA-Samples und 4 Textur-/Shadersamples bei einer Geometrie-EER von 4x4. Reines GeometrieAA etwas besser als 4xSG, gegen Shaderaliasing und Texturgeflimmer wesentlich besser als das auf einigen GFs offiziell verfügbare 8xS (4xSGMSAA + 1x2 OGSSAA (oder 2x1, je nach API und Treiberversion)) oder die Sparlösungen Quincunx und 4x9tap.

AnarchX
2007-05-05, 13:16:53
Xenos kann Deferred Shading + MSAA? :|

Tim Sweeney: Die Unreal Engine 3 setzt das Deferred-Shading dazu ein, die Berechnung der dynamischen Beleuchtung und Schatten zu beschleunigen. Integriert man dieses Feature zusammen mit Multi-Sampling, erfordert das eine Kontrolle über die Kantenglättung auf einer tieferen Ebene, als es die Direct-X-9-Schnittstelle ermöglicht. Bei unserem populären Xbox-360-Spiel mit Unreal Engine 3 konnten wir Multi-Sampling implementieren, weil wir die erweiterten MSAA-Features der Plattform nutzen. Beim PC wird Multi-Sampling nur unter Direct X 10 unterstützt.
http://www.pcgameshardware.de/?article_id=600760

deekey777
2007-05-05, 13:25:19
Wer sagt, dass UE 3 ein Deferred Renderer ist?

AnarchX
2007-05-05, 13:28:51
Wer sagt, dass UE 3 ein Deferred Renderer ist?

Und warum funktioniert es dann beim PC nur mit DX10?

Oder ist es so:

Deferred Renderer + MSAA -> D3D10-HW + SW nötig

Deferred Shadowing + MSAA -> nicht unter D3D9 möglich, aber per Hack eben auf der XBox möglich, da hier nicht D3D9 konform gearbeitet werden muss

?

deekey777
2007-05-05, 13:49:08
Und warum funktioniert es dann beim PC nur mit DX10?
Man hat sich mehr Mühe gemacht.

Oder ist es so:

Deferred Renderer + MSAA -> D3D10-HW + SW nötig

Deferred Shadowing + MSAA -> nicht unter D3D9 möglich, aber per Hack eben auf der XBox möglich, da hier nicht D3D9 konform gearbeitet werden muss

?
Deferred Shadowing der UE3 kannst du auch "grüner Elefant" nennen, mit Deferred Rendering hat es nichts zu tun.:biggrin:
http://www.forum-3dcenter.org/vbulletin/showthread.php?t=359896

Gast
2008-01-03, 11:53:08
Fehlendes Anti Aliasing ist nicht der einzige Nachteil der Technik. Z.B. ist man eingeschränkt darin wieviele verschiedene Oberflächenshader man verwenden kann. Transparenz ist auch nicht so einfach. Defered shading macht in manchen Situationen Sinn, in anderen nicht.
Im Umkehrschluss: (Halb-)Transparente Objekte sind bei einem Forward Renderer einfach?
Deferred Rendering hatte keinen guten Start. In STALKER wird der theoretische Vorteil der geringeren CPU-Belastung durch Schatten in den Wind geschossen. GRAW und GRAW 2 gehen mit der CPU auch nicht sehr sparsam um (wegen der Physikspielereien?).
Dann stellt sich die Frage, ob die aktuellen Grafikkarten mit Deferred Renderer nicht überfordert sind, schließlich werden die Bandbreite, TMUs und/oder ROPs deutlich mehr belastet.

aths
2008-01-03, 18:24:47
Wieso werden Bandbreite und TMUs mit deferred shading mehr belastet?

Coda
2008-01-03, 21:27:45
Die Bandbreite wird mehr belastet, da man mehr Daten in die Framebuffer schreiben muss.

deekey777
2008-02-03, 14:11:58
Light Indexed Deferred Rendering demo + paper (http://forum.beyond3d.com/showthread.php?t=46371)

Was an dieser Demo interessant ist: MSAA ist möglich, unter Optionen kann man zwischen DR und gewöhnlichen FR wählen und staunen, wie die Frames einbrechen.:)

aths
2008-02-04, 22:35:44
Die Bandbreite wird mehr belastet, da man mehr Daten in die Framebuffer schreiben muss.Dafür sampelt man weniger Texturen. Insgesamt müsste man doch Vorteile haben.

Chris Lux
2008-02-05, 09:38:40
Dafür sampelt man weniger Texturen. Insgesamt müsste man doch Vorteile haben.
das was du in die buffer schreibst, liest du auch wieder im deferred shading pass.

aths
2008-02-05, 18:30:57
Ich bezog mich auf "Dann stellt sich die Frage, ob die aktuellen Grafikkarten mit Deferred Renderer nicht überfordert sind, schließlich werden die Bandbreite, TMUs und/oder ROPs deutlich mehr belastet."

Das ergibt so keinen Sinn. Bei deferred shading muss man letztlich sparen, auch wenn der zweite Pass zunächst kostet. Bei sehr kleinen Pixelshadern oder sehr wenigen Texturen dürfte sich das nicht lohnen, bei komplexer Beleuchtung oder sehr vielen Lichtquellen schon.

Gast
2008-02-07, 11:46:45
Ich bezog mich auf "Dann stellt sich die Frage, ob die aktuellen Grafikkarten mit Deferred Renderer nicht überfordert sind, schließlich werden die Bandbreite, TMUs und/oder ROPs deutlich mehr belastet."

Das ergibt so keinen Sinn. Bei deferred shading muss man letztlich sparen, auch wenn der zweite Pass zunächst kostet. Bei sehr kleinen Pixelshadern oder sehr wenigen Texturen dürfte sich das nicht lohnen, bei komplexer Beleuchtung oder sehr vielen Lichtquellen schon.Im ersten Pass verbrauchst du genau soviel TMU und ROPs wie beim forward rendering.
Der zweite Pass mit dem shading ist dann Extra.
Im ersten Pass verschwendest du Rechenleistung von der du immer mehr hast.

aths
2008-02-09, 16:33:59
Im ersten Pass verbrauchst du genau soviel TMU und ROPs wie beim forward rendering.Wieso, wird das nicht mit einen First-Z-Pass kombiniert?

Gast
2008-02-11, 16:57:32
Wieso, wird das nicht mit einen First-Z-Pass kombiniert?
Wenn es Vorteile bringt, dann natürlich ja. Jedoch ist es leicht ersichtlich, dass ein ZPass bei komplizierten Shadern im Forward-Rendering eher Sinn macht, als beim G-Buffer generieren. Oder anders, wenn sich ein ZPass als optimierung für den G-Buffer anbietet, dann ganz sicher auch fürs Forward-Rendering. Somit kein Vorteil für Deffered-Rendering was Bandbreite angeht.

aths
2008-02-11, 20:20:12
Z-Bandbreite fällt dank Komprimierung nicht so ins Gewicht wie G- oder Color-Bandbreite. Da man soweit ich weiß mit D3D10 auch transformierte Vertexdaten für einen zweiten Pass zwischenspeichern kann, müsste sich das eigentlich lohnen. Wobei ich noch nicht davon überzeugt bin, dass Deferred Lighting (bzw. Shading) im Vergleich zum normalen Rendern aber mit vorgezogenem Z-Rendering entscheidende Vorteile hat.

Gast
2008-02-12, 12:39:59
Z-Bandbreite fällt dank Komprimierung nicht so ins Gewicht wie G- oder Color-Bandbreite. Da man soweit ich weiß mit D3D10 auch transformierte Vertexdaten für einen zweiten Pass zwischenspeichern kann, müsste sich das eigentlich lohnen. Wobei ich noch nicht davon überzeugt bin, dass Deferred Lighting (bzw. Shading) im Vergleich zum normalen Rendern aber mit vorgezogenem Z-Rendering entscheidende Vorteile hat.
Und ich dachte du bist der Fürsprechen davon :)
Ich bin definitiv der Meinung, dass Defered Shading Bandbreitenachteile hat.

Aber das ist auch nicht wirklich das "Gute" finde ich. Eher dass es viele Dinge vereinfacht. Ob eine oder 100 winzige Lichtquellen vorhanden sind, das ist egal für die Anzahl der Shader bzw. Dynamic Branches.
Normalerweise hast du:
x=(Anzahl möglicher Inputkombinationen)
y=(Anzahl möglicher Outputkombinationen)
Wobei x für z.B. statische, animierte, komprimierte, displacement, tesselierte... Geometrie steht.
y für Shading z.B. Anisotropisch, Phong, Reflektions. Und das in Kombination mit allerlei Lightquellen (was Anzahl und Arten angeht)

Beim Forwardrendering hast du dann X*Y Möglichkeiten was du abdecken musst. Bei Deffered nur X+Y, was meiner Meinung nach das wirklich verlockende Argument ist.

Xmas
2008-02-12, 16:27:06
Dieses Argument existiert auf API-Ebene, allerdings nicht zwangsläufig auf Hardware-Ebene.

Gast
2008-02-12, 17:11:34
Dieses Argument existiert auf API-Ebene, allerdings nicht zwangsläufig auf Hardware-Ebene.
Kannst du uns deine Gedanken ein wenig ausführlicher mitteilen? ;)