Optimal Multiple Importance Sampling




  • Paper topic: Rendering
  • Software type: Code
  • Able to run a replicability test: True
  • Replicability score: 5
  • Software language: C++
  • License:
  • Build mechanism:
  • Dependencies: pbrt,eigen,glog,openexr,ptex,zlib
  • Documentation score {0,1,2}: 1
  • Reviewer: Nicolas Bonneel <nicolas.bonneel@liris.cnrs.fr>
  • Time spent for the test (build->first run, timeout at 100min): 0min

Source code information


There is no documentation to build and run the code, but it is quite easy anyway since it relies on PBRT. I pulled PBRT v3 (aaa552a4b9cbf9dccb71450f47b268e0ed6370e2) with recursive dependencies, replaced PBRT files with those provided in supplementary materials, ran CMake (worked directly), and added integrators/optmis.cpp and core/guiding.cpp in imgtool, bsdftest, pbrt_test, and pbrt_exe Visual Studio projects (you may as well edit the CMakeLists.txt). Compiling worked directly. Example scenes with pbrt scripts already set up to run the proposed MIS strategy are given in supplementary materials, for instance in supplemental/results/dining-room/scene (run pbrt.exe dining-room.pbrt as usual). It produces results comparable to those advertised. 

Additional scripts to reproduce plots (some rely on Mathematica, others on Matlab ; I did not evaluate them) and to compare image results from different methods are provided.

If you want to contribute with another review, please follow these instructions.

Please consider to cut/paste/edit the raw JSON data attached to this paper.