Texture Level of Detail Strategies for Real-Time Ray Tracing

Unlike rasterization, where one can rely on pixel quad partial derivatives, an alternative approach must be taken for filtered texturing during ray tracing. We describe two methods for computing texture level of detail for ray tracing. The first approach uses ray differentials, which is a general solution that gives high-quality results. It is rather expensive in terms of computations and ray storage, however. The second method builds on ray cone tracing and uses a single trilinear lookup, a small amount of ray storage, and fewer computations than ray differentials. We explain how ray differentials can be implemented within DirectX Raytracing (DXR) and how to combine them with a G-buffer pass for primary visibility. We present a new method to compute barycentric differentials. In addition, we give previously unpublished details about ray cones and provide a thorough comparison with bilinearly filtered mip level 0, which we consider as a base method.

[1]  Paul S. Heckbert,et al.  Fundamentals of Texture Mapping and Image Warping , 1989 .

[2]  Martin White,et al.  MIP-Map Level Selection for Texture Mapping , 1998, IEEE Trans. Vis. Comput. Graph..

[3]  Joel McCormack,et al.  Feline: fast elliptical lines for anisotropic texture mapping , 1999, SIGGRAPH.

[4]  Greg Humphreys,et al.  Physically Based Rendering: From Theory to Implementation , 2004 .

[5]  Lance Williams,et al.  Pyramidal parametrics , 1983, SIGGRAPH.

[6]  Douglas Voorhies,et al.  Reflection vector shading hardware , 1994, SIGGRAPH.

[7]  Mark Segal,et al.  The OpenGL Graphics System: A Specification , 2004 .

[8]  H. Piaggio Differential Geometry of Curves and Surfaces , 1952, Nature.

[9]  Paul S. Heckbert,et al.  Survey of Texture Mapping , 1986, IEEE Computer Graphics and Applications.

[10]  Yves D. Willems,et al.  Path Differentials and Applications , 2001, Rendering Techniques.

[11]  Paul S. Heckbert,et al.  Creating Raster Omnimax Images from Multiple Perspective Views Using the Elliptical Weighted Average Filter , 1986, IEEE Computer Graphics and Applications.

[12]  John Amanatides,et al.  Ray tracing with cones , 1984, SIGGRAPH.

[13]  Turner Whitted,et al.  An improved illumination model for shaded display , 1979, CACM.

[14]  Tomas Akenine-Möller,et al.  Fast, Minimum Storage Ray-Triangle Intersection , 1997, J. Graphics, GPU, & Game Tools.

[15]  Kenny Erleben,et al.  Photon differentials , 2007, GRAPHITE '07.

[16]  Rui Wang,et al.  Interactive Glossy Reflections using GPU‐based Ray Tracing with Adaptive LOD , 2008, Comput. Graph. Forum.

[17]  Andrew Kensler,et al.  RenderMan , 2018, ACM Trans. Graph..

[18]  Wenzel Jakob,et al.  Physically Based Rendering: From Theory To Implementation (third edition) , 2015 .

[19]  Joohwan Kim,et al.  Towards foveated rendering for gaze-tracked virtual reality , 2016, ACM Trans. Graph..

[20]  Per H. Christensen,et al.  Ray Differentials and Multiresolution Geometry Caching for Distribution Ray Tracing in Complex Scenes , 2003, Comput. Graph. Forum.

[21]  Homan Igehy,et al.  Tracing ray differentials , 1999, SIGGRAPH.

[22]  Derek Nowrouzezahrai,et al.  Antialiasing Complex Global Illumination Effects in Path-Space , 2017, ACM Trans. Graph..