Skip to content

shubhampachori12110095/layeredbsdf

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Position-Free Monte Carlo Simulation for Arbitrary Layered BSDFs

Yu Guo, Miloš Hašan, Shuang Zhao. In ACM Transactions on Graphics (SIGGRAPH Asia 2018). [Project page]

Overview

This is a branch of the Mitsuba (0.6.0) renderer (official repo: https://github.com/mitsuba-renderer/mitsuba)

Install

Linux (Preferred, Tested on Ubuntu 16.04)

  • $ git clone https://github.com/tflsguoyu/layeredbsdf.git
  • $ cd layeredbsdf/
  • $ mv config_linux.py config.py
  • $ sudo apt install build-essential scons mercurial libpng12-dev libjpeg-dev libilmbase-dev libxerces-c-dev libboost-all-dev libopenexr-dev libglewmx-dev libxxf86vm-dev libpcrecpp0v5 libeigen3-dev libfftw3-dev
  • $ scons -j x (x = # of cpu cores)
  • source setpath.sh Now you can render scenes
  • $ mitsuba xxx.xml

Windows (Tested on Windows 10 x64)

  • install visual studio 2017
  • clone this git to local folder
  • go to folder ..\layeredbsdf\
  • rename config_windows.py to config.py
  • download dependencies

Examples in paper (click image to download scene files)


Scene file (.xml) explanation

  • <scene version="0.6.0"> (Here using 0.6.0, but not 0.5.0)
  • <integrator type="path_layered"> (path_layered preferred, but can still use path, volpath or volpath_simple instead)
  • <bsdf type="multilayered"> ... </bsdf> (BSDF type is multilayered, both our uni-dir and bi-dir methods are implemented here)

Notes

  • Default precision in config.py is single. If you find too many warnings or even it is crashed when rendering scenes, you should try double precision instead. (Already provided in config.py)
  • conductor and dielectric are not supported now, use roughconductor (a=0.001) and roughdielectric (a=0.001) instead.
  • Welcome to report bugs and leave comments (Yu Guo: [email protected])

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 91.8%
  • Objective-C 4.3%
  • C 2.4%
  • Python 0.6%
  • Objective-C++ 0.4%
  • GLSL 0.3%
  • Other 0.2%