star-gf

Compute Gebhart factors
git clone git://git.meso-star.fr/star-gf.git
Log | Files | Refs | README | LICENSE

commit 385712a6f0fe3098deb9c78217eb479f7b962908
parent e06d3e5e9c3ed748172bbd14eb5f2e7101ac5b01
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Wed, 16 Sep 2015 09:45:28 +0200

Identify a scene primitive with a scene space identifier

If a scene includes several shapes, a same primitive identifier may
reference several primitives while each primitive must be uniquely
defined.

Diffstat:
Msrc/sgf.c | 16++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/sgf.c b/src/sgf.c @@ -127,15 +127,15 @@ gebhart_radiative_path f3_add(pos, vec0, pos); prim = hit.prim; - /* Fetch material property. TODO fix the use of the prim_id */ - emissivity = ctx->get_material_property - (ctx->material, SGF_MATERIAL_EMISSIVITY, prim.prim_id, ispectral_band); - specularity = ctx->get_material_property - (ctx->material, SGF_MATERIAL_SPECULARITY, prim.prim_id, ispectral_band); - reflectivity = ctx->get_material_property - (ctx->material, SGF_MATERIAL_REFLECTIVITY, prim.prim_id, ispectral_band); + /* Fetch material property */ + emissivity = ctx->get_material_property(ctx->material, + SGF_MATERIAL_EMISSIVITY, prim.scene_prim_id, ispectral_band); + specularity = ctx->get_material_property(ctx->material, + SGF_MATERIAL_SPECULARITY, prim.scene_prim_id, ispectral_band); + reflectivity = ctx->get_material_property(ctx->material, + SGF_MATERIAL_REFLECTIVITY, prim.scene_prim_id, ispectral_band); - gebfac = result + prim.prim_id * ctx->spectral_bands_count; + gebfac = result + prim.scene_prim_id * ctx->spectral_bands_count; if(transmissivity > trans_min) { const double weight = transmissivity * emissivity; #ifndef NDEBUG