Skip to content

RiverIntheSky/roughhair

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hair park scene

Microfacet-base Hair Scattering Model in Mitsuba 2

⚠️ This repository is not maintained. For up-to-date version, please check the implementation in Blender, which includes improvements such as a near-field extension, reduced energy loss by accounting multiple scattering and a TRRT+ lobe, as well as a few simplified computation and bug fixes.

Overview

This code base includes the implementation of the EGSR 2022 paper A Microfacet-based Hair Scattering Model in Mitsuba 2.

Instruction

  • Clone the Mitsuba Renderer 2 repository.
  • Copy the current folder to the repository.
  • Add this line to src/bsdfs/CMakeLists.txt:
add_plugin(roughhair            roughhair.cpp)
add_plugin(roughcylinder        roughcylinder.cpp)

Add to src/shapes/CMakeLists.txt:

add_plugin(hair             hair.cpp)
add_plugin(hairsegment      hairsegment.cpp)
add_plugin(cylindersegment  cylindersegment.cpp)

Then compile as instructed in the Mitsuba 2 Docs.

Usage

in the build folder, execute dist/mitsuba ../hair_scenes/xxx.xml

Note

  • The paper implements roughhair material and hair,hairsegment shapes. roughcylinder and cylindersegment are only used for comparing with brute-force Monte-Carlo tracing.
  • The paper describes the PDF implementation, but it is disabled by default because of performance issue.
  • Checkout ellipse branch for hair with elliptical cross-sections

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages