Handling von großen mi-Archiven

Mental ray® als Standalone Renderer.

Handling von großen mi-Archiven

Postby jb_alvarado on Fri Jun 05, 2009 13:36 pm

Hallo Leute,
mich interessieren mal ein paar Dinge zum Standalone- Rendering. Da der XSI Batchrenderer doch manchmal abstürzt, wäre das ja eine nette Alternative. Nur habe ich da schon zu Anfang ein kleine Problem. Meine Szene hat ca. 330 Objekte, ~5mil Polys und doch teilweise sehr aufwändige shadertrees, wegen Channels/Passrendering. Rendern mag ich ca. 375 Frames. Mehrere Frames in ein mi-Archiv zu exportieren scheint mir fast unmöglich, also lasse ich für jedes Frame ein Archiv anlegen, hat im Schnitt 5gb.
So,... tolle Sache, komme ich bei 375 Frames auf ca. 1875 GB :D, ist ja nicht so dass meine Outputfiles sicher auch noch mal pro Frame 40mb brauchen... Also kann das so ja schon mal nicht wirklich gut gehen, so große Platten hat ja niemand. Gedanke ist also die mi-Archive in einen komprimierten Ordner zu exportieren, macht mir aus 5gb immerhin nur noch 1gb. Ist ja immer noch kaum akzeptable. Zumal das exportieren schon ziemlich lange dauert, und das komprimieren sicher auch wieder etwas Zeit in Anspruch nimmt.
Also wie machen das Studios?
Dann dachte ich ja immer, ein großer Vorteil wäre der, dass man die Files noch mal hacken könnte und hier noch mal Optimierungen vornimmt, oder shader einbindet. Nur einmal schafft das wohl kein Editor, und wenn jedes Frame ein eigenes Archiv hat, wäre das ja auch etwas mühsam :) . Was auch nicht gerade erfreulich ist, ist die Tatsache dass das einlesen der Standalone wieder sehr viel Zeit in Anspruch nimmt.
Also worin besteht genau der Vorteil in großen Produktionen?

Und noch eine XSI spezifische Frage: hier werden die Texturen ja als Clips vergeben. Möchte ich jetzt ein mi-File rendern, findet er die Texturen nicht, weil die keine Extensions haben und nix, -texture_path bringt in dem Fall auch nichts.
Was müsste ich denn nun tun, damit er die Texturen wieder findet?

Mein Batchfile schaut momentan so aus:

Code: Select all
call C:\Softimage\Softimage_7.5_x64\Application\bin\setenv.bat
C:\Softimage\Softimage_7.5_x64\Application\bin\ray3 -v 5 -xcolor r -fb_virtual off -texture_path "D:\MasterThesis\3D\Texturen" -finalgather_display 1 -imgpipe 1 "%1"|imf_disp -
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Re: Handling von großen mi-Archiven

Postby haggi on Sat Jun 06, 2009 0:26 am

Der Vorteil von ascii Files liegt in der Tat darin, dass man im Nachhinein darin rumhacken kann.
Jedoch wird vermutlich niemand, der mit dem Standalone arbeitet, direkt die Szene 1:1 rendern so wie du es versuchst, das ist höchst ineffizient, ein viel zu grosser Overhead wie du ja auch schon festgestellt hast.

Im Allgemeinen besteht einer der grössten Vorteile darin, dass man mit archiven arbeiten kann.
Du exportierst die statischen Teile deiner Szene als mi Archiv oder in renderman als rib File und ersetzt die durch Platzhalter, die erst zur Renderzeit geladen werden.

In mentalray wären das Assemblies. Dadurch wird deine Arbeitsszene recht klein, beim Rendering ist aber alles vorhanden. Als Alternative zu den Assemblies kann man in mentalray auch includes benutzen oder file commandos.

Was ich mich allerdings frage ist, weshalb deine mi Files so gross werden. Deformieren sich denn alle deine Objekte? Wenn sie das nicht tun, dann sollte der mi - Export in erster Linie nur das erste Frame komplett exportieren, alle weiteren Frames würden dann über incrementelle Updates gemacht.

Wenn du z.B. einen Kameraflug durch eine komplexe Stadt hast, dann wird die gesamte Stadt für das erste Frame exportiert, danach werden nur noch die Kameraänderungen übermittelt. Das funktionniert natürlich nur wenn man mehrere Frames in ein File schreibt. Dann hätte bei dir das das mi File für das erste Frame 5gb, würde danach aber pro Frame nur noch wenige bytes anwachsen.

Hast du dann auch noch deine Stadt als mi exportiert und arbeitest mit einem Platzhalter, dann wird alles innerhalb weniger Sekunden exportiert und du hast zum einem dein Stadtarchiv von 5gb und einmal dein renderarchiv, welches dann vermutlich gerade mal ein oder zwei mb gross ist.

Deformiert sich jedoch deine Stadt Frame by Frame, dann hast du schlechte Karten. Da würde ich schlicht und ergreifend versuchen übers normale batchrendering kleine Abschnitte von jeweils 5 oder 10 Frames zu rendern.
haggi
Admin
 
Posts: 752
Joined: Wed Jan 10, 2007 0:56 am

Re: Handling von großen mi-Archiven

Postby jb_alvarado on Sat Jun 06, 2009 10:45 am

Hallo Haggi,
danke für deine ausführliche Antwort! Muss gestehen, dass ich gleich von Anfang an in einzelne Archive pro Frame exportiert habe, und sehr wahrscheinlich lag es daran, dass alle so groß waren. Hätte ich eigentlich wissen müssen, dass immer nur das erste Archiv so groß ist :oops: ... An Platzhalten und ähnlich habe ich auch nicht mehr gedacht, ist ja eigentlich schon sehr interessant das ganze, vielleicht schaue ich mir es doch noch mal näher an.

Grüße

jb_
User avatar
jb_alvarado
Moderator
 
Posts: 2021
Joined: Sun Nov 12, 2006 20:16 pm
Location: Dornbirn

Return to Mental Ray® Standalone

Who is online

Users browsing this forum: No registered users and 1 guest