Title: Texture Mapping from Watt, Ch' 8
1Texture Mapping from Watt, Ch. 8
2Topics Discussed
- Texture Map to Models
- Bump Maps, Light Maps
- Environment (Reflection) Mapping
- 3D Textures
- Interactive Texture Mapping
3What is Mapping?
- Assigning colors to the
- pixels on a 3D model to
- simulate. . .
- Color
- Specular color
- Surface perturbation
- Transparency
42D 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
5Mapping by Intermediate Surface
- Map -gt (S map) Simple 3D shape -gt (O map)
Projection onto complex mesh - Plane, cylinder, cube, spheres all possible
intermediate shapes
6O Mapping
7O Mapping Result
8Bi-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
9Parametric Example
10Parametric Patch (contd)
- Divide mesh up to individual parametric surfaces,
and place the texture over each
11Parametric Patch (contd)
- Assign (u, v) coordinates to points on mesh
surface, and interpolate between these points
12Billboards
- Technique to create pseudo-realistic 3D objects
when viewed in constricted directions
13Bump mapping
- Simulation for surface perturbation without
adding polygons to the mesh - The lighting changes per-pixel to achieve said
simulation
14What is a Bump Map?
- Array of values that represent objects height
variation on small scale - Combined with surface normal to evaluate lighting
equation
15Light Maps
- Like Bump Maps, Light Maps store information on a
surface thats not just color - Simulate localized lighting
- Same map applied to multiple mesh to create the
same lighting pattern
16Light Maps Example
No light maps
With light maps
17Environmental Mapping
- To substitute expensive ray-tracing for modelling
shiny objects, 2D environment map are textured
onto the object.
18Creating 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
19Creating 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
20Creating an Environmental Map
- Cube Map
- Place a camera at location of object and remove
object take snapshots at 6 directions.
21Extended 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
223-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
23Easy Example
- If Z-axis integer is even, make it red. If not,
make it white.
24Easy Example No. 2
253D Noise
- Used to distort existing texture to form
irregular and interesting patterns
26Perlins Noise Lattice
- The Perlins 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
27Adjusting Noise
- Instead of noise(x,y,z), we can use
noise(fx,fy,fz) a to fine-tune result - f frequency
- a - amplitude
28Creating Recognizable Textures
- Turbulate stripes to emulate marble texture
- (marble(x) marble_colour (sin(x turbulence(x))
293D Textures for Animation
- Emulate flame by adding time dimension to 3D
Texture Map - Successive slices of noise rendered for
flickering flame
30Interactive Texturing
- Assist artists in creating helpful textures
- Applet
- Applet
31Interactivity 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
32Painting Textures
- Artist paints textures onto models directly
- Imbues shading, glossiness, as well as pattern to
model spontaneously as artist selects it
33Implementing Texture Paint
- Auxiliary frame buffer item buffer created
- Screen cursors location on model gives pointer
to position on object surface - Requires parametrized surface divide objects
surface into numerous micropolygons
34Discussion
- 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?