Marco TariniKai HormannPaolo CignoniClaudio Montani

Preview:

DESCRIPTION

PolyCube-Maps. Marco TariniKai HormannPaolo CignoniClaudio 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: - PowerPoint PPT Presentation

Citation preview

Marco Tarini Kai Hormann Paolo Cignoni Claudio Montani

PolyCube-MapsPolyCube-MapsMaik LathanMaik Lathan

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Motivation

MeshMesh

Texture-AtlasTexture-Atlas

Textured-MeshTextured-Mesh

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Motivation

Texture-Artefakte Nähte und Verzerrungen

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Motivation - Nähte

Nähte haben fatale Folgen…Nähte haben fatale Folgen…

1. Parametrisierung ist netzabhängig:

Verschiedene LOD-Stufen bedingen individuelle Parametrisierungen

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Motivation – Texture-Filterung

Nähte haben fatale Folgen…Nähte haben fatale Folgen…

2. Schlechte Texture-Filterung:

Mip-Mapping sowie Bilineare Filterung bedingen kontinuierliche Texel an Patch-Rändern nicht erfüllt

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Motivation – Verschwendeter Speicher

Nähte haben fatale Folgen…Nähte haben fatale Folgen…

3. Verschwendeter Speicher

Atlas-Mapping verschenkt viel Texture-Speicher Patches liegen schlecht verdichtet in Map

!

!

! !

!

Es gibt eine Lösung…

PolyCube-MapsPolyCube-Maps

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Inhalt

1. PolyCube-Maps im Überblick2. PolyCube-Maps – in a Nutshell3. Funktionsweise von PolyCube-Maps4. Bilder5. Experimentelle Ergebnisse6. Ausblick

PolyCube-Maps im ÜberblickPolyCube-Maps im Überblick

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

PolyCube-Maps im Überblick – Cube-Mapping

+

=

Mesh

CubeMap

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

PolyCube-Maps im Überblick – Cube-Mapping

Cube-Mapping für nahtloses Texture-Mapping „missbrauchen“

u v

w

=+

Mesh CubeMap Textured Apple

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

PolyCube-Maps im Überblick – Cube-Mapping erweitern

Mechanismus leicht ändern Jedes Vertex erhält 3D-Texture-Position in Raum T3

3T

3T3

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

PolyCube-Maps im Überblick – Cube-Mapping erweitern

Beim Rendern jedes Fragment von Ursprung auf Einheitswürfel-Oberfläche T3 projizieren mit T3T3

Cube-Mapping bildet Punkt aus T3 auf 2D-Texture T2 ab

3T

2T

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

PolyCube-Maps im Überblick

ABER:ABER: Methode funktioniert nur mit kugelförmigen Objekten

ALSO:ALSO: Konzept auf beliebige KörperKonzept auf beliebige Körper

erweitern !erweitern !

Lösung:Lösung: Viele Unit-Cubes

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

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 LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

PolyCube-Maps im Überblick

Graphics-Pipeline

3

3r s tT

v v , v , v T

Rasterer

Interpolation

I3f

PolyCube-Maps in a NutshellPolyCube-Maps in a Nutshell

Mesh(per Vertex Texture-UVW) Look-up-Tabelle

Objektraum 3

Texture-Map

Texture-Domain T2

PolyCube

Texture-Domain T3

uv

wFragment mitFragment mit

3D-UVW3D-UVWTT33 auf T auf T33

mappenmappen

TT33 auf T auf T22

mappenmappen finales Texelfinales Texel

PolyCube-Maps – in a Nutshell

Funktionsweise von PolyCube-Funktionsweise von PolyCube-MapsMaps

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

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 LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – PolyCube&Zellen

Betrachtung des Schnittes von Zelle und PolyCube

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Zellen

Schnitt von PolyCube-Oberfläche u. Zellen FaceletsFacelets 2-Mannigfaltigkeit 63 Anordnungen von FaceletsFacelets

Rotation u. Reflektion weg lassen auf 6 Basisfälle reduzierbar

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

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 LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Roadmap

Abbildung PAbbildung P

Abbildung MAbbildung M

ShaderShader

Konstruktion vonPolyCube

Konstruktion vonPolyCube

Konstruktion vonLook-up-Tabelle

Konstruktion vonLook-up-Tabelle

Konstruktion von PolyCubeKonstruktion von PolyCube

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Konstruktion

1 32

4 5 6

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Überschneidungen

ABER keine gute Parametrisierung Überschneidungen

iterativer Algorithmus der Texture-Positionen optimiert u. globale Verzerrung minimiert

T3

worst caseworst case

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Mean Value

Linear lokales Optimierungsproblem

Minimal bei konformen Parametrisierungen

Flächenverformung kann groß werden

Projektion(nicht optimiert)

Mean Value

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – MIPS

Nicht lineares Optimierungsproblem

Minimal bei konformen Parametrisierungen

Flächenverformung kann groß werden

Projektion(nicht optimiert)

MIPS

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Extended MIPS

Erweiterung von MIPS Gewichtungsparameter für

Mittelung zwischen Konformität und Flächenerhaltung

Projektion(nicht optimiert)

ext. MIPS

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Energiefunktionen

Projektion(nicht optimiert)

Mean Value MIPS ext. MIPS

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Roadmap

Abbildung PAbbildung P

Abbildung MAbbildung M

ShaderShader

Konstruktion vonPolyCube-Maps

Konstruktion vonPolyCube-Maps

Konstruktion vonLook-up-Tabelle

Konstruktion vonLook-up-Tabelle

ProjektionProjektion P: TP: T3 3 TT33

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Abbildung P

Für alle 6 Basisanordnung definiertCase 4aCase 3 Case 4b Case 5 Case 6a Case 6b

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Roadmap

Abbildung PAbbildung P

Abbildung MAbbildung M

ShaderShader

Konstruktion vonPolyCube-Maps

Konstruktion vonPolyCube-Maps

Konstruktion vonLook-up-Tabelle

Konstruktion vonLook-up-Tabelle

ProjektionProjektion M: TM: T3 3 T T22

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Abbildung M

FaceletsFacelets aus T3 auf SquareletsSquarelets der Größe SxS in 2D-Texture T2 abbilden

Case 4aCase 3 Case 4b Case 5

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Abbildung M

SquareletsSquarelets in Texture-Patch packen Texture-Patches ergeben PolyCube-Map

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Abbildung M

Anwendung von M auf Punkt pT3 aus Zelle:

1. Berechne relative Position von p innerhalb von FaceletFacelet

pT3

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Abbildung M

Anwendung von M auf Punkt pT3 aus Zelle:

2. Multiplikation mit S relative Position im zugehörigen SquareletSquarelet

S

S

pT3 fT2T2

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Abbildung M

Anwendung von M auf Punkt pT3 aus Zelle:

3. Resultierender Wert offsetspezifisch je nach Basisfall nun globales Offset in T2 hinzu addieren

S

S

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Roadmap

Abbildung PAbbildung P

Abbildung MAbbildung M

ShaderShader

Konstruktion vonPolyCube-Maps

Konstruktion vonPolyCube-Maps

Konstruktion vonLook-up-Tabelle

Konstruktion vonLook-up-Tabelle

Konstruktion von Look-up-TabelleKonstruktion von Look-up-Tabelle

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Look-up-Tabelle

PolyCube muss Mesh ähneln flexible Beschreibung durch Look-up-Tabelle T3

LUT innerhalb von 2D-Texture T2

T3LUT direkt aus PolyCube gewonnen

Basisfall für jede Zelle durch 8 Nachbar-Cubes ermittelbar

Tabelleneinträge je Zelle

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Look-up-Tabelle

Welche Informationen enthält Look-up-Tabelle: Informationen über Zelle in RRGGBB-Texel gepackt RRGGBB

CROCRO-Eintrag e

ee.C:.C: welcher Basistyp

ee.R:.R: Index auf eine von 24 Achse-zu-Achse-Rotationen

ee.O:.O: Globales Offset des Patches von e in T2 (*S)

1 89 1617 24

C u. R O

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Roadmap

Abbildung PAbbildung P

Abbildung MAbbildung M

ShaderShader

Konstruktion vonPolyCube-Maps

Konstruktion vonPolyCube-Maps

Konstruktion vonLook-up-Tabelle

Konstruktion vonLook-up-Tabelle

ShaderShader

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps – Shader PseudoCode

Fragment f geht in Shader mit 3D-Texture-Position fI3T3

1. 3D-Index i3 von Zelle zu fI3 ermitteln:

Subzellenposition:

2. Hole e aus T3LUT bei Index i

3. Rotiere fS um Ursprung mit e.R

4. Appliziere P u. M ohne globales Offset nach Fall aus e.C

5. Addiere globales Offset e.O

6. Finales Offset ist Index von korrektem Texel fT2T2

I3i f 0.5, 0.5, 0.5

3S I3 Sf f i mit f 0.5, 0.5

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Funktionsweise von PolyCube-Maps - Roadmap

Abbildung PAbbildung P

Abbildung MAbbildung M

ShaderShader

Konstruktion vonPolyCube-Maps

Konstruktion vonPolyCube-Maps

Konstruktion vonLook-up-Tabelle

Konstruktion vonLook-up-Tabelle

BilderBilder

Bilder – 3-Hole-Object & Laurana

Bilder – Bunny & Armadillo

case 3

case 4-a

case 4-b

case 5

Bilder – PolyCube & Zellen

Bilder – Apfel

Experimentelle ErgebnisseExperimentelle Ergebnisse

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Experimentelle Ergebnisse

Distortion Stretch Efficiency

area angle T3M MT3 [Gu] [Hoppe]

3-Holes 1.003 1.001 0.986 0.986

Laurana 1.141 1.101 0.795 0.745

Bunny 1.034 1.069 0.892 0.913 0.639 0.703

Armadillo 1.224 1.318 0.616 0.577 0.607 0.465

1 ist ideal [Gu] Square-Domains [Hoppe] simple sphärische Modelle

AusblickAusblick

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

Ausblick

Geometriebilder Shader-Verbesserung Automatische Parametrisierung Octree-Ansatz

Vielen Dank für Ihre Aufmerksamkeit!Vielen Dank für Ihre Aufmerksamkeit!

Computergrafik-Hauptseminar 2005 --- Maik LathanComputergrafik-Hauptseminar 2005 --- Maik Lathan

FragenFragen

?? ??

????

????

??

????

????

????

??

??

??

??

????

Recommended