Praktikum im Bereich Praktische Informatik Echtzeitgraphik in C++ und DirectX10. computer graphics & visualization
|
|
- Agnes Dittmar
- vor 7 Jahren
- Abrufe
Transkript
1 Praktikum im Bereich Praktische Informatik Echtzeitgraphik in C++ und DirectX10
2 Billboards Letztes Übungsblatt: Meshes & Instancing um dem Terrain zusätzliche Details (Vegtation) hinzuzufügen. Nachteil: Für großflächigen Einsatz (z.b. für Gras) zu aufwendig. Alternative: Billboards
3 Billboards Beispiele:
4 Billboards Billboards sind texturierte Rechtecke, die zur Vereinfachung von Modellen eingesetzt werden. 2 Möglichkeiten: zwei oder drei statische, sich überkreuzende Billboards oder ein Billboard was immer senkrecht zur Kamera ausgerichtet wird. Vorteil: Ein Modell, das aus mehreren Tausend Polygonen bestehen kann, wird durch 1 bis 3 Polygone ersetzt.
5 Speicherbedarf Jedes Billboard ist definiert durch: Saatpunkt Textur Die Eckpunkte des Rechtecks sind bei beiden Billboard- Varianten implizit gegeben: durch das Welt-Koordinatensystem (Kreuz-Billboards) oder durch das Kamera-Koordinatensystem Mit Hilfe vom Geometry-Shader können wir aus den Saatpunkten Dreiecke generieren (Details später).
6 Planting Strategy Wie kann man die Vegetation pflanzen? Vegetation kann unabhängig für jedes Tile generiert werden. Die Billboards werden zufällig pro Tile verteilt. Die Wahrscheinlichkeit für das Vorkommen von Vegetation kann abhängen von: Höhe Steigung
7 Planting Strategy Einfacher Algorithmus (für 1 Tile): Für n Grasbüschel: Wähle zufällige 2D-Position innerhalb vom Tile. Bestimme Höhe und Steigung an dieser Stelle. Berechne die Wahrscheinlichkeit p, dass ein Grasbüschel unter diesen Bedingungen wächst: Falls p = 0: Verwerfe dieses Grasbüschel Falls p = 1: Pflanze dieses Grasbüschel Falls 0 < p < 1: Berechne Zufallswert x *0,1+ und pflanze das Grasbüschel sofern x p.
8 Planting Strategy Statische Berechnung: Der Speicheraufwand bei massivem Einsatz von Billboards in einer großen Landschaft ist enorm. Bei unauffälliger (wie z.b. Gras) kommt es nicht darauf an, dass ein Grasbüschel immer an der selben Stelle zu sehen ist. Alternative: Dynamische Berechnung von Vegetation für Bereiche in Sichtweite.
9 Dynamische Planting Strategy Verwaltung der umliegenden Vegetations-Daten in einem virtuellen World-Space orientierten Gitter, wobei jede virtuelle Zelle prinzipiell die zu rendernden Daten für den Raum enthält, den sie repräsentiert. Tatsächlich werden die Daten nur für die von der Kamera umgebenden (sichtbaren) Zellen gespeichert. Dieser Sichtbarkeitsbereich wandert mit der Kamera über die Landschaft: Fällt eine Zelle aus diesem Bereich heraus, werden die Daten gelöscht. Kommt eine neue Zelle in den sichtbaren Bereich, werden die Pflanzen neu gesetzt. Da das Löschen und das Generieren zusammenfällt, bleibt die Anzahl der sichtbaren Zellen konstant.
10 Geometry Shader Berechnungen pro Primitiv : Erzeugen / Löschen von Primitiven In unserem Fall: Input: 1 (Saat-)Punkt in Weltkoordinaten Output: 2 Dreiecke in Clipping-Koordinaten Berechnungen: Billboard-Eckpunkte View- und Projection-Transformation Input Assembler Vertex Shader Geometry Shader Setup / Rasterizer Pixel Shader Output Merger Stream Output Vertex Buffer Index Buffer Texture/Buffer Texture/Buffer Texture/Buffer Memory Texture/Buffer Depth Color
11 Pflanzen wachsen lassen Vorausgesetzt: float billboardsize // Größe der Billboards in Weltkoordinaten float3 rightvec // Rechts -Vektor der Kamera in Weltkoordinaten float3 upvec // Hoch -Vektor der Kamera in Weltkoordinaten [maxvertexcount(4)] void RenderPlantGS( point SEED input[1], inout TriangleStream<PLANT_VERTEX> PlantStream ){ } maximale Anzahl an ausgegebenen Vertices Input: Primitiv-Typ Datentyp Anzahl zu lesender Elemente Ausgabestrom: Primitiv-Typ Datentyp
12 Pflanzen wachsen lassen Vorausgesetzt: float billboardsize // Größe der Billboards in Weltkoordinaten float3 rightvec // Rechts -Vektor der Kamera in Weltkoordinaten float3 upvec // Hoch -Vektor der Kamera in Weltkoordinaten [maxvertexcount(4)] void RenderPlantGS( point SEED input[1], inout TriangleStream<PLANT_VERTEX> PlantStream ){ PLANT_VERTEX output; } // erster Eckpunkt: float4 vec = input[0].pos - rightvec * billboardsize/2 upvec * billboardsize; output.pos = mul(vec, g_mviewprojection); output.tex = float2(0,0); PlantStream.Append(output); // // restliche Eckpunkte entsprechend, aber auf die Reihenfolge achten! // PlantStream.RestartStrip(); Einfügen eines Objekts in den Ausgabestrom TriangleStream ist ein TriangleStrip, der mit RestartStrip unterbrochen wird.
13 Transparenz Billboards sind i.d.r. teilweise transparent: 2 Möglichkeiten: RGB-Daten Alpha-Daten (Opazität) Es gibt nur völlig opaque oder völlig transparente Texel. Es gibt auch semi-transparente Texel (0 < < 1).
14 Transparenz Umsetzung in der Rendering Pipeline: a) Entweder völlig transparent oder opaque Texel Alpha Test im Fragment Shader: if (color.a == 0) discard; b) Semi-transparente Fragmente: Fragmente müssen mit dem vorhandenen Wert im Backbuffer verrechnet werden müssen. Alpha Blending
15 Alpha Blending Formel: outputpixel = ( SrcColor*SrcBlendFactor ) BlendOp ( DestColor*DestBlendFactor ) Gegeben: SrcColor: Farbe des Fragments DestColor: Vorhandene Farbe im Backbuffer Über den BlendState wählbar: SrcBlendFactor: Gewichtungsfaktor für das neue Fragment DestBlendFactor: Gewichtungsfaktor für den bisherigen Wert BlendOp: Operator wie die gewichteten Werte verrechnet werden sollen.
16 Alpha Blending Beispiel (HLSL): BlendState SrcAlphaBlendingAdd { BlendEnable[0] = TRUE; // 0 steht für das 0-te Render Target SrcBlend = SRC_ALPHA; // SourceBlendFactor *) DestBlend = ONE; // DestinationBlendFactor *) BlendOp = ADD; RenderTargetWriteMask[0] = 0x0F; }; Ergebnis: outputpixel = ( SourceColor.rgba * SourceColor.aaaa ) + ( DestColor.rgba * (1,1,1,1) ) *) Alternative Blend States: ZERO, ONE, SRC_COLOR, INV_SRC_COLOR, SRC_ALPHA, INV_SRC_ALPHA, DEST_ALPHA, INV_DEST_ALPHA, DEST_COLOR, INV_DEST_COLOR, SRC_ALPHA_SAT, BLEND_FACTOR, INV_BLEND_FACTOR, SRC1_COLOR, INV_SRC1_COLOR, SRC1_ALPHA, INV_SRC1_ALPHA
17 Alpha Blending Ergebnis: outputpixel = ( SourceColor.rgba * SourceColor.aaaa ) + ( DestColor.rgba * (1,1,1,1) )
18 Alpha Blending BlendState verwenden (HLSL): technique10 RenderQuadSrcAlphaAdd { pass P0 { SetVertexShader( CompileShader( vs_4_0, QuadVS() ) ); SetGeometryShader( NULL ); SetPixelShader( CompileShader( ps_4_0, QuadPS() ) ); SetBlendState( SrcAlphaBlendingAdd, float4( 0.0f, 0.0f, 0.0f, 0.0f ), 0xFFFFFFFF ); } } BlendState BlendFactor SampleMask
19 Alpha Blending Was brauchen wir in unserem Fall? Gegeben: Backbuffer: Terrain Fragments: Billboards Beispiel: Fragment mit = 0.7 Alpha Blending mit Hintergrund? SourceColor + DestinationColor (1 - )
20 Alpha Test / Alpha Blending Problem: Billboards sind nicht tiefensortiert! Lösung: Alpha-Textur mit Rauschen (z.b. Perlin-Noise) modulieren Bei Alpha-Test ohne Blending: Grenzwert abhängig von Distanz wählen.
21 Lighting / Shadowing Lighting: Beleuchtungsberechnung wie gewohnt möglich. Einzige Vorraussetzung: Normalen-Vektor zusätzlich pro Saatpunkt speichern. Shadowing: Berücksichtigung bei der Erstellung der Shadow-Map recht teuer und aufgrund der Größe mit eher geringer Auswirkung. Schattentest wie beim Terrain möglich, je nach Menge aber möglicherweise recht teuer.
22 Realismus erhöhen Variationen: Billboards z.t. spiegeln und unterschiedlich skalieren (z.b. bei Generierung zufälligen Faktor wählen und zusätzlich speichern) Billboards unterschiedlich Einfärben (z.b. mit den Saatpunkt-Koordinaten auf eine Noise-Textur zugreifen) Billboards mit unterschiedlichen Texturen (z.b. durch die Verwendung von einem Textur-Atlas) Animation: Wind hinzufügen (z.b. mit Hilfe einer Summe aus Sinus-Termen die oberen Eckpunkte nach links und rechts verschieben)
23 View Frustum Culling Bislang: alle Tiles (und somit auch in Zukunft die ganze Vegetation) wird gerendert unabhängig davon ob sie sich im sichtbaren Bereich befindet oder nicht. Überspringen von Daten, die garantiert nicht zu sehen sind! Einfachste Lösung: CPU: Wir können alle Tiles (und deren Vegetation) ignorieren, die vollständig hinter der Kamera liegen GPU: im Geometry Shader können wir Saatpunkte überspringen, die nach der Projektion deutlich außerhalb des Frustums liegen.
24 Referenzen GPU Gems 2: Toward Photorealism in Virtual Botany DX10 Tutorial 14: State Management Configuring Blending Functionality (Direct3D 10):
Die 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
MehrSeminar Game Development Game Computer Graphics. Einleitung
Einleitung Gliederung OpenGL Realismus Material Beleuchtung Schatten Echtzeit Daten verringern Grafik Hardware Beispiel CryEngine 2 Kristian Keßler OpenGL Was ist OpenGL? Grafik API plattform- und programmiersprachenunabhängig
MehrSoftwareprojekt Spieleentwicklung
Softwareprojekt Spieleentwicklung Prototyp I (2D) Prototyp II (3D) Softwareprojekt 12.04. 19.04. 26.04. 03.05. 31.05. Meilenstein I 28.06. Meilenstein II Prof. Holger Theisel, Tobias Günther, OvGU Magdeburg
MehrÜberblick Echtzeit-Rendering. Uwe Domaratius dou@hrz.tu-chemnitz.de
Überblick Echtzeit-Rendering Uwe Domaratius dou@hrz.tu-chemnitz.de Gliederung 1. Einleitung 2. geometriebasierende Verbesserungen 3. Level-of-Detail 4. Culling 5. Texturen 6. bildbasiertes Rendering Was
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
MehrJens Konerow. Managed DirectX und C#
Jens Konerow Managed DirectX und C# Jens Konerow Managed DirectX und C# Einstieg und professioneller Einsatz Jens Konerow: Managed DirectX und C# Einstieg und professioneller Einsatz ISBN-10: 3-935082-17-4
MehrJörn Loviscach Hochschule Bremen
Programmierbare Hardware-Shader Jörn Loviscach Hochschule Bremen Überblick Vertex- und Pixel-Shader Anwendungsbeispiele fx-dateien Anwendungsbeispiele Zusammenfassung Puffer Vertex- und Pixel-Shader Hardware-Renderpipeline
MehrAsteroids3D Seminar: Game Programming. Anita Dieckhoff, Pedro Flemming, Jan Ole Vollmer Betreuung: Christine Lehmann
Asteroids3D Seminar: Game Programming Anita Dieckhoff, Pedro Flemming, Jan Ole Vollmer Betreuung: Christine Lehmann Gliederung 2 1. Live-Demo und Spielidee 2. Softwarearchitektur und Szenengraph Übersicht
MehrHLSL PostProcess Shaders
HLSL Advanced 1 HLSL PostProcess Shaders Einführung PostProcess Effekte werden erst nach dem Rendern aller Objekte angewandt, nämlich auf das Render-Target (daher der Name). Das Spektrum der Möglichkeiten
MehrThema: Hardware-Shader
Seminar Grafikprogrammierung Thema: Hardware-Shader Christian Bauer 03.07.08 Überblick Entwicklung Die Shader im Detail Programmierung GPGPU Zusammenfassung & Ausblick 1/19 Entwicklung (1) Früher: Berechnung
MehrSeminar - Paralleles Rechnen auf Grafikkarten
Seminar - Paralleles Rechnen auf Grafikkarten Seminarvortrag: Übersicht über die Programmierung von Grafikkarten Marcus Schaber 05.05.2009 Betreuer: J. Kunkel, O. Mordvinova 05.05.2009 Marcus Schaber 1/33
MehrTerrain-Rendering mit Geometry Clipmaps
Vorarbeiten & Grundlagen Basiskomponenten Der Clipmap-Algorithmus Terrain-Rendering mit Seminar Computergrak 2010 Vorarbeiten & Grundlagen Basiskomponenten Der Clipmap-Algorithmus Worum geht's? Algorithmus
MehrOpenGL. (Open Graphic Library)
OpenGL (Open Graphic Library) Agenda Was ist OpenGL eigentlich? Geschichte Vor- und Nachteile Arbeitsweise glscene OpenGL per Hand Debugging Trend Was ist OpenGL eigentlich? OpenGL ist eine Spezifikation
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
MehrProzedurale Texturen >>Was nicht passt wird passend gemacht...<<
Prozedurale Texturen >>Was nicht passt wird passend gemacht...
MehrSpezialprozessoren zur Übernahme Grafik-spezifischer Aufgaben, vorrangig der Bildschirmausgabe
Grafikprozessoren Spezialprozessoren zur Übernahme Grafik-spezifischer Aufgaben, vorrangig der Bildschirmausgabe 2D: Berechnung der Bildes aus einfachen Grafikprimitiven 3D: Bildaufbau aus räumlicher Beschreibung
MehrUniversität Osnabrück Fachbereich Mathematik / Informatik. 5. Vorlesung ( )
Universität Osnabrück Fachbereich Mathematik / Informatik 5. Vorlesung (06.05.2013) Prof. Dr. rer. nat. Oliver Vornberger Nico Marniok, B. Sc. Erik Wittkorn, B. Sc. Game Application Layer Rückblick Game
Mehr(10) Deferred Shading
(10) Deferred Shading Vorlesung Computergrafik II Stefan Müller Dank an Niklas Henrich, Gerrit Lochmann Wdh. 1: Framebufferobjects (FBOs) Statt in den Framebuffer direkt zu rendern, kann man Texturen attachen,
MehrTexture Based Direct Volume Rendering
Texture Based Direct Volume Rendering Vorlesung: "Advanced Topics in Computer Graphics" cbrak@upb.de 1 Agenda 1. Einleitung Volume Rendering 1.1. Volumendatensatz 1.2. Volumenintegral 1.3. Image order
MehrProgrammieren mit DirectX
2D 3D Programmieren mit DirectX Teil 3: Malte Ried Fachhochschule Gießen-Friedberg 30. Oktober 2005 Inhalt 2D 3D 1 2D 2 3D 3 2D 3D Bis jetzt Windows-Fenster, das man schließen kann initialisiertes Direct3D
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
MehrHeute. Motivation. Verfügbarkeit. Programmierbare Hardware-Shader. Technische Entwicklung von Grafikhardware. Grafikpipeline (DirectX9)
t.jung@fhtw-berlin.de Heute Programmierbare Hardware-Shader Thomas Jung Architektur moderner Grafikkarten Rendering von Polygonlisten mit DirectX9 Vertex- und Pixel(Fragment) shader Motivation Spiele kommen
MehrName: Musterlösung Seite 2
Name: Musterlösung Seite 2 Beantworten Sie die Fragen in Aufgabe 1 mit einer kurzen, prägnanten Antwort. Die Fragen zu OpenGL beziehen sich auf die in der Vorlesung vorgestellte OpenGL Version 3.1 (core)
MehrOpenGL ES 2.0. OpenGL ist eine Bibliothek zur Ansteuerung von Grafikhardware
Begriffsbestimmung Was ist OpenGL (Open Graphics Library) OpenGL ist eine Bibliothek zur Ansteuerung von Grafikhardware Plattform- und Programmiersprachenunabhängig Darstellung komplexer 2D- und 3D-Szenen
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
Mehr(13) Hot Topics. Vorlesung Computergrafik T. Grosch
(13) Hot Topics Vorlesung Computergrafik T. Grosch Heute Vorstellung der besten Flugsimulatoren Hot Topics T. Grosch - - Warum Hot Topics? Typischerweise i Computergrafik 1 : Grundlagen, konstant Computergrafik
MehrZwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit. Direct 3D-Output für ein Rendering Framework
Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit Direct 3D-Output für ein Rendering Framework von Benjamin Betting unter der Betreuung von Daniel Schiffner 1 Gliederung Kapitel I und II: Motivation,Einführung,Grundlagen
MehrInhaltsverzeichnis. V Vorwort 17. V.1 An wen richtet sich dieses Buch? 18. V.2 Ansprüche an den Computer 18. V.4 Bildergalerie 19.
V Vorwort 17 V.1 An wen richtet sich dieses Buch? 18 V.2 Ansprüche an den Computer 18 V.3 Website 19 V.4 Bildergalerie 19 V.5 Über den Autor 20 1 Einführung 21 1.1 Installation 21 1.2 Projekttypen 22 1.3
MehrGames Engines. Realtime Terrain Rendering
Games Engines Realtime Terrain Rendering RTR Gliederung Probleme & Anforderungen Grundlagen Heightmaps und Paging Visibility View Frustrum Culling Occlusion Culling/ Occlusion Map Fogging Level of Detail
Mehr7. Organisation von Informationen
Computeranwendung in der Chemie Informatik für Chemiker(innen) 7. Organisation von Informationen Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL7 Folie 1 Grundlagen Programme
MehrHardware Tessellation in DirectX11 zur Berechnung von Levels of Detail in Echtzeitanwendungen
MASTER THESIS zur Erlangung des akademischen Grades Master of Science in Engineering im Studiengang 585 Hardware Tessellation in DirectX11 zur Berechnung von Levels of Detail in Echtzeitanwendungen Ausgeführt
MehrSS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION
SS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION (until Geforce 7 Series) 1 ÜBERSICHT Grafikpipeline Verlagerung
MehrComputer Graphik. Mitschrift von www.kuertz.name
Computer Graphik Mitschrift von www.kuertz.name Hinweis: Dies ist kein offizielles Script, sondern nur eine private Mitschrift. Die Mitschriften sind teweilse unvollständig, falsch oder inaktuell, da sie
MehrGrundlagen der 3D-Grafik
Seminar Programmierung von Grafikkarten Grundlagen der 3D-Grafik 8.5.26 Dominik Bossdorf Christian Schulze Marco Sebastiao 1 Inhalt Grafikhardware Rendering Pipeline am Beispiel OpenGL 3D Theorie mit homogenen
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
MehrBeleuchtung. in Computerspielen
Beleuchtung in Computerspielen Motivation Überblick Licht und Schattierung Lichtquellen Lokale Beleuchtungsmodelle Schattierungsverfahren Oberflächensimulation Beispiele der CryEngine Ausblick Zusammenfassung
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
MehrComputer Graphik (CS231) Projektübungsblatt 3
UNIVERSITÄT BASEL Prof. Dr. Thomas Vetter Departement Mathematik und Informatik Bernoullistrasse 16 CH 456 Basel Clemens Blumer Tobias Maier Fabian Brix http://informatik.unibas.ch/lehre/fs13/cs231/ Computer
MehrComputergraphik I. Scan Conversion: Lines & Co. Einordnung in die Pipeline. G. Zachmann Clausthal University, Germany zach@tu-clausthal.
11/4/10 lausthal omputergraphik I Scan onversion of Lines. Zachmann lausthal University, ermany zach@tu-clausthal.de Einordnung in die Pipeline Rasterisierung der Objekte in Pixel Ecken-Werte interpolieren
MehrMF Breadcrumbs. Sergej Schefer & Fabian Marx
MF Breadcrumbs Sergej Schefer & Fabian Marx MF Breadcrumbs! Entwurf! Algorithmen! Screenshots / Live-Demo Entwurf! 2.5D Jump n Run! Spieler kann sich durch Level bewegen und Punkte aufsammeln! Freie Levelgestaltung
MehrVolumen Visualisierung
Volumen Visualisierung Seminar Interaktive Visualisierung (WS 06/07) Fabian Spiegel und Christian Meß Fabian Spiegel und Christian Meß 1 Übersicht Anwendungsbeispiele Volumendaten Entstehung Repräsentation
MehrGrundlagen der Spieleprogrammierung
Grundlagen der Spieleprogrammierung Teil I: 3D-Graphik Kapitel 9: Engines, Cg und anderes Peter Sturm Universität Trier Outline 1. Übersicht und Motivation 2. Mathematische Grundlagen 3. Das Ideal: Photorealistisch
MehrVHDL - Grundlagen des Pointrenderings
VHDL - Grundlagen des Pointrenderings Marc Reichenbach, Timo Nieszner Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 2013 1 / 25 Rendern von Dreiecksnetzen Quelle: Inf9, CG-Slides grobmaschiges
MehrChristina Nell. 3D-Computergrafik
Christina Nell 3D-Computergrafik Was ist 3D-Computergrafik? 3D graphics is the art of cheating without getting caught. (unbekannte Quelle) Folie 2/52 Inhalt Beleuchtung Shading Texturierung Texturfilterung
MehrJava 3D. Linien, Flächen und Objekte Axel Bartsch, Okt. 2002
Java 3D Linien, Flächen und Objekte Axel Bartsch, Okt. 2002 Virtual World Koordinaten System Grundlagen zur Definition visueller Objekte Shape3D Unterklasse der Leaf-Klasse Eigenschaften des visuellen
MehrBeleuchtung Schattierung Rasterung
Beleuchtung Schattierung Rasterung Thomas Jung t.jung@htw-berlin.de Beleuchtung, Schattierung und Rasterung in allen Echtzeit-3D-Umgebungen gleich OpenGL Direct3D 3dsmax,... Letzter Bestandteil der Grafikpipeline
MehrPraktikum Augmented Reality Fernrohr -Felix Löhr-
Praktikum Augmented Reality Fernrohr -Felix Löhr- Allgemein Features Der Aufbau von Ogre Der Bezug zum Projektpraktikum Szenegraph Licht & Schatten Quaternionen Material Performance OGRE Object-Oriented
MehrComputer Graphics and Animation in Games
Computer Graphics and Animation in Games culling bloom advanced shading Some material based on Michael Wimmer, Michael Kalkusch, Peter Wonka, Francois Faure shadows 1 artificial intelligence? bump maps
MehrComputergraphik Grundlagen
Computergraphik Grundlagen XI. Rasterung Füllen von Polygonen Prof. Stefan Schlechtweg Hochschule nhalt Fachbereich Informatik Inhalt Lernziele 1. Zu lösendes Problem 2. Füllen von Pixelmengen 1. Rekursiver
MehrMesh-Visualisierung. Von Matthias Kostka. Visualisierung großer Datensätze
Mesh-Visualisierung Von Matthias Kostka Übersicht Einführung Streaming Meshes Quick-VDR Rendering virtueller Umgebung Rendering mit PC-Clustern Zusammenfassung 2 Mesh Untereinander verbundene Punkte bilden
MehrComputergrafik Universität Osnabrück, Henning Wenke,
Computergrafik Universität Osnabrück, Henning Wenke, 2012-07-09 Noch Kapitel XVI Realtime Ray Tracing KD-Tree: Surface Area Heuristic Ziele der Aufteilung in Child Nodes: 1. Möglichst gleich viele Objekte
MehrGPU Programmierung. Thorsten Grosch
Thorsten Grosch Willkommen zur ersten Vorlesung! g Heute Organisatorisches Vorstellung von Team und Vorlesung Historischer Rückblick zu GPUs 2 Das Team Vorlesung Jun.-Prof. Thorsten Grosch AG Computervisualistik
MehrEine Einführung Computergrafik SS14 Timo Bourdon
Eine Einführung Computergrafik SS14 Timo Bourdon Organisatorisches Übung am Freitag den 11. Juli entfällt! Zum OpenGL-Übungsblatt OpenGL 3.0 oder höher notwendig (Shading Language 1.50 oder höher) CIP
MehrComputer-Graphik 2 Visibility Computations II Culling
lausthal omputer-raphik 2 Visibility omputations II ulling lausthal University, ermany zach@in.tu-clausthal.de Klassifikation (Erinnerung) Problemklassen innerhalb des Bereichs "Visibility omputations":
MehrComputergraphik Grundlagen
Computergraphik Grundlagen IX. Texturen und Schatten Prof. Stefan Schlechtweg Hochschule Anhalt Fachbereich Informatik Inhalt Lernziele 1. Texture Mapping 1. Texture Pipeline 2. Environment Mapping 3.
MehrGeneral Purpose Computation on GPUs
General Purpose Computation on GPUs Matthias Schneider, Robert Grimm Universität Erlangen-Nürnberg {matthias.schneider, robert.grimm}@informatik.stud.uni-erlangen.de M. Schneider, R. Grimm 1 Übersicht
MehrInstitut für Programmierung und Reaktive Systeme 20. November Programmieren I. 4. Übungsblatt
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 20. November 2017 Programmieren I 4. Übungsblatt Hinweis: Auf diesem und den folgenden Übungsblättern
MehrAdaptives Displacement Mapping unter Verwendung von Geometrieshadern
Fakultät Informatik Institut für Software- und Multimediatechnik, Professur für Computergraphik und Visualisierung Adaptives Displacement Mapping unter Verwendung von Geometrieshadern Diplomarbeit Timo
Mehr7/5/07. Beispiel: Hello_GLSL. Setzen von "uniform"-variablen. Inspektion der Parameter eines GLSL-Programms. Attribut-Variablen: Uniform-Variablen:
Beispiel: Hello_LSL Inspektion der Parameter eines LSL-Programms Attribut-Variablen: glprogramiv() : liefert die Anzahl aktiver attribute -Parameter gletactiveattrib() : liefert Info über ein bestimmtes
MehrComputergrafik 1 Beleuchtung
Computergrafik 1 Beleuchtung Kai Köchy Sommersemester 2010 Beuth Hochschule für Technik Berlin Überblick Lokale Beleuchtungsmodelle Ambiente Beleuchtung Diffuse Beleuchtung (Lambert) Spiegelnde Beleuchtung
MehrGrundlagen der Spieleprogrammierung
Grundlagen der Spieleprogrammierung Teil I: 3D-Graphik Kapitel 8: Hardware Peter Sturm Universität Trier Outline 1. Übersicht und Motivation 2. Mathematische Grundlagen 3. Das Ideal: Photorealistisch (Raytracing,
MehrMODELLIERUNG UND ANIMATION EINER KTM 250 EXC MIT LIGHTWAVE 3D
Präsentation Graphikprogrammierung WS 2007/2008 MODELLIERUNG UND ANIMATION EINER KTM 250 EXC MIT LIGHTWAVE 3D 02.01.2008 1 Gliederung Einführung Zieldefinition Vorbereitung Modellieren Texturieren Animieren
MehrOpenGL auf Mac OS X und ios
OpenGL auf Mac OS X und ios Torsten Kammer 28.4.2011 CocoaHeads Aachen Grundlagen API für hardwarebeschleunigte 3D-Grafik Kann auch für schnelles 2D verwendet werden Grundlage von Core Image, Core Animation,
MehrNumerik und Rechnen. Martin Heide & Dominik Holler. 12. Juni 2006
12. Juni 2006 Bibliothek für Lineare Algebra GPGPU-Programming: Low-Level High-Level Bibliothek Bibliothek für Lineare Algebra Gliederung 1 Bibliothek für Lineare Algebra 2 Skalare Bibliothek für Lineare
MehrEinstieg in die Informatik mit Java
1 / 21 Einstieg in die Informatik mit Java Felder, eindimensional Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 21 1 Überblick: Was sind Felder? 2 Vereinbarung von Feldern
MehrWorkshop: Einführung in die 3D-Computergrafik. Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar
Workshop: Einführung in die 3D-Computergrafik Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar 1 Organisatorisches Tagesablauf: Vormittags: Theoretische Grundlagen Nachmittags: Bearbeitung
MehrProKu Sommersemester 2015 Aufgabenblatt 4
ProKu Sommersemester 2015 Aufgabenblatt 4 Raphael Münster Jordi Paul Adam Kosik Dirk Ribbrock Peter Zajac March 16, 2015 Aufgabe 19: Verbesserte Numerische Lineare Algebra, Speicherverwaltung a) Analysieren
MehrEffiziente Erzeugung qualitativ hochwertiger Bilder anhand punktbasierter Geometriedaten
Effiziente Erzeugung qualitativ hochwertiger Bilder anhand punktbasierter Geometriedaten Referent: Arndt Ebert 1 2 Ziel des Vortrags Einordnung der point based representation (PBR) und Grundlagen Effiziente
MehrVergleich von Forward und Deferred Rendering
Vergleich von Forward und Deferred Rendering Kamil René König Bachelorarbeit Bachelor Informatik 12.08.2014 Betreuer: Prof. Dr. Detlef Krömker, Dr. Daniel Schiffner Übersicht Motivation Definitionen Forward
MehrGPU Programmierung. Thorsten Grosch
Thorsten Grosch Willkommen zur ersten Vorlesung! g Heute Organisatorisches Vorstellung von Team und Vorlesung Historischer Rückblick zu GPUs 2 Das Team Vorlesung Jun.-Prof. Thorsten Grosch AG Computervisualistik
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
Mehr0 Einführung. Computergrafik. Computergrafik. Abteilung für Bild- und Signalverarbeitung
F1 Inhaltsverzeichnis 1 Hardwaregrundlagen 2 Transformationen und Projektionen 3 Repräsentation und Modellierung von Objekten 4 Rasterung 5 Visibilität und Verdeckung 6 Rendering 7 Abbildungsverfahren
MehrÜbungsstunde 8 zu Computergrafik 1
Institut für Computervisualistik Universität Koblenz 14. und 15. Januar 2013 Inhaltsverzeichnis 1 Wiederholung - Beleuchtung Gouraud-Shading Phong-Shading Flat-Shading Vergleich 2 - Idee in OpenGL Texturfilterung
MehrModellierung. Oliver Hartmann
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
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
MehrC for Graphics Benjamin Rommel Seminar 'Paralleles Rechnen auf Grafikkarten' Sommersemester 2009 Betreuer: Julian M.
C for Graphics Benjamin Rommel 12.05.2009 Seminar 'Paralleles Rechnen auf Grafikkarten' Sommersemester 2009 Betreuer: Julian M. Kunkel 'C for Graphics', Benjamin Rommel, SS 2009 Inhaltsübersicht Gliederung
MehrSeminar Computerspiele Räumliche Datenstrukturen. Ralf Pramberger
Seminar Computerspiele Räumliche Datenstrukturen Ralf Pramberger Themen 2 1. Grundlagen Szene Sichtbarkeit (Raytracing) Culling 2. Räumliche Datenstrukturen Bounding Volume Hierarchie Quadtree/Octree BSP-Tree
MehrInformatik 1 ( ) D-MAVT F2010. Schleifen, Felder. Yves Brise Übungsstunde 5
Informatik 1 (251-0832-00) D-MAVT F2010 Schleifen, Felder Nachbesprechung Blatt 3 Aufgabe 1 ASCII... A > a Vorsicht: Lösen Sie sich von intuitiven Schlussfolgerungen. A ist nicht grösser als a, denn in
MehrPraktikum Medizinische Bildverarbeitung in C#: Volume-Rendering Technische Universität München / Lehrstuhl Informatik IX WS 2004/05 Dr.
Praktikum Medizinische Bildverarbeitung in C#: Volume-Rendering Technische Universität München / Lehrstuhl Informatik IX WS 2004/05 Dr. Michael Roth Prof. Dr. Bernd Radig Aufgabe 37 Blatt 9 Erweitern Sie
MehrObjektorientierte Programmierung
Unterlagen zur Veranstaltung Einführung in die Objektorientierte Programmierung Mit Processing Alexis Engelke Sommer 2012 Alexis Engelke Inhalt Level 1: Geometrie Hintergrundfarben Punkte, Linien und deren
MehrComputergrafik. Michael Bender, Manfred Brill. Ein anwendungsorientiertes Lehrbuch ISBN Inhaltsverzeichnis
Computergrafik Michael Bender, Manfred Brill Ein anwendungsorientiertes Lehrbuch ISBN 3-446-40434-1 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40434-1 sowie
MehrArchitektur moderner GPUs. W. Sczygiol - M. Lötsch
Architektur moderner GPUs W. Sczygiol - M. Lötsch Überblick Chipentwicklung Aktuelle Designs Nvidia: NV40 (ATI: R420) Vertex-Shader Pixel-Shader Shader-Programmierung ROP - Antialiasing Ausblick Referenzen
MehrTerrain Rendering mit Hardware Tessellation unter DirectX 11
MASTER THESIS zur Erlangung des akademischen Grades Master of Science in Engineering im Studiengang Game Engineering und Simulation Terrain Rendering mit Hardware Tessellation unter DirectX 11 Ausgeführt
Mehr5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS)
5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Datenstruktur BDD 2 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer:
Mehr3D-Grafik-Chips. Informatik-Seminar Michael R. Albertin. Betreuer: E. Glatz
3D-Grafik-Chips Informatik-Seminar Michael R. Albertin Betreuer: E. Glatz Übersicht Übersicht Ziel Einleitung Chipgrundlagen Funktionen Benchmarks Schluss Ziel Grundlegende Techniken kennen Chips unterscheiden
MehrZugänge. 6. 3D Programming. ! DirectX. ! Fixed-function Pipeline. ! Shader. ! OpenGL. ! Microsoft XNA. Spieleprogrammierung Winter 2011
6. 3D Programming! DirectX! Unmanaged (C++)! Managed (C#)! Fixed-function Pipeline! Shader! OpenGL! Microsoft XNA Zugänge (c) Peter Sturm, Universität Trier 1 DIRECTX DirectX! Laufzeitunterstützung für
Mehr:= Modellabbildung. Bildsynthese (Rendering) Bildsynthese
Geometrisches Modell bestehend aus Datenstrukturen zur Verknüpfung geometrischer Primitive, welche eine Gesamtszene beschreiben Bildsynthese := Modellabbildung Pixelbasiertes Modell zur Darstellung eines
MehrPraktikum zu Einführung in die Informatik für LogWings und WiMas Wintersemester 2013/14
Praktikum zu Einführung in die Informatik für LogWings und WiMas Wintersemester 2013/14 Fakultät für Informatik Lehrstuhl 1 Dr. Lars Hildebrand Iman Kamehkhosh, Marcel Preuß, Henning Timm Übungsblatt 11
MehrProgrammieren in Java -Eingangstest-
Programmieren in Java -Eingangstest- Nummer: 1. Studiengang: Informatik B.Sc. Informatik M.Sc. ESE B.Sc. ESE M.Sc. Sonstiges: Fachsemester: Bitte Fragen, die Sie nicht beantworten können unbedingt mit
MehrComputergrafik Universität Osnabrück, Henning Wenke,
Computergrafik Universität Osnabrück, Henning Wenke, 2012-06-18 Kapitel XIII Texturing Definition: Textur (Computergrafik) Geometrieunabhängige Oberflächeneigenschaft Typischerweise höher aufgelöst als
MehrRendering Grundlagen Autodesk Maya. Grundlagen. Version 1.0-2009-04-08. 2009 Ingo Clemens brave rabbit www.braverabbit.de
Rendering Grundlagen Version 1.0-2009-04-08 Allgemeine Unterschiede bei Renderern Scanline Rendering Raytrace Rendering Renderlayer Einsatz von Renderlayern Overrides Material Overrides Layer Presets Batch
MehrEinfache GIF Animation mit Blender und Gimp
Seite 1 von 11 Einfache GIF Animation Author: Harald Gräf 20.12.2010 Zusammenfassung Dies ist eine Schritt für Schritt Anleitung, um mit Blender und GIMP eine GIF Animation zu erstellen. Solche GIFs finden
MehrSpieleprogrammierung mit DirectX
jetzt lerne ich Spieleprogrammierung mit DirectX Der einfache Einstieg in die C++-Programmierung CHRISTIAN ROUSSELLE Inhaltsverzeichnis jetzt lerne ich 1 Einführung 17 2 Grundlagen 19 2.1 Plattformen 19
MehrVolumenakquise. Vortrag von Benjamin Gayer
10.11.11 1 Volumenakquise Vortrag von Benjamin Gayer Einführung Bildquelle: http://www.medical.siemens.com/siemens/de_de/rg_marcom_fbas/files/patienteninformationen/ct_geschichte_technologie. pdf 10.11.11
MehrEinführung. GPU-Versuch. Andreas Schäfer Friedrich-Alexander-Universität Erlangen-Nürnberg
GPU-Versuch andreas.schaefer@cs.fau.de Friedrich-Alexander-Universität Erlangen-Nürnberg Praktikum Parallele Rechnerarchitekturen SS2014 Outline 1 Einführung 2 Outlook 1 Einführung 2 Eine kurze Geschichte
MehrVorlesung Algorithmen für hochkomplexe Virtuelle Szenen
Vorlesung Algorithmen für hochkomplexe Virtuelle Szenen Sommersemester 2012 Matthias Fischer mafi@upb.de Vorlesung 13 3.7.2012 Matthias Fischer 395 Übersicht Motivation Idee Rendering erster Durchlauf
MehrTriangulierung von einfachen Polygonen
Triangulierung von einfachen Polygonen - Seminarvortrag von Tobias Kyrion - Inhalt: 1.1 Die Problemstellung Quellenangabe 1.1 Die Problemstellung Definition Polygon: endlich viele paarweise verschiedene
MehrNon-Photorealistic Rendering
Übersicht 1. Motivation und Anwendungen 2. Techniken - Cel Shading - Konturlinien - Hatching Einführung Traditionelle Computergraphik Ziel: Fotorealismus Einführung Motivation Bewusste Vermeidung von
Mehr