A Crash Course on Texturing

download A Crash Course on Texturing

of 41

  • date post

  • Category


  • view

  • download


Embed Size (px)


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 - PowerPoint PPT Presentation

Transcript of A Crash Course on Texturing

  • A Crash Course on TexturingLi-Yi Wei2005 at Tsinghua University, Beijing

  • What is texturing

  • Overview of texturingTexture generationYou need to get the texture firstTexture mapYou need to figure out how to wrap the textureTexture samplingYou need to avoid artifactsGPU texturing issueYou need to do this fast

  • Texture generation

    Draw by handflexible easy to controlrequires artistic skillsmostly looks artificial

  • Texture generation

    Photographyeasy to deployrealistic imagecurvature problem small patchlighting/shadowing/distortion problem

  • Texture generationTexture synthesisflexible easy to deploygeneralarbitrarily large result difficult to design a good algorithm!

  • Texture synthesisProcedural synthesis

    Example-based synthesis

  • Procedural synthesisSynthesize texture by procedural codecompact full control no resolution limitnot easy to authorlimited category

  • Procedural synthesis examples

  • Perlin noise

  • Perlin noise examples

  • Example-based synthesisSynthesis from examplegeneraleasy to uselimited resolutionneed good algorithm

  • Example-based synthesisHuge literatureI will only talk about recent workPixel-based synthesisPatch-based synthesisOptimization

  • Pixel-based synthesisSynthesize pixels based on neighborhood[Efros & Leung 1999] [Wei & Levoy 2000]

  • Pixel-based synthesis examplesRandomOrientedRegularSemi-regular

  • Pixel-based synthesis failures

  • Patch-based synthesis[Liang et al 2001] [Efros & Freeman 2001]

  • Patch-based synthesis examples

  • Comparisoninputpixel-basedpatch-based

  • Texture mappingHow to map a 2D texture onto a 3D surface?Minimal distortionNo discontinuity

    It is not easy! Try to wrap a paper around a ball

  • Texture mapping methodologyHuge literature, I will only coverVolume textureSurface synthesisTexture atlasBase-domain parameterization

  • Volume textureSurround the object with 3D volumeno distortion nor discontinuitymainly for isotropic textureslarge storageGPU unfriendlynatural for procedural synthesis

  • Surface synthesisExtend 2D synthesis to 3D surfaceEither pixel or patch basedminimal distortion, no discontinuityanisotropic patternsonly applies to one object/texture combination

  • Texture atlasDivide the surface into planar patchespopular approachGPU friendlyseam and distortion

  • Base-domain parameterizationMAPS [Lee et al 1998]Parameterize based on coarse meshless distortion/discontinuity than atlasless straightforward for GPU

  • Base-domain parameterizationPoly-cube maps [2004]Use multiple cubemapsminimal distortion, no discontinuitycan be done on GPU

  • Texture samplingAliasingAnti-aliasing

  • Aliasing,1D caseAliasingNo aliasing

  • Aliasing, 2D case

  • Aliasing, 2D case

  • Isotropic versus Anisotropic filteringisotropicanisotropic

  • Anisotropic filtering implementationRipmap

    Multiple probes

  • Texturing on GPUModel geometry as textureBump map, displacement map, VDMTexture caching and compression

  • VDMView-dependent displacement map [Wang et al 2004]

  • VDM resultbumphorizondisplacementVDM

  • Sphere marchingGPU Gems II chapter 8

  • Texture compressionDXT simple and fast limited compression ratio (8:1)

  • Tile-based texturing on GPU[Wei 2004]big compressionlimited to homogeneous patterncan look repetitive

  • ConclusionLook at the course paper for more detailsReferencesExercisesPotential future work

  • S2005 Arial, Bold, 37 pointsThis subtitle is 27 points Bullets are orangeThey have 110% line spacing, 6 points before/afterLonger bullets in the form of a paragraph are harder to read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven).Sub bullets look like this