„Star Wars IV – Eine neue Hoffnung“

Transcription

„Star Wars IV – Eine neue Hoffnung“
Projekt-Dokumentation
3D Animation mit Maya
Titel:
„Star Wars IV – Eine neue Hoffnung“
In der LVA – Grafikprogrammierung
Prof. Dr. Werner Heinzel
Fh-Fulda
WS 04/05
von
177629 - Daniel Mack
Daniel Mack
WS 04/05
Grafik-Programmierung
Inhaltsverzeichnis
1. Einführung:.......................................................................................................................................3
2. Kurzbeschreibung:............................................................................................................................3
3. Storyboard:....................................................................................................................................... 3
4. Modellierung.................................................................................................................................... 4
4.1 Modellierung des X-Wings............................................................................................................ 4
4.1.1 Imageplanes................................................................................................................................. 4
4.1.2 Modellierung der Flügels.............................................................................................................4
4.1.3 Modellierung des Rumpfes..........................................................................................................5
4.1.4 Modellierung der Nase................................................................................................................ 5
4.1.5 Zusammenfügen der Hälften....................................................................................................... 6
4.2 Texturierung des X-Wings............................................................................................................. 6
4.2.1 Der Rumpf................................................................................................................................... 6
4.3 Modellierung eines Tie Fighters (des Anführers)...........................................................................8
4.4 Texturierung des Tie Fighters.......................................................................................................10
4.5 Modellierung der Planeten Yavin und des Mondes......................................................................11
4.6 Texturierung des Planeten und des Mondes................................................................................. 11
5. Erstellung der Szenen und Animationen........................................................................................ 12
5.1 Scene01c [Abb35]........................................................................................................................ 12
5.2 Scene01f....................................................................................................................................... 14
5.3 Scene01i[Abb41].......................................................................................................................... 15
5.4 Scene11_16[Abb43]..................................................................................................................... 16
6. Compositing / Rendering................................................................................................................17
7. Anwendungsdokumentation:.......................................................................................................... 23
8. Benötigte Arbeitszeiten
........................................................................................................... 24
9. FAZIT:............................................................................................................................................24
ANHANG:..........................................................................................................................................25
-2-
Daniel Mack
WS 04/05
Grafik-Programmierung
1. Einführung:
Dieses Projekt wurde im Rahmen der LVA – Grafik-Programmierung im WS 04 / 05 mit der 3D
Software MAYA von Alias Wavefront entwickelt.
Da ich dieses Projekt alleine durchgeführt habe und damit auch ein höherer Arbeitsaufwand
einherging kann ich leider nicht auf die Modellierung und Erstellung aller Objekte und Szenen
eingehen. Da diese aber alle auf dem gleichen Prinzip modelliert und aufgebaut sind beschränke ich
mich in dieser Ausarbeitung auf einige bestimmte und führe im Anhang dann alle erstellten Objekte
auf.
2. Kurzbeschreibung:
Story:
Das Imperium bedroht mit einer Raumstation (Todesstern) den Rebellenstützpunkt
auf dem Planeten Yavin zu zerstören. Der Todesstern befindet sich fast in Schusspositon.
Die Rebellenraumschiffe starten vom Planeten um den „Todesstern“ zu zerstören bevor dieser in
Schussposition ist. Es kommt zu einem Finale, in dem es den Rebellen gelingt
über die einzige Schwachstelle der Raumstation, diese in die Luft zu sprengen.
In dem vorliegenden Projekt wurden die hierfür erforderlichen Raumschiffe, Planeten, Objekte und
Locations modelliert, texturiert und diese dann in die entsprechenden Szenen importiert und
animiert.
Zur Modellierung und Animation wurde Alias Wavefront Maya verwendet.
Zur Erstellung und Bearbeitung der Texturen Adobe Photoshop.
Für die Spezialeffekt, Compositing, Schnitt und Vertonung wurde Adobe After Effects eingesetzt.
Im der folgenden Dokumentation sind alle aus dem Internet entnommenen Quellen mit [Link..]
angegeben. Die dazugehörenden Internetadressen befinden sich dann im Anhang. Bilder sind
ebenfalls mit [Abb..]gekennzeichnet.
3. Storyboard:
Zur Erstellung des Storyboards machte ich verschiedene Screenshots aus dem Film Star Wars –
Episode 4. Diese brachte ich in eine geeignete Reihenfolge.
Mit Hilfe des Storyboards konnte ich genau ermitteln welche Objekte ich benötigte und wie ich die
Szenen aufzubauen hatte.
Probleme:
Im Laufe des Projektes stellte sich heraus, das einige Szenen zu aufwendig gewesen wären, oder das
ich generell zu viele Szenen geplant hatte. Daraufhin entfielen einige Szenen aus dem Storyboard.
in der Animation.
-3-
Daniel Mack
WS 04/05
Grafik-Programmierung
4. Modellierung
4.1 Modellierung des X-Wings
Vor der eigentlich Modellierung begann die Sammlung des „Referenzmaterials“. Hierfür benutzte
ich die Bildersuchfunktion von Google, die mir zahlreiche gute Referenzbilder brachte.
4.1.1 Imageplanes
Als nächstes besorgte ich mir Blaupausen (sog. „Blueprints“) des Modells
von[LINK2].
Das Blueprint wird dann mit Hilfe von Photoshop in 3 Bilder zerlegt
(Vorderansicht, Draufsicht und Seitenansicht). Hierbei ist beim
Abspeichern der einzelnen Ansichten darauf zu achten, das die Bilder
jeweils die passenden Skalierungen haben, also
Höhe Draufsicht = Breite Seitenansicht, usw....).
Die Bilder werden dann als „Imageplanes“ in die entsprechenden
[Abb 1]
Ansichten gelegt.[Abb 1]
4.1.2 Modellierung der Flügels
Im Blueprint ist der Flügel hochgeklappt. Modelliert habe ich ihn aber
im „Urzustand“. Das gab zwar kleine Abweichungen von den Abmaßen,
störte aber nicht weiter.
In der Draufsicht wird 1 Cube erstellt und auf die Umrisse des
Flügels gezogen, dann werden mit Hilfe des CutFaces-Tools zusätzliche
Kanten eingefügt. Damit auch in der Höhe die entsprechenden Kanten
und Vertices an die richtige Stelle gezogen werden können.
[Abb2]
[Abb 2]
Als nächstes kam die Turbine, hierfür wurde ein Zylinder benutzt, der
am Kopf nach innen extrudiert und anschließend nochmal
Richtung aussen extrudiert wurde. 2 Cubes mittels (Boolean –> Union)
bildeten dann die Querstreben für den Lufteinlass.
[Abb3]
[Abb 3]
Die Turbine wurde bis auf den Auslass mit „Revolve“ erstellt.
Man zeichnet in der Seitenansicht das Profil der Turbine mit einer
Curve. Dann wendet man „Revolve“ um die entsprechende Achse
an.
Für den Auslass der Turbine wurde auch wieder ein Zylinder in Form
extrudiert. Für die „ausgefransten“ Ecken wurden die Faces am Ende
markiert und mit (Keep Faces Together = OFF) nach außen extrudiert
[Abb4]
-4-
[Abb 4]
Daniel Mack
WS 04/05
Grafik-Programmierung
Fehlt nur noch der Laser. Hierfür wurde wieder ein Zylinder benutzt
und mittels Extrude in die richtige Form gebracht. Die restlichen Details
wurden mit (Boolean -> Union) an den Laser angefügt.
[Abb5]
[Abb5]
4.1.3 Modellierung des Rumpfes
Der Rumpf wird nur zur Hälfte modelliert, da er anschließend über das
(MirrorGeometrie-Tool) gespiegelt wird. Das sichert eine absolute
Symmetrie des Objektes.
Zuerst wurde ein Cube erstellt und über die Ansichten in die
Grundform gezogen. Dann wurden die Flächen mit dem
(CutFaces – Tool) unterteilt und die Vertices an die grundsätzliche
Form des Rumpfes angepasst.[Abb6]
[Abb6]
Über Soften/Harden-Edges wurden alle Kanten „abgerundet“. Kanten die sichtbar sein sollten
wurden dann anschließend mit einem Wert von 0 wieder hervorgehoben. Das Tool vergleicht den
Winkel der Normals benachbarter Faces. Mit dem Wert gibt man an, ab welchem Winkel die Edges
„abgerundet“ werden sollen(Winkel die größer sind als der angegebene Wert rendern „Hard“ und
kleinere Winkel rendern „Soft“). Somit läßt sich auch mit relativ wenigen Polygonen der Anschein
sehr weicher, abgerundeter Oberflächen erzielen.
Für weitere Details wurden wieder einfache „Primitive“ verwendet, die
mittels Boolean (Union und Difference) in die entsprechenden Formen
gebracht wurden. .
[Abb7]
Als weitere Details wurde hinten am Rumpf mit einem „Cube“
der Einlass für die Flügel mit „Boolean –> Difference“ herausgearbeitet.
Ebenso an der Nase, die Torpedoschächte mit einem Zylinder.
Das Cockpit war zuerst fest mit dem Rumpf verbunden, da es
aber für spätere Zwecke evtl. animiert werden sollte, wurde es
vom Rumpf getrennt.
Dies geschah mit dem „Extract - Tool“, hierbei ist darauf zu achten,
dass „Keep Faces Together“ und die Option „Seperate Extracted Faces“
aktiviert sind. Anschließend wurde noch mit Extrude ein Pilotensitz
herausgearbeitet[Abb8]
[Abb7]
[Abb8]
4.1.4 Modellierung der Nase
Als Grundfläche diente ein Cube, mit „Cut Faces“ wurde dieser unterteilt.
Ein Zylinder und ein Cube wurde dazu benutzt die Form mittels
(Boolean->Difference) zu erhalten. Anschließend werden die Vertices
an das Profil in der Vorderansicht angepasst. Die Kanten werden wieder
mit „Soften/Harden-Edges“ „abgerundet“.[Abb9]
-5-
[Abb9]
Daniel Mack
WS 04/05
Grafik-Programmierung
4.1.5 Zusammenfügen der Hälften
Die fertigen Hälften des Rumpfes, der Details und der Nase werden
nun mittels „Mirror Geometrie-Tool“ an der X-Achse gespiegelt. Hierbei
ist darauf zu achten, dass alle Vertices, die später in der Mitte des
Objektes liegen genau einen x-Wert von 0 haben. Da es sonst zu einer
Lücke in der Geometrie kommt.
[Abb10]
Zum Schluss können noch überflüssige/doppelte Vertices entfernt werden. Hierzu benutzt man das
Merge Vertices Tool mit einer Einstellung von (Distance = 0.0001).
Der Flügel wird zuerst texturiert und später dann dupliziert.
4.2 Texturierung des X-Wings
Die Grundtexturen für den X-Wing sind aus dem Internet l[LINK2]von einem bereits erstellten
Modell, diese Texturen mussten aber noch auf mein Raumschiff angepasst werden. Hierfür erstellte
ich sog. UV-Maps für die Flügel, den Rumpf, die Nase, die Cockpitabdeckung, die Turbine, den
Laser und die Details.
4.2.1 Der Rumpf
Zuerst wird dem Rumpf ein Material, in diesem Fall ein Blinn zugewiesen.
Es standen nun 2 Möglichkeiten der Textur Projektion zur Auswahl, die
Cylindrical-Projektion und die planare Projektion. Ich probierte zuerst die
zylindrische , da es aber dabei schwer ist gerade Linien auf das Objekt zu
zeichnen habe ich mich dann für die planare entschieden. Man teilt sich sein
Objekte in Bereiche ein, ich habe es in Draufsicht, Seitenansicht rechts,
[Abb11]
Seitenansicht links, Ansicht von unten und von hinten eingeteilt. Man markiert die entsprechenden
Faces und macht eine planare Projektion in der entsprechenden Achse. Die ganzen Projektionen
richtet man dann im UV- Textur Editor aus. In diesem gibt es die Option Snapshot mit dieser
Funktion macht man eine Art Screenshot der Abwicklung.[Abb11]
Diese Abwicklung benutzt man dann in Photoshop, um seine Texturen darauf zu zeichnen.
Die aus dem Internet importierten Texturen[LINK 2]passte ich dann an meine UV-Map an.
Hierfür erstellte ich eine Colormap[Abb12] für die Farben. Aus dieser entfernte ich
die Farben und änderte ein bisschen den Kontrast und die Helligkeit, dies ergab die Specularitymap.
[Abb13] Die weißen Flächen legen hier fest wie viel Licht reflektiert werden soll.
[Abb12]
[Abb13]
-6-
Daniel Mack
WS 04/05
Grafik-Programmierung
Dem Rumpf-Blinn wird dann jeweils eine Image Node für
Color und Specularity zugewiesen und im UV-Linker mit
der entsprechenden UV-Map verlinkt[Abb14]
Probleme:
[Abb14]
Beim Rumpf gab es Probleme beim Erstellen der Bumpmap. Ich habe erst im nachhinein herausgefunden, das es notwendig ist, zumindest in einem Set alle Faces eines Objektes in einer
Projektion zu haben. Hierzu muss man einfach das gesamte Objekt auswählen und eine planare
Projektion in das Standard Maya (map1-Set) machen.(Vorausgesetzt man hat für sich ein neues Set
erstellt)
Mit dem selben Prinzip sind die Flügel[Abb18], die Turbine[Abb15], der Laser[Abb19], die Nase
[Abb17] und die Details[Abb16] texturiert.
[Abb18]
[Abb15]
[Abb19]
[Abb16]
Als Gesamtergebnis ergab sich dann folgendes:
[Abb20]
-7-
[Abb17]
Daniel Mack
WS 04/05
Grafik-Programmierung
Jetzt mussten nur noch die Flügel dupliziert und rotiert werden:
Hiebei war darauf zu achten, das der x -und y-Wert des Pivotpunktes genau auf 0 liegt. Der Vorteil die Flügel erst jetzt
zu duplizieren lag darin, dass die UV-Textur später nicht auf
die anderen Flügel übertragen werden muss, sondern diese jetzt
schon gleich mit dupliziert wurde.[Abb21]
[Abb21]
Nun wurden die Flügel noch richtig gruppiert,
damit sie später animiert werden können,
Es sollen die jeweils schräg gegenüberliegenden
Flügel miteinander zu rotieren sein.[Abb22]
[Abb22]
Für den Einsatz in Scene01c,Scene01d und Scene01f wurden zusätzlich noch Standfüsse modelliert
und texturiert.
Dies war die Texturierung des X-Wings.
4.3 Modellierung eines Tie Fighters (des Anführers)
[Abb23] Referenzbild aus dem Internet
Zuerst wurden wieder die Blaupausen als Imageplanes in den Hintergrund gelegt,
dann als Hilfe zur Modellierung einige Referenzbilder aus dem Internet gesucht.[Abb23]
Die Pilotenkanzel des Fighters übernahm ich, von dem vorher von mir
modellierten und im Anhang aufgeführten Tie Fighters[Abb63].da
diese fast identisch sind.
Hierfür löschte ich alle Polygone bis auf die Kanzel. Anschließend
füllte ich das so entstandene „Loch“ wieder mit dem „Fill Hole-Tool“
[Abb24]
[Abb24]
-8-
Daniel Mack
WS 04/05
Grafik-Programmierung
Danach wurde das Polygon, welches das Loch füllte mit dem „Split
Polygon-Tool“ so unterteilt, das es jeweils aus viereckigen Polygonen
besteht. Anschließend wurde die Fläche extrudiert, damit sie dem Profil
der Blaupause entsprach. Für die Details wurden wieder „Primitive“
verwendet, um aus dem „Arm“ entsprechende Details mit den BoolOperationen herauszuarbeiten.Für die Rohre wurde ein Zylinder
genommen,mehrfach extrudiert und rotiert und anschließend die Kanten
mittels Soften/Harden Edges „geglättet“.[Abb25]
[Abb25]
Für die Verbindung zwischen Flügel und Arm wird die äußerste
Fläche weiter nach außen extrudiert. Einige Zylinder und Cubes
werden wieder erzeugt, verformt und mit (Boolean ->Union) wieder
mit dem Aufnehmer verbunden um mehr Detailfülle zu erreichen.
[Abb26]
Für die Flügel habe ich einen Cube erstellt, ihn mittels der
Vorderansicht und der Draufsicht ans Profil angepasst und dann
mit dem „Split Polygon-Tool“ den Flügel unterteilt.
Die neuen Faces werden nun mit dem Rotate Tool dem Profil der
Vorlage angepasst. Um mehr Detailgrad zu erreichen wurden innen
und außen am Flügel wieder verschiedene Zylinder und Cubes erzeugt,
verformt und mit (Boolean-> Union) mit dem Flügel „verschmolzen“
[Abb27]
[Abb26]
[Abb27]
Für das Heck wurde ein Zylinder erstellt. Dieser wurde mit mehreren
Cubes per (Boolean->Difference) geviertelt. Das vordere Ende wurde
mit Extrude bis zum Arm des Fighters erweitert.
Der Kasten am Heck besteht wieder aus einem Cube. Für die Details
daran hab ich wieder einige „Primitive“ erzeugt mit Boolean-> Union
und Difference wurden dann die Details weiter herausgearbeitet.
[Abb28]
[Abb28]
Als nächstes musste nur noch die Pilotenkanzel und der Flügel des
Fighters mit dem Mirror Geometrie Tool gespiegelt werden. Hierbei
ist wieder darauf zu achten, das die Vertices direkt auf der Spiegelachse
liegen.
[Abb29]
[Abb29]
-9-
Daniel Mack
WS 04/05
Grafik-Programmierung
4.4 Texturierung des Tie Fighters
Die Pilotenkanzel mit Arm, die hintere Tragfläche und die Flügel bekamen ein Blinn. Dann wurden
die Faces markiert, die das Cockpitglas erhalten sollen und diesen dann ein Phong mit einer
geringen Transparenz von (0.058,0.058,0.058) zugewiesen. Die Faces des Rahmen wurden
ausgewählt und einem Blinn zugeordnet. Als letztes bekamen noch die Faces, die später die
Solarpanels enthalten sollen, einen Blinn zugewiesen.
Die einzigste Textur die ich für den Fighter benötigte waren die Solarpanels am Flügel.
Also erstellte ich zuerst die UV-Map für die Panels und exportierte den Snapshot in
Photoshop. Dann schnitt ich aus einem geeigneten Referenzbild[LINK3],
einfach einen passenden Ausschnitt aus und malte mir die Solarpanels auf meine UV-Map.
Dieses ergab meine Colormap[Abb30], für die Bumpmap nahm ich wieder die Farbe heraus und
erhöhte die Helligkeit und den Kontrast.[Abb31]
[Abb30]
[Abb31]
In Maya wurde dann das Colorfile und die Bumpmap entsprechend dem Blinn zugeordnet.
Im UV-Linker müssen dann die beiden Dateien noch der UV-Map zugewiesen werden.
Damit ist der Tie Fighter fertig[Abb32]
[Abb32]
-10-
Daniel Mack
WS 04/05
Grafik-Programmierung
4.5 Modellierung der Planeten Yavin und des Mondes
Der Mond des Planeten und der Planet selbst besteht jeweils aus 3 Nurbspheres, eine für die
Planetenoberfläche, eine für die Wolken und eine für die Atmosphäre.
4.6 Texturierung des Planeten und des Mondes
Die Texturen der beiden Planeten stammen aus dem Internet[LINK4]
Die beiden Shader sind gleich aufgebaut und aus .
dem Internet[LINK5] entnommen. Er ist nicht ganz
einfach zu verstehen und dafür habe ich auch einige
Zeit gebraucht.
Die ClampNode:
Sie schneidet Bereiche ab. Das heißt
man hat einen Input, min. und max. Stellt man den
max. Bereich auf 1.0 und den min. auf 0.0, werden
alle Werte, die durch den Input kommen beschnitten.
Also alles was unter 0.0 liegt, und die Werte die
[Abb33]
über 1.0 liegen werden im Output nicht ausgegeben.
Nur Werte, die zwischen 0.0 und 1.0 liegen werden aus dem Output ausgegeben. Das bedeutet hier,
das die Intensität der Lichtquelle nicht die Atmosphäre beeinflusst, eine höhere Intensität als 1
z.B.10 würde lediglich als Intensität 1 berücksichtigt werden.
Die SurfaceLuminanceNode:
Über diesen Node bekommt man die Information über die Oberflächen Luminanz/Helligkeitswerte
des Materials/Objekts und wie es beim Rendern ausgegeben wird. In diesem Fall wird hierüber die
Information geholt, welche Seite des Planeten hell und welche dunkel ist.
Die SamplerinfoNode:
Der FacingRatio wird jeweils mit dem V-Wert der Transparenzramp und der Atmosphärenramp
verbunden. Das bedeutet für gerenderte Punkte der Fläche, die von der Kamera wegzeigen, der
FacingRatio einen Wert von 0 und für Bereiche deren Normalen direkt in die Kamera zeigen einen
Wert von 1 haben. Hier steuert die Sampler Infonode die Transparenz, d.h., Flächen
die der Kamera zugeneigt sind werden transparenter, somit sieht man nur die Atmosphäre um den
Planeten und nicht komplett über den ganzen Planeten verteilt.
Für die Atmosphärenramp wurde noch die Farbabstufungen eingestellt, die sie erhalten soll.
Die Planetenoberfläche bekommt eine Color-Textur und eine Bumpmap zugewiesen.
Für die Transparenz der Wolken wird ebenfalls eine SamplerInfoNode zum steuern der Transparenz
verwendet. [Abb33]
Der andere Planet ist nach dem gleichen Prinzip und
Shader aufgebaut. [Abb34]
[Abb34]
-11-
Daniel Mack
WS 04/05
Grafik-Programmierung
Alle anderen Objekte wurden nach den vorangegangenen Prinzipien modelliert und texturiert,
deswegen sind diese im Anhang aufgeführt.
5. Erstellung der Szenen und Animationen.
Mit Hilfe des Storyboards konnte ich den Szenenaufbau genau planen. Da die Beschreibung aller
erstellten Szenen den Rahmen dieser Dokumentation „sprengen“ würde, wählte ich hierfür ein paar
exemplarisch aus.
5.1 Scene01c [Abb35]
Die mit Abstand die aufwendigste und mit
der größten Renderzeit zu Buche schlagende
Szene.
Leider war es nicht möglich durch den
Zeitrahmen noch Personen für die Szene zu
modellieren und animieren, daher wurde
versucht etwas mehr Dynamik,durch
rotierenden Alarmlichter an der Decke, zu
bringen.
[Abb35]
Bis auf den Ywing[Abb71] wurden alle Objekte der Szene
selber modelliert und texturiert.
Die Texturen stammen von [LINK2] und von [LINK6] für
die Säulen und die Kisten.
Für die Kabel zeichnete ich eine Curve und einen Circle und wendete Extrude Surface darauf an,
hierbei wird der Circle entlang der Spline-Curve extrudiert und so entsteht das Kabel.
Für die Kästen, die an der Decke hängen benutzte ich einen Cube, den ich mit weiteren BooleanOperationen so weit bearbeitete bis er seine endgültige Form erhielt.
Das Aufwendigste an der Szene waren aber auf
jeden Fall die Lichter. Insgesamt wurden in dieser
Szene 135 Lichter verwendet. Die hohe Anzahl
kam dadurch zu Stande, das jedes Flugzeug
durch mehrere Spotlights angestrahlt werden
sollte, damit man das Licht aber auch auf dem
Boden sieht musste für jedes Spotlight ein
weiteres Spotlight erzeugt werden, das den
Boden anstrahlt. Um den Schein zu wahren,
das das Licht aus den modellierten Lichtern
kommt wurde der Frontfläche ein Material
zugewiesen.
In die Mitte des „Spotlightkreises“ wurde ein
[Abb37]
Pointlight gesetzt das dieses Material anstrahlen soll. Über den Light-Linker wurde dann genau
eingestellt welche Flächen, Objekte und Materialen von den jeweils ausgewählten Lichter
beleuchtet werden. Dies ist notwendig, damit Flächen nicht überbelichtet werden, weil sie von allen
-12-
Daniel Mack
WS 04/05
Grafik-Programmierung
möglichen Lichtquellen der Szene angestrahlt werden.
Zusätzlich wurde jedes Flugzeug noch von einem Spotlight von oben bestrahlt.
Um einen relativ realistischen Lichtverlauf zu simulieren, aber die Renderzeit nicht zu stark in die
Höhe zu treiben, wurde für die „DecayRate“ des Spotlights ein linearer Verlauf eingestellt. In der
Realität ist die Lichtstärke bei der Lichtquelle am Größten und nimmt mit zunehmender Entfernung
sehr schnell ab. Um diesen Verlauf nachzuempfinden müsste die Decayrate auf Quadric gestellt
werden, dieses erhöht aber die Renderzeit.
Um einen Schatten zu werfen wurden für die Spotlights, die das Flugzeug von unten und oben
beleuchten, jeweils „Depthmap-Shadows“ eingestellt.
„Depthmapshadows“ rendern im Vergleich zu „Raytraced Shadows“ viel schneller, deshalb
entschloss ich mich zu dieser eher fehleranfälligen Variante.
Grob funktionieren sie folgendermaßen:
Es wird eine Kamera in das Licht gesetzt und aus dieser wird nun ein schnelles Z-Buffer-Bild
gerendert. Mit Hilfe dieses Z-Buffers (Tiefenbuffer) wird dann aus den Oberflächen ermittelt, ob sie
im Schatten liegen oder nicht. Wenn so ein Licht nun eine ziemlich große Fläche beleuchtet sind die
Pixel dieser Depthmap auch bei einer Auflösung von 2k * 2k relativ groß im Nahbereich. Wird der
Schatten „geblured“ dann sieht man es bei einem Standbild nicht so, aber es flackert in der
Animation.
Um diese „Artefakte“ beim Rendern von Animationen zu vermeiden sollte man eine relativ hohe
„Depthmap“ Auflösung wählen, die hier benutzten hatten eine Größe von 3096 * 3096 .
Desweiteren sollte man den „Dmap Auto Focus“ ausschalten und als Anhaltspunkt auf den Radius
des Spotlights stellen. Der „Dmap Filter Size“ wurde auf 2 gestellt, damit der resultierende Schatten
etwas „verwaschen“ wird.
Für eine Grundausleuchtung sorgten 7 „Directional Lights“, im „Lightlinker“ wurde genau
eingestellt,
dass diese nur die Kisten und die Objekte/Kabel an der Decke beleuchten. Da die Fighter und der
Hangarboden schon von den Spotlights beleuchtet werden.
Für die Alarmlichter wurden 2 Zylinder erstellt und
ineinander gesetzt. Aus dem äußeren Zylinder wurden
mit 2 Cubes und der „Boolean->Difference“ Operation
Öffnungen „hinein gestanzt“.
An den inneren Zylinder wurde dann ein Spotlight
„geparented“ In der Animation war so über die
Rotatation des Zylinders auch gleich die Rotation
des Alarmlichts eingeschlossen.[Abb38]
Um eine größere Tiefe des Hangars vorzutäuschen
entschloss ich mich dazu die Wände dunkel zu lassen,
[Abb38]
sie wurden also nicht direkt von irgendeinem Licht angestrahlt.
Die Kamerafahrt war in dieser Szene relativ simpel. Es wurde eine Spline Curve gezeichnet, die von
links nach rechts den Raum abfährt. Auf diese Curve wurde eine Kamera mit Aim gesetzt, dies
geschah folgendermaßen:
Man wählt die Kamera in der automatisch erzeugten Untergruppe aus, selektiert dann mit Shift
die Curve und wählt „Attach to Motion Path“ aus. So wird die Kamera aber nicht der Aim auf
die Curve gesetzt. Der Aim wird dann auf das zentrale Objekt der Szene ausgerichtet. Im Attribut
Editor lässt sich dann die Dauer einstellen, wie lange das Objekt sich von Anfang bis Ende bewegen
soll und evtl. auch Zwischenkeys setzen. Ein fertiges Renderbild der Szene.[Abb37]
-13-
Daniel Mack
WS 04/05
Grafik-Programmierung
5.2 Scene01f
In dieser Szene sollte der Xwing schwebend
Abheben und aus dem Bild fliegen.
Die Szene wurde zuerst 1:1 von Scene01c
übernommen. Um jedoch Renderzeit zu
sparen und die Szenengrösse zu verringern,
wurde alles was nicht im Bild zu sehen ist
entfernt, besonders die Spotlights mit den
Depthmaps.
Um ein möglichst Interaktives arbeiten zu
gewährleisten wurden die Lichter, Gegenstände,
Fighter im Hintergrund, der Haupt X-Wing
[Abb39]
die Partikel und der Hangar selbst jeweils in einzelne Layer aufgeteilt, die wahlweise ein -bzw.
ausgeblendet werden konnten.
Die Beleuchtung der Szene musste hier nur unwesentlich verändert werden. Das Spotlight das den
Xwing von oben beleuchtet wurde etwas nach oben versetzt, da der Fighter sonst zu nahe herangeflogen und damit überbelichtet worden wäre.
Das Komplizierteste in der Szene war es den „Schwebe-Effekt“ zu erzielen. Hier wurde die Idee
aufgegriffen, die auf DV-Garage[LINK8] für eine Kamerafahrt erklärt wurde.
Hierbei wird der eigentliche X-Wing nochmal gruppiert und die daraus resultierende Gruppe
(NoiseGroup)nochmal gruppiert. Die Oberste Gruppe(PosGroup), wird nun auf einen „MotionPath“
gesetzt, so bewegen sich alle „ChildObjekte“(die NoiseGroup und der Xwing) mit nach oben. Auf
die Translate x,y,z und Rotate x,y,z der NoiseGroup wird nun folgende Expression gelegt:
float $posnoise=(noise(time/4))*2*sin(time/4);
float $rotnoise=$posnoise*1.5;
noiseGroup.translateX=$posnoise*1.2;
noiseGroup.translateY=$posnoise*1.3;
noiseGroup.translateZ=$posnoise*1.1;
noiseGroup.rotateX=$rotnoise*1.2;
noiseGroup.rotateY=$rotnoise*-1.3;
noiseGroup.rotateZ=$rotnoise*-1.25;
[Abb40]
Die noise(time)-Funktion liefert wie die in [Abb40 [MayaHilfe]]gezeigten Werte, das heißt mit
zunehmender Zeitdauer werden immer Werte zwischen -1 und 1 zurückgegeben, da diese
interpoliert werden, kommt ein „weicher“ Verlauf zustande.
Für eine „Unruhe“ auf der X-,Y-und Z – Translationsachse wurde eine Sinusfunktion verwendet,
welche als Amplitude die Noise Funktion hat. Die Teilung durch 4 war nötig, da die Auslenkung
sonst zu stark gewesen wäre und es nicht mehr realistisch aussah.
Für die „Unruhe“ auf den Rotationsachsen wurde der vorher ermittelte Wert der Variablen$posnoise
verwendet und um einen Faktor erhöht.
Um die notwendigen Faktoren zu erhalten, mussten einige Probedurchläufe gemacht werden.
Hierfür änderte ich einfach immer einen Parameter ab, bis das Abheben des X-Wings einigermaßen
realistisch aussah.
Zu den Partikeln in der Szene werde ich im Punkt Rendering/Compositing nochmal näher eingehen.
-14-
Daniel Mack
WS 04/05
Grafik-Programmierung
5.3 Scene01i[Abb41]
In dieser Szenen kamen die Planeten, die X-Wings
und der Y-Wing[LINK2] zum Einsatz.
Vorgabe laut Storyboard war, das der erste Fighter
sehr dicht an der Kamera vorbeifliegen soll und diese
dann herumschwenkt und weiter auf ihn „zielt“.
In dieser Szene wurde wieder eine „Aim-Cam“, d.h.
eine Kamera mit zugehörigen „Aim-Punkt“ eingesetzt.
Die Fighter wurden entsprechend der an Frame 1
festgelegten Kameraeinstellung ausgerichtet und
[Abb41]
positioniert. Der „Aim Punkt“ der Kamera wurde dann mit in die Gruppe des 1. Xwings eingefügt.
Somit flog der „Aim“ mit dem Fighter mit und die Kamera wurde immer auf ihn ausgerichtet.
Jeder Fightergruppe wurde nochmal jeweils in eine Obergruppe eigruppiert. Dann wurden alle
Flugbahnen der Fighter einzeln per Hand animiert. Der Startkeyframe und der Endkeyframe und die
entsprechende Positionen wurden festgelegt. In der eigentlichen Gruppe wurde dann die Rotation
der Fighter „gekeyt“ um etwas mehr Dynamik hineinzubekommen.
Zur Beleuchtung:
Die Fighter wurden alle mit 3 „directional lights“ grundausgeleuchtet. Hinzu kamen für jeden
Fighter nochmal jeweils ein Spotlight mit einer Depthmap für den Schatten. Diese wurden in die
„Translations Gruppe“ eingruppiert, damit sie zwar die Translation der Fighter mitmachen, aber
nicht die Rotation. Spotlights wurden deshalb zusätzlich noch verwendet, weil sie meiner Meinung
nach, die besten Ergebnise und die genauesten Schatten geliefert haben
Die Planeten wurden von einem „directional light“ angestrahlt, das die Sonne simulieren soll.
Der Todesstern wurde von 2 „directional lights“ angestrahlt. Hierbei musste auch mit „Depthmap“
gearbeitet werden, weil Lichter ja durch Objekte hindurchstrahlen, wenn für sie keine
Schattenbildungen aktiviert sind. Somit hätte der Graben, der sich in der Mitte des Todessterns
befindet eine unrealistische Beleuchtung angezeigt.
Die Szene wurde dann später mit unterschiedlichen Setups in Layern gerendert. Und im
Compositing zusammengefügt. Genauer darauf und auf die Notwendigkeit dieser Methode werde
ich im Kapitel Compositing und Rendering eingehen.
[Abb42] Compositing der Scene01i
-15-
Daniel Mack
WS 04/05
Grafik-Programmierung
5.4 Scene11_16[Abb43]
In dieser Szene sollte der X-Wing von Laserstrahlen
getroffen werden, aber nicht explodieren.
In der Szene kam der Todessterngraben zum Einsatz
der von der Internetseite[LINK7] stammt.
Es wurde wieder mit einer „Aim-Cam“ gearbeitet.
Für das Raumschiff wurde eine „Spline Curve“ gezeichnet, diese wurde dupliziert und als „MotionPath“
für die Kamera benutzt. Die „Laufzeit“ des X-Wings auf [Abb43]
der Curve beträgt 300 Frames, die der Kamera 301. Diese Einstellungen ließen den X-Wing
schneller auf der Curve entlang fliegen als die Kamera und dies hatte zur Folge, das das Raumschiff
an der Kamera vorbeiflog. Um eine geeignetes Endresultat zu erhalten, mussten verschiedene
Probedurchläufe gemacht werden.
Der Fighter sollte ab Frame 75 getroffen werden, hierfür erstellte ich ein Pointlight und 2 Partikelemitter. Das „Pointlight“ bekam einen „Optical FX“, damit das Licht nicht nur die Umgebung
beleuchtet sondern auch noch sichtbar wird. Gesteuert wurde das „Aufblitzen“ durch die Intensität
des Lichtes, d.h. im konkreten Fall: bis Frame 74 beträgt die Intensität 0, bei Frame 75 eine
Intensität von 40 (weil Decayrate auf Linear gestellt wurde) und bei Frame 82 wieder 0. Damit
blitzt das Licht für ca ½ Sek. auf.
Für die Explosion selbst erstellte ich einen Emitter für die Funken(SparkEmitter) und einen für den
Rauch(SmokeEmitter).Der Rauchemitter startet bei Frame 75 , der Funkenemitter bei 85.
Um eine Explosion zu imitieren wurde der Emitter von Frame 75 bis Frame 80 auf doppelte
Größe skaliert.
Als Partikel wurden Multistreaks für beide Emitter gewählt, da diese bei Bewegung einen
„Schwanz“ hinter sich herziehen und so das Gefühl der Geschwindigkeit des Fighters noch
verdeutlichen. Ausserdem konnten diese Partikel hardwaregerendert werden und der Typ
Multistreaks stellt sicher, dass durch Einschalten von Multipass die Partikel mit besserer Qualität
gerendert werden.
Für die Partikel wurden folgende Attribute gesetzt:
Die Masse bekam eine Expression: SmokeParticleShape1.mass = rand(0.2,1);
Diese weist einfach den Partikeln unterschiedliche Massenwerte zwischen 0.2 und 1 zu. Für die
Opacity wurde die Ramp3 [Abb44] und für
die Farbe der Partikel die Ramp2 [Abb44]
zugeordnet.
Die Opacity gibt an, wie sichtbar die Partikel
über die Lebenszeit sind. (Weiß ist 100%
sichtbar, schwarz = unsichtbar)
Die Ramp2 stellt ebenfalls den Farbverlauf
über die Lebenszeit da (von unten nach oben).
Um noch mehr Zufälligkeit in die Bewegung
der Partikel zu bringen wurden noch 2 Felder
hinzugefügt(1 Newton und 1 Turbulencefield)
Die Laserstrahlen wurden im Compositing hinzugefügt
-16-
[Abb44]
Daniel Mack
WS 04/05
Grafik-Programmierung
6. Compositing / Rendering
Um das Rendern zu vereinfachen wurde eine Batchdatei geschrieben[Abb49]
[Abb49]
Diese rendert alle ausgewählten Szenen nacheinander ab, und speichert diese Bilder in das
vorgegebene Verzeichnis. Dadurch muss Maya nicht zum Rendern gestartet werden, sondern
es wird quasi über die Kommandozeile gerendert. So wird der Speicher nicht noch zusätzlich
durch Maya belegt.
Die einzelnen Szene wurden grob in 3 Bereiche unterteilt, in Vordergrund , Hintergrund und
dazwischen. Anschließend wurden die separaten Szenenfiles getrennt gerendert.. Das ergab dann
pro Szene ca. 2 - 5 Layer, die in „After Effects“ composed wurden. Das hatte mehrere Vorteile und
war teilweise auch unerlässlich.
So musste z.B. in fast allen Szenen mit Motionblur gearbeitet werden um einen größeren Realismus
und ein Gefühl für die Geschwindigkeit zu vermitteln.
Wäre z.B in den Szenen mit dem „Graben“
das Bild komplett in einem Durchgang gerendert
worden, wären nicht nur die Wände so stark „geblurrt“worden, sondern auch die Fighter im
Vordergrund..[Abb45]
Aus diesem Grund wurde zuerst der Hintergrund
[Abb46] dann der Fighter im Vordergrund[Abb47]
gerendert. Beide auch mit unterschiedlichen Motionblurreinstellungen.
Da für beide der Alphakanal mit abgespeichert wurde,
konnten beide Layer dann einfach in „After Effects“
übereinander gelegt werden.[Abb48]
-17-
[Abb45]
Daniel Mack
WS 04/05
+
[Abb46]
Grafik-Programmierung
=
[Abb47]
[Abb48]
Diese Art der Trennung beim Rendering ist in professionellen 3D Produktionen die Regel. Hier
werden z.B einzelne Durchgänge sog. „Renderpasses“ für Schatten, Specularity, Color, und Diffuse
durchgeführt.
Das hat unter anderem den Vorteil, dass man die einzelnen Layer noch im Compositingprogramm
bearbeiten kann. Die Farbe und der Schatten können so im nachhinein „geblurrt“ und nachgebessert
werden..
Ein weiterer Vorteil, den ich auch mit dieser Methode mehrfach in Anspruch nehmen konnte war,
das bei Fehlern nicht immer das gesamte Bild neu gerendert werden musste, sondern nur der entsprechende Layer.
Die Zeit, die ein Bild mit dieser Methode zum Rendern braucht, ist natürlich auch wesentlich
geringer.
Ein weiteres Problem, das nur übers Compositing zu lösen war, war das Leuchten der Triebwerke.
Der „Glow“, der bei Maya integriert ist, berechnet jedes Bild in Abhängigkeit des Lichtes und der
Kameraeinstellung neu. Das führt dazu, das er bei Animationen flackert. Verschiedene
Lösungsansätze die ich hierfür im Internet fand, ergaben für mich aber keine ansprechende Lösung.
Da die Animation ja sowieso in verschiedenen Layern durchgeführt wurde, lag es auf der Hand
einen extra „Pass“ nur mit den Triebwerken zu rendern. In Maya gibt es ein Material, dass sich „Use
Background“ nennt, dieser wurde auf den Fighter gelegt. Somit werden nur die Triebwerke
gerendert wenn sie auch wirklich zu sehen sind. Der Rest wird so behandelt, als wäre er vorhanden,
jedoch nicht mitgerendert.
Für die Triebwerke wurde einfach jeweils ein Zylinder genommen, verformt und in das Ende des
Triebwerkes gesetzt.[Abb50]
[Abb50]
-18-
Daniel Mack
WS 04/05
Grafik-Programmierung
Die gerenderte Filesequenz wurde dann in After Effects Importiert, eine neue Komposition erstellt
und das Material eingefügt. Dieser Layer wurde dann 4 mal dupliziert. Der oberste Layer blieb
unverändert, der 2. Layer mit den Triebwerken bekam einen „Gaussianblur“ von 100 , der 3. von
50 und der 4. von 20 zugewiesen. Als Füllmethode der Layer untereinander wurde „negativ
multiplizieren eingestellt“.[Abb56]
[Abb56]
LINK[9]Negativ multiplizieren
Prüft die Farbinformationen in jedem Kanal und multipliziert die umgekehrten Werte von
Ausgangsfarbe und Farbauftrag. Die Zielfarbe ist immer heller. Mit Schwarz bleibt die Farbe
unverändert, mit Weiß entsteht Weiß. Dieser Effekt ist vergleichbar mit dem Malen mit
einem ausbleichenden Malwerkzeug.
Dies hatte im konkreten Fall zur Folge, dass ein heller Schein um das Triebwerk entstand.[Abb51]
Die Triebwerkskomposition wurde in eine neue Szenen Komposition eingefügt.[Abb57]
[Abb57]
-19-
Daniel Mack
WS 04/05
Grafik-Programmierung
In dieser Szenenkompositon wurde dann der Effekt Farbalance auf den Triebwerkslayer angewendet
um eine Farbe für Triebwerke festzulegen[Abb52]. Zusammen mit Layer2 [Abb53] und Layer4
[Abb54] ergibt sich als Gesamtkomposition[Abb55]
[
Abb51]
[Abb52]
[Abb53]
[Abb54]
[Abb55]
Nach dieser Methode wurde in allen Szenen verfahren, in der Triebwerke vorkamen.
In Scene01f[Abb39] sollte unter den Triebwerken ein Hitzeflimmern erzeugt werden. Hier wurde
das gleiche Prinzip verwendet, wie es im „Heatripples Tutorial“[LINK8] auf DV-Garage
angewendet worden ist.
Man rendert rote und grüne Partikel und nutzt diese für den „Versetzen-Effekt“ in After Effects.
[Abb58]
[Abb58]
-20-
Daniel Mack
WS 04/05
Grafik-Programmierung
Diese Partikel_Komposition(Layer3) wird dann unter den eigentlichen Layer2 gelegt. Auf Layer2
wird dann der „Versetzten Effekt“ angewendet, dieser bewirkt das die roten Partikel die horizontale
und die grünen Partikel die vertikale Verschiebung steuern. Wenn in der Partikel_Komposition
noch Gaussianblur auf diese angewendet worden ist, ergibt das so eine Art hitzeflimmern.
Probleme entstanden hierbei, da die Szene insgesamt von den Ausmaßen zu Groß skaliert war.
Beim Rendern der Partikel verdeckten die grünen teilweise ganz die roten und umgekehrt. Dies
hatte im Compositing zur Folge, das der Effekt nicht richtig funktionierte, da stellenweise eine
Farbe fehlte und damit die Verschiebung nur in eine Richtung durchgeführt wurde. Als Lösung
hierzu renderte ich die roten und grünen Partikel jeweils getrennt und fügte sie in „After Effects“ in
einer Komposition wieder zusammen.
Die Laserstrahlen für die einzelnen Szenen wurden ebenfalls in „After Effects“ eingefügt. Hierfür
wurde der bei „After Effects“ enthaltenen „Strahl-Effekt“ verwendet.[Abb59]
Man erstellt eine neue Farbebene und wendet darauf den „Strahl-Effekt“ an. In der Effekteinstellung
legt man die Dauer des Laserstrahls fest, in dem man Keyframes für die Zeit setzt. Als nächstes
verschiebt man seinen Startpunkt (S) und Endpunkt des Strahls (E) an die gewünschte Stelle.
Um noch einen räumlichen Effekt zu erzielen sollte die Anfangsbreite und Endbreite des Strahls
noch eingestellt werden. Bei Schüssen in die Ebene Endbreite<Anfangsbreite und umgekehrt.
[Abb59]
-21-
Daniel Mack
WS 04/05
Grafik-Programmierung
Für die Explosionen die in der Animation vorkamen setzte ich frei erhältliches „Stockfootage“ von
[LINK10] ein.
Probleme entstanden noch beim Rendern einer Szene, bei der das modellierte X-Wing Cockpit
verwendet werden sollte. Durch Fehler bei der Modellierung, entstandenen beim
Rendern der Szenen Artefakte, die ich nicht beheben konnte. Deswegen musste ich die Szenen mit
dem Cockpit abändern und es ganz herausnehmen.
Abschließend zum Thema Compositing und Rendering lässt sich sagen, das es eine gute Wahl war
die Szenen in Layer aufzuteilen und bei den Partikeln auf Hardwarepartikel zurückzugreifen. Da
durch Fehler, die oft erst beim Betrachten am nächsten Morgen aufgefallen sind, viele Teile der
Szenen nochmals gerendert werden mussten, konnte so wenigstens einiges an Zeit eingespart
werden.
Das Video wurde laut Vorgabe mit dem IndeoVideoCodec in einer Auflösung von 720 * 576 Pixeln
gerendert.
Verwendete Rechner:
Athlon 64 3200 +
1024 MB RAM Corsiar
Sapphire Radeon 9800 PRO
2 * 180 GB, 1 * 30 GB , 1* 60 GB Festplatte
Desktop PC
Intel Pentium M 1,8 Ghz
512 MB Ram
Ati 9000 Radeon
1 * 30 GB Festplatte
Laptop
Die Gesamtrenderzeit betrug ca. 262 Stunden und 17 Minuten,
also ca. 10 Tage 22 Stunden und 17 Min. (genauere Aufschlüsselung im Anhang)
Insgesamt belegte das Projekt 10,3 GB Festplattenspeicher.
Darunter:
6,88 GB für die gerenderten Bilder.
1,18 GB für die Historie der modllierten Objekte
1,09 GB an erstellten Szenen
596 MB an Texturen
267 MB an Soundfiles
Das fertige Video hat unkomprimiert eine Größe von 9,31 GB
-22-
Daniel Mack
WS 04/05
Grafik-Programmierung
7. Anwendungsdokumentation:
Der Ordner StarWars ist der Projekt Ordner, der auch in Maya
eingestellt werden muss.
Im Ordner Scenes befinden sich 3 Ordner:
-ModelScenes: In diesem Ordner befinden sich alle Objekte die für
dieses Projekt modelliert wurden, mit Modellierungshistorie.
-ObjectScenes: In diesem Ordner befinden sich die fertigen Objekte,
die in den Szenen eingesetzt wurden.
-MovieScenes: In diesem Ordner befinden sich alle Szenen, die für
die Animation erstellt wurden und auch die
Batchdatei, mit der alle Rendervorgänge gestartet werden
können.
-In Images werden die gerenderten Bilder abgespeichert.
Dieser Ordner sollte in der Batchdatei, als absoluter Pfad angegeben
werden.
Alle gerenderten Bilder konnten nicht auf die DVD gebrannt werden,
da das Basismaterial 10 GB betrug.
Im Unterordner RenderedModels befinden sich Testrenderings der
modellierten Objekte.
-In sound sind die Soundfiles abgelegt, die für die Animation benutzt
wurden[LINK12]
-In Fonts[LINK13], sind die Schriftarten abgespeichert, die für das Intro benutzt wurden.
-In Video ist das fertig gerenderte Video in 2 Versionen abgelegt, einmal
IndeoVideo 5.1 und einmal in DiVX 5.2.1 in besserer Qualität codiert.
In Sourceimages befinden sich gesammelten Referenzbilder, nach denen ich Modelliert habe.
Im Ordner Dokumentation ist die Ausarbeitung und die Präsentation abgelegt.
Alle Abbildungen, die in der Projektbeschreibung verwendet wurden sind im Unterordner von
Dokumentation unter DokuBilder abgelegt. Das Storyboard befindet sich ebenfalls im
gleichnamigen Unterordner.
-Im Ordner textures befinden sich alle Texturen der erstellten und importierten Objekte. Diese sind
alle mit relativen Pfaden angegeben, sollten also wenn der Projektordner StarWars gesetzt wurde
automatisch bei allen Objekten geladen werden.
Zur Batchdatei:
Um diese zu verwenden, muss einfach das REM vor den zu rendernden Szenen entfernt, und
natürlich die Pfade abgeändert werden.
-rd ....[Verzeichnisname] -steht für das Verzeichnis in dem die Bilder nach dem Rendern
abgespeichert werden sollen. Unter [Verzeichnisname] sollte der absolute Pfad zu dem Images
Ordner geschrieben werden.
Die Partikel, die in manchen Szenen vorkommen, müssen alle über den Hardware RenderBuffer aus
Maya heraus gerendert werden.
-23-
Daniel Mack
WS 04/05
Grafik-Programmierung
8. Benötigte Arbeitszeiten
Modellierung des Xwings
ca. 39 Stunden
MAYA
Texturierung des Xwings
ca. 30 Stunden
MAYA/PhotoS.
Modellierung des Tie Fighters
ca. 30 Stunden
MAYA
Texturierung des Tie Fighters
ca. 2 Stunde
MAYA/PhotoS.
Modellierung des DarthTieFighters
ca. 22 Stunden
MAYA
Texturierung des DarthTieFighters
ca. 1 Stunde
MAYA/PhotoS.
Modellierung der DeathstarCannon
ca. 20 Stunden
MAYA
Texturierung der DeathstarCannon
ca. 15 Stunden
MAYA/PhotoS.
Modellierung des Deathstars
ca. 6 Stunden
MAYA
Texturierung des Deathstars
ca. 4 Stunden
MAYA/PhotoS.
Modellierung eines TieFighter Cockpits
ca. 4 Stunden
MAYA
Modellierung eines X-Wing Cockpits
ca. 8 Stunden
MAYA
Texturierung eins X-WingCockpits
ca. 2 Stunden
MAYA/PhotoS.
Neu Texturierung des importierten Y-Wings[LINK2}.
ca 6 Stunden
MAYA/PhotoS.
Erstellung der beiden Planeten und Texturierung
ca. 1 Stunde
MAYA
Modellierung des Hangars und Texturierung
30 Stunden
MAYA/PhotoS.
Erstellung der einzelnen Szenen und der Animationen (46 Szenen)
ca. 460 Stunden
MAYA
Compositing und Erstellung der Effekte
ca. 60 Stunden
After Effects
Erstellung der Sound Effekte und Schnitt des Videos
ca. 30 Stunden
After Effects
Insgesamt
ca . 770 Stunden
9. FAZIT:
Das Projekt hat mir persönlich sehr gut gefallen, was sich wohl auch an der aufgewendeten Zeit
bemerkbar macht. Leider war vor Beginn dieses Projektes, durch die mangelnde Erfahrung, nicht
die Aufwendigkeit mancher Arbeiten abzuschätzen und so verkalkulierte ich mich in der
Zeitplanung. Ich musste deshalb einige geplante Szenen entfallen lassen.
Das Projekt wurde aber dennoch rechtzeitig und zu meiner vollsten Zufriedenheit fertiggestellt.
Da ich mich auf jeden Fall beruflich in dieser Richtung weiterentwickeln und meine Zukunft darauf
ausrichten will, werte ich die aufgewendete Zeit keines Falls als Verlust.
Bei dem Projekt konnte man durch die extreme Praxisnähe sehr viel Erfahrung gewinnen, mehr als
theoretischer Unterricht vermitteln könnte.
Maya ist ein sehr komplexes Programm, das selbst fortgeschrittene Anwender nach mehreren Jahren
immer noch nicht zu 100 % auszreizen können. Das dieses Programm zu den besten der Branche
gehört, zeigt ja der Einsatz bei vielen erfolgreichen Kino-Blockbustern in den letzten Jahren.
Ein Nachteil bei der Bearbeitung des Projektes mit der Software bestand darin, das es keine
Hilfestellung bei Problemen geben konnte.
-24-
Daniel Mack
WS 04/05
Grafik-Programmierung
ANHANG:
Renderzeit der einzelnen Szenen und Layer:
Scene01c
19h 07m
Scene01d
Scene01f
Scene01i
Scene01k
Scene01l
Scene01m
Scene01n
Scene02a
Scene03
Scene07a
Scene07b
Engines
00h 14m
22h 08m
Fighters
03h 18m
Scene
23h 20 m
Space
01h 17m
ParticleRed
00h 03m
Surface
01h 34m
ParticleGreen
00h 03 m
Enginies
01h 00m
Engines
03h 07 m
Fighters
02h 18m
Fighters
15h 57 m
Space
01h 41m
Planets
09h 54 m
Surface
00h 41m
Fighters
00h 29m
Space
01h 22m
Surface
01h 25m
Scene07e2
Backround
Scene07f
Deathstar
00h 57 m
Engines
00h 14 m
Fighter
00h 57 m
Scene07f2
Backround
Deathstar
00h 51 m
Engines
00h 11 m
Scene09c
Fighter
00h 46 m
Scene11_01
Deathstar
Fighters
Space
00h 26m
Surface
00h 22m
10h 38m
Fighters
Space
Scene11_02
00h 48m
Engines
00h 04m
Fighter
00h 18m
Deathstar
03h 00m
Engines
00h 04m
Fighter
00h 40m
Fighter
00h 07m
Flight
03h 44m
Fighters
00h 24m
Space
01h 58m
Space
01h 16m
Scene11_04
Engines
00h 10m
Scene11_05
Fighters
00h 11m
Fighter
00h 21m
Space
00h 40m
Flight
02h 39m
Surface
01h 50m
Space
02h 00m
Scene04
Scene05
Scene07c
Flight
Space
Scene11_03
02h 26m
Scene11_06
01h 41m
Engines
Engines
Flight
Fighter
01h 02m
Space
Space
01h 35m
Scene11_07
Surface
04h 25m
Scene11_08
Fighters
02h 46m
Flight
05h 35m
Space
00h 45m
Space
00h 50m
Fighters
00h 49m
Fighter
00h 53m
Space
01h 27m
Space
00h26m
Scene11_10
-25-
00h 45m
Fighter
Daniel Mack
Scene11_11
Scene11_12
Scene11_13
Scene11_14
Scene11_16
Scene11_25
Scene11_26
Scene11_27
Scene11_28
Scene11_29
Scene11_30
Scene11_30a
WS 04/05
Grafik-Programmierung
Flight
02h47m
Engines
00h 09m
Scene11_31
Flight
01h 40m
Fighter
00h 23m
Scene11_33
Torpedos
01h 12m
Flight
01h 41m
Scene12
deathstar
00h 17m
Fighter
01h 06m
Fighter
00h 39m
Flight
02h 05m
Space
01h 40m
Space
00h 26m
EngineFalc
00h 14m
Fighter
00h 26m
EngineXwing
00h 12m
Flight
02h 36m
Fighter
00h 29m
Space
00h 18m
Space
00h 52m
Fighter
00h 18m
Planetes
02h 30m
Flight
01h 00m
Space
00h 13m
Fighter
00h 22m
Flight
04h 00m
Fighter
00h 21m
Flight
01h 55m
Space
00h 51m
Engines
00h 16m
Fighters
01h 25m
Engines
00h 27m
Fighters
00h 23m
Flight
01h 31m
Space
00h 46m
Fighter
00h 30m
Flight
04h 31m
Space
01h 00m
Fighter
00h 11m
Lensflare
00h 01m
Space
00h 16m
Fighter
00h 11m
Flight
03h 13m
Space
00h 46m
Fighter
00h 15m
Flight
02h 15m
Space
00h 06m
Scene12_04
Insgesamt 262h 17m
-26-
Daniel Mack
WS 04/05
Grafik-Programmierung
Von mir modellierte Objekte:
[Abb61]X-Wing
[Abb62]DarthVader Tiefighters
[Abb63]Normaler Tiefighter
[Abb64]Deathstar Cannon
[Abb65] TieFighter Cockpit
[Abb66] Kanal in Nahaufnahme mit Kanone
-27-
Daniel Mack
[Abb67] Cockpit X-Wing (nicht verwendet)
WS 04/05
Grafik-Programmierung
[Abb68] Hangar alle Objekte bis auf
Y-Wing[Abb71]
Importierte Objekte aus dem Internet:
[Abb69] Deathstar Trench [LINK7]
[Abb70] Milleniumfalcon [LINK2]
Bis auf diese 3 Objekte wurde
alles selbst modelliert.
[Abb71] Y-Wing [LINK2]
-28-
Daniel Mack
WS 04/05
Grafik-Programmierung
Quellen aus dem Internet:
Verwendete Blueprints von:
[LINK1]
http://mitglied.lycos.de/STARWARS_Blueprints/2rebel_fighters/fighters.htm
Verwendete Textruen/Shader von:
[LINK2]Xwing,Ywing – Textur
http://scifi3d.theforce.net/list.asp?intGenreID=10&intCatID=10
[LINK3]Tie Fighter, Solarpanel
http://www.steinschneider.com/props/star_wars/tie_fighter/tie_02.jpg
[LINK4]Texturen das Planeten Yavin und Endor
http://scifi3d.theforce.net/list.asp?intGenreID=10&intCatID=14
[LINK5]Shader für die Atmosphäre
http://www.kaypoprawe.com/lightstorm3d/tests/atmosphaere2.zip
[LINK6]Texturen für Kisten Säulen, etc....
http://www.mayang.com/textures/
[LINK13]- Fonts von
http://scifi3d.theforce.net/
Verwendete Fremdmodelle:
[LINK2]YWing,MilleniumFalcon
http://scifi3d.theforce.net/list.asp?intGenreID=10&intCatID=10
[LINK7]Todesstern Kanal
]
http://scifi3d.theforce.net/list.asp?intGenreID=10&intCatID=14
Verwendete Tutorials, Hilfen
[LINK8]-DV-Garage – Kamera Droid und Heatripples Tutorial- Kostenlose Anmeldung
erforderlich
http://www.dvgarage.com/garage/break/lab/lab.php
[LINK9]-Photoshop Füllmethoden
http://sfk-online.com/support/bild/ps_special_ProfiFarbe.php
[LINK10]-Explosionen von Detonationfilms
http://www.detonationfilms.com/free_stuff.htm
Nicht im Text erwähnte aber benutzte Quellen:
[LINK11]-gutes deutschsprachiges Mayaforum
http://www.percutio.com
Die Soundfiles der Animation stammen von
[LINK12]-Soundsuchmaschine
http://www.findsounds.com
und aus dem Spiel Jedi Knight II von Lucasarts, sowie die Musik vom Soundttrack von Star Wars
und die Stimmen aus dem Film Star Wars – Episode IV
-29-