This Article 
 Bibliographic References 
 Add to: 
Antialiasing Procedural Shaders with Reduction Maps
May/June 2008 (vol. 14 no. 3)
pp. 539-550
Both image textures and procedural textures suffer from minification aliasing, however, unlike image textures, there is no good automatic method to anti-alias procedural textures. Given a procedural texture on a surface, we present a method that automatically creates an anti-aliased version of the procedural texture. The new procedural texture maintains the original texture's details, but reduces minification aliasing artifacts. This new algorithm creates a pyramid similar to MIP-Maps to represent the texture. Instead of storing per-texel color, our texture hierarchy stores weighted sums of reflectance functions, allowing a wider range of effects to be anti-aliased. The stored reflectance functions are automatically selected based on an analysis of the different reflectances found over the surface. When the texture is viewed at close range, the original texture is used, but as the texture footprint grows, the algorithm gradually replaces the texture's result with an anti-aliased one.

[1] S. Upstill, RenderMan Companion: A Programmer's Guide to Realistic Computer Graphics. Addison-Wesley Longman, 1989.
[2] M. Olano, J.C. Hart, W. Heidrich, and M. McCool, Real-Time Shading. A.K. Peters, 2002.
[3] L. Williams, “Pyramidal Parametrics,” Computer Graphics, vol. 17, no. 3, 1983.
[4] A.A. Apodaca and L. Gritz, Advanced RenderMan: Creating CGI for Motion Pictures. Morgan Kaufmann, 2000.
[5] N. Carr and J.C. Hart, “Mesh Atlases for Real-Time Procedural Solid Texturing,” ACM Trans. Graphics, pp. 106-131, 2002.
[6] R.L. Cook, “Shade Trees,” Proc. ACM SIGGRAPH '84, pp. 223-231, 1984.
[7] D. Peachey, “Solid Texturing of Complex Surfaces,” Proc. ACM SIGGRAPH '85, pp. 279-286, 1985.
[8] K. Perlin, “An Image Synthesizer,” Proc. ACM SIGGRAPH '85, pp.287-296, 1985.
[9] D.S. Ebert, F.K. Musgrave, D. Peachey, K. Perlin, and S. Worley, Texturing and Modeling: A Procedural Approach, third ed. Morgan Kaufmann, 2003.
[10] A. Norton and A.P. Rockwood, “Clamping: A Method of Antialiasing Textured Surfaces by Bandwidth Limiting in Object Space,” Computer Graphics, vol. 16, no. 3, 1982.
[11] P.S. Heckbert, “Filtering by Repeated Integration,” Proc. ACM SIGGRAPH '86, pp. 315-321, 1986.
[12] W. Heidrich, P. Slusallek, and H.-P. Seidel, “Sampling Procedural Shaders Using Affine Arithmetic,” ACM Trans. Graphics, vol. 17, no. 3, pp. 158-176, 1998.
[13] D. Goldman, “Fake Fur Rendering,” Proc. ACM SIGGRAPH '97, pp. 127-134, 1997.
[14] J.C. Hart, N. Carr, M. Kameya, S.A. Tibbitts, and T.J. Coleman, “Antialiased Parameterized Solid Texturing Simplified for Consumer-Level Hardware Implementation,” Proc. ACM SIGGRAPH/Eurographics Workshop Graphics Hardware (HWWS '99), pp. 45-53, 1999.
[15] M. Olano, B. Kuehne, and M. Simmons, “Automatic Shader Level of Detail,” Graphics Hardware, pp. 7-14, 2003.
[16] F. Pellacini, “User-Configurable Automatic Shader Simplification,” Proc. ACM SIGGRAPH '05/ACM Trans. Graphics, pp. 445-452, 2005.
[17] J. Lawrence, A. Ben-Artzi, C. DeCoro, W. Matusik, H. Pfister, R. Ramamoorthi, and S. Rusinkiewicz, “Inverse Shade Trees for Non-Parametric Material Representation and Editing,” Proc. ACM SIGGRAPH '06/ACM Trans. Graphics, vol. 25, no. 3, July 2006.
[18] J. Kautz and H.-P. Seidel, “Towards Interactive Bump Mapping with Anisotropic Shift-Variant BRDFs,” Proc. ACM SIGGRAPH/Eurographics Workshop Graphics Hardware (HWWS '00), pp. 51-58, 2000.
[19] D.K. McAllister, A. Lastra, and W. Heidrich, “Efficient Rendering of Spatial Bi-Directional Reflectance Distribution Functions,” Proc. ACM SIGGRAPH/Eurographics Workshop Graphics Hardware (HWWS '02), pp. 79-88, 2002.
[20] J. Amanatides, “Ray Tracing with Cones,” Proc. ACM SIGGRAPH '84, pp. 129-135, 1984.
[21] B.G. Becker and N.L. Max, “Smooth Transitions Between Bump Rendering Algorithms,” Proc. ACM SIGGRAPH '93, pp. 183-190, 1993.
[22] T. Malzbender, D. Gelb, and H. Wolters, “Polynomial Texture Maps,” Proc. ACM SIGGRAPH '01, pp. 519-528, 2001.
[23] A. Fournier, “Filtering Normal Maps and Creating Multiple Surfaces,” Proc. Graphics Interface Workshop Local Illumination, pp.45-54, 1992.
[24] M. Olano and M. North, “Normal Distribution Mapping,” Univ. of North Carolina Computer Science Technical Report 97-041, 1997.
[25] P. Tan, S. Lin, L. Quan, B. Guo, and H.-Y. Shum, “Multiresolution Reflectance Filtering,” Proc. Eurographics Symp. Rendering, pp. 111-116, 2005.
[26] K. Perlin, “Improving Noise,” Proc. ACM SIGGRAPH '02, pp. 681-682, 2002.
[27] R.L. Cook and T. DeRose, “Wavelet Noise,” Proc. ACM SIGGRAPH '05, pp. 803-811, 2005.
[28] P.S. Heckbert, “Survey of Texture Mapping,” IEEE Computer Graphics and Applications, vol. 6, pp. 56-67, 1986.
[29] F.C. Crow, “Summed-Area Tables for Texture Mapping,” Proc. ACM SIGGRAPH '84, vol. 18, pp. 207-212, 1984.
[30] A. Schilling, G. Knittel, and W. Strasser, “Texram: A Smart Memory for Texturing,” IEEE Computer Graphics and Applications, vol. 16, no. 3, pp. 32-41, 1996.
[31] H. Igehy, “Tracing Ray Differentials,” Proc. ACM SIGGRAPH '99, pp. 179-186, 1999.
[32] P. Sander, J. Snyder, S. Gortler, and H. Hoppe, “Texture Mapping Progressive Meshes,” Proc. ACM SIGGRAPH '01, pp. 409-416, 2001.
[33] E. Zhang, K. Mischaikow, and G. Turk, “Feature-Based Surface Parameterization and Texture Mapping,” ACM Trans. Graphics, pp. 1-27, 2005.
[34] C. Lawson and R. Hanson, Solving Least Square Problems. Prentice Hall, 1974.
[35] P. Schröder and W. Sweldens, “Spherical Wavelets: Efficiently Representing Functions on the Sphere,” Proc. ACM SIGGRAPH '95, pp. 161-172, 1995.
[36] M. McCool, J. Ang, and A. Ahmad, “Homomorphic Factorization of BRDF's for High Performance Rendering,” Proc. ACM SIGGRAPH '01, pp. 185-194, 2001.
[37] J. Lawrence, S. Rusinkiewicz, and R. Ramamoorthi, “Efficient BRDF Importance Sampling Using a Factored Representation,” Proc. ACM SIGGRAPH '04, pp. 495-505, 2004.
[38] S. Gortler, R. Grzeszczuk, R. Szeliski, and M. Cohen, “The Lumigraph,” Proc. ACM SIGGRAPH '96, pp. 43-54, 1996.
[39] T.E. Zickler, P.N. Belhumeur, and D.J. Kriegman, “Helmholtz Stereopsis: Exploiting Reciprocity for Surface Reconstruction,” Int'l J. Computer Vision, vol. 49, 2002.
[40] M. McCool and S. DuToit, Metaprogramming GPUs with Sh. A.K. Peters, 2004.
[41] P. Cignoni, C. Montani, C. Rocchini, and R. Scopigno, “A General Method for Preserving Attribute Values on Simplified Meshes,” Proc. IEEE Visualization, pp. 59-66, 1998.
[42] M. Rioux, M. Soucy, and G. Godin, “A Texture-Mapping Approach for the Compression of Colored 3D Triangulations,” The Visual Computer, vol. 12, no. 10, pp. 503-514, 1996.
[43] A.P. Witkin, “Recovering Surface Shape and Orientation from Texture,” Artificial Intelligence, vol. 17, pp. 17-45, 1981.
[44] S. Worley, “A Cellular Texture Basis Function,” Proc. ACM SIGGRAPH '96, pp. 291-294, 1996.

Index Terms:
Antialiasing, Color, Shading, shadowing, and texture
R. Brooks Van Horn III, Greg Turk, "Antialiasing Procedural Shaders with Reduction Maps," IEEE Transactions on Visualization and Computer Graphics, vol. 14, no. 3, pp. 539-550, May-June 2008, doi:10.1109/TVCG.2007.70435
Usage of this product signifies your acceptance of the Terms of Use.