A Crash Course on Texturing LiYi Wei 2005













![Pixel-based synthesis Synthesize pixels based on neighborhood [Efros & Leung 1999] [Wei & Levoy Pixel-based synthesis Synthesize pixels based on neighborhood [Efros & Leung 1999] [Wei & Levoy](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-14.jpg)


![Patch-based synthesis [Liang et al 2001] [Efros & Freeman 2001] Patch-based synthesis [Liang et al 2001] [Efros & Freeman 2001]](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-17.jpg)







![Base-domain parameterization MAPS [Lee et al 1998] Parameterize based on coarse mesh Оless distortion/discontinuity Base-domain parameterization MAPS [Lee et al 1998] Parameterize based on coarse mesh Оless distortion/discontinuity](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-25.jpg)
![Base-domain parameterization Poly-cube maps [2004] Use multiple cubemaps Оminimal distortion, no discontinuity Оcan be Base-domain parameterization Poly-cube maps [2004] Use multiple cubemaps Оminimal distortion, no discontinuity Оcan be](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-26.jpg)







![VDM View-dependent displacement map [Wang et al 2004] VDM View-dependent displacement map [Wang et al 2004]](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-34.jpg)



![Tile-based texturing on GPU [Wei 2004] Оbig compression Хlimited to homogeneous pattern Хcan look Tile-based texturing on GPU [Wei 2004] Оbig compression Хlimited to homogeneous pattern Хcan look](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-38.jpg)

- Slides: 39

A Crash Course on Texturing Li-Yi Wei 2005 at Tsinghua University, Beijing

What is texturing

Overview of texturing Texture generation You need to get the texture first Texture map You need to figure out how to wrap the texture Texture sampling You need to avoid artifacts GPU texturing issue You need to do this fast

Texture generation Draw by hand Оflexible О easy to control Хrequires artistic skills Хmostly looks artificial

Texture generation Photography Оeasy to deploy Оrealistic image Хcurvature problem – small patch Хlighting/shadowing/distortion problem

Texture generation Texture synthesis Оflexible Оeasy to deploy Оgeneral Оarbitrarily large result Хdifficult to design a good algorithm!

Texture synthesis Procedural synthesis Example-based synthesis

Procedural synthesis Synthesize texture by procedural code Оcompact Оfull control Оno resolution limit Хnot easy to author Хlimited category

Procedural synthesis examples

Perlin noise

Perlin noise examples

Example-based synthesis Synthesis from example Оgeneral Оeasy to use Хlimited resolution Хneed good algorithm

Example-based synthesis Huge literature I will only talk about recent work Pixel-based synthesis Patch-based synthesis Optimization
![Pixelbased synthesis Synthesize pixels based on neighborhood Efros Leung 1999 Wei Levoy Pixel-based synthesis Synthesize pixels based on neighborhood [Efros & Leung 1999] [Wei & Levoy](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-14.jpg)
Pixel-based synthesis Synthesize pixels based on neighborhood [Efros & Leung 1999] [Wei & Levoy 2000]

Pixel-based synthesis examples Random Regular Oriented Semi-regular

Pixel-based synthesis failures
![Patchbased synthesis Liang et al 2001 Efros Freeman 2001 Patch-based synthesis [Liang et al 2001] [Efros & Freeman 2001]](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-17.jpg)
Patch-based synthesis [Liang et al 2001] [Efros & Freeman 2001]

Patch-based synthesis examples

Comparison input pixel-based patch-based

Texture mapping How to map a 2 D texture onto a 3 D surface? Minimal distortion No discontinuity It is not easy! Try to wrap a paper around a ball

Texture mapping methodology Huge literature, I will only cover Volume texture Surface synthesis Texture atlas Base-domain parameterization

Volume texture Surround the object with 3 D volume Оno distortion nor discontinuity Хmainly for isotropic textures Хlarge storage ХGPU unfriendly Оnatural for procedural synthesis

Surface synthesis Extend 2 D synthesis to 3 D surface Either pixel or patch based Оminimal distortion, no discontinuity Оanisotropic patterns Хonly applies to one object/texture combination

Texture atlas Divide the surface into planar patches Оpopular approach ОGPU friendly Хseam and distortion
![Basedomain parameterization MAPS Lee et al 1998 Parameterize based on coarse mesh Оless distortiondiscontinuity Base-domain parameterization MAPS [Lee et al 1998] Parameterize based on coarse mesh Оless distortion/discontinuity](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-25.jpg)
Base-domain parameterization MAPS [Lee et al 1998] Parameterize based on coarse mesh Оless distortion/discontinuity than atlas Хless straightforward for GPU
![Basedomain parameterization Polycube maps 2004 Use multiple cubemaps Оminimal distortion no discontinuity Оcan be Base-domain parameterization Poly-cube maps [2004] Use multiple cubemaps Оminimal distortion, no discontinuity Оcan be](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-26.jpg)
Base-domain parameterization Poly-cube maps [2004] Use multiple cubemaps Оminimal distortion, no discontinuity Оcan be done on GPU

Texture sampling Aliasing Anti-aliasing

Aliasing, 1 D case Aliasing No aliasing

Aliasing, 2 D case

Aliasing, 2 D case

Isotropic versus Anisotropic filtering isotropic anisotropic

Anisotropic filtering implementation Ripmap Multiple probes

Texturing on GPU Model geometry as texture Bump map, displacement map, VDM Texture caching and compression
![VDM Viewdependent displacement map Wang et al 2004 VDM View-dependent displacement map [Wang et al 2004]](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-34.jpg)
VDM View-dependent displacement map [Wang et al 2004]

VDM result bump horizon displacement VDM

Sphere marching GPU Gems II chapter 8

Texture compression DXT О simple and fast Хlimited compression ratio (8: 1)
![Tilebased texturing on GPU Wei 2004 Оbig compression Хlimited to homogeneous pattern Хcan look Tile-based texturing on GPU [Wei 2004] Оbig compression Хlimited to homogeneous pattern Хcan look](https://slidetodoc.com/presentation_image/a048d1b340203a0862fccab4c2c206aa/image-38.jpg)
Tile-based texturing on GPU [Wei 2004] Оbig compression Хlimited to homogeneous pattern Хcan look repetitive

Conclusion Look at the course paper for more details References Exercises Potential future work