HOME Lernen 3D Autodesk Maya

FG/GI vs. Irradiance Particles

 
 
LinkBack Themen-Tools Thema durchsuchen
Alt 25.02.2009   #1

void main(){fork(main())}

 
Benutzerbild von Hellstorm
 
Mitglied seit: 31.03.2008
Beiträge: 835
Hellstorm eine Nachricht über ICQ schicken Hellstorm eine Nachricht über MSN schicken Hellstorm eine Nachricht über Yahoo! schicken
Vergleich Irradiance Particles gegen "herkömmliche" Global Illumination

Seit mental ray 3.6 (Maya 2008 SP 1) gibts ja nun diese heiß angepriesenen Irradiance Particles, die noch bessere diffuse Beleuchtung zulassen soll als Final Gather und/oder Globillum.

Hab zwar schon vor ner ganzen Weile mal etwas damit rumgespielt, aber nun bin ich da genauer am testen.

Bis jetzt bin ich aber davon noch nicht so wirklich überzeugt. Die Berechnung dauert wesentlich länger als bei Final Gather (das ja mittlerweile schon bei ner Accuracy von 100 und 0.5 bis 1 Point Density sehr gute Ergebnisse erzielt). Vorallem merkt man es bei 2 oder mehr Diffuse Bounces/Passes.
Der Speicherverbrauch ist bei der Emission von Importons auch noch extrem hoch (Davon mal abgesehen dass die Importons ja auch schon ne gute Weile zum berechnen brauchen).

Ich bin schon der Ansicht, dass IP sehr gute Ergebnisse liefert, aber zu was für einen Preis? Meine aktuelle Testszene mit dem WIP-Bad (neue Bilder kommen auch bald) zeigt das sehr deutlich. Ich hab die Importon Density auf 0.667 und Max Depth auf 1. IP Rays auf 128 und Passes auf 1. Unglücklicher Weise zeigen sich so Artefakte, die selbst bei hoher Interpolation nicht verschwinden.

Vielleicht habe ich auch nur die Zusammenhänge der einzelnen Einstellungen noch nicht ganz raus, aber bisher sehe ich IP nicht als den super tollen Megahit an.
Hellstorm ist offline  
"Es gibt zwei Dinge, die unendlich sind. Das Universum und die menschliche Dummheit. Beim Universum bin ich mir noch nicht ganz sicher." [Albert Einstein]
Alt 26.02.2009   #2

void main(){fork(main())}

 
Benutzerbild von Hellstorm
 
Mitglied seit: 31.03.2008
Beiträge: 835
Hellstorm eine Nachricht über ICQ schicken Hellstorm eine Nachricht über MSN schicken Hellstorm eine Nachricht über Yahoo! schicken
AW: FG/GI vs. Irradiance Particles

So. Ich habe nochmal nachgeforscht.
IP sind wohl doch um einiges effektiver. Aber nur bei Szenen, deren indirektes Licht hauptsächlich aus Diffuser zu Diffuser Bleuchtung gebildet wird. Szenen mit vielen reflektiven Oberflächen handhabt IP noch nicht so gut wie z.B. Final Gather.
Das heißt wohl für mich, dass ich bei der Bad-Szene wohl bei FG/GI bleibe, da die Fliesen alle mit glossy reflections versehen sind. Und da IP das nicht gut handhabt, erklärt das auch meine ganzen Artefakte. Aber ich hoffe ja mal, das mental images da schon dran arbeiten
Hellstorm ist offline  
"Es gibt zwei Dinge, die unendlich sind. Das Universum und die menschliche Dummheit. Beim Universum bin ich mir noch nicht ganz sicher." [Albert Einstein]
Alt 26.04.2009   #3

void main(){fork(main())}

 
Benutzerbild von Hellstorm
 
Mitglied seit: 31.03.2008
Beiträge: 835
Hellstorm eine Nachricht über ICQ schicken Hellstorm eine Nachricht über MSN schicken Hellstorm eine Nachricht über Yahoo! schicken
AW: FG/GI vs. Irradiance Particles

Weiter gehts im Programm:

Test einer sehr einfachen Innenszene. Mich interessierte die Genauigkeit der Beleuchtung bei der Verwendung eines HDRI's.

Ich bin sehr überrascht.
Meine Szene war ein kleiner Raum, eine halbe Wand und dahinter ein paar Kugeln.
Als HDRI nahm ich "Sunset_01-4k.hdr" von Spectralogue. Zu sehen ist eine Landschaft mit recht wolkenfreiem Himmel. Und, logischerweise, eine untergehende Sonne. Das HDRI hab ich so gedreht, dass die Sonne recht genau durch das Fenster scheint.

Anfänglich hatte ich leichte Probleme mit der Rendergeschwindigkeit, das lag aber einfach an etwas ungeeigneten Render-Settings, nämlich der Importon-Density und die empfehlung aus der Dokumentation, dort nicht zu kleine Werte zu nehmen.
Es wurde eine Density empfohlen, die nicht zu viel unter 1,0 Importons pro Pixel liegt.
Doch das ist Unfug. In der Regel reichen zwischen 10.000 und 100.000 für ein gesamtes Bild aus.
Erreicht wird das, indem man folgende Zeilen in den Script-Editor kopiert:
Code:
    setAttr -type "string" miDefaultOptions.stringOptions[7].name "importon emitted";
    setAttr -type "string" miDefaultOptions.stringOptions[7].type "integer";
    setAttr -type "string" miDefaultOptions.stringOptions[7].value "10000";
dann hat man in den String Options der miDefaultOptions Node auch den entsprechenden Eintrag.

Nach einigen Tests kam ich dann auch zu einem Ergebnis.
Verwendete Settings:
1024x768 Bildgröße
Adaptives AA: Level 2, Lancosz 4/4 Filter
Importons Emitted: 100.000
Passes: 4
Irradiance Particle Rays: 512
Passes: 4
Environment Rays: 1000

mia_exposure_photographic Lens Shader.


Es wurden hierbei keinerlei Lichter verwendet, die komplette Beleuchtung erfolgte über Irradiance Particles. Auch AO wurde nicht verwendet.
Renderzeit: 1h 08m

Bild anklicken für Originalgröße



Hier eine andere Ansicht (Renderzeit 1m 03s) mit wiederverwendeter IP-Map

Bild anklicken für Originalgröße



Nur zum vergleich ein Bild mit bloßem Final Gather (Accuracy 1000, Density 2.0, Interpolation 100).
Renderzeit: 1h 06m
Selbst bei Interpolation auf 1000, habe ich kein glattes Ergebnis, und genau ist es dann sowieso nicht mehr...

Bild anklicken für Originalgröße



Irradiance Particles haben also durchaus ein sehr gutes Potenzial, wenn man, wie vorher schon gesagt, nicht gerade Szenen hat, die aus vielen, sehr stark reflexiven Flächen bestehen.
Die Ergebnisse dieses Bildes zeigen sehr gut die Genaugkeit von IP. Ich könnte sogar sagen, ich kann fast gänzlich auf Portal Lights in den Fenstern verzichten...

PS: eine kombi aus GI/FG werde ich evtl. auch noch austesten. Aber ich glaube selbst da nicht, dass ich annähernd genaue Ergebnisse in kürzerer Zeit erreichen kann.
Bild anklicken für Originalgröße
FG/GI vs. Irradiance Particles-ip01.jpg   FG/GI vs. Irradiance Particles-ip02.jpg   FG/GI vs. Irradiance Particles-ip_fg.jpg  
Hellstorm ist offline  
"Es gibt zwei Dinge, die unendlich sind. Das Universum und die menschliche Dummheit. Beim Universum bin ich mir noch nicht ganz sicher." [Albert Einstein]
Alt 27.04.2009   #4

void main(){fork(main())}

 
Benutzerbild von Hellstorm
 
Mitglied seit: 31.03.2008
Beiträge: 835
Hellstorm eine Nachricht über ICQ schicken Hellstorm eine Nachricht über MSN schicken Hellstorm eine Nachricht über Yahoo! schicken
AW: FG/GI vs. Irradiance Particles

Kleines Update: Habe nun mit Global Illumination einige Tests gemacht.
Über die IBL-Node (Image Based Lighting) habe ich nun bis zu 10.000.000 Photonen emittiert. Leider ist das Ergebnis nicht mal annähernd akkurat. Bei 1.000.000 Photonen hatte ich in Maya einen Speicherverbrauch von etwa 600 MB, bei 10.000.000 ging er sogar hoch bis auf 1,1 GB. Weiter erhöhen wäre also äußerst unvorteilhaft.

Auch unter Verwendung von Importons habe ich keine brauchbaren Qualitäten erzielt. Der Speicherverbrauch blieb gering, aber das wars auch schon.

Wenn ich über die IBL Licht emittierte, habe ich zwar eine halbwegs brauchbare Ausgangsposition für eine Ausleuchtung, aber Final Gather brauch Ewigkeiten. Und das bei einer Accuracy von 100 und einer Point Density von gerade mal 0.025! Die Renderzeit lag dabei schon bei über einer halben Stunde. (99% dieser gingen für FG drauf)

Und bei Portal Lights habe ich leider das Problem, dass sich dadurch kein direktes Sonnenlicht abezeichnet.

Bisher spricht also auch weiterhin alles für die neuen Irradiance Particles in Sachen diffuser Beleuchtung.
Hellstorm ist offline  
"Es gibt zwei Dinge, die unendlich sind. Das Universum und die menschliche Dummheit. Beim Universum bin ich mir noch nicht ganz sicher." [Albert Einstein]
Alt 30.04.2009   #5

Junior

 
Benutzerbild von Calegolas
 
Mitglied seit: 30.08.2008
Beiträge: 374
AW: FG/GI vs. Irradiance Particles

Hi, ich wollte nur mal danke sagen. Ich kann dir zwar nicht vollständig folgen, aber es tut echt weh, wenn man sieht, dass jemand einen monolog führt und man nichts sinvolles beisteuern kann.

Ich les mir das bei zeiten nochmal genauer durch. Es ist deshalb keineswegs umsonst geposted, ok?

cheers
Calegolas ist offline  
Alt 30.04.2009   #6

void main(){fork(main())}

 
Benutzerbild von Hellstorm
 
Mitglied seit: 31.03.2008
Beiträge: 835
Hellstorm eine Nachricht über ICQ schicken Hellstorm eine Nachricht über MSN schicken Hellstorm eine Nachricht über Yahoo! schicken
AW: FG/GI vs. Irradiance Particles

Och das freut mich, dass sich mal jemand meldet

Keine Ahnung, ob hier im Moment wirklich jemand was beizusteuern hat, aber sieht auch grad noch nicht so danach aus. >150 views hat der Thread ja mittlerweile, aber Irradiance Particles sind im moment ja auch noch nicht so verbreitet, als dass schon viele damit arbeiten.

Vielleicht finden sich ja noch beim abschließenden Resümee nen paar ein. Meine Tests laufen ja grad fleißig weiter und nen paar Ergebnisse kommen hier vorher wohl noch rein

Edit: Btw... ich weiß, meine Beiträge haben im Moment auch mehr ne Art Tagebuch-Charakter, aber am Ende hoffe ich mal, dass ich auch nen paar gehaltvolle Tipps geben kann, mit denen jeder was anfangen kann.
Hellstorm ist offline  
"Es gibt zwei Dinge, die unendlich sind. Das Universum und die menschliche Dummheit. Beim Universum bin ich mir noch nicht ganz sicher." [Albert Einstein]
Alt 07.05.2009   #7

void main(){fork(main())}

 
Benutzerbild von Hellstorm
 
Mitglied seit: 31.03.2008
Beiträge: 835
Hellstorm eine Nachricht über ICQ schicken Hellstorm eine Nachricht über MSN schicken Hellstorm eine Nachricht über Yahoo! schicken
AW: FG/GI vs. Irradiance Particles

So. Hier noch mal ein Test mit einer komplexeren Szene.
Ich hab dafür meine alte Szene "Das Amt" genommen.
Sie hat den Vorteil, dass sie aus insgesamt etwa 1,7 Mio. Polygonen besteht und komplett durch die Fenster beleuchtet wird.

Anfänglich hatte ich mit Irradiance Particles da einige Probleme.
Zu wenig Importons (<20000) führten zu einem unsauberen Ergebnis. Das Problem war nur, dass der Speicherverbrauch bei mehr als 20.000 Importons mit 4 Durchläufen über 3 GB RAM verschluckte. (und mein mental ray limit ist auf 3096 MB gesetzt). mr schmierte also ab.
Problem war auch, dass ich die Fensterschieben entfernen musste, da IP sie nicht durchdrang.
Aber ich konnte auch meine ganzen Portal Lights entfernen. Was einen extremen Schub beim Render gab.

Die Ursache davon war die Acceleration. Diese war auf "Large BSP" gestellt.
Mit "BSP2" sah die Sache schon besser aus, aber der Speicherverbrauch war immernoch immens. Mit dem normalen BSP lief dann alles komischerweise am besten, obwohl es für Szenen mit viel Geometrie nicht so gedacht ist.

Leider war der Speicherverbrauch dann aber immernoch zu groß.
Ich hab die Anzahl der Durchläufe für die Importon Emission auf 2 reduziert. Das Ergebnis war ok. Aber immernoch etwas zu wenig Importons.

Dann kam mir die rettende Idee um meinen Rechner nicht wieder zu überlasten: Ich reduizerte die Anzahl der Render Threads auf 1, sodass nur Speicher für einen Thread benötigt wurde.
Dann lief alles wie geschmiert.

50.000 Importons, 2 Durchläufe.
512 IP Rays, 4 Indirect Passes
4000 Environment Rays
Dauer für die Berechnung etwa 3-4 Stunden.

Danach "Rebuild" ausschalten und somit die IP Map festsetzen. Und nun halt wieder die normale Anzahl an Render Threads. Und etwas mehr als ne Stunde später war dann das Bild gerendert.

Im Vergleich dazu die "alte" Szene:
Hellstorm Gallery - Viewing: AmtRevisited.jpg

Die Renderdauer lag bei etwa 16 Stunden. Mit Final Gather auf Freeze und Rebuild der Photon Map ausgeschaltet.

Man sieht eindeutig eine exzellente Genauigkeit der Irradiance Particles. Diese sind zwar auch recht Speicherhungrig, aber mit günstigen Einstellungen kriegt man dieses in den Griff und kann die Renderzeit um ein vielfaches verringern. Ich werde bei Gelegenheit noch einen vollen Render-Durchlauf machen in 1600x1200 und Adaptives Anti-Aliasing auf 3.

Bild anklicken für Originalgröße
Bild anklicken für Originalgröße
FG/GI vs. Irradiance Particles-ip07_3.jpg  
Hellstorm ist offline  
"Es gibt zwei Dinge, die unendlich sind. Das Universum und die menschliche Dummheit. Beim Universum bin ich mir noch nicht ganz sicher." [Albert Einstein]
Themen-Tools Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche