Teil 1: Partikelsysteme
|
|
- Christin Holst
- vor 5 Jahren
- Abrufe
Transkript
1 Teil 1: Partikelsysteme Ein &
2 Inhalt: - Historischer Überblick - Umwelteinflüsse
3 Einführung Wieso Partikelsysteme? - Realisierung vieler natürlicher Phänomene, ohne glatte und klar abgrenzbare Oberfläche - Objekte ohne eindeutig definierbare Form - weniger Aufwand bei der Generierung der Animation Anwendungsgebiete: - Wolken - Feuer / Rauch - Explosionen - Flüssigkeiten - Galaxien - Textilien - Bäume / Wälder
4 Historischer Überblick - Die Explosion in Videospielen wurde als erstes durch einzelne rot, gelbe und weiße Punkte verwirklicht. - Explosionspartikel bzw. Pixel wurden explizit und individuell gesetzt ermöglicht Grafikspezialist William T. Reeves erstmals die automatische Generierung der Partikel zusammen mit R. Blau ermöglicht durch den Einsatz von Partikelsystemen zur Darstellung von Pflanzen und Bäumen werden Partikelsysteme zur Darstellung der Vogelschwärmen benutzt.
5 Partikelsysteme Man unterscheidet 2 Arten von Partikelsystemen: - Freie Partikelsysteme: keine Interaktion zwischen den einzelnen Partikeln Stochastische Partikelsysteme (Feuer, Nebel, Rauch) Strukturierte Partikelsysteme (Graslandschaften / Wäldern) - Gebundene Partikelsysteme: interagieren miteinander durch Anstoßen oder Anziehen (Gewebesimulation)
6 Aufbau von Partikelsystemen (1) - Partikelsysteme sind dynamische Systeme. - Jeder Partikel ist ein dynamischer Teil eines Partikelsystems. Er hat eine endliche Lebensdauer. - Am Anfang der Modellierung eines Partikelsystems wird ein einzelner Partikel definiert. Er kann dabei unterschiedliche Form haben. - Die Attribute der Partikel ändern sich in Abhängigkeit von der Zeit. Partikelattribute: - Position - Geschwindigkeit - Größe - Farbe - Transparenz - Form / Aussehen - Lebensdauer
7 Aufbau von Partikelsystemen (2) Partikel-Emitter: - besteht aus einer Abschussstelle und einer Ansammlung fliegender Partikel - stößt Partikel aus - kontrolliert Parametergrenzen des Partikelsystems
8 Aufbau von Partikelsystemen (3) Ablaufsequenz der Bildgenerierung Quelle: [1]
9 Aufbau von Partikelsystemen (4) Partikel-Erzeugung: zwei Berechnungsverfahren: 1. mittlere Anzahl der Partikel und Varianz pro Frame n neu = n mittel (t) + (random() var(n mittel )) 2. abhängig von der Größe des Partikelsystems n neu = (n mittel (t) + random() var(n mittel )) x ScreenArea Intensitätswachstum und Verringerung n mittel (t) = n intial + n delta (t-t0) Quelle: [1]
10 Aufbau von Partikelsystemen (5) Attributzuweisung: - erfolgt für jeden Partikel individuell - Standardformel für stochastische Attributermittlung: v init = v mittel + random() var(v mittel ) Quelle: [1]
11 Aufbau von Partikelsystemen (6) Partikellebensdauer: - Lebensdauer pro Partikel als Zahlenwert - je Schritt wird die Lebensdauer um 1 dekrementiert Partikellöschung - Lebensdauer überschritten - Wert = 0 - kein Beitrag zum Partikelsystem - ungewollte Parameterannahme Quelle: [1]
12 Aufbau von Partikelsystemen (7) Aktualisierung der Attribute - noch vorhandene Partikel werden bewegt - Aktualisieren der Attribute - andere werden durch physikalische Gesetze beeinflusst Quelle: [1]
13 Aufbau von Partikelsystemen (8) Rendering - Übergabe der Daten an das Renderingsystem Probleme - Überlagerungen - Reflexion, Schatten, Transparenz von Partikeln - Kombination mit oberflächenbasierten Szenen - selbstleuchtende Partikel Quelle: [1]
14 Aufbau von Partikelsystemen (9) Partikelhierarchie - baumartig strukturiert - Partikelsysteme erzeugen neue Partikel - neu erzeugte Partikel sind wiederum Partikelsysteme - mehrere Quellen für neue Partikel - nutzbar für komplizierte Partikelsysteme übergeordnete Partikelsystem (Top-Level-System) untergeordnete Partikelsysteme (Second-Level-System)
15 Anwendung (1) Genesis-Effekt 2 Hierarchiestufen von Partikelsystemen: - Top-Level-System - Einschlagpunkt - emittiert Partikel, welche selbst ein Partikelsystem sind - Second-Level-System - kreisförmiges Verbreiten neu generierter Partikelsysteme - Anzahl der Partikelsysteme pro Kreis aus einer zuvor festgelegten Konstante und Umfang des Kreises - Parameter auf Basis der Eltern
16 Anwendung (2) Genesis-Effekt : Ausbreitung: 200 Partikelsysteme, ca Partikel Startexplosion (1 großes Partikelsystem und 20 kleinere, ca Partikel Quelle: [2]
17 - Wasserfallbeispiel -
18 Kollisionserkennung bei Partikeln - Berechnung auf Grafikkarte - Stateless-Partikelsystem leicht zu implementieren - dynamisches Partikelsystem besser für Kollisionsabfrage und Reaktion Emitter
19 Berechnung auf GPU - Berechnung durch Stream-Processing auf dem Fragment-Shader - Durch depth maps werden Normalvektoren in die Textur gespeichert. - verschiedene Kollisionstechniken: Annäherung durch Grafikkarte berechnet, Kollisionabfrage selbst auf CPU Kollision von der Grafikkarte erkannt, CPU nur noch für Reaktion nötig - Beschleunigung durch weg glätten kleinerer Unebenheiten, wodurch größere Flächen entstehen => schnellere Berechnung
20 Berechnung der Partikel - Partikel in Texturen gespeichert (dadurch simultanes Update möglich) sberechnung auch durch Stream-Processing (auch für mehrere Partikel simultan möglich) - Werte, die sich nicht ändern (Farbe, Größe, etc.), werden nicht immer neu berechnet und vom Stream ausgeschlossen.
21 Probleme bei der Berechnung - Was passiert wenn 2 Objekte eng nebeneinander sind? - Lösung: doppelte Berechnung: vorher -> nachher
22 Wasserfallbeispiel Zusammenführung aller Partikeleigenschaften: - Emitter - physikalische Einflüsse mit Objekt und resultierende Ablenkung mit Boden und vorgegebene Reaktion
23 Fazit Kombination aus - einfachen Grafikobjekten - Abhängigkeiten und Regeln - Einfluss von Zufallsgrößen sehr gute Simulation von (natürlichen) Phänomenen - mit herkömmlichen Methoden kaum zu realisieren - Aufwand bei Erzeugung auf Designerseite relativ gering sberechnung für Partikel durch Stream-Processing - Grafikkarte entlastet soweit wie möglich CPU
24 Teil 2: Schwärme Ein &
25 Inhalt: - Entstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - Entstehung - auf der Grafikkarte svermeidung - Umsetzung - Ausblick - Literatur / Fazit
26 Von Partikelsystemen zu Schwärmen: Die Unterschiede - Entstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick Partikelsysteme: - begrenzte Lebenszeit der Partikel - Gesamteindruck ist maßgebend - Partikel sind wenig komplex - Partikel folgen passiv dem Bewegungsablauf Schwärme: - Lebenszeit nicht begrenzt, solange wie der Schwarm - dynamischer Eindruck ist maßgebend - komplexe Akteure - Akteure greifen aktiv in das Geschehen ein
27 Die Entstehung: - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - erste komplett animierte Filmsequenz Craig Reynolds [1] stellte einen komplexen Vogelschwarm dar - jedes Schwarmmitglied ( Akteur ) hatte einfache Regeln: Kollisionsvermeidung (Akteure vermeiden selbstständig Kollisionen) Geschwindigkeitsanpassung (Akteure passen Geschwindigkeit den Nachbarn an) Schwarmzentrierung (Akteure versuchen zusammenzubleiben) Diese Grundregeln gelten noch heute
28 Schwärme auf der Grafikkarte: 1.) Die Akteure - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - Jeder Akteur ist durch bestimmte Parameter definiert. (z.b. Gewicht, Geschwindigkeit, Sichtfeld, etc.) - Konstante Parameter werden bei der Initialisierung festgelegt. (z.b. Masse, Höchstgeschwindigkeit, etc.) - Variable Parameter werden jeden Frame aktualisiert. (z.b. aktuelle Geschwindigkeit und Position)
29 Schwärme auf der Grafikkarte: 2.) Datenstruktur - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick Zum Speichern der Daten wird eine Matrix benutzt ( CellGrid ): - einfaches auslesen der Nachbarn eines Akteurs - einfaches Aktualisieren des Schwarmes Flaschenhals: Dieser Teil der Simulation läuft auf der CPU ab, da diese simultanen Lese- und Schreibzugriff auf den Speicher hat. Aufgrund des großen Datenaustausches zwischen CPU und GPU ist dies trotz PCIe ein sehr zeitaufwendiger Prozess
30 Schwärme auf der Grafikkarte: 3.) Steuerverhalten - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick Für jeden Akteur werden 4 Nachbarn gespeichert. Aus diesen Nachbarn wird das Steuerverhalten berechnet: Weitere Steuerverhalten: - Schwarmführer - Individuelle Note Bildquelle:
31 Kollision auf der Grafikkarte: - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick 1.) Grundmodell - Kraftfeldmodell : Ein Kraftfeld umgibt das Objekt. - Sobald ein zweites Objekt in dieses Kraftfeld fliegt, wirkt eine Ablenkkraft auf dieses. - Je näher der zweite Vogel dem ersten Vogel kommt, desto größer wird die Ablenkkraft. Bewegungsrichtung Ablenkkraft Flugbahn
32 Kollision auf der Grafikkarte: 2.) Problem 1 - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - Was passiert, wenn 2 Vögel direkt aufeinander zufliegen?
33 Kollision auf der Grafikkarte: 2.) Problem 1 - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - Alternativ dazu: Sie fliegen hintereinander her, v 2 ist größer als v 1 Fazit: Unnatürliches Verhalten, da beide Vögel abgebremst werden und in der Luft stehen bleiben oder aber unnatürlich beschleunigen.
34 Kollision auf der Grafikkarte: 3.) Lösung zu Problem 1 - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - Steer to avoid : Hindernisse werden nur im Sichtfeld erkannt. - Jeder Vogel bekommt eine eigene Individuelle Note. - Mit der individuellen Note können auch andere Probleme umgangen werden (z.b. Ausweichkurs Mittelpunktkurs).
35 Kollision auf der Grafikkarte: 4.) Problem 2 - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick Folgendes Szenario sei gegeben: - Ein Vogelschwarm fliegt auf eine Gartenmauer mit flacher Oberseite zu, ohne einen Kollisionskurs zu haben. - Umgibt man diese Mauer mit dem eben gezeigten Kraftfeld, so würden die Vögel eine Ablenkkraft erfahren, welche die Vögel unnatürlich abbremsen und ablenken würde. - Lösung: Normalenvektor(Mauerfläche) Richtungsvektor(Vogel) - Ergebnis = 0: Vogel und Mauer sind parallel Ergebnis > 0: Vogel fliegt von der Mauer weg Ergebnis < 0: Vogel fliegt auf die Mauer zu Reaktion: Ablenkungskraft
36 Kollision auf der Grafikkarte: 4.) Problem 3 - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick Dies führt zu einem weiteren Problem: Lack of Time. Zeitschlitz: i + 1 Lösung: Vorausberechnung der Flugrouten jedes Akteures für mehrere Zeitschlitze, um mögliche Kollisionen frühzeitig zu erkennen und zu reagieren.
37 Umsetzung auf der Grafikkarte: - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - alle Berechnungen sind unabhängig voneinander besonders gut als Stream & Kernel auf der GPU - Berechnung im Fragmentprozessor, da dieser aus Texturen lesen und in selbige schreiben kann. - Informationen eines Akteurs werden in den Pixeln einer Textur gespeichert - da meist viele Informationen für einen Akteur, existieren mehrere Texturen für einen Akteur - alle Texturen eines Akteures werden in den Framebuffer geschrieben und daraus berechnet OffScreen-Rendering - Multipass-Schema : Die Ausgabe des FP wird als Eingabe benutzt. So wird das Instruktionslimit im FP umgangen.
38 Umsetzung auf der Grafikkarte: Neighboursearching auf der CPU - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick - Nachbarn müssen jeden Frame gesucht werden uneffektiv, da nicht immer die Nachbarn wechseln - Lösung: 3 x 3 x 3 Matrix ( Scattering Matrix )
39 Weiterführende Literatur / Links (Schwärme): - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick [1] (Homepage von Craig Reynolds) [2] (Simulation eines Vogelschwarmes) [3] project_proposal/index.html (Nanobots) Quelle [1]: www2.informatik.uni-wuerzburg.de/staff/holger/ lehre/osss02/sauer/vortrag.pdf?i2statuslang=en Quelle [2]: Bilder aus Star Trek 2 The Wrath of Khan
40 Zusammenfassung: - Einstehung - auf der GraKa. Kollision Umsetzung - Beispiele - Ausblick Entstehung von Schwärmen Aufbau von Schwärmen Kollisionsvermeidung Berechnung des Steuerverhaltens auf der GPU Nachbarsuche auf der CPU
Partikelsysteme & Schwärme
Partikelsysteme & Schwärme Version 2.0 2. August 2006 Vortrag von: Irma Sejdic, Dominik Erdmann, Daniel Wilhelm & Christoph Kurz Im Rahmen des Seminars: Programmierung von Grafikkarten Universität Kassel
MehrProgrammierpraktikum 3D Computer Grafik
Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Partikelsysteme, Multipass Rendering Kollisionen Rauch Feuer Vulkane Regen Tierschwärme # 2 Eigenschaften Partikelsysteme sind Gruppen von
MehrIdee: Modifizieren der Objekte (und Erzeugen, Löschen) mittels algorithmischer Vorschriften (vgl. prozedurale Modellierung, Kap.
Prozedurale Animation Idee: Modifizieren der Objekte (und Erzeugen, Löschen) mittels algorithmischer Vorschriften (vgl. prozedurale Modellierung, Kap. 10) Art des verwendeten Algorithmus: sehr unterschiedliche
MehrPhysX Evaluation. Softwarepraktikum Computergraphik. Daniel Brock, Robert Kreuzer, Simon Kufner. 5. Juli 2010
PhysX Evaluation Softwarepraktikum Computergraphik Daniel Brock, Robert Kreuzer, Simon Kufner 5. Juli 2010 Daniel Brock, Robert Kreuzer, Simon Kufner () PhysX Evaluation 5. Juli 2010 1 / 17 1 Aufgabenstellung
MehrGame Engine Architecture and Development. Effekte (Sound, Partikel, Physik)
Game Engine Architecture and Development Effekte (Sound, Partikel, Physik) Wer hat schon was? Sound s Soundsysteme Einfach zu benutzen Leveldesigner müssen sehr einfach Sounds hinzufügen können (Gamplay
MehrPartikelsysteme. Lehrstuhl Computergrafik und Visualisierung Fakultät Informatik TU Dresden. Proseminar Computergrafik.
58 Partikelsysteme Lehrstuhl Computergrafik und Visualisierung Fakultät Informatik TU Dresden Proseminar Computergrafik Robert Stelzmann Gliederung 1. Einleitung und Motivation 2. Begriffsklärung 3. Einfache
MehrAdvanced Movements. Manuel Ladebeck
Advanced Movements Flocking Manuel Ladebeck 16.05.2005 Inhalt 1. Was ist Flocking? 2. Classic (Basic) Flocking 3. Obstacle Avoidance 4. Follow the leader 5. Demo 6. Anmerkungen/Ausblick 7. Quellen Was
MehrGPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni
GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni 1 Ablauf GPU Programm Vertex und Fragment Shader 2 3 4 5 Image Processing 6 Ablauf GPU Programm Ablauf GPU Programm Vertex und Fragment
MehrProgrammierpraktikum 3D Computer Grafik
Prof. Andreas Butz, Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Dynamische Schattenberechnung Agenda Der Stencil-Puffer Der 1-bit Stencil-Puffer Der 8-bit Stencil-Puffer Volumetrische
MehrProgrammierpraktikum 3D Computer Grafik
Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik Dynamische Schattenberechnung Agenda Der Stencil-Buffer Der 1-bit Stencil-Buffer Der 8-bit Stencil-Buffer Volumetrische Echtzeitschatten
MehrComputer Graphics Shader
Computer Graphics Shader Sven Janusch Inhalt Fixed Function Pipeline Programmable Pipeline Implementierung Applikation Beispiel Sven Janusch 2 Fixed Function Pipeline T&L Pipeline (Transformation and Lighting)
MehrBeschleunigungsverfahren für Raytracing Grids Hierarchische Grids Bewertung Fazit
Überblick Einführung Beschleunigungsverfahren für Raytracing Grids Hierarchische Grids Fazit Einführung Gewöhnliche Beschleunigungsverfahren & Raumunterteilung entworfen und optimiert für effizientes Traversieren
MehrSpieleprogrammierung mit DirectX und C++
Ulrich Kaiser, Philipp Lensing Spieleprogrammierung mit DirectX und C++ 2D-, 3D- und Netzwerkspiele, viele Spezialeffekte Galileo Press Einleitung 11 Danksagung 13 Vorwort zur zweiten Auflage 14 1 Vorbereitung
Mehr3.5 Implizite Beschreibungen
3.5 Implizite Beschreibungen 3 Repräsentation und Modellierung von Objekten Idee: Beschreibung von Objekt-Flächen bzw. -Volumina als Isoflächen in Skalarfeldern. Die Skalarfelder ihrerseits entstehen kontrolliert
Mehr3D Programmierpraktikum: Schattenberechnung in Echtzeit
3D Programmierpraktikum: Schattenberechnung in Echtzeit Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 20. Juli 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum
MehrEchtzeitfähige hige Verfahren in der Computergrafik. Lehrstuhl für f r Informatik Computer Grafik und Visualisierung TUM
Echtzeitfähige hige Verfahren in der Computergrafik Prof. Dr. Rüdiger R Westermann Lehrstuhl für f r Informatik Computer Grafik und Visualisierung TUM Lehr- und Forschungsinhalte Visualisierung Darstellung
MehrComputergrafik Universität Osnabrück, Henning Wenke,
Computergrafik Universität Osnabrück, Henning Wenke, 2012-05-14 Kapitel V: Modeling Transformation & Vertex Shader 5.1 Vertex Definitionen: Vertex Vertex Computergrafik Mathematischer Punkt auf einer Oberfläche
MehrKapitel 4: Schattenberechnung
Kapitel 4: Schattenberechnung 1 Überblick: Schattenberechnung Motivation Schattenvolumen Shadow Maps Projektive Schatten 2 Motivation Wesentlich für die Wahrnehmung einer 3D-Szene Eigentlich ein globaler
MehrDie Welt der Shader. Fortgeschrittene Techniken III
Die Welt der Shader Fortgeschrittene Techniken III Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Gliederung 1. Was ist ein Shader? 2. Verschiedene
MehrProbelektion zum Thema. Shadow Rendering. Shadow Maps Shadow Filtering
Probelektion zum Thema Shadow Rendering Shadow Maps Shadow Filtering Renderman, 2006 CityEngine 2011 Viewport Real reconstruction in Windisch, 2013 Schatten bringen viel Realismus in eine Szene Schatten
MehrÜBUNGEN ZUR OBJEKTORIENTIERTEN MODELLIERUNG
ÜBUNGEN ZUR OBJEKTORIENTIERTEN MODELLIERUNG Unter objektorientierter Modellierung versteht man das detailgetreue Darstellen einer zu programmierenden Szene durch Skizzen in UML. UML steht für Unified Modelling
MehrDiplomarbeit. Neue Möglichkeiten durch programmierbare Shader. Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker
Diplomarbeit 5HDO7LPH6SHFLDO (IIHFWV Neue Möglichkeiten durch programmierbare Shader Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker Betreut von: Paul Grimm, Ralf Dörner Beginn: 01.04.02 Abgabe: 30.09.02
MehrVR - Virtuelle Welten. Gerrit Bode AI Semester
VR - Virtuelle Welten Gerrit Bode AI Semester 5 30.05.16 1 Übersicht Virtuelle Welt Szene 3D-Objekt Aussehen Animation Andere Objekte Spezialsysteme 2 Virtuelle Welten 3 Was ist eine Virtuelle Welt? Eine
MehrFlappy Bird Greenfoot Station 1: Flappy erstellen und bewegen
Flappy Bird Greenfoot Station : Flappy erstellen und bewegen In diesem Arbeitsblatt geht es darum, dass bekannte Spiel Flappy Bird zu erstellen, indem das Spielfeld erstellt wird. Flappy erstellt wird.
MehrThe Animation Process. Proseminar Computer Grafik und Visualisierung Daniel Lagler
Proseminar Computer Grafik und Visualisierung I. Inhaltsverzeichnis 1. Einleitung 1.1 Definition...3 1.2 Geschichte...3 1.3 Animationsfilme... 3 2. Techniken... 3 2.1 Rotoskopie... 3 2.2 Keyframing...
MehrTeil 7: Beleuchtung Beleuchtungsmodelle, Schattierungsmodelle
Beleuchtungsmodelle, Schattierungsmodelle Einleitung Beleuchtung vs. Schattierung Beleuchtung: Modell auswerten (anschl.) global vs. lokal phsikalisch (photo-realistisch?) vs. empirisch Phong-Modell Schattierung:
MehrDie untere Abbildung zeigt eine Szene aus einer 3D-Computeranimation.
3D-Animation Als 3D-Animation bezeichnet man die Animation von dreidimensionalen Objekten. Diese können wie echte Objekte gedreht und bewegt werden. Die 3D-Animationen erinnern an die sogenannten Puppentrickfilme.
MehrGraphische Datenverarbeitung und Bildverarbeitung
Graphische Datenverarbeitung und Bildverarbeitung Hochschule Niederrhein Schattenberechnung Graphische DV und BV, Regina Pohle, 23. Schattenberechnung 1 Einordnung in die Inhalte der Vorlesung Einführung
MehrRST-Labor WS06/07 GPGPU. General Purpose Computation On Graphics Processing Units. (Grafikkarten-Programmierung) Von: Marc Blunck
RST-Labor WS06/07 GPGPU General Purpose Computation On Graphics Processing Units (Grafikkarten-Programmierung) Von: Marc Blunck Ablauf Einführung GPGPU Die GPU GPU Architektur Die Programmierung Programme
MehrIm Original veränderbare Word-Dateien
3D-Animation Als 3D-Animation bezeichnet man die Animation von dreidimensionalen Objekten. Diese können wie echte Objekte gedreht und bewegt werden. Die 3D-Animationen erinnern an die sogenannten Puppentrickfilme.
MehrVariablen in Java. Martin Wirsing. in Zusammenarbeit mit Michael Barth, Philipp Meier und Gefei Zhang. Ziele
Variablen in Java Martin Wirsing in Zusammenarbeit mit Michael Barth, Philipp Meier und Gefei Zhang 11/04 2 Ziele Unterschiedliche Arten von Variablen in Java verstehen Bestimmen von Gültigkeitsbereich
MehrSecond Life- Programmierung mit der Linden Scripting Language
Matthias Melzer Second Life- Programmierung mit der Linden Scripting Language HANSER Inhalt Inhalt Vorwort VII XIII 1 Einführung in LindenScript 1 1.1 Die Entwicklungsumgebung 1 1.2 Hello, Avatar! 3 1.3
Mehr5 Mapping-Techniken. 5.1 Motivation
5.1 Motivation Bisher sind alle Oberflächen (polygonale Objekte, später auch parametrisierte Freiformflächen) glatt im Gegensatz zu wirklich existierenden natürlichen Oberflächen. Die explizite Wiedergabe
MehrRheinisch-Westfälische Technische Hochschule Aachen. Seminararbeit
Rheinisch-Westfälische Technische Hochschule Aachen Seminararbeit Analyse von General Purpose Computation on Graphics Processing Units Bibliotheken in Bezug auf GPU-Hersteller. Gregori Kerber Matrikelnummer
MehrFakultät Math-Nat Fachrichtung Physik, Computational Physics. DLA Diffusionsbegrenztes Wachstum
Fakultät MathNat Fachrichtung Physik, Computational Physics DLA Diffusionsbegrenztes Wachstum Dresden, 13.07.2010 Gliederung 01 Idee 02 Umsetzung 03 Programmierung 04 Ergebnisse 05 kritische Auswertung
MehrParallele Algorithmen in der Bildverarbeitung
Seminar über Algorithmen - SoSe 2009 Parallele Algorithmen in der Bildverarbeitung von Christopher Keiner 1 Allgemeines 1.1 Einleitung Parallele Algorithmen gewinnen immer stärker an Bedeutung. Es existieren
Mehrextreme-gamedesign Warum einfach gar nicht so einfach ist..
Warum einfach gar nicht so einfach ist.. Game Design / bgc 2006 Ablauf Sprecher-Steckbrief Warum einfach einfach gut ist Die Einfachheits-Pyramide 10 Tipps, um es (sich) einfach zu machen Fragen und Diskussion
MehrStream Processing und High- Level GPGPU Sprachen
Stream Processing und High- Level GPGPU Sprachen Seminar Programmierung von Grafikkarten Jens Breitbart Problem 5000% 4000% 3000% 2000% Rechenleistung: +71% pro Jahr Bandbreite: +25% pro Jahr Zugriffszeit:
MehrInteraktives Wasser in 3D. Jörn Loviscach Hochschule Bremen
Interaktives Wasser in 3D Jörn Loviscach Hochschule Bremen Ringwellen (Kapillar- und Schwerewellen) Kelvin-Schiffswellen Reflexionen von Himmel (Frensel-Effekt) und Sonne Kaustiken mit korrekten Schatten
MehrModellbildung und Simulation
Modellbildung und Simulation 6. Vorlesung Wintersemester 2007/2008 Klaus Kasper Value at Risk (VaR) Gaußdichte Gaußdichte der Normalverteilung: f ( x) = 1 2π σ x e 2 2 x ( x µ ) / 2σ x Gaußdichte der Standardnormalverteilung:
MehrTutorial für die Erstellung der Animation Schiffsunglück
Tutorial für die Erstellung der Animation Schiffsunglück Verwendete Abkürzungen: F = Frame (Bild) KF = Keyframe (Schlüsselbild) LK = Klick mit linker Maustaste RK = Klick mit rechter Maustaste Grundlage
MehrPraktikum ios-entwicklung
Praktikum ios-entwicklung Sommersemester 2018 Prof. Dr. Linnhoff-Popien Markus Friedrich, Kyrill Schmid 23.05.2018 Markus Friedrich, Kyrill Schmid - Praktikum ios-entwicklung SS18 1 Games SceneKit 23.05.2018
MehrDigitale Bildverarbeitung Einheit 12 3D-Modellierung
Digitale Bildverarbeitung Einheit 12 3D-Modellierung Lehrauftrag WS 05/06 Fachbereich M+I der FH-Offenburg Dipl.-Math. Bernard Haasdonk Albert-Ludwigs-Universität Freiburg Ziele der Einheit Einen Eindruck
MehrInteraktive Globale Beleuchtung nach dem Antiradiance-Verfahren mittels der Open Computing Language (OpenCL)
Interaktive Globale Beleuchtung nach dem Antiradiance-Verfahren mittels der Open Computing Language (OpenCL) Verteidigung der Belegarbeit Andreas Stahl Zielstellung Globales Beleuchtungsverfahren für die
MehrUnterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Multimedia für Referate und Präsentationen
Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Multimedia für Referate und Präsentationen Das komplette Material finden Sie hier: School-Scout.de Computergrafik Computergrafik umfasst
MehrObjektorientierte Bildverarbeitung Methodische Grundlagen
ARC GmbH Objektorientierte Bildverarbeitung Methodische Grundlagen Klaus Steinnocher, Florian Kressler klaus.steinnocher@arcs.ac.at Geschäftsfeld Umweltplanung ARC http://www.arcs.ac.at/s 1 ARC GmbH Einleitung!
MehrBachelor s Thesis. An Interactive Space Simulation For Media Facades. M.Sc. Marcel Köster. Advisor Dr. Michael Schmitz.
Bachelor s Thesis An Interactive Space Simulation For Media Facades M.Sc. Advisor Dr. Michael Schmitz 07.02.2013 KOOPERATION Uni Saarland / HBK Saar 1 HBK SAAR - SETTING Medienfassade Ca. in 5 Meter Höhe
MehrObjektorientierte Programmierung OOP
Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel Alina Stürck WS2016/17 11. Oktober 2016 Objektorientierte Programmierung OOP 1 Was ist das? 2 Wie geht das? 3 Warum
MehrEin Modell zur Simulation der Bewegung von Schwärmen
Ein Modell zur Simulation der Bewegung von Schwärmen Ausarbeitung im Rahmen des Proseminars 2004 Christian Tomm Es wird ein Modell vorgestellt, mit dem eine natürliche Animation von Tierschwärmen ermöglicht
MehrInformatik II SS Inhalt. Objektlebensdauer (2/3) Objektlebensdauer (1/3)
Inhalt Informatik II SS 2004 Teil 6: Sprachen, Compiler und Theorie 5 Lebensdauer von Objekten Speichermanagement Weiterführende Spracheigenschaften und Bindungen Implementierung von statischen Gültigkeitsbereichen
MehrComputer Graphik I Generative Computergraphik Intro
Computer Graphik I Generative Computergraphik Intro Marc Alexa, TU Berlin, 2014 Ziele Modellierung Ziele Bildgenerierung Anwendungen Ausgabe Kontakt Marc Alexa TU Berlin Computer Graphik marc.alexa@tu-berlin.de
Mehr4.7 Globale Beleuchtungsmodelle
Erinnerung: - Ein lokales Beleuchtungsmodell berücksichtigt nur das direkt einfallende Licht einer Lichtquelle - Nur lokale Beleuchtung + konstante ambiente Beleuchtung, um reflektiertes und gebrochenes
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 6: Computergrafik und Sprites
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2007 Versuch 6: Computergrafik und Sprites 28. Juni 2007 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Technische
MehrWhite Paper Order Independent Transparency (OIT) in PTC Creo Parametric 2.0
White Paper Order Independent Transparency (OIT) in PTC Creo Parametric 2.0 Übersicht: OIT Definition: Order Independent Transparency oder OIT bezeichnet in der Programmierungstechnik für Computergrafik
MehrDynamische Geometrie
Dynamische Geometrie 1) Die Mittelsenkrechten, die Seitenhalbierenden, die Höhen und die Winkelhalbierenden eines beliebigen Dreiecks schneiden sich jeweils in einem Punkt. a) Untersuchen Sie die Lage
MehrAnimation ist das Erzeugen von Filmen mit Hilfe der Computergrafik. Objekte bewegen sich hierbei oder Beleuchtung, Augpunkt, Form,... ändern sich.
Kapitel 1 Animation (Belebung) Animation ist das Erzeugen von Filmen mit Hilfe der Computergrafik. Objekte bewegen sich hierbei oder Beleuchtung, Augpunkt, Form,... ändern sich. Anwendungen findet die
MehrDer diskrete Kalman Filter
Der diskrete Kalman Filter Fachbereich: Informatik Betreuer: Marc Drassler Patrick Winkler 1168954 6. Dezember 2004 Technische Universität Darmstadt Simulation und Systemoptimierung Darmstadt Dribbling
Mehr3D Programmierpraktikum: OpenGL Shading Language (GLSL)
3D Programmierpraktikum: OpenGL Shading Language (GLSL) Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 13. Juli 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum
MehrGPGPU Basiskonzepte. von Marc Kirchhoff GPGPU Basiskonzepte 1
GPGPU Basiskonzepte von Marc Kirchhoff 29.05.2006 GPGPU Basiskonzepte 1 Inhalt Warum GPGPU Streams, Kernels und Prozessoren Datenstrukturen Algorithmen 29.05.2006 GPGPU Basiskonzepte 2 Warum GPGPU? Performance
MehrInteraktive Visualisierung zeitabhängiger Volumendaten
Interaktive Visualisierung zeitabhängiger Volumendaten Diplomarbeit von Dario Kardas graphische datenverarbeitung, universität erlangen-nürnberg Skalare Volumendaten Volumen besteht aus Schichtbildern
Mehrgroße Vielfalt von Daten für die Visualisierung möglich
4. Charakterisierung von Datensätzen und Darstellungsformen 4.1 Charakterisierung von Datensätzen große Vielfalt von Daten für die Visualisierung möglich Überblick Typisierungen von Daten: hierin nicht
MehrAnleitung zum Applet. Rangwerte
Rangwerte 1 Anleitung zum Applet Rangwerte bearbeitet von: Erwin Wagner WS 2006/2007 E/TI betreut von: Prof. Dr. Wilhelm Kleppmann Rangwerte 2 Inhaltsverzeichnis 1 VORWORT... 3 2 BENUTZEROBERFLÄCHE...
MehrVolumenverarbeitung und Optimierung II
Volumenverarbeitung und Optimierung II Praktikum Medizinische GPU Verfahren Susanne Fischer sanne@uni-koblenz.de Institut für Computervisualistik Universität Koblenz-Landau 9. Dezember 2006 Susanne Fischer
MehrVererbung. Generalisierung und Spezialisierung Vererbung und Polymorphismus
Vererbung Generalisierung und Spezialisierung Vererbung und Polymorphismus Wir wollen in unserem Aquarium verschiedene Arten von Fischen schwimmen lassen. In einem ersten Ansatz definieren wir nicht nur
MehrProgrammieren in C++ Überladen von Methoden und Operatoren
Programmieren in C++ Überladen von Methoden und Operatoren Inhalt Überladen von Methoden Überladen von Operatoren Implizite und explizite Konvertierungsoperatoren 7-2 Überladen von Methoden Signatur einer
MehrSzenengraphen. Codruţa Cosma. Universität Ulm Sommersemester 2005
Szenengraphen Codruţa Cosma Universität Ulm Sommersemester 2005 Übersicht Einführung VRML OpenSceneGraph Java3D vs. VRML OpenGL vs. Java3D und VRML Zusammenfassung 2/26 Was sind Szenengraphen? Datenstruktur
MehrBeleuchtungsmodelle und Shading
Beleuchtungsmodelle und Shading Andreas Spillner Computergrafik, WS 2018/2019 Ziel der Modellierung von Beleuchtung Baut auf dem Kapitel zu Licht und Farben auf. In die 3D-Szene werden Lichtquellen eingebracht.
MehrFlappy Bird BlueJ Station 1: Flappy erstellen und bewegen
Flappy Bird BlueJ Station 1: Flappy erstellen und bewegen In diesen Arbeitsblatt geht es darum, dass Flappy erstellt wird. Flappy sich automatisch nach unten bewegt. die Tastatur benutzt werden kann, um
MehrKollisionserkennung
1 Kollisionserkennung von Jens Schedel, Christoph Forman und Philipp Baumgärtel 2 1. Einleitung Wozu wird Kollisionserkennung benötigt? 3 - für Computergraphik 4 - für Simulationen 5 - für Wegeplanung
MehrMehrdimensionale Arrays
Mehrdimensionale Arrays Prof. Dr.-Ing. Thomas Schwotzer 1 Einführung Eindimensionale Arrays haben wir bereits kennen gelernt. Es gibt aber auch mehrdimensionale Arrays. Die sind auch sehr notwendig, denken
MehrPartikelsimulation. Studienarbeit
Fachbereich 4: Informatik Partikelsimulation Studienarbeit im Studiengang Computervisualistik vorgelegt von Nina Damasky Betreuer: Prof. Dr.-Ing. Stefan Müller (Institut für Computervisualistik, AG Computergraphik)
MehrAlgorithmen in Zellularautomaten
Algorithmen in Zellularautomaten 13. ZA-Modelle mit wenigen Zuständen Thomas Worsch Fakultät für Informatik Institut für Theoretische Informatik Sommersemester 2018 Ziele einige (sehr) einfache ZA als
MehrBru ckenkurs Programmieren
Bru ckenkurs Programmieren Tag 2: Animationen und Schleifen Jakob Czekansky Technische Hochschule Mittelhessen 28. Ma rz 2017 Inhalt Animationen Bewegungen Mausposition abfragen Schleifen While For Ausblick:
MehrKapitel. Platzhalter. Was sind Platzhalter?
Kapitel 3 Was sind? sind ganz wichtige Elemente bei der Programmierung. Alle Programme, die du schon kennst (wie beispielsweise die Textverarbeitung WORD oder ein Programm zum Verschicken von E-Mails),
MehrManagen Sie Ihr 3D-Gebäudemodell interaktiv. Von Anfang an.
Managen Sie Ihr 3D-Gebäudemodell interaktiv. Von Anfang an. 1 Erstellen von Terminplänen Autor: jh DESITE MD: 2.2 2 1 ÜBERSICHT 3 1 Erstellen von Terminplänen Terminpläne können auf Grundlage eines Gebäudemodells
MehrSEP: Implementing a GPU Cloth Simulation Demo
SEP: Implementing a GPU Cloth Simulation Demo Florian Reichl Überblick 1) Zielsetzung 2) Grundlagen 3) Implementierung 4) Erweiterungen 5) Anwendungsmöglichkeiten und Ausblicke Kapitel 1 Zielsetzung Zielsetzung
MehrUmsetzung einer Klassenkarte in einer Programmiersprache
Klassen in Java Umsetzung einer Klassenkarte in einer Programmiersprache Objektorientierte Programme bestehen (nur) aus Klassendefinitionen In Klassendefinitionen wird die Struktur der Objekte festgelegt,
MehrLösung III Veröentlicht:
1 Projektil Bewegung Lösung Ein Ball wird von dem Dach eines Gebäudes von 80 m mit einem Winkel von 80 zur Horizontalen und mit einer Anfangsgeschwindigkeit von 40 m/ s getreten. Sei diese Anfangsposition
MehrAufgabenblatt 1. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt:
Aufgabenblatt 1 Kompetenzstufe 1 Allgemeine Informationen zum Aufgabenblatt: Die Abgabe erfolgt in TUWEL. Bitte laden Sie Ihr IntelliJ-Projekt bis spätestens Freitag, 03.11.2017 13:00 Uhr in TUWEL hoch.
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Objektorientierung in C++ (3) Aspekte der Vererbung (1) Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 546 Zuweisung bei Vererbung Dr. Frank Seifert Vorlesung
MehrGui-Objekte und Datenmodellobjekte
Gui-Objekte und Datenmodellobjekte Anja Faatz 2010 Gymnasium Gonsenheim Die Themen Beispiel Ampel Trennung: Datenmodell-GUI Datenmodell GUI Erzeugung der Objekte Übungen Literatur Die Themen Beispiel Ampel
MehrWiederholung. Vorlesung GPU Programmierung Thorsten Grosch
Wiederholung Vorlesung Thorsten Grosch Klausur 2 Zeitstunden (26.7., 8:30 10:30 Uhr, G29/307) Keine Hilfsmittel Kein Bleistift / Rotstift verwenden 3 Aufgabentypen Wissensfragen zur Vorlesung (ca. 1/3)
MehrPartikelvisualisierung
Partikelvisualisierung Visualisierung großer Datensätze Oleg Martin 12. Mai 2011 Inhaltsverzeichnis 1. Einführung Was ist Datenvisualisierung? Ziele der Partikelvisualisierung Geschichtliche Entwicklung
MehrEntwurf und Programmierung einer Rendering Engine
Entwurf und Programmierung einer Rendering Engine 186.166 WS 2.0 Robert F. Tobler VRVis Research Center Vienna, Austria Oranisatorisches Vorlesung! jeden Montag, 15:15 (s.t) - 16:45! Seminarraum Institut
MehrHochleistungsrechnen auf dem PC
Hochleistungsrechnen auf dem PC Steffen Börm Christian-Albrechts-Universität zu Kiel Ringvorlesung Informatik, 26. Juni 2014 S. Börm (CAU Kiel) Hochleistungsrechnen auf dem PC 26. Juni 2014 1 / 33 Übersicht
MehrEntwicklung eines Partikelsystems auf Basis moderner 3D-Grafikhardware
Entwicklung eines Partikelsystems auf Basis moderner 3D-Grafikhardware Studienarbeit Vorgelegt von Philipp Pätzold Institut für Computervisualistik Arbeitsgruppe Computergraphik Betreuer: Prüfer: Dipl.-Inform.
Mehr4.4 Glättung von Kanten
4.4 Glättung von Kanten Es wurden verschiedene Aspekte zur Beleuchtung von Modellen und Szenen vorgestellt. Es gibt zwei Arten von Licht, das Hintergrundlicht und Licht von Lichtquellen, wobei hier zu
Mehr3D-Modellierung / Motion-Capturing. von Kevin O Brien
3D-Modellierung / Motion-Capturing von Kevin O Brien Inhalt 1. Animationsfilme Geschichte der Animation 3D-Modellierung 2. Special Effects Vorkommen Blue- / Greenscreen Motion-Capturing Kameraführung 2/36
MehrFür die Camerasettings wurden folgende Einstellungen verwendet:
RENDERING Beim rendern einer kompletten Szene kommt es natürlich hauptsächlich auf die Renderdauer an, die durch diverse Faktoren leicht bis ins Unendliche getrieben werden kann. Daher war es von Nöten
MehrTeil 1: Modellierung. Einleitung. 3D Szene Inhalt. Objekte und ihre Beschreibung
Objekte und ihre Beschreibung Einleitung Computergraphik: 3D sehr wichtig photo-realistic rendering Computer-Animation, Modellierung Visualisierung, Virtual Reality Ansatz: per rendering wird eine 3D-Szene
MehrGenetische Algorithmen von der Evolution lernen
Genetische Algorithmen von der Evolution lernen (c) Till Hänisch 2003, BA Heidenheim Literatur zusätzlich zum Lit. Verz. Nils J. Nilsson Artificial Intelligence Morgan Kaufmann, 1998 Ansatz Bisher: Problemlösung
MehrGliederung. Blending Licht Anwendungsbeispiel Optimierung OpenGL heute und morgen Wilfried Mascolus - OpenGL Teil II 2/20
OpenGL II Gliederung Blending Licht Anwendungsbeispiel Optimierung OpenGL heute und morgen 26.07.10 Wilfried Mascolus - OpenGL Teil II 2/20 Blending Entscheidung, was passiert, wenn sich zwei Objekte überlappen
MehrKerze (Candle)
Kerze (Candle) 2000 12 11 Eine Kerze ist eine der grundlegenden Lichtquellen, die ihr in euren Szenen brauchen werdet, besonders wenn sie im Mittelalter spielt. Dieses Tutorial zeigt, wie man die prinzipielle
MehrUnterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Lernwerkstatt: Die allgemeine Relativitätstheorie - einfach erklärt
Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Lernwerkstatt: Die allgemeine Relativitätstheorie - einfach erklärt Das komplette Material finden Sie hier: School-Scout.de SCHOOL-SCOUT
MehrTheorie zu Übung 8 Implementierung in Java
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept
Mehr(7) Normal Mapping. Vorlesung Computergraphik II S. Müller. Dank an Stefan Rilling U N I V E R S I T Ä T KOBLENZ LANDAU
(7) Normal Mapping Vorlesung Computergraphik II S. Müller Dank an Stefan Rilling Einleitung Die Welt ist voller Details Viele Details treten in Form von Oberflächendetails auf S. Müller - 3 - Darstellung
MehrAusblick: Kollisionsvermeidung im dreidimensionalen Raum
Deutsches Forschungszentrum für Künstliche Intelligenz GmbH Ausblick: Kollisionsvermeidung im dreidimensionalen Raum Udo Frese Holger Täubig Sichere Kognitive Systeme Motivation SAMS Algorithmus in 3D
Mehrcomputer graphics & visualization
Entwicklung und Implementierung echtzeitfähiger Verfahren zur Darstellung von reflektierenden Objekten auf GPUs echtzeitfähiger Verfahren zur Darstellung von reflektierenden Objekten auf GPUs Motivation
MehrSchlussendlich geben wir die Listen aus. Es kommt zu folgender Ausgabe:
Musterlösung Übung 7 Aufgabe 1 Sehen wir uns zu allererst das gegebene Forth Programm an: 0 3 new - list constant list1 list1 5 new - list constant list2 list1 6 new - list constant list3 list2 2 new -
Mehr