Benutzer:Lobsterbake

Aus Wikibooks

[aus "Blender Dokumentation: Boolean-Modifier". Bild und Teile des Textes wurden geändert. Die Überarbeitung ist in Arbeit. ]


[...]

Boolsche Operationen[Bearbeiten]

Difference

Zieht das zweite Objekt vom ersten ab. Hierbei sollten sie darauf achten in welcher Reihenfolge sie die Objekte selektieren, denn das aktive Objekt (das zuletzt ausgewählte) wird vom markierten Objekt (erste Objekt) abgezogen.

Union

Erzeugt ein neues Objekt, das das gesamte Volumen beider Objekte enthält. Wie sie in dem Bild sehen können wurde die Kugel dem Volumen des Würfels hinzugefügt.

Intersect

Erzeugt ein neues Objekt, das die Schnittmenge beider Volumina beinhaltet.

[...]

Kleine Einführung in die 3-D Grafik[Bearbeiten]

Hinweis:

Dieser Artikel soll Ihnen helfen, sich leichter in Blender zurechtzufinden, indem er ein paar wichtige grundlegende Begriffe erklärt und einen kleinen Einblick ermöglicht. Für die ungeduldigen oder diejenigen, die erstmal nicht tief in die Materie eintauchen möchten...


Im dreidimensionalen Raum wird jedes Objekt von drei Koordinaten - von drei Vektoren beschrieben. Legt man dem lateinischen Wort Vektor seine Übersetzung - Träger - zugrunde, wird die Bedeutung klarer. Ein Vektor ist ein Träger, in unserem Fall meistens ein Träger von Informationen. In Form von Vektoren werden in der Computergrafik Orte im Raum, Punkte oder Richtungen dargestellt (z.B ein Pfeil mit Länge und Richtung. Die Länge beschreibt die Stärke des Effekts).

X (Länge), Y (Breite) und Z (Tiefe) sind diese Koordinaten. Ein Objekt, das neben den drei Raumkoordinaten noch eine vierte Koordinate als Zeitachse besitzt, nennt man 4-D. Anstelle einer Zeitachse sind natürlich noch andere Angaben denkbar, z.B eine Gewichtung wie bei NURBS.

Körper sind ja in der Wirklichkeit aus Atomen aufgebaut. Atome bilden die Moleküle, Moleküle alle Stoffe. Aus denen wiederum alle Dinge bestehen. Da es jedoch zu kompliziert wäre, dies am Computer nachzuahmen, bedienen wir uns eines einfacheren Modells: Eine komplette 3-D Szene besteht aus einer Reihe von Objekten. Diese Objekte können in einzelne Bausteine aufgeteilt werden. Die Primitive (Sngl. Primitive). Primitive sind in der Grafik elementare Grundobjekte aus denen sich kompliziertere Objekte bauen lassen (2D: z.B Kreise, Linien...; 3-D: z.B triangels (Dreiecke), Würfel, Kugeln...). Solche Bausteine können aber auch NURBS (Non-Uniform Rational B-Spline) und Bézierkurven sein, siehe (Abb.2). Bei beiden handelt es sich um Kurven, die auf unterschiedlichen Mathematischen Modellen basieren. Im Gegensatz zu den Mesh(Polynetzen), die später erläutert werden, lassen sich mit diesen Kurven, leicht runde Objekte erzeugen. Sie sind nicht derartig facettiert und verbrauchen dabei auch weniger Rechenleistung. Mit ihnen lässt sich eine Vielzahl an Gegenständen nachbilden, was aber bisweilen einiges an "Know-how" erfordert. Objekte die miteinander agieren und verschmelzen sind sog. Metaobjekte. Leider sind sie eigentlich nur nützlich, wenn es um spezielle Anforderungen geht oder wenn sie als eine Grundlage für späteres Mesh Modelling dienen.


Andere Objekttypen

Im folgenden - wohl am wichtigsten und meist genutzten - das Mesh (engl. Netz; Polygonnetz): Elemente der Mesh Approximation (Annäherung).


Elemente der Mesh Approximation

Ein Mesh besteht aus sog. Vertices (singl. Vertex; engl. für Eckpunkt, auch Scheitelpunkt). Vertices sind nur Punkte im Raum, die Koordinaten auf der X-, Y- und Z-Achse besitzen. Ein Vertex kann aber auch Informationen wie Farbe oder Texturkoordinaten speichern. Werden zwei Vertices miteinander verbunden, ergibt dies ein Edge (engl. für Kante). Aus solche Kanten entstehen Flächen, sog. Faces . Oft spricht man auch von Facetten. Ein Face kann aus triangels oder quads bestehen. Also aus Dreiecken oder Vierecken, mit drei bzw. vier Vertices. Das ist insofern wichtig, als dass manche Dateiformate (z.B "3ds.") nur triangels unterstützten. Ein Mesh aus Dreiecken zu modellieren bietet sich an, wenn die einzelnen Primitive glatt und eindeutig definiert sein sollen. Außerdem sind Dreiecke immer planar, d.h alle Punkte befinden sich auf einer Ebene. Modelle die aus Quads bestehen sind übersichtlicher und für den Computer leichter weiterzuverarbeiten. Das Modellieren mit Dreiecksflächen wird auch Triangulierung genannt, das mit Vierecken auch Paving. Mehrere solcher Faces bilden ein Polygon(netz) (Vieleck). Das gilt - in der 3-D Grafik - auch für gekrümmte Oberflächen. Zwingend ist jedoch, dass ein Polygon immer geschlossen ist. Surfaces sind in sich geschlossene Einheiten eines Modells. smoothing groups sind Gruppen von geglätteten Vertices . Es hängt von der Ausrichtung der Normalen ab, ob diese Gruppen aus Vertices glatt erscheinen. Ein Mesh zu glätten ist erforderlich, da Meshes oft facettiert sind. Die Kanten bzw. Facetten eines Mesh können auch in Abhängigkeit von der Größe ihrer Winkel zueinander geglättet werden. Normalen sind Vektoren, die die Ausrichtung des Vertex bzw. Faces bestimmen. Was folglich bestimmt, ob und wie eine Fläche vom Licht bestrahlt wird. Da die Normalen bestimmen wie ein Objekt vom Licht bestrahlt wird (siehe Abb. 4), muss man darauf achten wie sie ausgerichtet sind und sie ggf. neu ausrichten. Die Verteilung der Normalen kann auch durch eine sog. Normalmap gesteuert werden. Eine Normalmap speichert in den Farben Rot, Grün und Blau die X, Y und Z Koordinaten der Normalen. Die jeweiligen Farbwerte (0-255) entsprechen den Werten der Normalen (-1.0 - 1.0). Solche Normalmaps kann man entweder mit einem Plug-In für Bildbearbeitungsprogrammen erzeugen ( z.B "NVIDIA Photoshoph Plug-in" oder "Gimps Normalmap Plug-In") oder 'backt'(baking) sie aus Highpoly Modelle (detailliert, aber viele Vertices) auf Lowpoly Modelle (niedriger Polycount, wenige Vertices). Ebenso lassen sie sich einfach von Hand malen. Welche Methode man benutzt sollte, je nach gewünschtem Ergebnis, neu entschieden werden. Wie ein Material Licht reflektiert und wie es schattiert ist, wird aber nicht nur von der Normalmap bestimmt. Shader sind ein Beleuchtungsmodell. In der 3-D Grafik werden Shader für Diffuse-Reflexion (Lichtstreuung, siehe Abb. 5) z.B "Lambert" und Shader für Glanzlichter (Reflexion von Licht) z.B "Blinn" benutzt.

Texturen sind Bilder, die den Objekten Eigenschaften, wie Farbe, Lichtreflexion, Transparenz oder Struktur, verleihen. Wie eine solche Textur auf einem Objekt angeordnet wird, nennt man Texture Mapping (Musterabbildung). Um die Texturen richtig zu positionieren gibt es unterschiedliche Techniken. Die Koordinaten können beispielsweise auf Objekt- oder Szeneeigenschaften beruhen (Normalen, Bildschirmkoordinaten...). Oft genutzt werden Koordinaten die vom Objekt selbst bzw. der das Objekt umgebenden Bounding Box (siehe Abb. 7; oft stehen sie anstelle des Objekts, welches sie umschließen, um Übersichtlichkeit oder höhere Performance zu erreichen. Sie werden auch Bounding Volume gennant). Sehr präzise ist das UV Unwrapping, bei dem ein Objekt auseinander gefaltet wird (siehe Abb. 8). Anschließend wird es auf die Texture gemappt. Erwähnenswert sind noch Prozentuale Texturen, die durch einen Algorithmus vom Computer errechnet werden. Sie sind also beliebig skalierbar. Im Gegensatz zu Texturen, die auf Rastergraphik basieren. Bei weit entfernten Objekten, ist der hohe Detailgrad der Texturen nicht zu erkennen. Die Rechenleistung, die erforderlich war, ist also überflüssig. Schlimmstenfalls (was relativ oft der Fall ist) treten Moiré-Effekte oder Aliasing (Treppchen) auf. Um dem entgegenzuwirken, werden seit 1983 MIP-Maps verwendet. MIP-Maps sind unterschiedlich detaillierte Versionen der Haupttextur. Der Grad an Details hängt von der Entfernung zur Kamera ab. Viele Details, wenn sich die Textur nahe an der Kamera befindet. Wenige Details, wenn das Objekt weit entfernt ist. Dies wird als LOD (Level of Detail) bezeichnet. Die meisten 3-D Programme errechnen sie automatisch. Um zum Beispiel in Echtzeit-Simulationen mehr Geschwindigkeit zu erhalten, können die MIP-Maps auch heruntergerechnet werden. Dies geschieht durch einen Gauss-Filter. Der Moiré-Effekt tritt bei der Überlagerung von Rastern und Linien auf,z.B wenn periodisch wiederholenden Muster z.B karierte Hemden gefilmt, gescannt oder fotografiert werden. Deswegen trägt auch kaum jemand im Fernsehen stark karierte Hemden oder Jacketts. Wenn sie jedoch mit eine Digital Kamera ein Bild von einem Fernsehbildschirm nehmen, können sie den Moiré-Effekt sehen, der durch das Farbraster ensteht. Aliasing oder der Treppeneffekt (siehe Abb. 12) tritt an den Kanten gerasteter Bilder auf (engl. Jaggies; ganz genau genommen handelt es sich hierbei nämlich nicht um Aliasing, trotzdem weiß jeder was damit gemeint ist). Der Treppeneffekt tritt auch beim Druck auf, wird dort aber Sägezahneffekt genannt. Folge sind ausgefranste Kanten (z.B U, O oder P ). Im weiteren gibt es Techniken bzgl. Anti-Aliasing (z.B OSA <-> Oversampling), die den Treppeneffekt vermindern sollen (siehe Abb. 13). Rasterung bezeichnet den Vorgang bei dem Vektorgrafik (dreidimensionale Vektorgrafik bezeichnet man eher als Szene oder 3-D Modell) in auf Pixel basierte Rastergraphik. Diesen Vorgang bezeichnet man als Rendern (engl. berechnen). Diese Berechnung, auch Bildsynthese (nur bei 3-D) genannt, wird entweder in Echtzeit gerendert (z.B Computerspiele oder Blenders Viewport (Darstellungsfeld)) oder aber aufwendiger und länger, was sehr photorealistische Ergebnisse erzielen kann. Bei ersteren ist Geschwindigkeit entscheidend, weshalb mit einer Reihe von Tricks versucht wird, einen guten Kompromiss aus Rechenaufwand und Effekten zu erzielen. Beide enthalten Effekte wie Anti-Aliasing, Lichteffekte, Materialien und Textur in unterschiedlicher Qualität. Die höchste Qualität erzeugen die sog. Raytracer deren Modelle von Lichtreflexion, beeindruckende Resultate erzielen. Yafaray oder LUX sind solche Raytracer. Blenders Interner Render verwendetet ein vereinfachteres Modell zur Lichtreflexion. Ein Vorteil davon ist die höhere Rechengeschwindigkeit.

weiterführende Lektüre[Bearbeiten]

Deutschsprachige

Digital Media for Artists (E-Learning Projekt der Universität Linz. Besteht aus einzelnen Modulen, die das wichtige verständlich erklären. Behandelt neben 3-D noch weiteres wie DTP)

 Bildsynthese


Englischsprachige Guerrilla CG (leicht verständliche Videotutorials über Grundlagen) Tech Artists Wiki (Ausführliche Artikel, Website im Wikiformat)


Vektoren[Bearbeiten]





Beleuchtung und Shading[Bearbeiten]

Beleuchtung[Bearbeiten]

Beleuchtung beleuchtet eine Szene. Es wird zwischen lokaler und globaler Beleuchtung unterschieden. (3-D Prozess)

lokale Beleuchtung globale Beleuchtung
beachtet nur direkt einfallendes Licht (kein Schattenwurf!) beachtet auch indirekt einfallendes Licht (Reflexion, Transmission)
z.B Phong Beleuchtungsmodell; Lamberts z.B Raytracing; Radiosity
Shading[Bearbeiten]

Beim Shading wird berechnet wie eine Fläche beleuchtet wird.

Flat Shading (Lambert-Shading) Aus der Flächennormale wird die Schattierung der gesamten Facette berechnet. Dieses Verfahren ist sehr schnell, aber die einzelnen Facceten sind noch sichtbar.

Gouraud-Shading Schattierung wird in den Eckennormalen berechnet, dann für die Facette ein Farbverlauf zwischen den Ecknormalen interpoliert. Gouraud-Shading interpoliert also Farwerte. Der Nachteil ist, dass Highlights auf einer Facette durch die Interpolation verloren gehen können.

Phong Shading Schattierung eines Pixels wird aus dem entsprechenden Objektpunkt (z.B der Punkt B) berechnet, die dazu erforderliche Normale und deren Ausrichtung wird aus den Eckennormalen interpoliert.

Blinn-Shading Ähnelt dem Phong-Shader, bei der Berechnung wird jedoch noch ein Brechungsindex ermittelt. Was genauere Highlights bei starken Krümmungen ermöglicht. 3D-Grafik-Software bietet in der Regel auch einen Regler um den Brechungsindex einzustellen. Blinn-Shading (auch Blinn-Phong-Shading) wird auch standardmäßig in OpenGL und Direct3D verwendet.