3D graphics eBook - Course Materials Repository
3D graphics eBook - Course Materials Repository
3D graphics eBook - Course Materials Repository
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Parallax mapping 93<br />
Parallax mapping<br />
Parallax mapping (also called offset<br />
mapping or virtual displacement<br />
mapping) is an enhancement of the bump<br />
mapping or normal mapping techniques<br />
applied to textures in <strong>3D</strong> rendering<br />
applications such as video games. To the<br />
end user, this means that textures such as<br />
stone walls will have more apparent depth<br />
and thus greater realism with less of an<br />
influence on the performance of the<br />
simulation. Parallax mapping was<br />
introduced by Tomomichi Kaneko et al. [1] in<br />
2001.<br />
Example of parallax mapping. The walls are textured with parallax maps.<br />
Screenshot taken from one of the base examples of the open source Irrlicht 3d<br />
Parallax mapping is implemented by displacing the texture coordinates at a point on the rendered polygon by a<br />
function of the view angle in tangent space (the angle relative to the surface normal) and the value of the height map<br />
at that point. At steeper view-angles, the texture coordinates are displaced more, giving the illusion of depth due to<br />
parallax effects as the view changes.<br />
Parallax mapping described by Kaneko is a single step process that does not account for occlusion. Subsequent<br />
enhancements have been made to the algorithm incorporating iterative approaches to allow for occlusion and<br />
accurate silhouette rendering. [2]<br />
Steep parallax mapping<br />
Steep parallax mapping is one name for the class of algorithms that trace rays against heightfields. The idea is to<br />
walk along a ray that has entered the heightfield's volume, finding the intersection point of the ray with the<br />
heightfield. This closest intersection is what part of the heightfield is truly visible. Relief mapping and parallax<br />
occlusion mapping are other common names for these techniques.<br />
Interval mapping improves on the usual binary search done in relief mapping by creating a line between known<br />
inside and outside points and choosing the next sample point by intersecting this line with a ray, rather than using the<br />
midpoint as in a traditional binary search.<br />
References<br />
engine.<br />
[1] Kaneko, T., et al., 2001. Detailed Shape Representation with Parallax Mapping (http:/ / vrsj. t. u-tokyo. ac. jp/ ic-at/ ICAT2003/ papers/<br />
01205. pdf). In Proceedings of ICAT 2001, pp. 205-208.<br />
[2] Tatarchuk, N., 2005. Practical Dynamic Parallax Occlusion Mapping (http:/ / developer. amd. com/ media/ gpu_assets/<br />
Tatarchuk-ParallaxOcclusionMapping-Sketch-print. pdf) Siggraph presentation<br />
External links<br />
• Comparison from the Irrlicht Engine: With Parallax mapping (http:/ / www. irrlicht3d. org/ images/<br />
parallaxmapping. jpg) vs. Without Parallax mapping (http:/ / www. irrlicht3d. org/ images/ noparallaxmapping.<br />
jpg)<br />
• Parallax mapping implementation in DirectX, forum topic (http:/ / www. gamedev. net/ community/ forums/<br />
topic. asp?topic_id=387447)