Pro Ogre 3D Programming. Überblick 1.Resource Management 2.Ogre Render Targets 3.Animation 4.Billboards and Particles.

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

Support.ebsco.com Lernprogramm zu EBSCOadmin Reports & Statistics.
Computer Graphics Shader
Microsoft® Office Excel® 2007-Schulung
Von der Kamera in den PC mit Windows 7
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Zentraleinheit CPU, Motherbord, RAM
Java: Dynamische Datentypen
Indirekte Adressierung
Polymorphie (Vielgestaltigkeit)
OGRE Object-Oriented Graphics Rendering Engine Szenen-orientierte, flexible 3D Engine in C++ Hardware-beschleunigte 3D Grafiken Unterstützt Direct3D und.
Java3d „Licht und Material“
Joao Monteiro Meda1 Label und Annotationen Verwaltung und Gestaltung.
1. Platzierung 2.Verwaltung und Gestaltung
By Monika Krolak & Christian Meschke
Einführung in Visual C++
DVG Klassen und Objekte
Special Effects Realistischeres Rendern einer Scene.
Weiteres Programm Studium des Breitendurchlaufs Hierzu
„Datei speichern unter“
Distributed Multimedia Control Steuerung und Überwachung von Präsentationen in Netzwerken.
Kundenspezifische Anpassungen - Ändern von Objekten
Schnelles und effizientes Suchen. Was ist MPEG 7? Wie funktioniert MPEG? Was bietet MPEG 7? Wo wird MPEG 7 verwendet?
Dokumente AutorMatthias Bahr, Montanus-Realschule Leverkusen, NRW Erlernen des Umrechnens von Längen-, Flächen-, Volumen- und Masseneinheiten; Trainieren.
Ich möchte gerne mehrere Bilder auf ein Folie
Sharpdesk Überblick Desktop Composer Suche Imaging      
6 Mit dem Internet Explorer im WWW arbeiten
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
XNA 3D Tutorial Anzeigen eines Objektes. Inhalt Lernen Sie, wie Sie Modelle implementieren. Initializing Lernen Sie, wie Sie Modelle aus der Content Directory.
How to make a PIXAR movie
Hyperlinks und Anker Links notieren
Christian Moser Software Developer and UX Designer Zühlke Engineering AG
JavaScript.
1 Alexander Arimond, University of Kaiserslautern, Germany Entwicklung und Evaluation eines Raytracing-Dienstes für das Venice Service Grid Alexander Arimond.
ZIV-Schulung Word Grundlagen
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Import und Verknüpfung von Daten
Ändern von Merkmalen Geometrie Topologie Attribute.
Von der Planung bis zum Hauptmenü Seminar: Softwaretechnologie II Dozent: Prof. Manfred Thaller Referent: Jan Bigalke.
Proseminar: How to make a PIXAR movie?
Mit Favoriten (Lesezeichen) arbeiten
ProSeminar WS 2007/08 Leo Hackstein
Baum-Simulation mit Lindenmayer-System
7.3.1 Ein Modellierungsbeispiel (1|9)
Visualisierung als Unterstützung des Denkens Visualisierung semantischer Information
Erste Schritte in DELPHI
Animationen.
ANIMATION II Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung SS 2013 Softwaretechnologie II (Teil II): Simulation und 3D.
CSS Cascading Style Sheets
Anna Steinke‌ WG13 ‌‌‌ Köln, Wie sichere ich meine Daten? Wie mache ich meinen PC sicher?
WeLoad Tagung der eLSA-Bundeslandkoordinator/innen
Lektion 1 - Lektion 2 - Lektion 3 - Lektion 4
Die Welt der Shader Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Fortgeschrittene Techniken.
Ein Vortrag von Marcel Siegert und Philipp Hoffmann
1. Charakteranimation 2. PlugIns schreiben und laden Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 2010/2011.
Digitale Annotationen. Grundlage: John Bradley “Towards a Richer Sense of Digital Annotation: Moving Beyond a Media Orientation of the Annotation of Digital.
A&D Persa K TB Herzlich Willkommen zum Flash 4 - Seminar.
Und B E S C H R I F T U N G Matthias Fahle
 Einführung  Szenengraphen  Bestandteile  Eingabe  JOGL  LWJGL  Beispiele  ARDOR3D Games 04/23/12Ardor 3D – Holzwarth/Kau 2.
Ein kleiner Einblick für Anfänger
Preisfindung Rabattgruppen
1 Prozesse im Studiengangsmanagement Kontext: Neues Abschlussziel erstellen Neues Studienfach erstellen.
1 Prozesse im Studierendenmanagement Kontext: Studierenden anlegen Sonstige Aktivitäten: Suchfunktion, s verschicken, diverse Auswertungen.
1 Prozesse im Studiengangsmanagement Kontext: Neues Abschlussziel erstellen Neues Studienfach erstellen.
Arbeiten mit WordSmith 4. Inhalt 1. Arbeiten mit der Funktion Wortliste (im getaggten Korpus) 1. Arbeiten mit der Funktion Wortliste (im getaggten Korpus)
Installation und Nutzung des Eyeblaster Workshops und Hochladen in MediaMind.
Key-Value Paare (KVP) - Metadaten für Kanäle speichern und nach MDF4 exportieren PM (V1.0)
Dr. Wolfram Amme, Automatische Speicherverwaltung, Informatik II, FSU Jena, SS Automatische Speicherverwaltung.
Von Wietlisbach, Lenzin und Winter
 Präsentation transkript:

Pro Ogre 3D Programming

Überblick 1.Resource Management 2.Ogre Render Targets 3.Animation 4.Billboards and Particles

Resource Mangement Ressource: alles was Ogre zum rendern einer Szene benutzt Resource Management: organisatorische Strategie, die Ogre verwendet um das Laden und den Zugang zu Daten und Dateien zu verwalten

Resource Types 1.Material: Material Definition 2.Mesh (das Netz): Vertex, Geometrie und einige Animationsdaten 3.Skeleton: Knochen Hierarchie 4.Font: Schrift Definition 5.GPU Program: GPU Programm Definitionen sind in der Datei.program festgehalten 6.Compositor scripts: Definitionen und Anweisungen für das Programmierer System 7.texture: 2D Bilder warden als Text Daten gerendert Standard Ressourcen von Ogre

Resource Management System viele gute Gründe für Resource Management System 1.Schnelligkeit 2.Effizient 3.Muss keine Ressourcen in den Speicher laden, die die Anwendung vielleicht irgendwann braucht

Resource Groups Ogre kann Ressourcen in zwei Ebenen verwalten 1. in den Bedingungen von den individuellen Ressourcen selbst 2.in „named groups“ Vorteil: kann Ressourcen einer Gruppe als Ganzes behandeln (gleichzeitig laden oder entladen) Resource Group Management liegt allein bei dem Programmierer Dient dem persönlichen organisieren

Resource Locations Speicherstellen in dem Ogre Ressourcen speichert Nach Namen gespeichert, damit man sie schnell findet kann Speicherstellen jederzeit hinzufügen oder entfernen Ressource Speicherstelle : Archive innerhalb einer einzelnen Datei befindet sich eine hierarchische Organisation von Dateien (Zip Archive) Ogre Archive werden nur gelesen

Resource Life Cycles

Logical Resource Management jeder Ressource Typ bekommt seinen eigenen Ressource Manager: Aufgabe= laden und entladen der Ressourcen Resource Loading Wenn eine Ressource nicht schon vorher geladen ist, wird sie geladen, wenn sie gebraucht wird Wann eine bestimmte Ressource gebraucht wird ist in Ogre verankert Resource Unloading Ressource Daten bleiben im Speicher geladen bis die Anwendung es entläd Ogre entfernt keine Ressource automatisch aus dem Speicher

Praktisch [Bootstrap] Zip=../../media/packs/OgreCore.zip [General] FileSystem=../../media FileSystem=../../media/fonts FileSystem=../../media/materials/programs FileSystem=../../media/materials/scripts FileSystem=../../media/materials/textures FileSystem=../../media/models FileSystem=../../media/overlays FileSystem=../../media/particle FileSystem=../../media/gui Zip=../../media/packs/cubemap.zip Zip=../../media/packs/cubemapsJS.zip Zip=../../media/packs/dragon.zip Zip=../../media/packs/fresneldemo.zip Zip=../../media/packs/ogretestmap.zip Zip=../../media/packs/skybox.zip

Ogre Render Targets Speicherbereich in dem gerendert wird Primäre Render Fenster ist das Hauptfenster der Anwendung  von vorneherein gegeben Render-to-texture (RTT)  redert einen Teil der Szene in eine texture

Render Window Minimale Ausstattung Neben dem primär Fenster können zweit Fenster erstellt werden Primär Fenster bleibt jedoch das wichtigster Fenster  man muss erst die sekundären Fenster schließen/zerstören, bevor man das primäre Fenster zerstören kann

Viewports Render target beinhaltet ein oder mehrere Viewports Viewports werden erstellt in Bezug auf eine bestimmte Kamera  man kann die Kamera jedoch jederzeit ändern „Fenster zur Szene“: verhilft der Interaktion zwischen Kamera und Render Target

Render Texture Texture ist die interessanteste Form des Render Targets  simples Konzept: manches einer Szene wird in Texture gerendert

Animation Ogre Animation verglichen mit „Daumenkino“ Illusion von Bewegung 2 verschiedene Typen von Animation in Ogre keyframed animation via controller

Animation Kollektion von möglichen verbundenen tracks Animation track= Reihe von Daten Werten, die als Funktion von Zeit gespeichert wird 3 Typen von Animations Tracks: 1.NumericAnimationTrack 2.NodeAnimationTrack 3.VertexAnimationTrack

Eigenschaften der Animation 1.Length 2.Current Position 3.Animation name 4.Looping 5.Enabled 6.Weight

Skeletal Animation Geläufigste Typ von Animationen Punkte werden in einem Netz zu „Knochen“ verbunden Skelet entsteht „matrix palette skinning“

Skeleton Definiert durch eine Eltern Hierarchie Alle Knochen haben „Eltern“ bis auf dem root Knochen Veränderungen an einem Knochen führen zu Positionsveränderungen von allen Kinder Knochen

Vertex Binding Wenn der Knochen sich bewegt müssen die Punkte/Vertex sich mit bewegen Vertex müssen an das Skeleton gebunden werden Vertex werden zu Knochen zugeordnet Weight ist hier die Einwirkung, die der Knochen auf den Punkt hat  Beispiel: hat ein Knochen die Zuordnung den Eckpunkt mit 1.0 weigth zu beeinflussen, kontrolliert er diesen komplett In Ogre können nur 4 Knochen einem Eckpunkt zu geordnet werden, jedoch kann ein Knochen zu beliebig vielen Eckpunkten zu geordnet werden.

Vertex Animation Eckpunkte werden animiert Zwei verschiedene Typen 1.Morph Animation 2.Pose Animation

Blending Animation Kann meisten Animationstypen vermischen  komplexere Animation in einer Szene - man kann morph Animationen und pose Animationen nicht zusammen führen Mischt man vertex & skeletal Animationen, werden zuerst die Vertex Animationen von Ogre beachtet und dann die zutreffenden Skeletal Umformungen der Vertex beachtet  Beispiel: Gesichts Vertex werden mit pose Animationen durchgeführt und der Rest mit dem Skeletal Animationen  zwei oder mehrer Skeletal Animationen zu blenden ist besonders sinnvoll bei Übergängen zwischen zwei Animationen (Rennen-Laufen)

Billboards Billboards= Plakatwände, die sich häufig neben Straßen befinden  kein Zufall  Billboards in Ogre sind Vierecke, die sich nach der Kamera orientieren  rotieren in Kamera Blickrichtung Billboards werden oft bei Spezial Effekts wie Explosionen oder Rauch benutzt Auch bei Wolken, Regen, Licht oder Gräser werden Billboards verwendet

Billboard Sets Billboards können nicht alleine existieren Müssen zu Sets gehören Billboards Sets verwalten Gruppen von Billboards mit gleichen Dimensionen und Material Ogre sieht Billboards eines Sets als eine Einheit an (zusammen gerendert)

Billboard Creation Standard Zustand: point Billboard  richten sich immer nach der Kamera  sind immer aufrecht  Ausgangspunkt ist im Zentrum Oriented Billboard  rotiert um vorgegebene/eigene Y-Achse Perpendicular Billboard  passt sich aufrecht einem Richtungsvektor an

Billboard Pools Gibt in Ogre an wie viele Billboards man benötigt, wenn man ein Set erstellt Ogre erstellt gewünschte Anzahl und stellt sie bereit In aktive und freie Billboards aufgeteilt Wenn man einen Billboard beanspruchen möchte, jedoch keiner mehr da ist, gibt Oger NULL zurück  kann mehr Billboards erstellen ist jedoch sehr aufwendig und nicht ratsam

Billboard Chains & Ribbon Trails Billboard „Ketten“ sind nützlich wenn man Effekte wie Licht, Strahlen, Steifen und Spuren erzeugen möchte  Billboards aus einem Set müssen verbunden werden

Particle System Particles.jpg

Literatur Pro OGRE 3D Programming by Gregory Junker, 2006.

Vielen Dank für Eure Aufmerksamkeit