Mittwoch, 14. Oktober 2009

Was die 3D-Profis treiben: Der Animago

Der Animago AwardJedes Jahr aufs neue können sich die Profis der 3D-Gestaltung und der virtuellen Produktion in einem Schaukampf der besonderen Art beweisen. Erstrebtes Ziel ist eine nahezu unscheinbare Statue in Form von zwei Armen, die Bälle werfen: Der ANIMAGO-Award.
Die Kategorien sind ebenso vielseitig wie sie eingesandten Werke der Künstler: Vom innovativsten Spiele-Design über die intelligenteste Mobilanwendung bis zum besten Kurzfilm ist alles dabei.
Wer mal richtig neidisch werden möchte, kann sich einmal die eingesandten 3D-Bilder (sogenannte "Stills") anschauen - viele sind sehr dicht am Fotorealismus dran und einen erstaunten Blick wert.
Animago-Logo

Für das Publikum gab es die Möglichkeit, für die besten Produktionen aus dem Bereich "Werbeproduktion", "virtuelles Foto", "Mobil-Produktion" und "Kinofilme" abzustimmen. Auch wenn man nicht abstimmen wollte: Die Auswahl an ausgefeilten Werbespots und raffinierten 3D-Umsetzungen ist allemal einen Blick wert.
Animago: ZimmerAnimago: Spinne

Quellen:
Animago-Voting
Der Animago-Award

Samstag, 10. Oktober 2009

Jetzt wird es haarig: Cinema4D und das Hair-Modul

Früher oder später möchte man einen Menschen oder zumindest dessen Kopf modellieren. Dabei stellt sich die Frage: "Wie modelliere ich Haare?" Ähnliches dürfte einem bei der Gestaltung eines Bärenfells oder der Bekleidung eines Raben durch den Kopf gehen.
Sicherlich kann man mit Hilfe von Texturen und Materialeigenschaften wie "Relief" und "Displacement" eine ganze Menge bewirken - auch mit Extrudieren können "interessante" Effekte erzeugt werden - aber wirklich echt sieht es nicht aus. Davon abgesehen, dass den so erzeugen Haaren bei Bewegungen die Glaubwürdigkeit fehlt, da Texturen nun einmal an einem Körper haften. Haare können aber im Wind wehen, geschüttelt werden oder eine ganz neue Frisur verpasst bekommen.
Um diesen Ansprüchen gerecht zu werden, hat Maxon das Modul "Hair" entwickelt, welches sich nahtlos in Cinema 4D integriert. Dabei handelt es sich um eine Mischung aus einem komplexen Shader-Modell und erweiterten Dynamics-Elementen.
Um die Wirkungsweise grob zu demonstrieren, zeige ich hier in wenigen Schritten, wie man einen von diesen etwas speziell aussehenden Kunstrasenteppichen erstellt, die vor kurzem Mode geworden sind.
Zuerst wird in die Szene ein einfaches Würfelobjekt gezogen, dass die Form und Farbe eines Teppichs verpasst bekommt (es genügt ein Segment pro Dimension). Um die Szene etwas interessanter zu gestalten, füge ich noch eine Punktlichtquelle mit weichem Schatten und ein Bodenobjekt hinzu. Das Zwischenergebnis sieht wie folgt aus:
Eine Matte aus einem Würfel.
Nachdem man im Objektbrowser auf die Matte geklickt hat, wählt man nun im Menü "Hair"->"Hair erzeugen". Daraufhin wird ein neues Hair-Objekt erzeugt, das auf das Objekt "Matte" zeigt. Wie man in der Editoransicht erkennen kann, zeigen die Haare in alle Himmelsrichtungen. Da die Matte nur Gras auf der Oberseite besitzen soll, klickt man im Eigenschaftenbereich des Hair-Objekts auf den Punkt "Guides". Dort gibt es ein Untermenü "Wuchs", bei dem man die Richtung auf die Y-Achse einstellt.
Die Haare wachsen nun nur noch nach oben. Da die Matte noch etwas zu dünn bewachsen ist, muss die Anzahl der erzeugten Haare hochgesetzt werden. Für diese Matte habe ich im Punkt "Haare" die Anzahl auf 5000 festgelegt und mit Hilfe des Punkts "Füllhaare" 10000 weitere Haare erzeugt.

Einstellungen für mehr Haarwuchs.
Noch zeigen alle Haare gerade nach oben - das sieht nicht gerade natürlich aus. Im Menü wählt man über "Hair"->"Werkzeuge"->"Bürste" einen handlichen Haarmanipulator aus. Mit der Bürste streicht man nun ganz sanft über die Endpunkte der farblich hervor gehobenen Haare (Standardfarbe: blau). Die erzeugten Haare folgen nun etwas mehr dem Chaosprinzip. Dennoch sieht das Erscheinungsbild noch nicht wie Gras aus.
Haare im Editor

Dazu verändert man das Material "Haar Material" welches automatisch mit dem Hair-Objekt erzeugt wurde. Im Screenshot kann man erkennen, wie ich den Farbverlauf von "brünett" auf grün-dunkelgrün verändert habe. Um der Natur etwas näher zu kommen, kann man noch einen leichten Kräuseleffekt hinzu schalten (hier 50%) und eine Variation der Dicke in Höhe von 0,5 cm einstellen (immerhin handelt es sich ja um einen Kunstteppich).
Der Materialeditor für Haare.
Wenn man das Bild nun rendern lässt, bietet sich auf den ersten Blick schon ein recht brauchbares Ergebnis.
Noch wirft das Gras keinen Schatten.

Dennoch ist etwas an dem Bild "falsch": Die erzeugten Haare werfen keinen Schatten. Gleiches gilt für die Spiegelung (wenn eine in der Szene vorhanden wäre). Für Schatten und Spiegelungen von Hair-Objekten muss der Cache in den Rendervoreinstellungen aktiviert werden. Dort findet man den "Hair-Renderer" und den Punkt "Rendern", wo die Eigenschaft "Schatten werfen" aktiviert sein muss. Zusätzlich darf im Punkt "Schatten" der Typ des Schattens nicht mit dem Wert "Keiner" belegt sein.
Rendert man das so manipulierte Bild, erscheint die Rasenkunstmatte auch mit Schatten, der dem Bild deutlich mehr Glaubwürdigkeit verschafft:
Jetzt wirft das Gras Schatten.
In der Nahaufnahme erkennt man, wie das Hair-Objekt arbeitet. Wenn man wirklich extreme Nahaufnahmen von Rasen o. ä. benötigt, muss man an dieser Stelle natürlich die Anzahl der Haare erhöhen oder zumindest die Anzahl der verwendeten Segmente erhöhen, damit die Darstellung etwas weicher ist. Aber für dieses Mini-Tutorial genügt das Setting.
Das Gras in der Nahaufnahme.

Dienstag, 29. September 2009

Prozedurale Shader - Das Geheimnis von SLA & Co

Wenn man eine 3D-Szene plant und über mögliche Materialien nachdenkt, kann man ruhig schon evaluieren, wie aufwändig die Beschaffung der Materialien ist. Da Materialien meist realistisch wirken sollen, braucht man hochauflösende Texturen. Diese haben widerum den Nachteil, dass sie viel Speicher verbrauchen, was in längeren Renderzeiten resultiert - dies ist auch besonders ärgerlich, wenn man das selbe Material einmal für Hintergrundgrafiken braucht (niedrige Detailstufe genügt) und einmal für Nahaufnahmen benötigt (Perfektion lässt grüßen). Es gibt ein paar Tricks, wie man mit Hilfe von Unscharfmasken die Renderzeiten verkürzen kann, aber das ist mehr "Gefrickel" als eine ernstzunehmende Lösung.
Prozedurale Shader wie ehemals Bhodinut SLA (Smells Like Almonds) sollen hier Abhilfe schaffen. Dabei handelt es sich sich um Hilfsfunktionen, welche das Aussehen der Oberflächen berechnen. Dies hat den ungemeinen Vorteil, dass die damit erstellten Materialien ohne Qualitätsverlust in beide Richtungen skalierbar sind und sich der Rechenaufwand an der sichtbaren Detailtiefe festmacht.
Ein weiteres Bonbon sind die Shader-Trees, mit welchen die Texturen, Materialien und Shader beliebig miteinander verknüpft werden können - die daraus resultierenden Möglichkeiten sind mannigfaltig.

Die Stärken von prozeduralen Shadern kommen bei größeren Flächen besonders zum Tragen. Während Texturen schnell auffallen, da sie Wiederholungsmuster erzeugen, können in den SLA-Shadern Zufallszahlen in die Berechnungen eingestreut werden, so dass die erzeugten Materialien frei von wiederkehrenden Grafiken sind.

Zu Demonstrationszwecken habe ich einen einfachen Shader erstellt. Dieser erzeugt einen radialen Farbverflauf mit mehreren Übergängen.
Shader-Einstellungen in Cinema 4D XL
Anschließend wurde die Glanzeigenschaft noch mit spitzen Werten versehen und eine etwas diffuse Umgebung eingestellt. Das so erstellte Material habe ich in diesem Fall auf ein einfaches Kugelobjekt gezogen. Um ein korrektes Abbild eines Auges zu erschaffen müsste man selbstverständlich noch extra eine Linse mit dem zugehörigen Brechnungsindex erzeugen, doch dieses Beispiel soll ja nur die schlichte Einfachheit von Shadern demonstrieren.

Das fertige Auge.
Eine solche Augentextur kann man selbstverständlich auch mit PhotoShop oder ähnlichen 2D-Programmen erzeugen. Dies bringt jedoch die oben erwähnten Nachteile mit sich. Das so erstellte Auge kann in beliebiger Detailtiefe heran oder hinaus gezoomt werden. Dabei ist das Bild jeweils so scharf, wie es die virtuelle Kamera zulässt und die Rechenzeit ist einzig von der sichtbaren Detailtiefe abhängig.
Auch Zoomen erzeugt dank des Shaders keine Fraktale.

Bald folgen weitere Tutorials zu Shadern, Texturen und vielen weiteren Werkzeugen.

Donnerstag, 24. September 2009

Die ersten Bilder

Nach Filmen wie ToyStory und vielen anderen 3Dgestützten Videos musste ich es einfach selber ausprobieren. Die Erfahrung, mit einem Set von Werkzeugen virtuell Objekte zu erschaffen, die nicht nur für eine einzige Perspektive gedacht sind und sogar mit Leben gefüllt werden können, hat mich schlichtweg umgehauen.
Schnell wurde so ziemlich alles an Praxisbüchern gekauft, was die Produkte 3D Studio Max und Cinema 4D XL betraf, da diese weit verbreitet und bezahlbar waren. Viele (verzweifelte aber packende) Experimente später wurde ich selbstbewusster, suchte mir schwierigerere Objekte, wurde kritischer was die Erzeugnisse betrifft und ging an die "Öffentlichkeit" mit meinen Kreationen.
Wenn man mit der "realistischen" Modellierung beginnt, so wird einem empfohlen, zuerst mit Weltraumbildern anzufangen, da die Menschen dort im Allgemeinen die größten Probleme mit der Verifikation haben und das Bild mit einer deutlich höheren Wahrscheinlichkeit als "echt" einstufen. Da ich keine Lust auf Raumschiffe hatte (und mein Rechner zu wenig RAM für ein solch komplexes Objekt hatte), habe ich einfach ein Raumschiff von innen erstellt. Mit relativ einfachen Mitteln entstand so eine triste Brutkammer für Aliens.

Zum Glück gibt es im Internet viele Communities mit einigen brauchbaren Tutorials, die die ersten Hürden nehmen und Lust auf mehr machen. Aus einem Buchtutorial stammt die dargestellte Armbanduhr, die wegen ihrer winzigen Details und natürlich hauptsächlich wegen der schönen Struktur im Armband überzeugt.

Viele waren verwirrt, da die Bilder für Zeichnungen/Malereien zu detailliert und zu genau waren, für ein Foto wirkten sie jedoch zu surreal. Verwirrung erzeugt im allgemeinen Interesse und so versuchten auch weitere einen Schritt in diese Richtung. Bei den meisten blieb es bei genau diesem "Versuch", da 3D Objekte nicht so leicht zu erstellen sind wie bspw. ein Bild mit MS Paint.
Die erste "Auftragsarbeit" erledigte ich für ein Schülercafé, dass seine Speisekarte aufpeppen wollte. Ich modellierte also fleißig alle Speisen nach und erstellte eine bunte Speisekarte im Comic-Stil. Eines der dort typischen Gläser ist hier abgebildet.


Ich kann an dieser Stelle nur versichern, dass ich mich weiter entwickelt habe. Sobald meine externe Festplatte wieder funktioniert, werde ich weitere Bilder hochladen.