knightcrawler25 / GLSL-PathTracer

A toy physically based GPU path tracer (C++/OpenGL/GLSL)
MIT License
1.87k stars 176 forks source link

Furnace test fails when specTrans ~ 0.5 #78

Closed knightcrawler25 closed 1 year ago

knightcrawler25 commented 1 year ago

specTrans ~ 0.5 causes furnace test to fail when a high ray depth is used (>10 bounces)

furnace.zip

box

A nice discussion on handling back faces: https://groups.google.com/a/arnoldrenderer.com/g/standard.surface/c/9agBPBEkMV4

Mitsuba 3 disables sampling of diffuse/clearcoat/sheen for the interior to overcome a similar issue (https://github.com/mmp/pbrt-v3/issues/313) but loses energy and ends up darker.

furnace_mitsuba.zip

Mitsuba 3 (Allowed sampling all lobes for interior):

box_new

Mitsuba 3 (Original repo):

box

Cycles does not suffer from the same issue: Cycles.zip

Cycles