150 likes | 274 Views
Bsp.: RotationInterpolator - Spezieller Interpolator - Enthält eine Transform3D zur Beschrei-bung der Lage des lokalen Koordina-tensystems zum übergeordneten Koordinatensystem - Interpoliert Rotationen um die Y-Achse des lokalen Koordinatensystems
E N D
Bsp.: RotationInterpolator - Spezieller Interpolator - Enthält eine Transform3D zur Beschrei-bung der Lage des lokalen Koordina-tensystems zum übergeordneten Koordinatensystem - Interpoliert Rotationen um dieY-Achse des lokalen Koordinatensystems - Entsprechend der Alpha-Werte wird zwischen minimalem und maximalem Winkel interpoliert, höchstens jedoch zwischen 0 und 2* VirtualUniverse Locale BG BG Sub-graph Verhalten von Objekten in der Szene T RI
Bsp.: RotPosPathInterpolator - Spezieller PathInterpolator - Interpoliert für eine Menge von Knoten parallel Position und Rotation - Rotation wird als Quaternion dargestellt VirtualUniverse Locale BG BG Sub-graph Verhalten von Objekten in der Szene T RPPI
Quaternionen - Quadrupel (a; b; c; d), stellt hyperkomplexe Zahl (a+bi+cj+dk) mit imaginären Zahlen i, j und k dar.Auf der Menge der Quaternionen sind Addition und Multiplikation auf bestimmte Weise definiert. - Anwendung: Darstellung von Rotationen um eine beliebige Achse durch ein Quaternion des Betrags 1 - Betrag eines Quaternions ist definiert als √(a2+b2+c2+d2) - Rotation um einen Winkel um eine Achse (x; y; z) wird dargestellt durch das Quaternion q = (cos( /2), x·sin( /2), y·sin( /2), z·sin( /2)) - Weitere Informationen z.B. unterhttp://www.iti.fh-flensburg.de/lang/algorithmen/grundlagen/quat.htm Verhalten von Objekten in der Szene
Beschreibung einer Rotation durch Quaternionen (cont‘d) - Anwendung in Java3D in der Klasse Quat4f bzw. Quat4d - Vorsicht!In Java3D wird die Rotation um einen Winkel um eine normalisierte Achse (a; b; c) durch eine Instanz von Quat4f oder Quat4d mit den Parametern x, y, z, w (in genau dieser Reihenfolge!) dargestellt mitx = a·sin( /2),y = b·sin( /2),z = c·sin( /2)undw = cos( /2) Verhalten von Objekten in der Szene
Texture Mapping Texturen + =
Wiederholung: Shape3D - Enthält Spezifikation für komplexe 3D Geometrie (z.B. TriangleStrip) - Definiert zusätzlich das Erscheinungsbild der Geometrie VirtualUniverse Locale BG BG T P S Geometry Appearance P Texturen
Appearance - Definiert das Aussehen eines Shape3D, z.B. - Linien-, Punkt- und Polygonattribute - Material-, Darstellungs- und Transparenzattribute - Texturen und zugehörige Attribute VirtualUniverse Locale BG BG T Texturen P S Geometry Appearance P
Texture - Abstrakte Klasse, die allgemeine Eigenschaften einer Textur definiert wie: - Anpassung der Textur an die Oberfläche oder - Kachelung - Unterklassen: - Texture2D - Texture3D - TextureCubeMap - Auflösung der Textur muss in jeder Dimension immer Potenz von 2 sein! VirtualUniverse Locale BG BG T Texturen P S Geometry Texture Appearance P
MIP-Mapping - Level-of-detail Methode für Texturen - Für verschiedene Level werden Texturen unterschiedlicher Auflösung bereitgestellt, abhängig vom gewünschten Level-of Detail - Auflösung je Dimension verdoppelt sich bei jedem Detailierungsschritt Texturen
VirtualUniverse Locale BG BG T Texturen • Texture2D • - Zweidimensionale Textur • - Problematisch beim Mapping auf dreidimensionale Objekte P S Geometry Texture Appearance P =
VirtualUniverse Locale BG BG T Texturen • TextureCubeMap • - Erlaubt ein würfelförmiges Mapping von zweidi-mensionalen Texturen auf dreidimensionale Objekte P S Geometry Texture Appearance P
TextureLoader - Lädt eine Textur aus - java.awt.Image - java.awt.image.BufferedImage - einer Bilddatei - Wird die Textur aus einer Bilddatei geladen, muß eine AWT-Komponente (z.B. ein JFrame) als „Image Observer“ angegeben werden - Enthält Methoden, um auf das Bild oder die Textur zuzugreifen VirtualUniverse Locale BG BG T Texturen P S Geometry Texture Appearance P TextureLoader
TexCoordGeneration - Enthält alle Parameter zur automatischen Generierung von Texturkoordinaten - Texturkoordinaten spezifizieren, welche Texels den Punkten des Polygonnetzes zugeordnet werden - Zwischen den Punkten werden die Texturkoordinaten interpoliert - Erlaubt Definition der Ebene, in der die Textur auf das Objekt gemapped werden soll. VirtualUniverse Locale BG BG T Texturen P S Geometry Texture Appearance P TexCoordGeneration
TexCoordGeneration - Typische Anwendung: TexCoordGeneration texCoordGeneration = new TexCoordGeneration(TexCoordGeneration.OBJECT_LINEAR, TexCoordGeneration.TEXTURE_COORDINATE_2, new Vector4f(0.0f, 0.0f, 1.0f, 0.0f), new Vector4f(1.0f, 0.0f, 0.0f, 0.0f)); Texturen
TextureAttributes - Beschreibt, wie die Textur die Eigenschaften des darunter liegenden Materials modifizert. VirtualUniverse Locale BG BG T Texturen P S Geometry Texture Appearance P TextureAttributes TexCoordGeneration