06.Animation mit Szenegraphen
Transcrição
06.Animation mit Szenegraphen
Inhalt Animation Animation mit Szenegraphen Wiederholung und Vertiefung Szenegraphen Knotenobjekte Knotenhierarchie Zusammenfassung Tobias Breiner SS 2006 - Animation Szenegraphen Sichtsysteme für Fahrsimulationen Monitore & Displays Dome Visuelle Hardware Projektionen Tobias Breiner [email protected] 2/100 konventioneller Fahrsimulationen Pluralistik der Motion Bases Head Mounted Displays Cave & Semi-Cave Powerwalls Singlepowerwall SS 2006 - Animation Szenegraphen Multipowerwall Motionbases haben zwischen 1-12 Freiheitsgrade Bislang kaum genormte Schnittstellen zu MBs Sehr verschiedene Variationen der Motion Bases => Software meist nicht Hardware-unabhängig gebogene Powerwall Tobias Breiner [email protected] 3/100 SS 2006 - Animation Szenegraphen Inflexibilität gegenüber Hardwareveränderungen & neuen Anforderungen jeglicher Art Viele professionelle Fahrsimulationen entweder nicht echtzeitfähig oder von teuren Hochleistungs-Workstations abhängig Hybridfahrsimulationen, die zwischen professionellen und spielerischen Anwendungen interpolieren, sind meist sehr unzulänglich Keine freie Streckenwahl Keine Einbeziehung unerwarteter Extremsituationen Fahrsimulationen sind inflexibel Programmierer und Anwender sind unfrei in ihren Möglichkeiten SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 4/100 Die „Drei mal Fünf Freiheitsgrade“ des Freien Fahrsimulationskonzepts Defizite konventioneller Fahrsimulationen Tobias Breiner [email protected] 5/100 • • • • • freie Wahl der Eingabegeräte, der Motionbases und der Sichtsysteme freie Konfigurierbarkeit der Kameraeinstellungen, Blickwinkel und Auflösungen freie Wahl aus mindestens drei zugrundeliegenden Grafik-APIs (z.B. Direct 3D, OpenGL, Renderware3) freie Austauschbarkeit der Fahrzeuge, der Armaturenbretter und der Virtuellen Szenerie freie Streckenwahl innerhalb der Virtuellen Szenerie für den Testfahrer in allen drei räumlichen Dimensionen 5 SS 2006 - Animation Szenegraphen 5 Tobias Breiner [email protected] 5 6/100 1 Grundlagen Angemessene Physikalische Modelle Wichtigste Formeln z.B. Ifimetrale Fahrphysik Die Geschwindigkeitsveränderung ∆v pro Zeiteinheit ∆t beträgt: ∆v = a*∆t Drehmomente um Y-Achse Dabei ist die Beschleunigung a nach Newton: Gefederte Masse Beschleunigung, Impuls Ungefederte Masse a = FGes/m Also gilt: ∆v = FGes *∆t/m FGes = longitudinale Gesamtbeschleunigungskraft m = Masse des Fahrzeugs Druck, Haft- und Gleitreibung an den 4 Aufsatzpunkten SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 7/100 Gesamtbeschleunigungskraft Der Luftwiderstand FL berechnet sich mit: Aρ ⋅ v 2 c w FL = 2 FGes =FA − FL − FR = − FM FA = Beschleunigungskraft Netto FL = Luftwiderstand FR = Rollwiderstand FM = Massenträgheit Tobias Breiner [email protected] 8/100 Luftwiderstand Die longitudinale Gesamtbeschleunigungskraft FGes berechnet sich zu: SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen A = Querschnittsfläche ρ= Luftdichte v = Geschwindigkeit cw = Luftwiderstandswert 9/100 Querschnittsfläche Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 10/100 Luftdichte Luftdichte ρ: Gibt an, wie viel Masse in einem Kubikmeter Luft enthalten ist Ist abhängig von: Wetterlage Höhe über N.N. Quelle: http://www.kfz-tech.de/Formelsammlung/Luftwiderstand.htm Typischer Wert für Meereshöhe und 20°C: 1,2 kg/m3 Faustregel für Durchschnittsfahrzeuge: A = ca. 0,8 · b · h SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 11/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 12/100 2 Rollwiderstand Massenträgheit Der Rollwiderstand FR berechnet sich zu: FM = a*m FR= cRmg a = Beschleunigung des Fahrzeugs m = Masse des Fahrzeugs cR Rollwiderstandskooefizient m Masse des Fahrzeugs g Gravitationskonstante Achtung: bei sehr kleinen Geschwindigkeiten (< 5km/h)wird der Rollwiderstand durch den Haftwiderstand abgelöst, beim Schleudern und Durchdrehen der Reifen durch den Gleitwiderstand SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 13/100 Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 14/100 Einführung Echtzeit Die „fünf Freunde“ der 3D-Echtzeit Definition aus Wikipedia: 1. „Der Begriff „Echtzeit“ legt lediglich fest, dass ein System auf ein Ereignis innerhalb eines vorgegebenen Zeitrahmens reagieren muss.“ 2. =>„Echte“ Interaktivität 4. In der Computergraphik liegt dieser Zeitrahmen bei ca. 0.05s (entspricht 20 fps oder Bewegtbildgrenze) 5. SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 15/100 3. Viel in Initialisierung verschieben! Maschinencodenah programmieren! Polygone einsparen! Angemessene physikalische Modelle verwenden! Performanten Szenegraphen wählen! Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 16/100 Grundlagen Polygoneinsparungen Skydome Sky-Dome L.o.D.Techniken Bumpmapping Billboarding Texturen Quelle: http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Build_a_skybox & http://www.starship-enterprises.net/3D%20Rotating%20Dome.htm SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 17/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 18/100 3 Multi-Skydomes Billboards Polygone, welche sich stets in Richtung des Betrachters orientieren Mehrere Schichten: äußerste opak, innere halbtransparent SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 19/100 Billboards (Variationen) Tobias Breiner [email protected] 21/100 Multibillboards mit Verschiebungen/Skalierungen Mehrere hintereinanderliegende Schichten von Billboards Vorteile: Tiefenschärfe (wenn Rendermodell dies unterstützt) Interne perspektivische Verschiebungen bei Nahbetrachtung SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 22/100 Billboards mit zusätzlichen semiorthogonalen Schnittflächen Vorteile: Formänderungen (z.B. für Wolkenveränderungen, Rauch,o.ä.) Tobias Breiner [email protected] 20/100 Criss Cross Billboards Multibillboards mit Internen Verschiebungen und/oder Skalierungen Vorteile: SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Multibillboards Billboards mit Alpha-Textur: Billboards mit transparenten und opaken Anteilen (fast immer) Multi-Billboards: Mehrere hintereinanderliegende Schichten von Billboards Axis alined Billboards: Billboards, die sich nur um eine definierte Achsedrehen können – in der Regel y-Achse Criss-Cross-Billboards: Billboards die zusätzliche Flächen beinhalten, welche die Hauptffläche durchdringen Video-Billboards: Billboards mit einer Videotextur SS 2006 - Animation Szenegraphen SS 2006 - Animation Szenegraphen 23/100 Tiefenschärfe (wenn Rendermodell dies unterstützt) Interne perspektivische Verschiebungen bei Nahbetrachtung Gut geeignet für Bäume SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 24/100 4 LoDs mit Final Billboarding Sky-Billboarding Vorteil gegenüber Sky-Dome: Quelle: http://www.720studios.net/~sam/projProposal.php •Wolken verschieben sich gegeneinander •Überlagerung von Wolken Nachteil: •Artefakte bei Wolkenkreuzungen Quelle: http://www.720studios.net/~sam/projProposal.php Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 25/100 Billbaords mit Alpha-Textur Ohne Alpha SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 26/100 Schatten-Billboarding mit Alpha Quelle: http://www.hortus3d.com/fr_bil.htm Quelle: http://www.hortus3d.com/fr_bil.htm Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 27/100 Nächstes Kapitel SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 28/100 Grundlagen Szenegraphen Szenegraph – Nameschaos •Englisch: scene graph oder scenegraph Wiederholung und Vertiefung •Französisch: moteur 3D orienté scène, gestion des scènes hiérarchisées oder base des donées pour scènes Szenegraphen •Spanisch: motór 3D orientado a escenas oder grapho jerárquico de escena Knotenobjekte •Norwegisch: 3D motor (på hierakiske organisasjon) •… •Deutsch Szenegraph oder Szenengraph (beides richtig, im Folgenden erstere Version verwendet, übrigens, eine 3DEngine ist nicht unbedingt ein Szenegraph) Knotenhierarchie Resümee SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 29/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 30/100 5 Grundlagen Grundlagen Beispiel Was ist ein Szenegraph? •Graphikschnittstelle •Beschreibung der hierarchischen Objektstruktur einer Szene •Gerichteter und azyklischer Graph •Verschiedene Objekte als Knoten SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 31/100 Grundlagen SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 32/100 Grundlagen Objekthierarchie Vorteile von Szenegraphen •Denken in Objekten statt in Punkten/Kanten & Polygonen •Erleichtert die Behandlung großer Szenen mit vielen gleichförmigen Objekten •Komprimierung •Beschleunigung von Statusänderungen •Verbesserung des Cullings SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 33/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Einführung Grundlagen Der wahre Y2K-Bug Vielfalt an Szenegraphen Microsoft –Direct 3D SGI – Iris Inventor & OpenPerformer Fahrenheit OpenGL Consortium - OpenGL (Apple - Quickdraw3D) SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 35/100 Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph SS 2006 - Animation Szenegraphen 34/100 OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] 36/100 6 Grundlagen Grundlagen Vielfalt an Szenegraphen Vielfalt an Szenegraphen Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph SS 2006 - Animation Szenegraphen OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph 37/100 SS 2006 - Animation Szenegraphen OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] Grundlagen Grundlagen Vielfalt an Szenegraphen Vielfalt an Szenegraphen Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph SS 2006 - Animation Szenegraphen OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph 39/100 SS 2006 - Animation Szenegraphen OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] Einführung Grundlagen Vielfalt an Szenegraphen Vielfalt an Szenegraphen Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph SS 2006 - Animation Szenegraphen OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph 41/100 SS 2006 - Animation Szenegraphen 38/100 40/100 OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] 42/100 7 Grundlagen Grundlagen Vielfalt an Szenegraphen Vielfalt an Szenegraphen Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph 43/100 OpenSG OpenPerformer Panard Vision RealiMation Renderware SG SurRenderer VirTools VisKit Xeios Wild Magic 3D 3D Generation … 3DS Inventor 1.0 Mantra4D-DB OpenFlight RealiBase VRML 1.0 VRML 2.0 VRML 97 X3D … Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen Grundlagen Grundlagen Vielfalt => Beispielszenegraph Rechts- vs. linkshändige Allscene 3D Crystal Space Gamembryo Gismo 3D IrisInventor Irrlicht Java3D Mantra4D Nebula Device NeMo Ogre OpenScengraph Vorteile: OpenSG 3DS OpenPerformer Inventor 1.0 •selbst erstellte Fahrsimulation Panard Vision Mantra4D-DB RealiMation OpenFlight •machtvoll Renderware SG RealiBase SurRenderer VRML 1.0 •didaktische Einfachheit VirTools VRML 2.0 VisKit VRML 97 •konsistente Teilung zwischen Xeios X3D virtueller und realer Szene Wild Magic 3D … 3D-Generation 3D-Generation … Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 45/100 44/100 y y z x x links: z rechts: RealiMation Iris Inventor 3D-Generation Open Performer … … SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 46/100 Nächstes Kapitel Knotenobjekte Arten von Knoten Wiederholung und Vertiefung Szenegraphen Knotenobjekte Beispielanwendung Zusammenfassung SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 47/100 Virtuelle Szene Reale Szene Gruppenknoten •Gruppenbehälter •Transformationen •Switchknoten (Level-of-Detail, Animation etc.) •… Blattknoten •Lichter •Geometrien •Kameras •Materialien, Texturen, Farben •... Gruppenknoten •Gruppenbehälter •Computer •Kanäle •Switchknoten (an, aus) •… Blattknoten •Eingabegeräte •Sichtsysteme •Sichtfenster •Soundgeräte •Basis-Render-API •… SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 48/100 8 Bildung der Objekthierarchie Knotenobjekte der Szenegraphen Virtuelle vs. Reale Szene Szenen Virtuelle Szene g Gesamtszene Reale Szene SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 49/100 Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 50/100 Knotenobjekte der Szenegraphen Virtuelle Szene Optische v.Sz. Haptische v.Sz. Rendercomputer Synonyme: Machines Ermöglicht verteiltes Rendering im LAN LAN Sicht aus linkem Seitenfenster SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 51/100 Sicht aus rechtem Seitenfenster Sicht aus Windschutzscheibe SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Sichtkanäle Sichtkanäle Synonyme: Channels Parameter: horizontale und vertikale Auflösung 2D-Position auf dem Sichtsystem (xS,yS) Mono vs. Double Buffering Konkatenation einer Basis-Graphik-API (OpenGL, Direct3D, Glide, Nullrenderer …) SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 53/100 Open GL SS 2006 - Animation Szenegraphen Direct 3D 52/100 Renderware16 Tobias Breiner [email protected] 54/100 9 Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Viewports Viewports Synonyme: Views, Renderobject Parameter: Monoskopisch, stereoskopisch oder polyskopisch Gouraud shaded, flat shaded, shaded Wireframe, unshaded wireframe oder Vertex clouds horizontale und vertikale Auflösung 2D-Position innerhalb des Kanals Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen Wireframe Gouraud Shaded Wireframe Gouraud Shaded 55/100 SS 2006 - Animation Szenegraphen Flat Shaded Gouraud Shaded & Antialiasing Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Viewports Kameras 56/100 Synonyme: Cameras, Eyes, Viewpoints, ViewPlattforms Flat Gouraud Typen: zielungebundene vs. zielgerichtet Parameter: Near Clipping Plane, Far Clipping Plane, Sichtwinkel, oft eigene Orientierung (Euler-Winkel),… Phong Quelle (modifiziert): http://www.point-libre.org Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 57/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Kameras Kameras Es kann zwischen horizontalem Sichtwinkel αhor und vertikalem Sichtwinkel αver unterschieden werden. In der Praxis wird der vertikale Sichtwinkel meist indirekt aus dem Verhältnis zwischen Höhe h und Breite b der Viewport-Pixelauflösung ermittelt: α ver = α hor ⋅ SS 2006 - Animation Szenegraphen 58/100 Far Clipping Plane, Nur Objekte innerhalb des View Frustrums (= Sichtpyramidenstumpfes) werden angezeigt αver = vertikaler => Sensible Wahl der Clipping-Ebenen erforderlich! Sichtwinkel h b Tobias Breiner [email protected] 59/100 SS 2006 - Animation Szenegraphen Near Clipping Plane View Frustrum Tobias Breiner [email protected] 60/100 10 Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Kameras Kameras zielgerichtete zielungebundene 2 Positionen (Ort und Ziel) Position (Ort) und Orientierung (Zielrichtung) Tiefenunschärfe: Feature bieten nur wenige Szenegraphen Zusätzliche Angabe einer FokussierungsDistanz notwendig Nicht mit OpenGLoder Direct3Dbasierenden Szenegraphen machbar http://bf.monis.ch/zentralarchiv/computergrafik/3dgloss2.htm SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 61/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Lichter Lichter Synonyme: Lights, Illuminations Spotlight Parameter: Lichtart (Ambient-, Spot-, Punkt, …) Farbe Intensität (mit und ohne Entfernungsabnahme) ev. Richtung & Kegelöffnungswinkel (bei Spot-Lichtern) SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 63/100 Punktlicht Lichtarten Ambientes Licht Paralleles Licht Flächenlicht SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Lichter Lichter Farbige Lichter Einigen Szenegraphen bieten negatives Licht an (einfache Schatten durch negative Spotlights möglich) Tobias Breiner [email protected] 65/100 64/100 Das „Oben Links“-Prinzip der Lichtrichtung (Links oben stehende Lichtquellen wirken intuitiv „richtig“) Anwendung in: Kunst User Interfaces Typographie SS 2006 - Animation Szenegraphen 62/100 SS 2006 - Animation Szenegraphen A Tobias Breiner [email protected] 66/100 11 Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Transformationen Animation mit Transformationen Synonyme: Transforms, TransformGroups, Instances, Locales, LocaleCoordinates, Placements Translation Rotation Skalierung ev. Scherung i.d.R. noch weitere Attribute zusätzlich zu homogenen Koordinaten (Switchs, Renderparameter, Bounding Boxes …) Achtung 1: Rechts- und Linkshändige Systeme y y z x x z links: rechts: RealiMation Iris Inventor Open Performer 3D-Generation SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 67/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Animation mit Transformationen Animation mit Transformationen Achtung 2: Rotationen nicht kommutativ! Achtung 3: Gimbal Lock bei Rotationen Verlust eines Freiheitsgrades => 2 Singularitäten M Rot1 • M Rot 2 ≠ M Rot 2 • M Rot1 68/100 Entgegen einer weit verbreiteten Meinung sind Quaternionen nicht die Lösung für Gimbal Lock! Statt dessen: Umrechnung der globalen Orientierungen in lokale Koordinatensysteme Quelle: http://www.yourdictionary.com/images/ahd/jpg/A4gimbal.jpg SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 69/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Geometrien Animation mit Geometrien Synonyme: Geometry, Shapes, GeoData In der Regel intern abgelegt als Indexed Face Sets: Tabelle von Polygonen, Vertices, Flächennormalem, Vertice-Normalen, Strips & Fans, Texturkoordinaten, Texturpointer, … SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 71/100 70/100 Verschiebung der einzelnen Vertices Ändern der Normalenvektoren => Verändern des Shadings SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 72/100 12 Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Emitter Gruppen Synonyme: ParticleSources, Sources Synonyme: Groups, Gatherings Containerobjekt für alle anderen Knotenobjekte des Szenegraphen Meist mit boolschen Flag versehen (zum an- und ausschalten des Renderings ganzer Objektgruppen) Quelle von virtuellen Partikeln Viele Parameter Vorgefertigte Emitter: Feuer, Rauch, Abgasen, Wolken, Funken, Explosionen SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 73/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 74/100 Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Eingabegeräte Texturen Synonyme: Input Devices, Inputs Tastatur 3D Maus Maus TouchPad Lenkrad Joystick … Synonyme: Textures, Skins Arten: Zielort: Surface, Background … Herkunft: Prozedurale vs. Image Texturen Anzahl: Single-, Dual-, Multitextures Interpretation: Farbgebung (i.d.R.), Dot3-Bumpmap, Lightmap, Shadowmap, Vertex Displacement Map … Animation: Videotexturen, Gif-Texturen, statische Texturen Transparenz: Alpha-Texturen, Chromakeying-Texturen, opake Texturen Granularitätsstufen: Mipmapped (mit und ohne Blending) Aufbringungsweise: clamped, tiled, scaled, repeated … Dimension: 2D, 3D SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 75/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Texturen Texturen 76/100 Clamping Prozeduale 3DTexturen Tiling Scaling Quelle: http://www.scheib.net/school/782/lab2/cat.html Quelle (modifiziert): Michael Bax: http://www.stanford.edu/~mbax/textures/ SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 77/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 78/100 13 Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Texturen Texturen Dot3-Bumpmapping Erzeugt Oberflächenrelief-Anmutung durch Modifikation der Normalenvektoren, aber: keine räumliche Verschiebung bei Kameraanimationen keine Selbstokklusion keine Silhouettenbildung ohne Bumpmapping mit Bumpmapping Quelle (modifiziert): http://www.vq-2.com/graphics/engine/shots/bump_2.jpg Quelle (modifiziert): Michael Bax: http://www.stanford.edu/~mbax/textures/ SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 79/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Texturen Texturen Zusätzlicher Alphakanal (zu Rot-, Grün- und Blaukanal) gibt Transparenz an Multitextured Lightmap Quelle http://www.nvnews.net/previews/geforce3/multitexturing.shtml SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 80/100 Quelle http://www.delphigl.de/tutorials/alphamask.html 81/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Knotenobjekte der Szenegraphen Knotenobjekte der Szenegraphen Texturen Animation von Texturen Chromatischer Schlüssel (hier: Magenta) kann ebenfalls Transparenz anzeigen Vorteil: Kein zusätzlicher Alphakanal notwendig Nachteil: Keine Semitransparenz möglich 82/100 Videotexturen, „Animated GIF“-Texturen Veränderung der Ausgangsparameter bei Prozeduralen Texturen Texture Warping (Verändern der Texturkoordinaten) Texture Weighting (Verändern der Gewichte bei Multitextures über die Zeit) Generelle Parametermodifikation (z.B. Änderung des Höhenfaktors bei Bumpmaps oder des Transparenzwertes einer Textur über die Zeit) Ersetzen der Textur (bzw. Texturlink verändern) Quelle (modifiziert) http://www.delphigl.de/tutorials/alphamask.html SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 83/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 84/100 14 Nächstes Kapitel Minimalset für Knotenobjekte Objekthierarchie in Beispielanwendung Viewports Szenen (meist nicht unterschieden zwischen real und virtuell / haptisch und optisch, etc.) Geometrien Transformationen Lichter Kameras Materialien/Texturen (i.d.Praxis) Wiederholung und Vertiefung Szenegraphen Knotenobjekte Beispiel-Objekthierarchie Beispielanwendung Zusammenfassung SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 85/100 Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen Bildung der Objekthierarchie Bildung der Objekthierarchie Hierarchie der Gesamtszene Hierarchie der Gesamtszene 86/100 Ifimetrale Fahrphysik Konsistenz SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 87/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] Bildung der Objekthierarchie Bildung der Objekthierarchie Hierarchie des Fahrzeuges Hierarchie des Fahrzeuges SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 89/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 88/100 90/100 15 Bildung der Objekthierarchie Bildung der Objekthierarchie Hierarchie der Virtuellen Szene Virtuelle vs. Reale Szene SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 91/100 Bildung der Objekthierarchie Tobias Breiner [email protected] SS 2006 - Animation Szenegraphen 92/100 Nächstes Kapitel Codebeispiel 3D-Generation Resümee Wiederholung und Vertiefung CVirtualScene vscOptisch; CGroup grpFahrzg; vscOptisch.Add(grpFahrzg); vscOptisch.Switch(true); Bildung von Objektinstanzen Arten von Szenegraphen Konkatenation Knotenobjekte Parametrisierung Beispielanwendung … SS 2006 - Animation Szenegraphen Zusammenfassung Tobias Breiner [email protected] 93/100 Zusammenfassung Tobias Breiner [email protected] Tobias Breiner [email protected] 94/100 Ausblick Szenegraphen: Geschichte Arten Vor- und Nachteile Knotenobjekte Beispielanwendung SS 2006 - Animation Szenegraphen SS 2006 - Animation Szenegraphen Quaternionen Slerp Nurbs Beispielanwendung Interpolationsverfahren 95/100 SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 96/100 16 Ende Danke für Ihr Interesse! Interesse! Tobias Breiner [email protected]@gdv.informatik.uni-frankfurt.de SS 2006 - Animation Szenegraphen Tobias Breiner [email protected] 97/100 17