wahn/rs_pbrt

CreateTranslucentMaterial

wahn opened this issue · 1 comments

wahn commented

The barcelona-pavilion test scene contains translucent materials:

> rg translucent
geometry.pbrt
144:                        "string type" [ "translucent" ] 
176:                        "string type" [ "translucent" ] 
208:                        "string type" [ "translucent" ] 
307:                            "string type" [ "translucent" ] 
341:                            "string type" [ "translucent" ] 

Currently we don't handle those:

> ~/git/github/rs_pbrt/target/release/examples/parse_pbrt_file -i pavilion-day_no_exrs.pbrt
pbrt version 0.5.1 [Detected 8 cores]
Copyright (c) 2016-2019 Jan Douglas Bert Walter.
...
Number of comment line(s):   4
Number of parameter line(s): 117
Number of empty line(s):     19
Texture "Betula_pendula_tr_06_co2_color" being redefined
Texture "Betula_pendula_tr_06_di3_bump" being redefined
Texture "Betula_pendula_tr_06_sp2_specular" being redefined
Texture "Betula_pendula_tr_03_co_color" being redefined
Texture "Betula_pendula_tr_03_di_bump" being redefined
Texture "Betula_pendula_tr_03_sp_specular" being redefined
Texture "Betula_pendula_tr_03_co_color" being redefined
Texture "Betula_pendula_tr_03_di_bump" being redefined
Texture "Betula_pendula_tr_03_sp_specular" being redefined
TODO: CreateTranslucentMaterial
TODO: CreateTranslucentMaterial
TODO: CreateTranslucentMaterial
TODO: CreateTranslucentMaterial
TODO: CreateTranslucentMaterial
...
wahn commented

Seems to work:

pavilion-day

It's not a 100% match, but good enough for now:

diff

> imf_diff -d -f pbrt_rust.exr pavilion-day.exr diff.jpg
differing pixels:	  7.200% (97918 of 1360000)
average difference:	  4.914%
maximum difference:	 86.603%
Summary: Many pixels differ strongly.
== "pbrt_rust.exr" and "pavilion-day.exr" are different