Archiv verlassen und diese Seite im Standarddesign anzeigen : Warum man LOD immer benötigen wird
Es gibt mal wieder ein OpenRT Video um zu zeigen wieviele Polygone man ohne LOD rendern kann.
http://graphics.cs.uni-sb.de/Publications/2006/MLI_RT2006.avi
Viel Spass beim Flimmern. X-D
Neomi
2006-11-26, 21:49:41
Für die Texturen sind offenbar Mipstufen vorhanden, aber es wird nicht dazwischen interpoliert (gut zu sehen am Fluß). Ziemlich unverständlich, schließlich muß man ja für einen harten Wechsel ebenfalls den LoD berechnen.
Das Flimmern der Geometrie ist wirklich unerträglich, die wird gnadenlos unterfiltert. Das ist zwar kein Raytracing-Problem, aber wird bei einer solchen Techdemo natürlich ein sehr schlechtes Licht darauf. Wie du schon sagst, LoD-Stufen werden immer nötig sein.
Damit rückt das für Raytracing immer propagierte logarithmische Skalieren mit der Geometriemenge natürlich auch wieder in ein ganz anderes Licht irgendwie...
Naja das ganze mit 16xSGAA und es würde wohl nicht mehr ganz so schlimm sein ;)
Natürlich flimmert die Geometrie, die wird hoffnungslos unterabgetastet. Ist das gleiche wie bei hochauflösenden Texturen in großer Entfernung ohne MIP-maps.
Das ist mir schon klar. Vor allem ist Geo-LOD ein wesentlich härteres Problem als Texture-LOD...
Ungewohnte Einigkeit hier.
Damit rückt das für Raytracing immer propagierte logarithmische Skalieren mit der Geometriemenge natürlich auch wieder in ein ganz anderes Licht irgendwie...
Du hasts erfasst.
Naja das ganze mit 16xSGAA und es würde wohl nicht mehr ganz so schlimm sein
Ich glaube kaum, dass 16x SGAA da ausreichen würde. X-D
Vor allem ist Geo-LOD ein wesentlich härteres Problem als Texture-LOD...
Leider oft unterschätzt.
Wie will mans machen?
Zu kleine Polygone wegfallen lassen? Grad bei Vegetation fallen dabei zuviel relevanten Daten weg.
Polygone vergrößern? Kann zu seltsamen Ergebnissen führen. (und die BSPs fürs Raytracing freuen sich)
Bleibt eigentlich nur noch richtiges IBR oder einfache Billboards. Dafür brauch man dann aber auch kein Raytracer mehr. ;)
Mit adaptivem AA könnte man das Flimmern loswerden. Dummerweise hat man mit adaptivem AA keine logarithmische Komplexität mehr. Außerdem braucht man damit bei weit entfernten Dingen sehr viel Rechenleistung, bekommt aber nur wenige sichtbare Pixel.
Zum Geo-LOD:
Da erzeugen leider genau die Varianten, für die man keine guten LOD-Algorithmen hat, die Probleme mit dem Flimmern: Konkave Geometrie oder Überschneidungen von nicht zusammenhängenden Polygonen.
Ich glaube kaum, dass 16x SGAA da ausreichen würde. X-D
16xAA alleine sicher nicht, aber eine vergößerung der auflösung auf 1600x1200+16xAA denke ich mal würde das flimmern schon sehr stark vermindern.
Mastermind
2006-11-27, 16:57:05
16xAA alleine sicher nicht, aber eine vergößerung der auflösung auf 1600x1200+16xAA denke ich mal würde das flimmern schon sehr stark vermindern.
Sehr richtig. Ich hoffe meinerseits, dass die Entwicklung in Richtung mehr DPI endlich schneller vorwärts kommt. Für DPI->unendlich hat man nämlich gar kein Flimmern und braucht nicht mal mehr AA. :smile:
Soviel DPI kannst du gar nicht haben dass in der Szene das Flimmern verschwindet.
hofmetzger
2006-11-27, 17:53:15
Simulation von 16x OGSSAA:
Also ich hab mit VirtualDub das Video von 640x480 auf 160x120 herunterskaliert. Dies entspricht einem OGSSAA von 16 (wenn ich nicht auf den Kopf gefallen bin).
Das Ergebnis flimmert zwar weiterhin, aber ist um einiges ruhiger. Zusätzlich muss man sagen, dass der Vergleich natürlich hinkt. Man müsste eine mit Pointsampling verkleinerte Version gegen eine bilineare antreten lassen, um den echten Vergleich zu haben:
Original- --- resize(pointsampling) ---> A) 160x120, ohne AA
video
640x480 ------ resize(bicubic) ------> B) 160x120, 16xAA - vgl mit A)
Ob die Wirkung ausreichend ist, hängt wohl vom subjektiven empfinden ab, ein "Grundrauschen" kann auch "realistischer" wirken, aber das ist eine andere Diskussion.
Soviel DPI kannst du gar nicht haben dass in der Szene das Flimmern verschwindet.
och, wenn ein pixel nur mehr eine größe von 0,01x0,01mm hat wird man kaum mehr ein flimmern sehen.
wo man allerdings die rechenleistung hernehmen will um diese auflösung in echtzeit berechnen zu können ist allerdings fraglich ;)
Bietchiebatchie
2006-11-28, 15:29:21
Ich glaube kaum, dass 16x SGAA da ausreichen würde. X-D
Nein 16xAA is wäre bei weitem zu wenig; drückt mal Pause auf eurem Player und kuckt euch mal ein Standbild an... sieht aus als wäre da mindestens mit 4xAA gerendert(ich persönlich tendiere aber eher richtung x16), sonst könnte man nämlich gar kein Details erkennen.
Was aber an dem Video "neu" sein soll, muss man nicht so ganz verstehen. Das Extreme-Instancing mit Raytracing funktioniert ist ja jetzt nix neues.
Achso flamen muss ich auch noch:
Die Landschaft ist ja ma selten schlecht generiert.
Was aber an dem Video "neu" sein soll, muss man nicht so ganz verstehen. Das Extreme-Instancing mit Raytracing funktioniert ist ja jetzt nix neues.
*hust*
Paper lesen oder Vortrag anschauen wäre ja eine Möglichkeit. ;)
Bei knapp 22 Milliarden Instanzen hast du mit herkömmlicher Instanziierung ein "kleines" Problem.
Achso flamen muss ich auch noch:
Die Landschaft ist ja ma selten schlecht generiert.
Generiert? Das dürften DEM Daten sein mit einer Auflösung von 10m.
Aber noch ein Nachteil von Raytracing. Da kein Heightmap-LOD existiert produziert die ~8000^2 Heightmap 21 GB Daten laut Folien. X-D
RavenTS
2006-12-02, 16:56:27
Es gibt mal wieder ein OpenRT Video um zu zeigen wieviele Polygone man ohne LOD rendern kann.
http://graphics.cs.uni-sb.de/Publications/2006/MLI_RT2006.avi
Viel Spass beim Flimmern. X-D
Vielleicht hättest du noch schreiben sollen, daß das Video fluffige 230MB schwer ist... :wink:
Vielleicht hättest du noch schreiben sollen, daß das Video fluffige 230MB schwer ist... :wink:
für was, das bekommt doch eh jeder mit ;)
OBrian
2006-12-02, 19:03:08
Mal so ganz unbedarft gefragt: Da dieses Gekrissel doch durch die Kontraste zwischen hellen und dunklen Blättern/Zweigen entsteht, könnte man die nicht wegbekommen, indem man man einfach die durchschnittliche Farbe aller entfernten Polygone, die in einen Pixel (oder wenigstens Subpixel, um dann normales AA anwenden zu können) kommen, errechnet (nach bereits erfolgtem Shading, Glanzlichter, Schatten auf Blättern usw.) und dann allen diesen Polygonen diese Farbe gibt? Das sollte dann ja innerhalb dieses Pixels ein einfarbiges ruhiges Mittelgrün (ohne theoretisch sichtbare und damit flimmernde Kante) ergeben. Oder hab ich da nen Denkfehler drin?
Um Performance zu sparen, kann man ein Objekt-LOD ja dann hinter dieser Subpixel-Schwelle machen und meinetwegen auch sehr aggressiv, da man dann eh nichts mehr sieht.
PS: Um noch etwas weiter zu flamen: Die Schatten sehen ja scheußlich aus, stufig wie in Battlefield2 :biggrin:
Wenn du alle Polygone innerhalb eines Pixels abgrasen willst dann ist deine Performance abartig im Arsch, zudem ist das mit Raytracing gar nicht so einfach machbar.
RavenTS
2006-12-03, 01:09:26
für was, das bekommt doch eh jeder mit ;)
Naja, vielleicht später als einem lieb ist, wenn Opera beispielsweise das Video direkt im Browser öffnen will und sich direkt nen fetten Brocken Bandbreite schnappt...wollts halt nur mal sagen.
Frage: Wieso flimmert da an bestimmten Stellen irgendwas blau auf. Scheint sich immer nur auf bestimmte Bereiche im mittleren Abstand auszuwirken...
Die Natur hat auch kein LOD und läuft in ihrer praktisch unendlichen hohen Auflösung auch superflüssig....
>>immer<< diese menschliche Logik...
Vielleicht hättest du noch schreiben sollen, daß das Video fluffige 230MB schwer ist...
Hätte wohl wirklich machen sollen. Sorry.
Frage: Wieso flimmert da an bestimmten Stellen irgendwas blau auf. Scheint sich immer nur auf bestimmte Bereiche im mittleren Abstand auszuwirken...
Kann an BSP-Fehlern oder Epsilon-Fighting (die raytracische Variante von z-Fighting) liegen.
Die Natur hat auch kein LOD und läuft in ihrer praktisch unendlichen hohen Auflösung auch superflüssig....
>>immer<< diese menschliche Logik...
Die Natur schickt aber auch eine unglaubliche Zahl von Photonen, die das Auge nur noch auffangen muss. Bis Rechner dazu in Lage sind wird noch viel viel Zeit vergehen. ;)
Die Natur hat auch kein LOD und läuft in ihrer praktisch unendlichen hohen Auflösung auch superflüssig....
die auflösung ist auch nicht unendlich, aber in der natur gibt es quasi unendliches antialiasing.
Liszca
2006-12-04, 02:00:04
die auflösung ist auch nicht unendlich, aber in der natur gibt es quasi unendliches antialiasing.
ist so garnicht war, jeder hat ein anderes lod, ich bin nämlich kurzsichtig (nur mal so als beispiel)
Mastermind
2006-12-04, 12:00:14
die auflösung ist auch nicht unendlich, aber in der natur gibt es quasi unendliches antialiasing.
Quatsch, es gibt in der Natur kein Anti-Aliasing. Die Auflösung ist aber hoch genug, damit man es nicht mehr braucht.
Wobei, doch. Ich gebe zu, dass beim Übergang von "Naturauflösung"->"Auflösung des Auges" im übertragenen Sinne Supersampling in unvorstellbarem Maße umgesetzt wird.
Quatsch, es gibt in der Natur kein Anti-Aliasing.
doch, dein auge hat eine endliche anzahl an lichempfindlichen zellen und damit eine endliche auflösung.
jede dieser zellen repräsentiert allerdings das perfekte flächenintegral über den "pixel" und damit quasi-perfektes antialiasing.
bei einem fotoaparat ist es auch ähnlich, auch bei geringer auflösung wird immer das genaue flächenintegral des pixels dargestellt, jedes pixel hat also die genauestmögliche farbe.
Mastermind
2006-12-04, 21:01:46
doch, dein auge hat eine endliche anzahl an lichempfindlichen zellen und damit eine endliche auflösung.
jede dieser zellen repräsentiert allerdings das perfekte flächenintegral über den "pixel" und damit quasi-perfektes antialiasing.
bei einem fotoaparat ist es auch ähnlich, auch bei geringer auflösung wird immer das genaue flächenintegral des pixels dargestellt, jedes pixel hat also die genauestmögliche farbe.
Deswegen hab ich mich auch gleich korrigiert. Ich habe irgendwie die ganze Zeit nur an MSAA gedacht. ;) Aber SSAA findet wie gesagt tatsächlich statt, wie du auch bestätigt hast.
Also LOD ist schon ein wichtiger/s Typ / Feature :biggrin: :wink:
Sephiroth
2006-12-17, 20:03:35
Also LOD ist schon ein wichtiger/s Typ / Feature :biggrin: :wink:
Verwarnung wegen Spams. :wink:
vBulletin®, Copyright ©2000-2024, Jelsoft Enterprises Ltd.