ptex: per-face texture mapping for production rendering

37
Ptex: Per-face Texture Mapping for Production Rendering Brent Burley and Dylan Lacewell Walt Disney Animation Studios EGSR 2008 (See attached slide notes for details)

Upload: dandre

Post on 22-Feb-2016

41 views

Category:

Documents


0 download

DESCRIPTION

EGSR 2008. Ptex: Per-face Texture Mapping for Production Rendering. Brent Burley and Dylan Lacewell Walt Disney Animation Studios. (See attached slide notes for details). Texture Mapping at Disney. Chicken Little 2003. Chicken Little 2003. 170 textures. Meet the Robinsons 2005. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Ptex: Per-face Texture Mapping for Production Rendering

Ptex: Per-face Texture Mapping for Production Rendering

Brent Burley and Dylan LacewellWalt Disney Animation Studios

EGSR 2008

(See attached slide notes for details)

Page 2: Ptex: Per-face Texture Mapping for Production Rendering

Texture Mapping at Disney

Page 3: Ptex: Per-face Texture Mapping for Production Rendering

Chicken Little 2003

Page 4: Ptex: Per-face Texture Mapping for Production Rendering

170 textures

Chicken Little 2003

Page 5: Ptex: Per-face Texture Mapping for Production Rendering

Meet the Robinsons 2005

Page 6: Ptex: Per-face Texture Mapping for Production Rendering

7637 Textures

Meet the Robinsons 2005

Page 7: Ptex: Per-face Texture Mapping for Production Rendering

Meet the Robinsons

Page 8: Ptex: Per-face Texture Mapping for Production Rendering

• 6 million texture files• 100,000+ textures per render• Mean file size 30 KB• Median file size 2.5 KB

• I/O Bound!

Meet the Robinsons

Page 9: Ptex: Per-face Texture Mapping for Production Rendering

Bolt 2008

Pre-production estimate: 5x complexity of Meet the RobinsonsAlready at limits of texture system

Page 10: Ptex: Per-face Texture Mapping for Production Rendering

Reference Painting

3d Render

Bolt’s painterly approach placed additional demands on texture system.

Page 11: Ptex: Per-face Texture Mapping for Production Rendering

Requirements for new texture system

• Film-quality• General• Efficient• Setup-free

Page 12: Ptex: Per-face Texture Mapping for Production Rendering

Filtering Requirements

AnisotropicFiltering

Aliasing-free Seamless

Page 13: Ptex: Per-face Texture Mapping for Production Rendering

Previous Texture Mapping Methods

Page 14: Ptex: Per-face Texture Mapping for Production Rendering

ProjectionPainting

Page 15: Ptex: Per-face Texture Mapping for Production Rendering

Seamless texture mapping of subdivision surfaces by model pelting and texture blending. Piponi and Borshukov, Siggraph 2000.

Pelting

Page 16: Ptex: Per-face Texture Mapping for Production Rendering

Least squares conformal maps for automatic texture atlasgeneration. Levy et al., Siggraph 2002.

Atlas Methods

Page 17: Ptex: Per-face Texture Mapping for Production Rendering

Volumetric Methods

Painting and Rendering textures on unparameterized models.DeBry et al., Siggraph 2002.

Page 18: Ptex: Per-face Texture Mapping for Production Rendering

Polycube-maps, Tarini et al., Siggraph 2004.

Per-face Methods

Page 19: Ptex: Per-face Texture Mapping for Production Rendering

Displaced Subdivision Surfaces.Lee et al., Siggraph 2000.

Per-face Methods (cont.)

Page 20: Ptex: Per-face Texture Mapping for Production Rendering

Ptex

Page 21: Ptex: Per-face Texture Mapping for Production Rendering

Per-face textures

Page 22: Ptex: Per-face Texture Mapping for Production Rendering

Face 7:adj. faces: {-1,8,17,-1}adj. edges: {x,3,0,x}, x=don’t care

Per-face UVs and adjacency data

Page 23: Ptex: Per-face Texture Mapping for Production Rendering

Painting

• Artists paint on limit surface in 3d painting system (tumble, paint, project).

• Auto-size feature compensates for parametric distortion.

• See video demonstration.

Page 24: Ptex: Per-face Texture Mapping for Production Rendering

212,536 faces1 ptex file

4x4 texels per face3.4 million texels

Auto-sized3.4 million texels

Texture sizing

Page 25: Ptex: Per-face Texture Mapping for Production Rendering

Texture sizing - problem case

Subd cage Limit surface

Page 26: Ptex: Per-face Texture Mapping for Production Rendering

Sizing bycontrol-face area

Sizing bylimit-surface area

Sizing byderivative sampling

Texture sizing - solution

Page 27: Ptex: Per-face Texture Mapping for Production Rendering

Filtering

Page 28: Ptex: Per-face Texture Mapping for Production Rendering

Filtering in PRMan

Page 29: Ptex: Per-face Texture Mapping for Production Rendering

Filtering

Page 30: Ptex: Per-face Texture Mapping for Production Rendering

Resolution Mismatch

Page 31: Ptex: Per-face Texture Mapping for Production Rendering

Resolution Mismatch (cont.)

Smooth surface

Smooth normals

vs.

Page 32: Ptex: Per-face Texture Mapping for Production Rendering

Extraordinary Vertex

Page 33: Ptex: Per-face Texture Mapping for Production Rendering

Results

• Artists love it• More detail than ever before• No aliasing problems• I/O vastly improved

Page 34: Ptex: Per-face Texture Mapping for Production Rendering

1024x1024 pixels Per-patch textures Ptex

CPU seconds 171 141# I/O calls 18,581,058 9,209

20x20 pixels Per-patch textures Ptex

CPU seconds 27 2# I/O calls 4,218,733 84

Results

Page 35: Ptex: Per-face Texture Mapping for Production Rendering

Glago’s Guest 2008

Page 36: Ptex: Per-face Texture Mapping for Production Rendering

Bolt

Bolt has nearly completed production. Ptex has been an unqualified success.

Page 37: Ptex: Per-face Texture Mapping for Production Rendering

Future

• Currently adding non-quad support (straightforward, described in paper).

• Considering Loop subd support. Interesting question - what shape should texels be on a triangle mesh (triangular, quadrilateral, hexagonal)?