Wie die meisten Webseiten nutzen wir Cookies. Nähere Informationen dazu, wie wir mit diesen Cookies umgehen, können Sie in unseren Datenschutzbestimmungen lesen.   Einverstanden
 
 

3D Forum > Post Production Plugin für Maya - Mental Ray - (DOF)

Post Production Plugin für Maya - Mental Ray - (DOF)

12.12.2012 01:19
 
winnibanMi. 12 Dez. 2012, 01:19 Uhr
Liebe Community,

ich grüße Euch alle recht herzlich.
Mein Name ist Peter Salziger und ich schreibe gerade meine Masterarbeit an der Technischen Hochschule Mittelhessen zu dem Thema "Integration von Post Production in Maya Mental Ray".

Die wissenschaftliche Frage, mit welcher ich mich zurzeit beschäftige, handelt davon, ob man Post Production mit der 3D Production vereinen kann.

Also kurz gesagt:
- Kann man z.B. Adobe After Effects mit Autodesk Maya vereinen?
- Macht dies Sinn?
- Kann man mit diesem Konzept Zeit sparen?
- In welchen Anwendungsfällen erhält man Vorteile?

Um diese Frage beantworten zu können, habe ich ein Plugin (Prototyp) für Maya Mental Ray entwickelt, welches eine kleine After Effects ähnliche Umgebung in Maya bereit stellt.
Man kann mit diesem Plugin 2D-Filter an den Renderprozess anhängen und das Renderergebnis direkt im Render View bearbeiten (so als ob man sich in After Effects oder z.B. Photoshop befinden würde).

Implementiert habe ich zuerst einmal zwei Color Correction Filter und einen Depth of Field Filter. Alle drei Filter arbeiten auf 2D Basis und sind sehr schnell.

Die vorgenommenen Optimierungen lassen sich zudem direkt in den Renderprozess(auch Batch-Rendering) integrieren.
Das bedeutet ganz abstrakt gehen: Im Grunde genommen bräuchte man keine Post Production Software mehr.

Videos sagen mehr als Worte, deshalb habe ich das ganze einmal ausführlich mit einem Screencapturing aufgenommen und erläutere das Thema, während ich direkt mit dem Plugin arbeite.

http://www.youtube.com/watch?v=zhaZsgGWVtM (circa 15 Minuten auf Youtube, wer das Plugin direkt in Aktion sehen möchte, ohne theoretische Diskussion zu Beginn, schaltet am besten sofort bei Minute 5 ein)


Natürlich möchte ich Euch meine Entwicklung nicht vorenthalten.

Wer das ganze selber einmal ausprobieren oder nutzen möchte kann sich das Plugin hier herunterladen.
http://artization.de/

Zudem befindet sich dort ein weiterer Youtube Link, in welchem ich die Installation beschreibe.

Aber Achtung: Das Plugin habe ich im Moment ausschließlich für Maya 2012 in der 64 Bit Version (Windows) entwickelt. Mit anderen Konstellationen wird es leider nicht funktionieren.

Wieso schreibe ich das hier und wie könnt Ihr mich unterstützen?

In meiner Masterarbeit muss ich meine Thesen versuchen zu beweisen bzw. meine Entwicklung zu evaluieren.

Dafür habe ich einen Fragebogen erstellt und ich würde mich sehr freuen, wenn die Interessierten von euch, diesen ausfüllen würden.

Ich denke das Ausfüllen dieses Bogens dauert nicht viel länger als 5 Minuten.

Er ist hier zu finden:

https://docs.google.com/spreadsheet/viewform?formkey=dGczT2pWNDNsOGZLZktnSThRSkVfN3c6MA#gid=0

Ich hoffe durch diesen Fragebogen neue Erkenntnisse zu gewinnen und dann festzustellen, ob es sich lohnt an dieser Idee weiterzuentwickeln.


Ich danke euch jetzt schon einmal für Euer Interesse an meiner Entwicklung.

Grüße

Peter Salziger
 
GuyGoodMi. 12 Dez. 2012, 02:23 Uhr
Ich habe mir das Video angeschaut. Was mich stört war bei 11:50 min. Da hast du vorher gemeint, dass der Post-Effect direkt aufs Rendering angewandt wird. Das klang für mich so, als könntest du danachdie eingestellten Effekte löschen/deaktivieren und das Bilde würde trotzdem dann so berechnet werden bzw danach so bearbeitet werden. Aber das wurde es ja nicht. Mental Ray hat nochmal genau das gleiche Bild erzeugt und dann hat sich dein Plugn wieder eingeschaltet und als du den einen Filter gelöscht hast, war auch der Effekt wieder weg. Da frage ich mich, was das bringt, wenn du das doppelt renderst. Das hast du einfach nicht sinnvoll dargestellt in dem Video.

Ansonsten kann ich dir nicht wirklich helfen, da ich recht wenig mit Post Production zu tun habe und auch nicht aus der Industrie bin.
 
winnibanMi. 12 Dez. 2012, 04:28 Uhr
Hi, danke für deine Rückmeldung und auch für die Zeit, die du Dir genommen hast.

Möglicherweise habe ich mich da etwas unglücklich ausgedrückt.

Wenn man 2D Effekte anwendet, werden diese in den Renderprozess integriert. Ich könnte auch das Plugin danach schließen, erneut Rendern und die Color Correction wäre wieder angewendet worden.

Wenn ich jetzt einen Filter wieder lösche, bedeutet dies ja, dass ich ihn nicht mehr haben möchte. Folglich soll dies auch nicht mehr bei einem erneuten Rendering integriert werden.

Wenn man in After Effects oder Photoshop Filter löscht, sind diese auch nicht mehr im finalen Bild vorhanden.

In dem Video habe ich lediglich erneut gerendert, um "zu beweisen", dass Mental Ray diese Post Filter zusätzlich in sein Rendering aufnimmt. Ansonten könnte man auf den Gedanken kommen, dass ich lediglich den Renderview "manipuliert" habe. Dass Mental Ray die Algorithmen abarbeitet ist wichtig, um zu sehen, dass diese Filter dann auch beim Batch-Rendern angewandt werden.

Oder reden wir gerade an einander vorbei?

Es ist auch schon spät smile

Grüße
Peter

 
AngborMi. 12 Dez. 2012, 10:17 Uhr
Tschuldige wenn ich dumm frage, aber du willst destruktiv über das gerenderte Material mit PlugIn drüber gehen? Das heißt wenn ich den Renderoutput dann doch noch ohne möchte muss ich nochmal neu rendern?
 
GuyGoodMi. 12 Dez. 2012, 13:25 Uhr
Hey Peter,

Nein wir reden nicht aneinander vorbei und du hast mich genau so verstanden. Das Ding ist folgendes:

In deinem Youtube video behauptest du ab 11:50 min, dass es direkt in den renderingprozess eingreift, aber das tut es einfach nicht. Wozu auch, aber es geht mir darum. Du sagst, dass es noch während Mental Ray rendert angewendet wird, aber das stimmt auch nicht. Mental Ray ist fertig, und dann setzt dein Plugin an. Und es ist auch nicht im Rendering fest integriert, sprich dann wäre es ja auch nicht rückgängig zu machen.
Das sieht man ja auch, als du nach dem erneuten Rendern wieder den Farbkorrekturfilter löschst, dann ist der Effekt ja auch weg und man sieht, dass Mental Ray exakt so berechnet hat, wie es vorher auch berechnet wurde.
Das spielt ja auch keine Rolle, denn dein Plugin kann ja trotzdem Batch-Renderingfähig sein und eben die entsprechenden Anpassungen auf jeden Frame anwenden, es geht mir nur um die Tatsache, dass du nicht irgendwie in den MentalRay Prozess an sich eingreifst sondern du arbeitest einfach mit der Ausgabe von MR.
Ich könnte auch das Plugin danach schließen, erneut Rendern und die Color Correction wäre wieder angewendet worden.

Aha? Weil dann immernoch im Hintergrund der Filter aktiviert ist? Dann ist es aber quasi nicht geschlossen, von der Software-Seite her betrachtet?
Es geht mir einfach darum, dass es leicht verwirrend ist. Wenn für mich etwas "integriert" ist, dann beudetet das für mich, wenn ich wieder rendern drücke, dann kann ich die Filter dann löschen!!! und das Rendering sieht trotzdem so aus. In deinem Video wirkt es jedenfalls so, als wenn das Bild nochmal exakt gleich gerendert wurde (wurde es ja auch) nur dass direkt dann deine Filter daran angreifen.
 
winnibanMi. 12 Dez. 2012, 13:26 Uhr
@angbor:

Hi, natürlich nicht!

Es wird nie destruktiv gearbeitet. Man muss einzig und alleine >einmal< Rendern. Man kann dann danach so lange man möchte Filter hinzufügen und entfernen, ohne zwischendurch einmal erneut rendern zu müssen.


Einziger Grund rendern zu müssen: Man verändert Elemente in der 3D Szene (Objekte bewegen sich, Kamera bewegt sich, etc).

Grüße

Peter
 
winnibanMi. 12 Dez. 2012, 13:48 Uhr
Danke für deine Ausführung GuyGood,

jetzt verstehe ich, worum sich unsere Kernfrage dreht.

Ich kann Dir kurz eine nähere Information zur Technik und zu Mental Ray geben.

Wenn wir von "Integration in den Renderingprozess" sprechen, verstehen wir darunter zwei verschiedene Dinge.

Ersteinmal zu Mental Ray: Mental Ray bestitzt ein verstecktes, fast kaum dokumentiertes Feature:
Die sogenannten Output Shader. Wenn das 3D-Rendering abgeschlossen ist, kann man auf das ausgegebene Bild zusätzlich 2D-Filter anwenden. Dieser Verarbeitungsschritt ist in Mental Ray integriert. Diesen habe ich nicht "erfunden."

Das bedeutet: Ein Rendering in Mental Ray besteht einmal aus einem 3D Rendering und aus einem 2D-Rendering.

Ich nehme an, dass Du unter "Rendering" alleinig das 3D Rendering verstanden hast.

Meine Entwicklung besteht aus zwei Komponenten. Ich habe einmal drei Output Shader programmiert: Color Blance / HueSaturation und den DOF Filter.

Der weitaus schwierigere Teil war der, Änderungen an den Filtern direkt im Renderview sichtbar zu machen.
Das ist ja gerade der Kern von Post Production. Man manipuliert das Bild auf 2D-Basis ohne ständig erneut langwierig rendern zu müssen.

Aha? Weil dann immernoch im Hintergrund der Filter aktiviert ist?

Genau, jedoch ist dies ein Mental Ray Filter und hat nichts mit meinem MayaPlugin bzw. der GUI zu tun.

wenn ich wieder rendern drücke, dann kann ich die Filter dann löschen!!! und das Rendering sieht trotzdem so aus.
Den Sinn kann ich hier nicht nachvollziehen. Wenn nach dem Löschen von Color Correction Filtern, die Color Correction immer noch angwendet wird, wie hätte ich dann jemals die Chance die Korrekturen nachträglich zu ändern? Damit hätte ich eine Einstellung vorgenommen, welche Tief im Renderprozess verschwindet und nie wieder anfassbar wäre.

In deinem Video wirkt es jedenfalls so, als wenn das Bild nochmal exakt gleich gerendert wurde (wurde es ja auch) nur dass direkt dann deine Filter daran angreifen.

Exakt, der erste Part im Renderprozess, das 3D Rendering, ist gleich. Direkt danach wendet Mental Ray seine Output Shader Technologie an. Diese beiden Parts zusammengefasst ist das vollständige Rendering. 2D-Rendering ist auch Rendering.
Muss es ja auch. Würde der DOF-Effekt im 3D-Rendering berechnet werden, dann würde es wieder unheimliche lange dauern zu rendern. Nachträglich auf 2D-Basis geht alles viel schneller.


Um es noch einmal zusammenzufassen:
Du sagst, dass es noch während Mental Ray rendert angewendet wird, aber das stimmt auch nicht. Mental Ray ist fertig, und dann setzt dein Plugin an.


Genau das ist nicht der Fall. Die Anwendung der Filter findet schließlich doch in der Mental Ray Rendering Verarbeitungskette statt. Es gibt kein Plugin von mir, welches sich heimlich in den Renderprozess "herein trickst..."
 
GuyGoodMi. 12 Dez. 2012, 14:16 Uhr
Hey, die Output Shader kenne ich
Und ja, ich gehe bei "Rendering" nur vom 3D-Prozess aus. Und damit passen dann unsere beiden Definitionen. Aber du hast schon recht, dass es in MR dann integriert ist, wenn du dich auf die Output Shader stützt, inwiefern das "integriert" ist. Aber gut, mehr wollte ich gar nicht wissen smile bzw darum drehte sich mein Punkt.
Danke für die Erläuterung.
Wie gesagt, mit deiner Umfrage kann ich dir nicht helfen, da ich nicht in der Industrie bin und auch seltenst mal Postproduction vornehme.
 
winnibanMi. 12 Dez. 2012, 16:08 Uhr
Dann ist ja super, dass wir das geklärt haben. Vermutlich sollte ich das in dem Video etwas deutlicher ausführen.

In habe drei Fragebögen formuliert. Einen für die Industrie, einen für Studierende, welche sich gerade in einem Maya Kurs befinden. Und einmal für private Hobby Entwickler. Und genau diesen habe ich hier verlinkt.
Firmen schreibe ich separat an.

Also im Grunde würde mich deine Meinung im Fragebogen doch schon sehr interessieren. Du hast mir ja gezeigt, dass Du dich in diesem Themenbereich doch sehr gut auskennst. Und wenn bei heraus kommt, dass du Post Production selber nicht so oft verwendest, ist das auch eine sehr nützliche Info für meine kleine Statistik.

Weil gerade in dem Moment, wo du selber Post Production im klassischen Sinne nicht oft verwendest, wäre es meiner Meinung nach denkbar, dass du mein Plugin theoretisch doch nutzen könntest ?

Grüße

Peter


 
winnibanSo. 20 Jan. 2013, 14:34 Uhr
Grüßt euch,

meine Entwicklung hat mittlerweile zwei Updates durchlaufen, welche ich euch nicht vorenthalten möchte.

1. Edge Repeat (Dof):

Vermutlich haben die einen oder anderen schon bemerkt, dass bei meiner DOF Lösung ein Schwarzverlauf an den Rändern entsteht. Dies liegt daran, dass die Pixel am Rand keine Informationen ihrer Nachbarpixel außerhalb des Bildes erhalten. After Effects löst dies mit edge repeat. Das Bild wird insgeheim vergrößert, durch Kantenverdopplung, damit auch die Randpixel ihre volle Intensität erhalten. Diese Technik ist nun implementiert.

2. Autofocus:

Bereits einige haben den Wunsch geäußert, die Fokusebene durch das Camera Aim bestimmen zu können. So muss man nun auch keine Entfernungseinschätzungen mehr von Hand manuell eingeben.

Man kann nun im Viewport die Fokusebene intiutiv verschieben und erhält sofortige Rückmeldung im Renderview.

http://www.youtube.com/watch?v=G7W3pSNL_t0 (2min Demo)

Ich möchte hier auch noch einmal die Möglichkeit nutzen, in den letzten Zügen meiner Masterarbeit für meine kleine Umfrage zu werben:

Wer im kommerziellen Bereich arbeitet, sollte sich diese Version anschauen:
https://docs.google.com/spreadsheet/viewform?formkey=dHNsZkhEMXlLVDBzem5Sc1hHaDhVekE6MA#gid=0

Und wer im Hobbybereich tätig ist diese:
https://docs.google.com/spreadsheet/viewform?formkey=dGczT2pWNDNsOGZLZktnSThRSkVfN3c6MA#gid=0


Besten Dank
Grüße
Peter Salziger
 
 

 


 
 
© 3D-Ring - deutsche 3D Software Community, Archiv 2001 - 2006