Ptex: Per-face Texture Mapping for Production Rendering
description
Transcript of Ptex: Per-face Texture Mapping for Production Rendering
![Page 1: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/1.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/2.jpg)
Texture Mapping at Disney
![Page 3: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/3.jpg)
Chicken Little 2003
![Page 4: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/4.jpg)
170 textures
Chicken Little 2003
![Page 5: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/5.jpg)
Meet the Robinsons 2005
![Page 6: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/6.jpg)
7637 Textures
Meet the Robinsons 2005
![Page 7: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/7.jpg)
Meet the Robinsons
![Page 8: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/8.jpg)
• 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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/9.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/10.jpg)
Reference Painting
3d Render
Bolt’s painterly approach placed additional demands on texture system.
![Page 11: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/11.jpg)
Requirements for new texture system
• Film-quality• General• Efficient• Setup-free
![Page 12: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/12.jpg)
Filtering Requirements
AnisotropicFiltering
Aliasing-free Seamless
![Page 13: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/13.jpg)
Previous Texture Mapping Methods
![Page 14: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/14.jpg)
ProjectionPainting
![Page 15: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/15.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/16.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/17.jpg)
Volumetric Methods
Painting and Rendering textures on unparameterized models.DeBry et al., Siggraph 2002.
![Page 18: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/18.jpg)
Polycube-maps, Tarini et al., Siggraph 2004.
Per-face Methods
![Page 19: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/19.jpg)
Displaced Subdivision Surfaces.Lee et al., Siggraph 2000.
Per-face Methods (cont.)
![Page 20: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/20.jpg)
Ptex
![Page 21: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/21.jpg)
Per-face textures
![Page 22: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/22.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/23.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/24.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/25.jpg)
Texture sizing - problem case
Subd cage Limit surface
![Page 26: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/26.jpg)
Sizing bycontrol-face area
Sizing bylimit-surface area
Sizing byderivative sampling
Texture sizing - solution
![Page 27: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/27.jpg)
Filtering
![Page 28: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/28.jpg)
Filtering in PRMan
![Page 29: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/29.jpg)
Filtering
![Page 30: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/30.jpg)
Resolution Mismatch
![Page 31: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/31.jpg)
Resolution Mismatch (cont.)
Smooth surface
Smooth normals
vs.
![Page 32: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/32.jpg)
Extraordinary Vertex
![Page 33: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/33.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/34.jpg)
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](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/35.jpg)
Glago’s Guest 2008
![Page 36: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/36.jpg)
Bolt
Bolt has nearly completed production. Ptex has been an unqualified success.
![Page 37: Ptex: Per-face Texture Mapping for Production Rendering](https://reader036.fdocuments.in/reader036/viewer/2022062310/568160f6550346895dd032a3/html5/thumbnails/37.jpg)
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)?