Differentiable rendering computes derivatives of the light transport equation with respect to arbitrary 3D scene parameters, and enables various applications in inverse rendering and machine learning. We present an unbiased and efficient differentiable rendering algorithm that does not require explicit boundary sampling. We apply the divergence theorem to the derivative of the rendering integral to convert the boundary integral into an area integral. We rewrite the converted area integral to a form that is suitable for Monte Carlo rendering. We then develop an efficient Monte Carlo sampling algorithm for solving the area integral. Our method can be easily plugged into a traditional path tracer and does not require dedicated data structures for sampling boundaries.
This work was partially funded by Toyota Research Institute and supported by MIT’s Edgerton memorial fellowship. We thank the anonymous reviewers for their helpful comments, and Luke Anderson and Tizian Zeltner for help with proof-reading. We also thank TurboSquid users Oleg_Scott and Zagg3D for the dense hedge geometry and the detailed potted plant geometry, respectively.