1 / 23

GPU-basierte Simulation dynamischer Terrains

GPU-basierte Simulation dynamischer Terrains. Diplomverteidigung Maik Lathan 2008. Motivation. Simulation natürlicher Phänomene in der Computergrafik  realistische virtuelle Umgebungen

hieu
Download Presentation

GPU-basierte Simulation dynamischer Terrains

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GPU-basierte Simulation dynamischer Terrains DiplomverteidigungMaik Lathan 2008

  2. Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  3. Motivation • Simulation natürlicher Phänomene in der Computergrafik realistische virtuelle Umgebungen • Dynamische Terrains sind Grundlage verschiedener Anwendungen: WisVis, Filmindustrie, Spielindustrie, Militär • Bodenmechanik als Grundlage für Terrainverhalten Umfangreiche physikalische Phänomene • Berechnungen erfordern hohe Rechenleistung  bisher effiziente Darstellung statischer Terrains • Leistung von Graphics Processing Unit (GPU) verwenden  Bodenmechanik in Echtzeit simulieren und darstellen Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  4. Zielstellung 1 2 3 Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  5. Grundlagen der Bodenmechanik I Halde mit Gefälle • Boden besteht aus granularen Partikeln Beispiel: Kies, Schotter, (Zucker) • Merkmale: Form, Farbe, Masse, chemischer Aufbau • Reibung zwischen Partikeln Aufschüttung bildet stabile Halde (Anstieg θ) • Wird Reibung überwunden, beginnt Boden zu fließen Festkörper & Flüssigkeit • Übergang zwischen „fest“ und „flüssig“ Bruchebene Bruchebene Entmischung Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  6. Grundlagen der Bodenmechanik II Höhensäulen • Boden durch physikalisches Modell abbildenHöhensäulen [Li1993] Diskrete-Elemente [Cu1979] • Höhensäulen: Bodenvolumen diskret als „Säulen“ auf 2D-Raster abbilden • Berechnungen auf Basis der Höhendifferenz von Säulen • Diskrete-Elemente: Sandkörner als sphärische Partikel abbilden • Berechnung auf geometrischer Basis bzw. Wechselwirkungen zwischen Partikeln Sphärisches Partikel Partikelverbund Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  7. Allgemeine GPU-Berechnungen • Darstellungsfähigkeiten für allgemeine Berechnungen verwenden • Algorithmen auf paralleler GPU-Architektur implementieren • Vereinfachte CPU-GPU-Analogien: • Funktionsaufruf Darstellung • Innere Funktion Pixel-Shader • ArrayTextur Stark vereinfachte Shader-Modell 4.0 Architektur (DirectX10) Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  8. Terrain-Modell • Sphärische Diskrete-Elemente bilden Erdboden Zustand: Ort x, Impuls p, Masse m, Radius r • Wechselwirkung bei Kollision: Partikel j  Partikel i • Kollisionskraft, Dämpfungskraft: FC+FD Partikel Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  9. Verfahren I • Diskrete-Elemente bilden Partikelsystem in Simulationsraum SR simuliert • Inter-Partikelkollision beschleunigen Partikel in Voxelgitter einsortieren • Objekt-Partikelkollision beschleunigen Voxelgitter nutzen • Terrainoberfläche aus Partikel generieren optimierter Marching-Cubes-Algorithmus • Verfahren ist Kaskade von GPU-Shadern Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  10. Verfahren II Shader-Verbund der Simulation Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  11. (A) GPU-Voxelgitter • Besteht aus homogenen Volumenelementen • Partikel je Zeitschritt neu einsortiert • Voxelgitter besteht aus 3D-Textur und 1D-Textur • Primäreinsortierung in 3D-Textur, sekundär in 1D-Textur als Liste Voxel 0 1 2 3 4 5 6 7 1 3 4 … 4, 3, 1 4 3 Voxel Partikel 3 bereits einsortiert 4 1 … Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  12. (B) GPU-Kollision und Reaktion I • Dreiecksbasierte Objekte kollidieren mit Partikeln Terrain direkt manipulierbar • Suchraum für Kollision effizient einschränken • Kollisionserkennung und -reaktion in 2 Phasen 1. Grobe Suche, 2. exakte Kollision • Grobe Suche: • Voxelgitter ausnutzen • Achsenorientierte Begrenzungsbox definiert Voxelvolumen • Exakte Kollision: • Partikel in Objektvoxeln berücksichtigen • Hierarchischer Schnitttest  Kugel-Dreieck Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  13. (B) GPU-Kollision und Reaktion II • Grobe Suche • AOBB • an Voxelgitter anpassen • Voxel bestimmen Simulationsraum SR 1 9 • Exakte Kollision (Partikel 8) • Punkt-In-Dreieck? • Kugel-Berührt-Kante? • Kugel-Berührt-Ecke? F 8 4 7 • Wirkende Kraft ermitteln (Modell) • Kraft in Textur speichern 6 5 3 2 Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  14. (C) GPU-PartikelsystemI • Simulation basiert auf Newton‘scher Mechanik • Simulationszeitschritt 100ms • Partikelzustand in 2x 2D-Texturen gespeichert Berechnungen durch gerastertes Vollbildrechteck Je Texel ein Partikel! Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  15. (C) GPU-PartikelsystemII • Kräfte akkumulieren FGes und System integrieren • Gravitation (konstant je Partikel) • Partikel-Simulationsraum-Kollision • Partikel-Objekt-Kollision • Partikel-Partikel-Kollision • Voxelgitter für Partikel-Partikel-Kollision nutzen 27 Nachbarvoxel betrachten • Zustandstextur der Partikel aktualisieren Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  16. (D) GPU-Oberflächenrekonstruktion I • Partikelsystem in Terrainoberfläche umwandeln • Phase 1:Skalarfeld berechnen • Phase 2:Marching-Cubes generiert Oberfläche • Marching-Cubes verwendet Voxelgitter als Grundlage • Geometry-Shader generiert Oberflächendreiecke Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  17. (D) GPU-Oberflächenrekonstruktion II Modell der Oberflächenrekonstruktion [Triquet2001] Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  18. (D) GPU-Oberflächenrekonstruktion III Phase 1 – Skalarfeld • Feldfunktion je Gitterpunkt je Partikel auswerten • Schichten ermitteln, die Partikel überdeckt • Je Schicht ein Rechteck im Voxelgitter darstellen • Feldwerte summieren  AlphaBlending Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  19. (D) GPU-Oberflächenrekonstruktion IV Phase 2:Marching-Cubes  Dreiecksnetz • Platten durchwandern, jedes Voxel • Angrenzende Schichten auswerten  8 Ecken • Dreiecke erzeugen  VertexBuffer Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  20. Ergebnisse DEMO Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  21. Zusammenfassung • Verfahren komplett mit GPU berechnet (DirectX10) • Partikelsystem, Kollisionsreaktion und Oberflächenkonstruktion dynamische Terrainsimulation • Verfahren basiert auf physikalisch plausibler DEM-Methode Erosion, Einschläge, Lawinen • Objekte können mit Terrain interagieren Materialtransport • Volumetrischer Erdboden Höhlen, Durchdringungen • Echtzeitfähig mit 10.000 Partikeln Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  22. Ausblick • Beschränkung des Simulationsraums aufheben 3D-Hash anstatt Voxelgitter nutzen • Partikelanzahl reduzieren (viele nicht sichtbar) Partikelanzahl- und Größe an Erfordernis anpassen • Physikalische Simulation auf Aktionsvolumen einschränken wodurch definieren sich die Volumen? • Terrain auf hoch paralleler Architektur berechnen (IBMCell, NV TESLA) einzelne Bereiche mit SPU/GPU berechnen/simulieren Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

  23. Ende Vielen Dank für Ihre Aufmerksamkeit Diplomverteidigung - Maik Lathan - TU-Dresden - 2008

More Related