lapped textures siggraph 2000 emil praun adam finkelstein hugues hoppe

Post on 20-Dec-2015

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Lapped Textures

SIGGRAPH 2000

Emil Praun

Adam Finkelstein

Hugues Hoppe

Traditional Approach: Problems

• Not view independent

• Seams between multiple images

• Lack of user control over local orientation and scaling of texture

Lapped Textures: Definition

Repeatedly pasting texture patches onto an arbitrary surface until completely covered

Goal• No apparent

seams• No obvious

periodicity• Low distortion• Local texture

control• Anisotropy

In other words …

textured surfacetextured surface

?

Approach

texture patchtexture patch

surfacesurface

The Patch

• Polygonal image region with alpha mask blending

• Generic pattern for many textures

texture patchtexture patch

Patch Pasting

texture patchtexture patchtexture patchtexture patch

surfacesurfacesurfacesurface““lapped textures”lapped textures”

Algorithm - OutlineCut texture patchesSpecify direction and scale fieldsREPEAT Select random texture patch T Select random uncovered location L Grow surface patch S around L to size of T Flatten S over T Paste and updateUNTIL mesh is covered

Process

texture patchtexture patch

surfacesurface

Process

texture patchtexture patch

surfacesurface

Process

texture patchtexture patch

surfacesurface

Process

texture patchtexture patch

surfacesurface

In Detail

• Texture patch creation

• Specifying direction field

• Surface patch growth

• Patch parametrization

• Texture storage and rendering

In Detail

• Texture patch creation

• Specifying direction field

• Surface patch growth

• Patch parametrization

• Texture storage and rendering

Texture Patch Creation

Structured

Splotch

In Detail

• Texture patch creation

• Specifying direction field

• Surface patch growth

• Patch parametrization

• Texture storage and rendering

Direction Field

In Detail

• Texture patch creation

• Specifying direction field

• Surface patch growth

• Patch parametrization

• Texture storage and rendering

Polygonal Hulls

• Start w/ boundary pixels, edges between neighbors

• Conservatively simplify polygons

Surface Patch Growth

Surface Patch Growth

Surface Patch Growth

Surface Patch Growth

Surface Patch Growth

Surface Patch Growth

Surface Patch Growth

In Detail

• Texture patch creation

• Specifying direction field

• Surface patch growth

• Patch parametrization

• Texture storage and rendering

Patch Alignment

texture patchtexture patch

surfacesurface

Tangential Vector Basis

Optimizing the ParametrizationOptimizing the

Parametrization

TTTTSSSS

BBBB

CCCC

AAAA

((TT))((TT))

((SS))((SS))

((AA))((AA))

((BB))((BB))

((CC))((CC))

tttt

ssss

face in 3Dface in 3Dface in 3Dface in 3D 2D texture space2D texture space2D texture space2D texture space

Optimizing the Parametrization

Minimizing “Least Squares Functional”Minimizing “Least Squares Functional”Minimizing “Least Squares Functional”Minimizing “Least Squares Functional”

In Detail

• Texture patch creation

• Specifying direction field

• Surface patch growth

• Patch parametrization

• Texture storage and rendering

Texture Storage and Rendering

• Texture Atlas

– Pre-composite into a global texture map.

• Runtime pasting

– Composite at run-time using hardware

Texture Atlas

Patches of triangles with similar normals

Runtime Pasting• Store vertex coordinates for each patch

• Composite at run-time using hardware

• May render triangles several times

TradeoffsAtlas

+Faster rendering, more portable

– Sampling artifacts

Pasting

– Increases model complexity

+Effective resolution

+Reusability of splotch parameterizations

Examples: Splotches

Examples: Anisotropic

Controlling Direction and Scale

25 frames25 framesper sec!per sec!

256 x 256256 x 256texturetexture

(282 times)(282 times)

256 x 256256 x 256texturetexture

(282 times)(282 times)

15,000 faces15,000 faces

Limitations

low-low-frequencyfrequency

componentscomponents

boundaryboundarymismatchmismatch

Conclusions Effective texturing through:

Overlapping texture patche

Minimal edge blending

Direction and scale

Runtime pasting

Thank you

top related