Modellierung Oliver Hartmann oliver.hartmann@uni-ulm.de
Inhalt Boolesche Operationen Splines B-Splines Bezier-Kurven NURBS Anwendung Sculpting Volumengrafik Marching Cubes Ray Casting Texture Mapping
Boolesche Operationen Kombinieren und Subtrahieren von Objekten Geschlossene Objekte benötigt
Boolesche Operationen Orginal Union Intersect Difference
Splines Begriff aus dem Schiffsbau glatte Verbindung zwischen Punkten Bisher: Dreickecksnetze Jetzt: parametrische Datenstruktur
Spline n-ten Grades Interpolation zwischen n+1 Punkten f + 4 3 2 ( x) = a4x + a3x + a2x + a1x a0 - Hoher Rechenaufwand - Nicht gewünschte Form
Kubische Splines Jeweils 2 Punkte mit einem Spline verbinden Verwendung von Polynomen 3ten Grades f + 3 2 ( x) = a3x + a2x + a1x a0 2 Punkte Steigung Krümmung
B-Splines Parameterdarstellung n 1 = i= C ( t) N ( t) P i, P Verschiedene Basen 3-Term-Rekursion i
Bézierkurve Teilmenge der B-Splines Pierre Bézier bei Renault Kurve: Bernsteinpolynom: i n i i n P t B t C ) ( ) ( 0, = = 1, ) (1 ) ( = n i i n t t i n t B
Bézierkurve 4 Handle-Typen: Aligned Free Vector Auto
Non-Uniform Rational B-Splines Darstellung aller Formen Gewichtung Schwer zu handhaben echte Kreise möglich
Extrude Kurven eine Höhe geben Abrunden
Extrude Entlang eines Pfades Verbinden von Profil und Pfad Radius manuell bestimmen oder anhand einer Kurve
Multiple Profile Skinning
Auflösung Umwandlung in Polygon- Mesh Auflösung frei wählbar
Verformung Polygon-Modell entlang einer Kurve verformen Bewegung an voreingestellter Achse
Vorteile Vor- und Nachteile gegenüber Polygonen Exakt Weniger Ressourcen während dem Modeln Einfaches Erstellen runder Formen Nachteile: Mehr Ressourcen beim Rendern Komplexe Handhabung
Sculpting Modifikation des Meshes über Pinsel Direktes Malen auf dem Mesh Kein Hinzufügen oder Löschen von Vertices, Edges oder Polygons Organische Modelle
Sculpting Verschiedene Pinsel Draw Smooth Pinch Inflate Grab Layer Flatten
Volumengrafik Hauptsächlich in der Medizin verwendet Eher selten in Spielen Outcast Comanche Objekte ohne klare Form Objekte nicht nur durch Oberfläche beschrieben
Volumengrafik DataSet: 3D-Array Geschichtete 2D-Texturen Extrem hoher Speicherbedarf 256 3 x8 Bit = 16MB 1024 3 x8 Bit = 1GB Voxel (volumetric + pixel) nulldimensional Interpolation
Volumengrafik Modelling Hardware Prozedural Mathematische Funktionen Fraktale Sculpting Boolesche Operationen Simulation Displacement Mapping Polygonen
Wolken Bounding Box gibt 3D- Array vor Füllen des Arrays über mathematische Funktion Viele Kugeln
Marching Cubes Voxelgrafik in Polygone Hardwarebeschleunigtes Rendern Zerlegung in kleine Würfel Grenzwert legt fest, ob Würfel in oder außerhalb des Objekts liegt Triangle Lookup Table (TLT) 256 verschiedene Würfel 15 Möglichkeiten wie die Dreiecke innerhalb des Würfels liegen können
Marching Cubes 1. Unterteilung in Würfel mit jeweils 8 Voxel 2. Voxeldichte > Grenzwert 1 (sonst 0) 3. Pro Würfel entsteht eine 8-stellige Binärzahl 4. Eintrag in der TLT nachschlagen 5. Einheitsnormale berechnen
Ray Casting Rendern in 4 Schritten Klassfikation Shading Interpolation Compositing Für jedes Pixel ein Strahl Transparenz bestimmen Farbe bestimmen Rechenaufwändig Aber gute Qualität
Texture Mapping Unterteilung des Arrays in 2D-Schichten Belegen der Schichten mit RGBA Texturen Alpha-Kanal verhindert verdecken der hinteren Ebenen Optimale Qualität, falls Texturen Bildebene Winkel können kleiner 45 gehalten werden
3D Texture Mapping Gesamten Satz in Grafikkartenspeicher laden Danach Schneiden in 2D Flächen Immer parallel zur Bildebene Hardwarebeschleunigung nur mit speziellen Grafikkarten Bessere Bildqualität
ENDE
Quellen http://www.mathematik.de/spudema/spudema_beitraege/beitraege/scheiffert/index.htm http://www.numerik.mathematik.uni-mainz.de/didaktikseminar/gruppe3/index.html http://de.wikibooks.org/wiki/blender_dokumentation http://wiki.blender.org/index.php/main_page http://www.blender.org http://www.uni-koblenz.de/~cg/ws0607/cg2folien/19_visvol1_6.pdf http://www.uni-koblenz.de/~cg/diplomarbeiten/virtualsculpture.pdf http://dmytry.pandromeda.com/ http://www.informatik.uni-mainz.de/lehre/cg/ss2006_scg/talks/volumerendering/volumerendering.pdf http://www.informatik.uni-mainz.de/lehre/cg/ss2006_scg/talks/marchingcubes/marchingcubes.ppt http://de.wikipedia.org/wiki/marching_cubes http://wwwcg.in.tum.de/teaching/ss2004/prosem/workouts/shopov/ausarbeitung.pdf http://www.cgv.tugraz.at/0x811be082_0x00004aef