Raytracing, the future of realtime

Slides:



Advertisements
Ähnliche Präsentationen
Computer Graphics Shader
Advertisements

Hauptseminar - Computer Graphics
Lineare Interpolation - Beispiel
Maurer, Karl-Heinz Moderne Grafikkarten & Features DVT-Referat am
Kollisionen erkennen Kollisions- und Schnittpunkttests auf Dreieckbasis Kollisions- und Schnittpunkttests auf Viereckbasis Einsatz von achsenausgerichteten.
Graphische Datenverarbeitung IV Dr. Markus Heitz.
MROM Als Masked ROM, deutsch Masken-ROM oder kurz MROM bezeichnet man Festwertspeicher, bei denen die Information im Rahmen des Fertigungsprozesses fest.
5.2 Schattierungsverfahren
5. Beleuchtung und Schattierung
Phong Shading (Normaleninterpolation)
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung
Java3d „Licht und Material“
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
So animieren Sie Kreisdiagramme mit der Eingangs-Animation „Rad“
Computergrafik Vom Dreieck zum Ego-Shooter Olaf Müller
Displacement Mapping Dynamische Generierung detaillierter Geometrien
Special Effects Realistischeres Rendern einer Scene.
Computergrafik Begriff: Was ist Computergrafik?
GPU Architectures: GeForce 8, GeForce 9 and Future
Random Heightmap on GPU
Grafikkarten.
FHP - Fachbereich Bauingenieurwesen
Wann wird dynamisches Echtzeit-Raytracing für den Massenmarkt verfügbar? Alexander Stromer SS2012 / / Universität Trier
CPLD/FPGA-Programmierung mit E-blocks. Wozu die CPLD/FPGA-Programmierung untersuchen? Zusammenhang zur modernen Digitalen Elektronik Verschwinden der.
Effiziente Algorithmen
Depth of Field Ein Fachvortrag von: Max Goltzsche und Igor Marijanovic Real-Time RenderingBeuth Hochschule für TechnikSoSe 2012.
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 3 Übung: Softwaretechnologie.
Grafikkarten.
Thema: Grafikkarten.
Computergraphische Visualisierungs- verfahren für 3D-Stadtmodelle
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
4.7 Globale Beleuchtungsmodelle
Theorie Praktische Beispiele
Medizinische Visualisierung
ProSeminar WS 2007/08 Leo Hackstein
Ein Vortrag von Simon Bayer
Theorie Praktische Beispiele
Helwig Hauser Teil 9: Radiosity Simulation globaler Lichtverteilung.
Beleuchtungsmodelle, Schattierungsmodelle
Beleuchtung, inkl. Schatten, Reflexionen
Michael Schmidt computer graphics & visualization Texture Mapping Lapped Textures.
Kurzvortrag Grafikkarten
Parallelisierung für Multiprozessor-Maschinen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Theorie Praktische Beispiele
Universität zu Köln WS 2014/15 HKI – Softwaretechnologie 2 (Teil 1) Von Tilo Kochs.
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.
Programmierübung –Projekt: Rekursiver Raytracer in Java –Gruppenstärke: max. 2 Studierende –Korrektur:
Geometric Representation
Stefan Röttger Universität Stuttgart (VIS). Überblick 1. Motivation 2. Shadow Volumes [Crow77] 3. Verfahren ohne Stencil Buffer 4. Demonstrationsfilm.
Der Begriff Grafik Computergrafik ist die Erstellung und Verarbeitung von Grafiken mit Hilfe eines Computers. Hierzu benötigt man: Eingabegeräte wie zum.
AGP, PCIE Bus im Vergleich AGP: Accelerated Graphic Port 1997 von Intel entwickelt. Ab 1998 AGP dann in großem Stil in PCs als Grafikkartensteckplatz verwendet.
3D Graphics APIs: OpenGL & Fixed Function Pipeline
Die Renderpipeline.
Multimedia und Virtual Reality Vorlesung am Martin Kurze Multimedia in 3D.
PhysX auf der GPU in Batman: Arkham Asylum & bei Fluid Simulations Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie.
Global-Illumination: Radiosity
Die Grafikkarte Aufbau: Was ist eine Grafikkarte?
Binärbäume.
Lichtexprimente ls stadttechnik ws 02/03 marco bartsch marco laske lichtsimulation mit software.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
Computerhardware Paul Pumsenberger. Allgemein ● Materielle Teil des Computers ●,angreifbar' ● Geht (fast) nie kaputt ● Gegensatz: Software – Oft fehlerhaft,
Präsentation von Markus Lugbauer
Die Komponenten Von einem PC.
 Präsentation transkript:

Raytracing, the future of realtime computer graphics? von Miroslav Knejp

Übesicht Erste Eindrücke Rasterization, die Quadratur des Dreiecks Erster Einsatz in Spielen Das grundlegende Prinzip Vor- und Nachteile Raytracing, die Simulation der Realität Die Entstehungsgeschichte Wie funktioniert es? Hardwareumsetzung Ein Blick in die Sterne Hybridverfahren Der SaarCOR Pionier

Videos in Spielen

Final Fantasy

Herr der Ringe

Der Erstvergleich

Übesicht Erste Eindrücke Rasterization, die Quadratur des Dreiecks Erster Einsatz in Spielen Das grundlegende Prinzip Vor- und Nachteile Raytracing, ein physikalisches Modell Die Entstehungsgeschichte Wie funktioniert es? Hardwareumsetzung Ein Blick in die Sterne Hybridverfahren Der SaarCOR Pionier

Rasterization 1996: Quake ist das erste Spiel mit Rasterization und Polygonen Fast komplett von John Carmack allein geschrieben Michael Abrash für Optimierungen einbezogen Erste Anwendung von Lightmaps Anfangs reiner Software Rasterizer Später Support für Renditions‘s Vérité 1000 Grafikchip GLQuake für Windows 95 Demonstrierte die Fähigkeiten der 3dfx „Voodo“ Chipsätze Inzwischen glauben viele, dies wäre der Auslöser für die Gründung neuer Unternehmen und die revolutionäre Entwicklung der Grafikkarten gewesen.

Scanline Algorithmus Anfangs nur die Eckpunte bekannt Berechne die Kantenvektoren und die Umkehrung der Steigung 1/m. Die Kanten gehen von oben nach unten Wähle Kanten ausgehend vom höchsten Punkt Zeichne alle Punkte zwischen den x Werten der Kantenanfänge Veschiebe die Kanten um 1 nach unten und addiere 1/m auf die x Werte Zeichne alle Punkte zwischen den neuen x Werten Wiederhole bis keine Kanten mehr da

Vor- & Nachteile Einfacher Algorithmus mit minimalem Rechenaufwand Äußerst effektive Hardwareumsetzungen Keinerlei forgeschrittene Effekte Schattenwurf (Stencil-Buffer Maske) Reflexionen (Stencil-Buffer Maske) Refraktionen (nur mit Shadern) Runde Flächen nur mit vielen Polygonen möglich Beluchtungsmodell wird meist auf mehr Bildpunkte angewandt als nötig

Übesicht Erste Eindrücke Rasterization, die Quadratur des Dreiecks Erster Einsatz in Spielen Das grundlegende Prinzip Vor- und Nachteile Raytracing, ein physikalisches Modell Die Entstehungsgeschichte Wie funktioniert es? Hardwareumsetzung Ein Blick in die Sterne Hybridverfahren Der SaarCOR Pionier

Historisches 1966 Mathematical Application Group Inc. (MAGI) für Strahlungsdarstellung mit ray casting 1968 Arthur Apple nimmt in betracht ray casting für Grafikdarstellung zu benutzen 1972 wird MAGI wird zu Animatinsstudio Erstellte damals 3-D Animationen für TV, Bildungskanal und TRON 1979 Turner Whitted erweitert ray casting um weitere, rekursiv erstelte, Strahlen und schafft damit den Durchbruch der Computergrafik und nennt das Verfahren ray tracing

Das Grundprinzip

Der Raytracing Algorithmus

Reflexionen

Transparenz

Vorteile Pixelgenaue Beleuchtung, ziemlich realistische Lichtverhältnise Beleuchtungsmodell wird nur auf sichtbaren Objektpunkten ausgewertet Realistische Schatten, Reflexionen und Refraktionen sind eingebaute Effekte und benötigen keine Tricks oder Shader Shader sind weiterhin einsetzbar Mit guten Sortieralgorithmen ist die Komplexität der Szene fast irrelevant (k-D Bäume) Runde Flächen durch Gleichungen oder Interpolation erreichbar Hypertextures

Nachteile Schnittpunktberechnungen zwischen Gerade und Dreieck langsam Geradengleichung: X = O + µ * D Unterschiedlich je nach Schnittobjekt (Ebenen, Kugeln, Dreiecke, NURBS etc.) Ohne einen effizienten Sortieralgorithmus der Geometrie kaum machbar, da sonst O(n) für jeden Strahl, mit n = Anzahl Objekte in der Szene! Führt zu Aliasing Weiche Schatten sind teuer Trotz statischer Szene müssen alle Licht- und Schattenberechnungen für jeden Blickpunkt durchgeführt werden Globales Diffuses Licht wird nicht berücksichtigt

k-D Bäume k-dimensionale Raumeinteilungsbäume Jede Aufzweigung unterteilt den Raum entlang einer der Hautpachsen Die Vergleichsachse wird bei jedem Tiefenschritt cyklisch gewechselt Jeder Knoten enthält genau ein Element; Speicherverbrauch O(n) Konstruktion in O(n log n) Orthogonale Bereichssuche: Finde alle Knoten, deren Position in einem bestimmten Suchbereich liegt O(n1-1/k) Interaktives Beispiel

Hardwareumsetzung Zur Zeit keine echten Raytracer Grafikkarten vorhanden Rekursionen lassen sich schwierig mit hoher Effizienz umsetzen Rasterizer: Jedes Dreieck wird einzeln berechnet und dann verworfen Raytracer: Gesamte Gemoetrie muss während des Vorgangs gespeichert werden Maximale Parallelität, da Strahlen voneinander unabhängig

Übesicht Erste Eindrücke Rasterization, die Quadratur des Dreiecks Erster Einsatz in Spielen Das grundlegende Prinzip Vor- und Nachteile Raytracing, ein physikalisches Modell Die Entstehungsgeschichte Wie funktioniert es? Hardwareumsetzung Ein Blick in die Sterne Hybridverfahren Der SaarCOR Pionier

Hybridverfahren Ersetze die Schnittpunktberechnung durch Rasterizer Anstatt der Farbe wird Position des Schnittpunkts und ein Zeiger auf das Dreieck gespeichert Damit wird die erste Stufe deutlich beschleunigt Ist nur für mittel gefüllte Szenen brauchbar wegen der Rasterizer Nachteile Schattenberechnung, Transparenz und Spiegelung müssen wieder vom Raytracer Algorithmus übernommen werden Hoher Geschwindigkeitsschub bei wenig Spiegelungen und Lichtbrechungen

Der SaarCOR Echtzeit Raytracing Chip der Universität Saarbrücken Wurde am Lehrstuhl für Computergrafik unter Prof. Phillip Slusallek entwickelt SIGGRAPH 2005 wurde er erstmals im Cell-Processor von IBM demonstriert Der erste und einzige Raytracing Chip OpenRT: Eine Software Grafik API, die stark an die von OpenGL angelehnt ist und die Grundlage für den Chip war Kann riesige Datenmengen in Echtzeit darstellen Automobilindustrie setzt das Echtzeit-Raytraicing Verfahren bereits in der Planungsphase ein, um Fehler vor der Produktion zu finden RPU: Programmable Ray Processing Unit www.saarcor.de

SaarCOR Technisches Realisiert auf einem FPGA Chip FPGA = Field Programmable Gate Array, besteht aus sehr vielen programmierbaren Elementen (= Gates), deutlich langsamer als festverdrahtete Logik 90 MHz Grundtakt 6 x 4 MB SD-RAM 2 RAM Riegel für Framebuffer, 1 Riegel für Shader und 3 Riegel für k-D Baum und Dreiecke 300 MB/s Speicherbandbreite von Raytracer und Shader genutzt 135 MB/s zum Zeichnen einer 1024x768 Szene auf dem Bildschirm PCI Anschluss Festverdrahtete Logik könnte noch schnellere Taktungen und mehr Speicher/Bandbreite erreichen

SaarCOR Performance OpenRT: 2,66 GHz Pentium 4 | 512 x 384 Auflösung Scene triangles objects SaarCOR OpenRT RPU Scene6 806 1 44,6 fps 20,8 fps 12,9 fps Office 34 312 35,9 fps 10,4 fps 14,6 fps Quake3 39 424 24,6 fps 11,1 fps 12,5 fps Quake3-p 52 790 17 19,6 fps 7,9 fps 9,7 fps UT2003 52 479 18,6 fps 8,0 fps 7,5 fps Conference 282 805 54 16,2 fps 8,1 fps 5,5 fps Castle 20 891 8 17,5 fps 9,2 fps 2,8 fps Terrain 10 469 866 264 11,6 fps 3,5 fps 2,2 fps SunCOR 187 145 136 5 622 23,5 fps 4,0 fps OpenRT: 2,66 GHz Pentium 4 | 512 x 384 Auflösung SaarCOR/RPU: 66 MHz | Texturen, Shading & Filter

nVidia 8800 GTX 3D Mark03 25 494 022 Triangles 84,69 fps Deutlich höhere Transistorzahlen als complette Quad-Core CPUs GPU-Takt: 575 MHz Speichertakt: 1800 MHz 128 Shader Einheiten (1,35 GHz) 768 MB GDDR3 RAM 30 GB/s Anbindung (könnte über 100 Raytracing Einheiten versorgen) Der bis heute schnellste veröffentlichte Raytracer auf GPUs schaffte 300k bis 4M Strahlen pro Sekunde ohne Geometry Shader (ATI Radeon 9700PRO) Der FPGA Prototyp schafft 3M bis 12M Strahlen pro Sekunde mit deutlich geringeren Energie- und Bandbreitenanforderung Fazit: Ein festverdrahteter SaarCOR, der um eine oder zwei Größenordnungen erweitert wird, würde bereits die Fähigkeiten normaler Grafikkarten übertreffen.

Der SaarCOR

Danke für die Aufmerksamkeit Echt oder künstlich? Danke für die Aufmerksamkeit Q & A