“Analytic Displacement Mapping Using Hardware Tessellation” by Nießner and Loop

  • ©Matthias Nießner and Charles Loop



Session Title:

    Hardware Rendering


    Analytic Displacement Mapping Using Hardware Tessellation




    Displacement mapping is ideal for modern GPUs since it enables high-frequency geometric surface detail on models with low memory I/O. However, problems such as texture seams, normal recomputation, and undersampling artifacts have limited its adoption. We provide a comprehensive solution to these problems by introducing a smooth analytic displacement function. Coefficients are stored in a GPU-friendly tile-based texture format, and a multiresolution mip hierarchy of this function is formed. We propose a novel level-of-detail scheme by computing per-vertex adaptive tessellation factors and select the appropriate prefiltered mip levels of the displacement function. Our method obviates the need for a precomputed normal map since normals are directly derived from the displacements. Thus, we are able to perform authoring and rendering simultaneously without typical displacement map extraction from a dense triangle mesh. This not only is more flexible than the traditional combination of discrete displacements and normal maps, but also provides faster runtime due to reduced memory I/O.


    1. Bertram, M. 2004. Lifting biorthogonal b-spline wavelets. In Geometric Modeling for Scientific Visualization, Springer, 153–169.
    2. Blinn, J. 1978. Simulation of wrinkled surfaces. ACM SIGGRAPH Comput. Graph. 12. 286–292.
    3. Bunnell, M. 2005. Adaptive tessellation of subdivision surfaces with displacement mapping. GPU Gems 2, 109–122.
    4. Burley, B. and Lacewell, D. 2008. Ptex: Per-face texture mapping for production rendering. Comput. Graph. Forum 27, 1155–1164.
    5. Catmull, E. and Clark, J. 1978. Recursively generated B-spline surfaces on arbitrary topological meshes. Comput.-Aided Des. 10, 6, 350–355.
    6. Cook, R. 1984. Shade trees. In Proceedings of the 11th Annual Conference on Computer Graphics and Interactive Techniques Computer Graphics (SIGGRAPH’84).
    7. Do Carmo, M. 1976. Differential Geometry of Curves and Surfaces. Vol. 1, Prentice-Hall.
    8. Doo, D. 1978. A subdivision algorithm for smoothing down irregularly shaped polyhedrons. In Proceedings of the International Conference on Interactive Techniques in Computer Aidied Design. IEEE, 157–165.
    9. Gonzalez, F. and Patow, G. 2009. Continuity mapping for multi-chart textures. ACM Trans. Graph. 28, 109.
    10. Guskov, I., Vidimče, K., Sweldens, W., and Schröder, P. 2000. Normal meshes. In Proceedings of the 27th Annual Conference on Computer Graphics (SIGGRAPH’00). ACMPress/Addison-Wesley Publishing Co., 95–102.
    11. Halstead, M., Kass, M., and Derose, T. 1993. Efficient, fair interpolation using catmull-clark surfaces. In Proceedings of the 20th Annual Conference on Computer Graphics and Interactive Techniques. ACM Press, New York, 35–44.
    12. Lee, A., Moreton, H., and Hoppe, H. 2000. Displaced subdivision surfaces. In Proceedings of the 27th Annual Conference on Computer Graphics (SIGGRAPH’00). ACM Press/Addison-Wesley Publishing Co., 85–94.
    13. Loop, C. 1987. Smooth subdivision surfaces based on triangles. M.S. thesis, University of Utah.
    14. Loop, C., Schaefer, S., Ni, T., and Castano, I. 2009. Approximating subdivision surfaces with gregory patches for hardware tessellation. ACM Trans. Graph. 28, 5.
    15. Myles, A., Ni, T., and Peters, J. 2008. Fast parallel construction of smooth surfaces from meshes with tri/quad/pent facets. Comput. Graph. Forum 27, 5, 1365–1372.
    16. Niessner, M., Loop, C., Meyer, M., and Derose, T. 2012. Featureadaptive gpu rendering of catmull-clark subdivision surfaces. ACM Trans. Graph. 31, 1, 6.
    17. Patney, A., Ebeida, M., and Owens, J. 2009. Parallel view-dependent tessellation of catmull-clark subdivision surfaces. In Proceedings of the Conference on High Performance Graphics. ACM Press, New York, 99–108.
    18. Purnomo, B., Cohen, J., and Kumar, S. 2004. Seamless texture atlases. In Proceedings of the Eurographics/ACM SIGGRAPH Symposium on Geometry Processing. ACM Press, New York, 65–74.
    19. Ray, N., Nivoliers, V., Lefebvre, S., and Levy, B. 2010. Invisible seams. Comput. Graph. Forum 29, 1489–1496.
    20. Reif, U. 1997. A refineable space of smooth spline surfaces of arbitrary topological genus. J. Approx. Theory 90, 2, 174–199.
    21. Sander, P., Wood, Z., Gortler, S., Snyder, J., and Hoppe, H. 2003. Multi-chart geometry images. In Proceedings of the Eurographics/ACM SIGGRAPH Symposium on Geometry Processing. 146–155.
    22. Schafer, H., Prus, M., Meyer, Q., Sussmuth, J., and Stamminger, M. 2012. Multiresolution attributes for tessellated meshes. In Proceedings of the ACM SIGGRAPH Symposium on 3D Graphics and Games. 175–182.
    23. Shiue, L., Jones, I., and Peters, J. 2005. A realtime GPU subdivision kernel. ACM Trans. Graph. 24, 3, 1010–1015.
    24. Stam, J. 1998. Exact evaluation of catmull-clark subdivision surfaces at arbitrary parameter values. In Proceedings of the 25th Annual Conference on Computer Graphics and Interactive Techniques. ACM Press, New York, 395–404.
    25. Szirmay-Kalos, L. and Umenhoffer, T. 2008. Displacement mapping on the gpu-state of the art. Comput. Graph. Forum 27, 6, 1567–1592.
    26. Tatarchuk, N., Barczak, J., and Bilodeau, B. 2010. Programming for real-time tessellation on gpu. AMD whitepaper 5.
    27. Williams, L. 1983. Pyramidal parametrics. In Proceedings of the 10th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH’83).
    28. Yuksel, C., Keyser, J., and House, D. 2010. Mesh colors. ACM Trans. Graph. 29, 2, 15.

ACM Digital Library Publication: