Eine Render-Management-Software verteilt die Frames einer zu rendernden Sequenz auf verschiedene Rechner. Soll z.B. Frame 1 bis 100 einer Maya-Szene gerechnet werden, so kümmert sich die Render-Management-Software darum, dass Rechner1 Frame 1-5 Rendert und Rechner2 rendert Frame 6-10 usw. Je mehr Rechner zur Verfügung stehen, desto schneller ist die Sequenz fertig.
Was ein Render-Manager nicht kann (bzw. wofür er nicht gedacht ist), ist ein einzelnes Bild von verschiedenen Rechnern berechnen zu lassen.
Die momentan an der HdM eingesetzte Render-Management-Software ist RenderPal.
Die zu rendernden Maya-Szenen und alle Abhängigkeiten müssen auf einem der Netz-Laufwerke (cg1, cg2, cg3 bzw. vfx-nas) vorliegen. Mit „Abhängigkeiten“ sind Texturen, Caches, Referenzierte Files, OCIO-Configs usw. gemeint. Es muss auf alle Abhängigkeiten und auf alle im Render-Manager eingestellten Schreib-Pfade Zugriff bestehen (–> Nur Netzlaufwerke kommen in Frage und Benutzerrechte müssen stimmen! OCIO ist derzeit auf allen Rechnern auf C:\OCIO\aces_1.1 verfügbar.)
Referenzen, die zu Hause angelegt wurden, dürfen deshalb auch im „Unresolved Path“ keinen Absoluten Pfad enthalten, sondern müssen euer Env-Var-Prefix tragen (z.B. „$MY_PROJECT_PATH/restlicher/pfad/zu/eurer/datei.ma“). Sollte nicht von Beginn an mit Umgebungsvariablen für das Projekt gearbeitet worden sein, so müssen die falschen lokalen Pfade vor dem Rendern auf die korrekten Netzlaufwerk-Pfade geändert werden! Im einfachsten Falle geht das beim Arbeiten mit ASCII-basierten Dateiformaten (z.B. MayaASCII) mit einem Texteditor! (z.B. VSCodiums Funktion „Search and Replace in Files“)
Alle Textur und Cache-Pfade müssen relativ zum Maya-Projekt angelegt sein(z.B. in einem File-Node „textures/unterordnerXY/tolle_textur.png“ ←- man beachte den relativen Pfad, den man daran erkennt, dass er nicht mit einem Schrägstrich beginnt.)
Auf den Rechnern, auf denen gerendert werden soll, muss natürlich sämtliche Rendersoftware installiert sein, mit der ihr arbeiten wollt. Vorinstalliert ist immer Maya/Arnold und Nuke. Solltet ihr selbst einen Renderer organisiert haben (Redshift/VRay), so müsst ihr diesen auf den gewünschten Rechnern installieren und ggf. einen Renderpool dafür anlegen (fragt mich!).
Auf den Rechnern, auf denen gerendert werden soll, muss der RenderPal Client laufen. An der HdM läuft dieser auf den Rechnern in Raum 042 und 043 als Dienst wenn kein User angemeldet ist. Sobald sich jemand am Rechner anmeldet wird der Client und alle laufenden Jobs gekillt!
Man kann sich auch auf einem Rechner einloggen und von Hand den RenderPal-Client starten. Dadurch gibt man seinen Rechner zum Rendern frei ohne sich abzumelden (für Testzwecke und Ausnahmesituationen manchmal eine gute Lösung).
Die ganz detaillierte Version findet ihr im RenderPal-Manual. Ein Blitz-Intro gibt es im Folgenden…
RenderPal V2 Remote Controller starten Server adress: ca-lic User name: render Password: render
In dieser Ansicht startet der Remote-Controller. In der Pool/Client-Sektion (grüner Bereich) könnt ihr mit Rechtsklick auf die Pools (im Bild z.B. der Pool „043“ mit dem Pfeilchen nach unten…) oder auf einzelne Clients diese „Connecten“ oder zu verschiedenen Jobs zuweisen/von Jobs abziehen…
Eigentlich sollten Clients in allen Pools automatisch „connecten“.
Nur Rechner, die „connected“ sind und auf „Idle“ stehen, sind zum Rendern verfügbar. „Disconnected“ kann verschiedenes bedeuten:
In der Job-Status-Sektion (blauer Bereich) seht ihr Job-Informationen zu bereits beendeten, gerade laufenden oder pausierten Jobs (im Bild noch leer…). Wenn dort Jobs gelistet sind, könnt ihr auch diese per Rechtsklick Verwalten (Neu starten, Pausieren, Löschen…)
Benutzt im Eigenen Interesse ein eindeutiges und immer gleiches Prefix für eure Jobs (So könnte ein sinnvoller Jobname aussehen „ca_megaproject_shot33_correct_light“)! Und nutzt zudem das Job-Coloring!
Kontrolliert nochmal, dass bei Settings der richtige Renderer eingestellt ist!
Lasst die Finger vom Priority-Regler und vom Parallel renderings count (in letzterem MUSS eine 1 drin stehen).
Bei Bedarf könnt ihr die „Chunk size“ (Frame splitting) ändern. Diese bestimmt wie viele Frames jeweils von einem Rechner übernommen werden. Fünf ist ein guter Startwert. Es gibt aber Szenarien, in denen andere Werte sinnvoll sind:
Vergesst nicht die Pools und Rechner auszuwählen, auf denen gerendert werden soll. Angehakte Rechner ohne den Haken am Pool werden nicht mitrechnen. Man kann über das Menü Remote Controller > Client Management eigene Pools anlegen, was ihr aber bitte nur in Absprache mit Peter oder Jochen macht!
Ihr könnt durch Bestätigen mit OK den Renderjob erzeugen. Wenn ihr nicht „Paused“ angeklickt habt, wird er auch sofort in die Pipeline geschickt!
Nun könnt ihr zurück auf das „Server“ Tab und sehen wie sich Euer Job so entwickelt. Wenn ihr z.B. vorher auf „Paused“ geklickt habt könnt ihr mit Rechtsklick auf euren Job in der Jobliste hier den Job starten.
Ihr könnt in den Einstellungen des Render sets einige Flags für's Rendern überschreiben (Image Width/Height, die zu rendernde Camera etc.). Was ihr da nicht einstellt wird korrekt aus dem Bezogen, was ihr in den Maya Render Settings eingestellt habt. Lediglich die Frame list müsst hier hier angeben!
Einen Tip für Maya-Szenen: Stellt in den Render Settings im Common-Tab bei Frame/Animation ext name.#.ext ein! Und wählt weiter unten unter „Renderable Camera“ die gewünschte Kamera aus bzw löscht alle aus der Liste, die ihr nicht versehentlich rendern wollt (Es wurden schon nächtelang teure Bilder durch falsche Kameras gerendert).
Frohes Rendern!