CGExercises

CG Exercise #02

Computergraphik ├ťbungsblatt #02


Blender Tutorial: Modellierung



Modellieren mit Blender (Blender Teil #1)


In diesem Praktikumsteil befassen wir uns mit der Computergrafik aus Anwendersicht. Diese Sichtweise soll uns auf praktische Art und Weise demonstrieren wie einfach die theoretischen Konzepte in aktueller Grafik-Software umgesetzt sind bevor wir hinter die Kulissen schauen. Wir werden hierzu eine kleine Spielzeugszene nachbauen. Als Inspiration soll uns diese Auswahl von realen Objekten dienen:

Aufgabe 2.1: Modellierung / Transformation

Bitte modellieren Sie eine Spielzeug-Lokomotive, indem Sie ausschlie├člich Grundobjekte verwenden und diese ├╝ber Verschieben ( g ), Rotieren ( r ) und Skalieren ( s ) aufbauen (siehe auch Blender Cheat Sheet). Stellen Sie zwischen den einzelnen Objekten eine hierarchische Beziehung (vgl. Konzept der Hierarchischen Modellierung) her, um mehrere Objekte miteinander zu verkleben bzw. gleichzeitig zu manipulieren ( Ctrl-P, parenting ).

Zus├Ątzlich k├Ânnen Sie diese Grundobjekte als Basis verwenden und komplexe Geometrien mittels extrudieren ( e ), loop cuts ( STRG + r ), verschieben ( g ), rotieren ( r ) und skalieren ( s ) von einzelnen Punkten, Kanten oder Polygonen aufbauen. Durch diese Bearbeitungswerkzeuge k├Ânnen Sie weitere Objekte, wie etwa B├Ąume oder Tiere modellieren. Verwenden Sie zus├Ątzlich den Bevel, Solidify, Mirror und den Subdivision Surface Modifier, um l├Ąstige Arbeit zu sparen.

Aufgabe 2.2 Shading / Texturierung:

Jetzt geht es ums Aussehen:

Das Shading in Blender beinhaltet zwei Hauptkomponenten: Materialien und Texturen. In Cycles und Eevee werden Materialien ├╝ber ein Node-System definiert. F├╝r Texturen werden immer Texturkoordinaten ben├Âtigt. Die Erstellung der Texturkoordinaten wird h├Ąufig per UV-Unwrapping erstellt, um das korrekte UV-Mapping zwischen 3D Objekt und 2D Texturraum herzustellen.

Erstellen Sie f├╝r Ihre Objekte Materialien um diese einzuf├Ąrben:

Mit prozeduralen und von der Festplatte geladenen Texturen k├Ânnen Sie ein noch realistischeres Erscheinungsbild erzeugen. Bitte texturieren Sie ein Objekt Ihrer Wahl in Blender, indem Sie Schnittkanten (UV Seams: STRG + E, Mark Seam) zum Auffalten (UV Unwrapping: u, unwrap) definieren anhand derer jeder 3D Punkt m├Âglichst verzerrungsfrei auf einer 2D Ebene ausgelegt werden kann. Anschlie├čend definieren Sie ein neues Material (New Principled BSDF) f├╝r das Objekt und verbinden Texture Coordinate, Image Texture, Diffuse BSDF und Material Output Node sinnvoll miteinander.

Auch die Umgebung kann anhand von Materialien und Texturen interessant gestaltet werden. Zus├Ątzlich werden damit realistische Reflektionen und Beleuchtungseffekte zwischen den Objekten und dem Boden (Plane) sichtbar. Empfohlen werden hierf├╝r “High Dynamic Range images” (HDRi), meist in Form von Panoramabildern. Eine tolle Seite mit vielen kostenlosen (CC-Zero Lizenz) HDRis ist beispielsweise https://polyhaven.com/hdris. Diese Panoramabilder verwendet man als sog. Environment-Map f├╝r die umgebende Welt.

Aufgabe 2.3: Licht, Kamera, Action!

Setzen Sie Ihre modellierten und texturierten Objekte nun in Szene. Beleuchten Sie die Szene mit Punkt- oder Spot-Lichtquellen. Das Ziel ist es eine hinreichend komplexe Umgebung zu erstellen, so dass wir mithilfe der erstellten Objekte im n├Ąchsten Praktikum eine kleine Geschichte erz├Ąhlen k├Ânnen.

TeilVideoThema
Blender Teil 1YTGUI, Modellierung, Shading, Texturierung


Hausaufgaben bis zum dritten Praktikum


Musterl├Âsung: Bitte stellen Sie Ihre Musterszene aus dem Blender-Praktikum kurz vor.

1. OpenGL:

  1. Farbmischung:
    Welche Farbe (wie z.B. Hellgr├╝n) ergibt sich bei der additiven Farbmischung der folgenden Mischungsverh├Ąltnisse der Grundfarben Rot, Gr├╝n, Blau?
    1. 50%, 0%, 0%
    2. 100%, 100%, 70%
    3. 65%, 17%, 17%
  2. Perspektivische Projektion:
    Welche der folgenden Figuren werden durch die perspektivische Projektion vom Aussehen nicht ver├Ąndert?
    1. Linie
    2. Dreieck
    3. Quadrat
    4. Kreis
    5. Konvexes Polygon

2. Blender:

  1. Transformation:
    1. Nehmen wir an, Sie haben eine Szene mit einen W├╝rfel, der weder rotiert, noch transliert oder skaliert ist. Geben Sie bitte die 4×4 Model-Matrix des W├╝rfels an.
    2. Nun bewegen Sie den W├╝rfel um 10 Einheiten entlang der positiven globalen z-Achse. Geben Sie nun bitte die 4×4 Model-Matrix des W├╝rfels an.
  2. Recherche (googlen!):
    1. Wie w├╝rden Sie eine Spiegelung entlang der X-Achse, eine Punktspiegelung und eine uniforme Skalierung auf 50% als 4×4 Transformationsmatrix schreiben?
    2. Wie sieht die Transformationsmatrix f├╝r die kombinierte Punktpiegelung und Skalierung aus? Tipp: [Matrix-]Multiplikation!
    3. Um welche Art von Transformation handelt es sich bei obigen Operationen?
      1. linear
      2. affin
      3. Starrk├Ârper (engl. rigid body)
      4. Ähnlichkeitstransformation (engl. similarity)
      5. projektiv
  3. Hierarchische Modellierung:
    1. Ist es m├Âglich in Blender bestimmte 3D-Objekte als Kinder von anderen Objekten zu definieren, so dass sich diese mit den Eltern mitbewegen? Falls ja, unter welchem Begriff kennt man dies in der Computergrafik und wo sieht man diese Beziehungen in Blender?
    2. Nehmen wir an, dass wir einen W├╝rfel und eine Kugel in der Szene haben. Der W├╝rfel ist noch nicht transformiert worden, die Kugel enth├Ąlt eine reine Translation von (10, 0, 0). Au├čerdem ist die Kugel als ein Kind vom W├╝rfel definiert. Welche Model-Matrix besitzt die Kugel, wenn der W├╝rfel mit dem Vektor (0, 10, 0) transliert wurde. Erkl├Ąren Sie Ihr Vorgehen.
    3. Optional: Welche Model-Matrix besitzt die Kugel, wenn sie zus├Ątzlich noch um den Faktor 50% skaliert wird?

Options: