Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456 Relief Textures
Texture maps are very successfully used to simulate surface details
on polygonal models. While they look great in still images from viewpoints nearly
orthogonal to the texture, a moving observer can easily see their true flatness.
Displacement maps allow the addition of truly three-dimensional surface details but are
very expensive to render.
We present a new method for transforming images with per-pixel
displacements into textures that have correct parallax when texture-mapped, in the usual
way, onto polygons. Our new method results from factoring the 3-D image-warping equation
of McMillan and Bishop into a pre-warp followed by standard texture mapping. The pre-warp
handles only the parallax effects resulting from the height of the texture elements and
the direction of view; the subsequent texture-mapping operation handles the scaling,
rotation, and remaining perspective transformation.
This factored formulation has several advantages. First the pre-warp
equations have very simple 1-D structure that makes them inexpensive to evaluate. Second
their 1-D structure enables the pre-warp to be implemented using only 1-D image operations
along scan lines and columns and requires interpolation between only two adjacent pixels
at a time. This allows very efficient implementation in software and should allow a simple
and efficient hardware implementation. Third, the texture-mapping hardware already very
common in graphics systems efficiently implements the final stage of the warp.
Relief Textures add view motion parallax to texture mapping, producing images that
look correct for viewpoints that are static or moving, far away or nearby. Figure 1
compares the results of rendering the same scene using both the conventional and the new
technique.
Figure 1. Scene rendered using three conventionally texture-mapped quadrilaterals (left).
Same scene rendered with three Relief Textures and five quadrilaterals (right). Note
the dormers.
Relief Textures can add detail to multiple surfaces in the same way as conventional
textures. Thus, for instance, the bric texture shown in Figure 2 can be used for all
external walls of a buiding, producing the desired effect in all cases.
Figure 2. Oblique view of a brick wall (left). The visibility of the mortar changes
from bottom to top. Corresponding pre-warped texture (right).
Relief Textures can also be used to represent more complex shapes such as objects.
In Figure 3(a) a statue is represented by two Relief texture-mapped quadrilateral
whose boundaries are shown in red. Figure 3(b) and 3(c) are the corresponding
pre-warped textures. Figure 4 shows another view of the same object.
Figure 3. Object represented by two Relief texture-mapped quadrilaterals
(red boundaries) (a). Corresponding pre-warped textures (b) and (c).
Figure 4. Another view of the same object.
Here is a short movie (Quick Time) showing
the statue above represented as 6 relief texture-mapped quadrilateral
(at most two shown at any time). The small windows show the pre-warped
textures computed on the fly.
Related Publications
Oliveira, Manuel M. and Gary Bishop.
Relief Textures.
UNC Computer Science Technichal Report TR99-015,
University of North Carolina, March 29, 1999.
Oliveira, Manuel M. and Gary Bishop.
Factoring 3-D Image Warping Equations into a Pre-Warp Followed by Conventional
Texture Mapping.
UNC Computer Science Technichal Report TR99-002,
University of North Carolina, January 15, 1999.