# Texture Mapping from Watt, Ch. 8 - PowerPoint PPT Presentation

Texture Mapping from Watt, Ch. 8

1 / 34
Texture Mapping from Watt, Ch. 8

## Texture Mapping from Watt, Ch. 8

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
##### Presentation Transcript

1. Texture Mapping from Watt, Ch. 8 Jonathan Han

2. Topics Discussed • Texture Map to Models • Bump Maps, Light Maps • Environment (Reflection) Mapping • 3D Textures • Interactive Texture Mapping

3. What is Mapping? Assigning colors to the pixels on a 3D model to simulate. . . • Color • Specular ‘color’ • Surface perturbation • Transparency

4. 2D Texture Maps to Polygon Mesh Objects • Association of 2 coordinate systems between the mesh and the map • Inverse Mapping vs. Forward Mapping • Bilinear Interpolation • Problem is parametrization of object surface

5. Mapping by Intermediate Surface • Map -> (S map) Simple 3D shape -> (O map) Projection onto complex mesh • Plane, cylinder, cube, spheres all possible intermediate shapes

6. O Mapping

7. O Mapping Result

8. Bi-Cubic Parametric Patch • If an object is already a quadric or a cubic, then the surface possess a coordinate system that covers every point already. • Simply multiply u and v by the resolution in pixels to obtain location on texture map

9. Parametric Example

10. Parametric Patch (cont’d) • Divide mesh up to individual parametric surfaces, and place the texture over each

11. Parametric Patch (cont’d) • Assign (u, v) coordinates to points on mesh surface, and interpolate between these points

12. Billboards • Technique to create pseudo-realistic 3D objects when viewed in constricted directions

13. Bump mapping • Simulation for surface perturbation without adding polygons to the mesh • The lighting changes per-pixel to achieve said simulation

14. What is a Bump Map? • Array of values that represent object’s height variation on small scale • Combined with surface normal to evaluate lighting equation

15. Light Maps • Like Bump Maps, Light Maps store information on a surface that’s not just color • Simulate localized lighting • Same map applied to multiple mesh to create the same lighting pattern

16. Light Maps Example No light maps With light maps

17. Environmental Mapping • To substitute expensive ray-tracing for modelling shiny objects, 2D environment map are textured onto the object.

18. Creating an Environmental Map • Sphere map: • Render scene from opposite angle of output camera, and apply as texture map • Problem: Inaccurate when the object is round

19. Creating an Environmental Map • Ball Map: • Create a mirrored sphere and place at approximate location of object – render the sphere. • Problem: Non-uniform sampling at non-original viewpoint

20. Creating an Environmental Map • Cube Map: • Place a camera at location of object and remove object – take snapshots at 6 directions.

21. Extended Environmental Mapping • Surface Properties: • 2 maps – diffuse and specular, combined like in Phong shading • Diffuse: Indexed by surface normal • Specular: Indexed by reflected view vector

22. 3-D Texture Domains • Instead of a 2D texture pattern, why not make the texture 3D? • Circumvent problems in texture compression and texture continuity • Problem: Only have texture that are defined in 3D

23. Easy Example • If Z-axis integer is even, make it red. If not, make it white.

24. Easy Example No. 2 • Sine and ramp functions

25. 3D Noise • Used to distort existing texture to form irregular and interesting patterns

26. Perlin’s Noise Lattice • The Perlin’s Method of Noise Generation: • Lattice of points (i,j,k), where i, j, and k are integers – each assigned a random number. Values between i, j, and k linearly (or otherwise) interpolated

27. Adjusting Noise • Instead of noise(x,y,z), we can use noise(f*x,f*y,f*z) * a to fine-tune result • f – frequency • a - amplitude

28. Creating Recognizable Textures • Turbulate stripes to emulate marble texture • (marble(x) = marble_colour (sin(x + turbulence(x))

29. 3D Textures for Animation • Emulate flame by adding time dimension to 3D Texture Map • Successive “slices” of noise rendered for flickering flame

30. Interactive Texturing • Assist artists in creating helpful textures • Applet • Applet

31. Interactivity in Texturing Symmetrical Models • Model placed in bounding box • Artist paints profile texture as 2D image • Image plane-textured onto the model • Artist adjusts image and re-render for results

32. “Painting” Textures • Artist “paints” textures onto models directly • Imbues shading, glossiness, as well as pattern to model spontaneously as artist selects it

33. Implementing Texture “Paint” • Auxiliary frame buffer – item buffer – created • Screen cursor’s location on model gives pointer to position on object surface • Requires parametrized surface – divide object’s surface into numerous micropolygons

34. Discussion • Additional possibilities for “clever” ways around expensive modelling? • Applications for 3D textures and noise? In combination with environmental mapping? In combination with light maps and bump maps?