Path tracing in production: part 1: modern path tracing

In the past few years the movie industry has switched over from stochastic rasterisation approaches to using physically based light transport simulation: path tracing in production has become ubiquitous across studios. The new approach came with undisputed advantages such as consistent lighting, progressive previews, and fresh code bases. But also abandoning 30 years of experience meant some hard cuts affecting all stages such as lighting, look development, geometric modelling, scene description formats, the way we schedule for multi-threading, just to name a few. This means there is a rich set of people involved and as an expert in either one of these aspects it is easy to lose track of the big picture. This is part I of a full-day course, and it focuses on the necessary background knowledge. In this part, we would like to provide context for everybody interested in understanding the challenges behind writing renderers intended for movie production work. In particular we will give an insight into movie production requirements for new students and academic researchers. On the other side we will lay a solid mathematical foundation to develop new ideas to solve problems in this context. To further illustrate, part II of the course will focus on materials (acquisition and production requirements) and showcase practical efforts by prominent professionals in the field, pointing out unexpected challenges encountered in new shows and unsolved problems as well as room for future work wherever appropriate.

[1]  Csaba Kelemen,et al.  Simple and Robust Mutation Strategy for Metropolis Light Transport Algorithm , 2001 .

[2]  Justin Talbot,et al.  Energy redistribution path tracing , 2005, ACM Trans. Graph..

[3]  Brian Budge,et al.  Simple Nested Dielectrics in Ray Traced Images , 2002, J. Graphics, GPU, & Game Tools.

[4]  Takuji Nishimura,et al.  Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator , 1998, TOMC.

[5]  Henrik Wann Jensen,et al.  Global Illumination using Photon Maps , 1996, Rendering Techniques.

[6]  Jacopo Pantaleoni,et al.  Charted metropolis light transport , 2016, ACM Trans. Graph..

[7]  Jaakko Lehtinen,et al.  Anisotropic Gaussian mutations for metropolis light transport through Hessian-Hamiltonian dynamics , 2015, ACM Trans. Graph..

[8]  Michael Betancourt,et al.  A Conceptual Introduction to Hamiltonian Monte Carlo , 2017, 1701.02434.

[9]  Dietger van Antwerpen,et al.  Improving SIMD efficiency for parallel Monte Carlo light transport on the GPU , 2011, HPG '11.

[10]  L. Richardson The Approximate Arithmetical Solution by Finite Differences of Physical Problems Involving Differential Equations, with an Application to the Stresses in a Masonry Dam , 1911 .

[11]  Eric Haines,et al.  Ray Tracing Gems , 2019, Apress.

[12]  Steve Marschner,et al.  Eurographics Symposium on Rendering (2007) Jan Kautz and Sumanta Pattanaik (Editors) Abstract Rendering Discrete Random Media Using Precomputed Scattering Solutions , 2022 .

[13]  Christopher D. Kulla,et al.  Eurographics Symposium on Rendering 2012 Importance Sampling Techniques for Path Tracing in Participating Media , 2022 .

[14]  Christophe Hery,et al.  Caustic Connection Strategies for Bidirectional Path Tracing , 2018 .

[15]  Johannes Hanika,et al.  Monte Carlo Methods for Volumetric Light Transport Simulation , 2018, Comput. Graph. Forum.

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

[17]  Alejandro Conty Estevez,et al.  Importance sampling of many lights with adaptive tree splitting , 2017, SIGGRAPH Talks.

[18]  Toshiya Hachisuka,et al.  Reproducing Spectral Reflectances From Tristimulus Colours , 2018, Comput. Graph. Forum.

[19]  H. Hahn Leçons sur l'intégration et la recherche des fonctions primitives , 1904 .

[20]  H. Wozniakowski Average case complexity of multivariate integration , 1991 .

[21]  Christopher D. Kulla,et al.  Oz: the great and volumetric , 2013, SIGGRAPH '13.

[22]  Brent Burley,et al.  Practical and controllable subsurface scattering for production path tracing , 2016, SIGGRAPH Talks.

[23]  A. Owen Multidimensional variation for quasi-Monte Carlo , 2004 .

[24]  D. L. Macadam Maximum Visual Efficiency of Colored Materials , 1935 .

[25]  William H. Press,et al.  Numerical Recipes: The Art of Scientific Computing , 1987 .

[26]  Toshiya Hachisuka,et al.  Fusing state spaces for markov chain Monte Carlo rendering , 2017, ACM Trans. Graph..

[27]  George Marsaglia,et al.  The Monty Python method for generating random variables , 1998, TOMS.

[28]  R. Cooke Real and Complex Analysis , 2011 .

[29]  Alexander Keller,et al.  Metropolis Light Transport for Participating Media , 2000, Rendering Techniques.

[30]  Geoffrey S. Hubona,et al.  The relative contributions of stereo, lighting, and background scenes in promoting 3D depth visualization , 1999, TCHI.

[31]  Robert L. Cook,et al.  Stochastic sampling in computer graphics , 1988, TOGS.

[32]  Luca Fascione,et al.  Path tracing in production , 2018, SIGGRAPH Courses.

[33]  Carsten Dachsbacher,et al.  Local Quasi-Monte Carlo Exploration , 2017, EGSR.

[34]  Mateu Sbert,et al.  Accelerating Path Tracing by Re-Using Paths , 2002, Rendering Techniques.

[35]  Stefan Friedrich,et al.  Topology , 2019, Arch. Formal Proofs.

[36]  Iliyan Georgiev,et al.  Implementing Vertex Connection and Merging , 2013 .

[37]  Carsten Dachsbacher,et al.  Line Integration for Rendering Heterogeneous Emissive Volumes , 2017, Comput. Graph. Forum.

[38]  Blagovest Taskov,et al.  Adaptive environment sampling on CPU and GPU , 2018, SIGGRAPH Talks.

[39]  Harald Niederreiter,et al.  Random number generation and Quasi-Monte Carlo methods , 1992, CBMS-NSF regional conference series in applied mathematics.

[40]  Faculteit der Wiskunde en Natuurwetenschappen,et al.  The spherical albedo of a planet covered with a homogeneous cloud layer , 1974 .

[41]  Donald P. Greenberg,et al.  Accurate direct illumination using iterative adaptive sampling , 2006, IEEE Transactions on Visualization and Computer Graphics.

[42]  Luca Fascione,et al.  Path tracing in production - part 2: making movies , 2017, SIGGRAPH Courses.

[43]  Christopher D. Kulla,et al.  Production volume rendering: SIGGRAPH 2017 course , 2017, SIGGRAPH Courses.

[44]  G. Marsaglia,et al.  The Ziggurat Method for Generating Random Variables , 2000 .

[45]  Tobias Ritschel,et al.  On-line learning of parametric mixture models for light transport simulation , 2014, ACM Trans. Graph..

[46]  Petr Vévoda,et al.  Bayesian online regression for adaptive direct illumination sampling , 2018, ACM Trans. Graph..

[47]  F. Durand,et al.  Temporal light field reconstruction for rendering distribution effects , 2011, ACM Trans. Graph..

[48]  Clifford Stein,et al.  Sony Pictures Imageworks Arnold , 2018, ACM Trans. Graph..

[49]  Carsten Dachsbacher,et al.  Multiple Vertex Next Event Estimation for Lighting in dense, forward‐scattering Media , 2017, Comput. Graph. Forum.

[50]  Matthias Zwicker,et al.  Multidimensional adaptive sampling and reconstruction for ray tracing , 2008, ACM Trans. Graph..

[51]  F. Harris On the use of windows for harmonic analysis with the discrete Fourier transform , 1978, Proceedings of the IEEE.

[52]  Paul S. Heckbert Adaptive radiosity textures for bidirectional ray tracing , 1990, SIGGRAPH.

[53]  Shuang Zhao,et al.  High-order similarity relations in radiative transfer , 2014, ACM Trans. Graph..

[54]  B. Riemann Ueber die Darstellbarkeit einer Function durch eine trigonometrische Reihe , 1867 .

[55]  Iliyan Georgiev,et al.  A null-scattering path integral formulation of light transport , 2019, ACM Trans. Graph..

[56]  Nitakshi Goyal,et al.  General Topology-I , 2017 .

[57]  Tom Lokovic,et al.  Deep shadow maps , 2000, SIGGRAPH.

[58]  HachisukaToshiya,et al.  A path space extension for robust light transport simulation , 2012 .

[59]  Cheng-Shang Chang Calculus , 2020, Bicycle or Unicycle?.

[60]  Jonathan T. Moon,et al.  A radiative transfer framework for rendering materials with anisotropic structure , 2010, ACM Trans. Graph..

[61]  Jacopo Pantaleoni,et al.  A path space extension for robust light transport simulation , 2012, ACM Trans. Graph..

[62]  Thomas Müller,et al.  Efficient rendering of heterogeneous polydisperse granular media , 2016, ACM Trans. Graph..

[63]  Brian E. Smits An RGB-to-Spectrum Conversion for Reflectances , 1999, J. Graphics, GPU, & Game Tools.

[64]  Carsten Dachsbacher,et al.  Improving the Dwivedi Sampling Scheme , 2016, Comput. Graph. Forum.

[65]  Diego Gutierrez,et al.  A radiative transfer framework for spatially-correlated materials , 2018, ACM Trans. Graph..

[66]  Alexander Keller,et al.  The iray light transport simulation and rendering system , 2017, SIGGRAPH Talks.

[67]  A. Rollett,et al.  The Monte Carlo Method , 2004 .

[68]  P.H. Christensen,et al.  Ray Tracing for the Movie `Cars' , 2006, 2006 IEEE Symposium on Interactive Ray Tracing.

[69]  Steve Marschner,et al.  Manifold exploration , 2012, ACM Trans. Graph..

[70]  Derek Nowrouzezahrai,et al.  Joint importance sampling of low-order volumetric scattering , 2013, ACM Trans. Graph..

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

[72]  Carsten Dachsbacher,et al.  Using moments to represent bounded signals for spectral rendering , 2019, ACM Trans. Graph..

[73]  Robert Bruce Lindsay,et al.  On the Light from the Sky, its Polarization and Colour (1871) , 1970 .

[74]  Ken Museth,et al.  VDB: High-resolution sparse volumes with dynamic topology , 2013, TOGS.

[75]  Jan Novák,et al.  Residual ratio tracking for estimating attenuation in participating media , 2014, ACM Trans. Graph..

[76]  James T. Kajiya,et al.  The rendering equation , 1986, SIGGRAPH.

[77]  Luca Fascione,et al.  Manuka , 2018, ACM Trans. Graph..

[78]  Adrien Gruson,et al.  A Spatial Target Function for Metropolis Photon Tracing , 2016, ACM Trans. Graph..

[79]  Masatake Mori,et al.  Double Exponential Formulas for Numerical Integration , 1973 .

[80]  Thomas Müller,et al.  Path guiding in production , 2019, SIGGRAPH Courses.

[81]  Eugene d'Eon,et al.  A Reciprocal Formulation of Nonexponential Radiative Transfer. 1: Sketch and Motivation , 2018, ArXiv.

[82]  L. C. Henyey,et al.  Diffuse radiation in the Galaxy , 1940 .

[83]  Timo Aila,et al.  Megakernels considered harmful: wavefront path tracing on GPUs , 2013, HPG '13.

[84]  Hans-Peter Seidel,et al.  Acquisition and analysis of bispectral bidirectional reflectance and reradiation distribution functions , 2010, ACM Trans. Graph..

[85]  Magnus Wrenninge Efficient Rendering of Volumetric Motion Blur Using Temporally Unstructured Volumes , 2016 .

[86]  Peter Shirley,et al.  Image synthesis using adjoint photons , 2006, Graphics Interface.

[87]  Jan Novák Efficient Many-Light Rendering of Scenes with Participating Media , 2014 .

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

[89]  Jaroslav Krivánek,et al.  Adjoint-driven Russian roulette and splitting in light transport simulation , 2016, ACM Trans. Graph..

[90]  Christophe Hery,et al.  Practical Illumination from Flames , 2013 .

[91]  F. Stephan,et al.  Set theory , 2018, Mathematical Statistics with Applications in R.

[92]  Steve Marschner,et al.  Multi-scale modeling and rendering of granular materials , 2015, ACM Trans. Graph..

[93]  Jan Novák,et al.  Spectral and decomposition tracking for rendering heterogeneous volumes , 2017, ACM Trans. Graph..

[94]  Philipp Slusallek,et al.  Light transport simulation with vertex connection and merging , 2012, ACM Trans. Graph..

[95]  Carsten Dachsbacher,et al.  Physically Meaningful Rendering using Tristimulus Colours , 2015, Comput. Graph. Forum.

[96]  Walter Gautschi,et al.  Norm estimates for inverses of Vandermonde matrices , 1974 .

[97]  Alexander Keller,et al.  MSBVH: an efficient acceleration data structure for ray traced motion blur , 2011, HPG '11.

[98]  S. M. Ermakow Die Monte-Carlo-Methode und verwandte Fragen , 1975 .

[99]  Steve Marschner,et al.  A radiative transfer framework for non-exponential media , 2018, ACM Trans. Graph..

[100]  Alexander Keller,et al.  Unbiased Global Illumination with Participating Media , 2008 .

[101]  Shinji Ogaki,et al.  Arnold , 2018, ACM Trans. Graph..

[102]  Kun Zhou,et al.  Micropolygon ray tracing with defocus and motion blur , 2010 .

[103]  Luca Fascione,et al.  Manifold Next Event Estimation , 2015, Comput. Graph. Forum.

[104]  Wenzel Jakob,et al.  A Low‐Dimensional Function Space for Efficient Spectral Upsampling , 2019, Comput. Graph. Forum.

[105]  Jan Novák,et al.  Subdivision Next-Event Estimation for Path-Traced Subsurface Scattering , 2016, EGSR.

[106]  R. Caflisch Monte Carlo and quasi-Monte Carlo methods , 1998, Acta Numerica.

[107]  Johannes Hanika,et al.  Hero Wavelength Spectral Sampling , 2014, Comput. Graph. Forum.

[108]  Alexander Keller,et al.  Efficient Bidirectional Path Tracing by Randomized Quasi-Monte Carlo Integration , 2002 .

[109]  W. Rudin Principles of mathematical analysis , 1964 .

[110]  Leonidas J. Guibas,et al.  Robust Monte Carlo methods for light transport simulation , 1997 .

[111]  Brent Burley,et al.  The Design and Evolution of Disney’s Hyperion Renderer , 2018, ACM Trans. Graph..

[112]  Jaakko Lehtinen,et al.  Gradient-domain path tracing , 2015, ACM Trans. Graph..

[113]  Andrew S. Glassner,et al.  Principles of Digital Image Synthesis , 1995 .

[114]  M. H. Brill,et al.  How the CIE 1931 color-matching functions were derived from Wright-Guild data , 1997 .