1 / 60

Marco Tarini Kai Hormann Paolo Cignoni Claudio Montani

PolyCube-Maps. Marco Tarini Kai Hormann Paolo Cignoni Claudio Montani. Maik Lathan. Motivation. Texture-Atlas. Mesh. Textured-Mesh. Motivation. Texture -Artefakte  Nähte und Verzerrungen. Motivation - Nähte. Nähte haben fatale Folgen… Parametrisierung ist netzabhängig:

qiana
Download Presentation

Marco Tarini Kai Hormann Paolo Cignoni Claudio Montani

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. PolyCube-Maps Marco Tarini Kai Hormann Paolo Cignoni Claudio Montani Maik Lathan

  2. Motivation Texture-Atlas Mesh Textured-Mesh Computergrafik-Hauptseminar 2005 --- Maik Lathan

  3. Motivation • Texture-Artefakte  Nähte und Verzerrungen Computergrafik-Hauptseminar 2005 --- Maik Lathan

  4. Motivation - Nähte Nähte haben fatale Folgen… • Parametrisierung ist netzabhängig: Verschiedene LOD-Stufen bedingen individuelle Parametrisierungen Computergrafik-Hauptseminar 2005 --- Maik Lathan

  5. Motivation – Texture-Filterung Nähte haben fatale Folgen… • Schlechte Texture-Filterung: Mip-Mapping sowie Bilineare Filterung bedingen kontinuierliche Texel  an Patch-Rändern nicht erfüllt Computergrafik-Hauptseminar 2005 --- Maik Lathan

  6. Motivation – Verschwendeter Speicher Nähte haben fatale Folgen… • Verschwendeter Speicher Atlas-Mapping verschenkt viel Texture-Speicher  Patches liegen schlecht verdichtet in Map ! ! ! ! ! Computergrafik-Hauptseminar 2005 --- Maik Lathan

  7. Es gibt eine Lösung… PolyCube-Maps

  8. Inhalt • PolyCube-Maps im Überblick • PolyCube-Maps – in a Nutshell • Funktionsweise von PolyCube-Maps • Bilder • Experimentelle Ergebnisse • Ausblick Computergrafik-Hauptseminar 2005 --- Maik Lathan

  9. PolyCube-Maps im Überblick

  10. PolyCube-Maps im Überblick – Cube-Mapping Mesh CubeMap + = Computergrafik-Hauptseminar 2005 --- Maik Lathan

  11. PolyCube-Maps im Überblick – Cube-Mapping w u v • Cube-Mapping für nahtloses Texture-Mapping „missbrauchen“ + = Mesh CubeMap Textured Apple Computergrafik-Hauptseminar 2005 --- Maik Lathan

  12. PolyCube-Maps im Überblick – Cube-Mapping erweitern • Mechanismus leicht ändern  Jedes Vertex erhält 3D-Texture-Position in Raum T3 Computergrafik-Hauptseminar 2005 --- Maik Lathan

  13. PolyCube-Maps im Überblick – Cube-Mapping erweitern • Beim Rendern  jedes Fragment von Ursprung auf Einheitswürfel-Oberfläche T3 projizieren mit T3T3 • Cube-Mapping bildet Punkt aus T3 auf 2D-TextureT2 ab Computergrafik-Hauptseminar 2005 --- Maik Lathan

  14. PolyCube-Maps im Überblick ABER: Methode funktioniert nur mit kugelförmigen Objekten ALSO: Konzept auf beliebige Körper erweitern ! Lösung: Viele Unit-Cubes Computergrafik-Hauptseminar 2005 --- Maik Lathan

  15. PolyCube-Maps im Überblick – PolyCube-Definition • Was ist ein PolyCube 2-mannigfaltig flächig verbundene Anordnung von Cubes • PolyCube-Maps nutzen gesamte Oberfläche T3 von PolyCube anstatt nur einen Unit-Cube Computergrafik-Hauptseminar 2005 --- Maik Lathan

  16. PolyCube-Maps im Überblick Graphics-Pipeline Rasterer Interpolation Computergrafik-Hauptseminar 2005 --- Maik Lathan

  17. PolyCube-Maps in a Nutshell

  18. PolyCube-Maps – in a Nutshell Texture-Domain T3 Texture-Domain T2 w Texture-Map v u PolyCube Look-up-Tabelle Objektraum 3 T3 auf T3 mappen Fragment mit 3D-UVW T3 auf T2 mappen finales Texel Mesh (per Vertex Texture-UVW)

  19. Funktionsweise von PolyCube-Maps

  20. Funktionsweise von PolyCube-Maps - Mechanismus • PolyCube-Mapping komplett in Shader implementiert  Shader nutzt Projektion P u. Abbildung M sowie Look-up-Tabelle • Shader muß simpel und schnell sein  Fallunterscheidung • 3D-Texture-Raum T3 in kubische Zellen gleicher Größe unterteilen  Zentren verschieben Computergrafik-Hauptseminar 2005 --- Maik Lathan

  21. Funktionsweise von PolyCube-Maps – PolyCube&Zellen Betrachtung des Schnittes von Zelle und PolyCube Computergrafik-Hauptseminar 2005 --- Maik Lathan

  22. Funktionsweise von PolyCube-Maps - Zellen • Schnitt von PolyCube-Oberfläche u. Zellen  Facelets • 2-Mannigfaltigkeit  63 Anordnungen von Facelets  Rotation u. Reflektion weg lassen  auf 6 Basisfälle reduzierbar Computergrafik-Hauptseminar 2005 --- Maik Lathan

  23. Funktionsweise von PolyCube-Maps - Zellen Vorteile der neuen Zellen… • Anzahl von möglichen Schnitt-Anordnungen von PolyCube und Zellen sehr gering • P und M kontinuierlich für jede Zelle definierbar Computergrafik-Hauptseminar 2005 --- Maik Lathan

  24. Funktionsweise von PolyCube-Maps - Roadmap Konstruktion von PolyCube Abbildung P Konstruktion von Look-up-Tabelle Abbildung M Shader Computergrafik-Hauptseminar 2005 --- Maik Lathan

  25. Konstruktion von PolyCube

  26. Funktionsweise von PolyCube-Maps – Konstruktion 1 2 3 4 5 6 Computergrafik-Hauptseminar 2005 --- Maik Lathan

  27. Funktionsweise von PolyCube-Maps – Überschneidungen T3 • ABER keine gute Parametrisierung  Überschneidungen • iterativer Algorithmus der Texture-Positionen optimiert u. globale Verzerrung minimiert worst case Computergrafik-Hauptseminar 2005 --- Maik Lathan

  28. Funktionsweise von PolyCube-Maps – Mean Value Projektion (nicht optimiert) Mean Value • Linear lokales Optimierungsproblem • Minimal bei konformen Parametrisierungen • Flächenverformung kann groß werden Computergrafik-Hauptseminar 2005 --- Maik Lathan

  29. Funktionsweise von PolyCube-Maps – MIPS Projektion (nicht optimiert) MIPS • Nicht lineares Optimierungsproblem • Minimal bei konformen Parametrisierungen • Flächenverformung kann groß werden Computergrafik-Hauptseminar 2005 --- Maik Lathan

  30. Funktionsweise von PolyCube-Maps – Extended MIPS ext. MIPS • Erweiterung von MIPS • Gewichtungsparameter für Mittelung zwischen Konformität und Flächenerhaltung Projektion (nicht optimiert) Computergrafik-Hauptseminar 2005 --- Maik Lathan

  31. Funktionsweise von PolyCube-Maps – Energiefunktionen Projektion (nicht optimiert) Mean Value MIPS ext. MIPS Computergrafik-Hauptseminar 2005 --- Maik Lathan

  32. Funktionsweise von PolyCube-Maps - Roadmap Konstruktion von PolyCube-Maps Abbildung P Konstruktion von Look-up-Tabelle Abbildung M Shader Computergrafik-Hauptseminar 2005 --- Maik Lathan

  33. Projektion P: T3 T3

  34. Funktionsweise von PolyCube-Maps – Abbildung P • Für alle 6 Basisanordnung definiert Case 3 Case 4a Case 4b Case 5 Case 6a Case 6b Computergrafik-Hauptseminar 2005 --- Maik Lathan

  35. Funktionsweise von PolyCube-Maps - Roadmap Konstruktion von PolyCube-Maps Abbildung P Konstruktion von Look-up-Tabelle Abbildung M Shader Computergrafik-Hauptseminar 2005 --- Maik Lathan

  36. Projektion M: T3  T2

  37. Funktionsweise von PolyCube-Maps – Abbildung M Case 3 Case 4a Case 4b Case 5 • Facelets aus T3 auf Squarelets der Größe SxS in 2D-TextureT2 abbilden Computergrafik-Hauptseminar 2005 --- Maik Lathan

  38. Funktionsweise von PolyCube-Maps – Abbildung M • Squarelets in Texture-Patch packen  Texture-Patches ergeben PolyCube-Map Computergrafik-Hauptseminar 2005 --- Maik Lathan

  39. Funktionsweise von PolyCube-Maps – Abbildung M pT3 Anwendung von M auf Punkt pT3 aus Zelle: • Berechne relative Position von p innerhalb von Facelet Computergrafik-Hauptseminar 2005 --- Maik Lathan

  40. Funktionsweise von PolyCube-Maps – Abbildung M pT3 fT2T2 Anwendung von M auf Punkt pT3 aus Zelle: • Multiplikation mit S  relative Position im zugehörigen Squarelet S S Computergrafik-Hauptseminar 2005 --- Maik Lathan

  41. Funktionsweise von PolyCube-Maps – Abbildung M S S Anwendung von M auf Punkt pT3 aus Zelle: • Resultierender Wert offsetspezifisch je nach Basisfall  nun globales Offset in T2 hinzu addieren Computergrafik-Hauptseminar 2005 --- Maik Lathan

  42. Funktionsweise von PolyCube-Maps - Roadmap Konstruktion von PolyCube-Maps Abbildung P Konstruktion von Look-up-Tabelle Abbildung M Shader Computergrafik-Hauptseminar 2005 --- Maik Lathan

  43. Konstruktion von Look-up-Tabelle

  44. Funktionsweise von PolyCube-Maps – Look-up-Tabelle • PolyCube muss Mesh ähneln  flexible Beschreibung  durch Look-up-Tabelle T3LUT innerhalb von 2D-TextureT2 • T3LUT direkt aus PolyCube gewonnen  Basisfall für jede Zelle durch 8 Nachbar-Cubes ermittelbar • Tabelleneinträge je Zelle Computergrafik-Hauptseminar 2005 --- Maik Lathan

  45. Funktionsweise von PolyCube-Maps – Look-up-Tabelle Welche Informationen enthält Look-up-Tabelle: • Informationen über Zelle in RGB-Texel gepackt  RGB  CRO-Eintrag e e.C: welcher Basistyp e.R: Index auf eine von 24 Achse-zu-Achse-Rotationen e.O: Globales Offset des Patches von e in T2 (*S) Computergrafik-Hauptseminar 2005 --- Maik Lathan

  46. Funktionsweise von PolyCube-Maps - Roadmap Konstruktion von PolyCube-Maps Abbildung P Konstruktion von Look-up-Tabelle Abbildung M Shader Computergrafik-Hauptseminar 2005 --- Maik Lathan

  47. Shader

  48. Funktionsweise von PolyCube-Maps – Shader PseudoCode Fragment f geht in Shader mit 3D-Texture-Position fI3T3 • 3D-Index i3 von Zelle zu fI3 ermitteln: Subzellenposition: • Hole e aus T3LUT bei Index i • Rotiere fS um Ursprung mit e.R • Appliziere P u. M ohne globales Offset nach Fall aus e.C • Addiere globales Offsete.O • Finales Offset ist Index von korrektem Texel fT2T2 Computergrafik-Hauptseminar 2005 --- Maik Lathan

  49. Funktionsweise von PolyCube-Maps - Roadmap Konstruktion von PolyCube-Maps Abbildung P Konstruktion von Look-up-Tabelle Abbildung M Shader Computergrafik-Hauptseminar 2005 --- Maik Lathan

  50. Bilder

More Related