ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/m_bsdf.c
(Generate patch)

Comparing ray/src/rt/m_bsdf.c (file contents):
Revision 2.27 by greg, Tue Feb 24 19:39:26 2015 UTC vs.
Revision 2.30 by greg, Wed Sep 2 18:59:01 2015 UTC

# Line 201 | Line 201 | dir_bsdf(
201                  scalecolor(ctmp, dtmp);
202                  addcolor(cval, ctmp);
203          }
204 +        if (ambRayInPmap(np->pr))
205 +                return;         /* specular already in photon map */
206          /*
207           *  Compute scattering coefficient using BSDF.
208           */
# Line 256 | Line 258 | dir_brdf(
258                  scalecolor(ctmp, dtmp);
259                  addcolor(cval, ctmp);
260          }
261 +        if (ambRayInPmap(np->pr))
262 +                return;         /* specular already in photon map */
263          /*
264           *  Compute reflection coefficient using BSDF.
265           */
# Line 305 | Line 309 | dir_btdf(
309                  scalecolor(ctmp, dtmp);
310                  addcolor(cval, ctmp);
311          }
312 +        if (ambRayInPmap(np->pr))
313 +                return;         /* specular already in photon map */
314          /*
315           *  Compute scattering coefficient using BSDF.
316           */
# Line 465 | Line 471 | m_bsdf(OBJREC *m, RAY *r)
471          }
472                                                  /* check other rays to pass */
473          if (nd.thick != 0 && (!(r->crtype & (SPECULAR|AMBIENT)) ||
474 <                                nd.thick > 0 ^ hitfront)) {
474 >                                (nd.thick > 0) ^ hitfront)) {
475                  raytrans(r);                    /* hide our proxy */
476                  return(1);
477          }
472        
473        /* PMAP: skip ambient ray if accounted for by photon map */
474        if (ambRayInPmap(r))
475           return(1);
476        
478                                                  /* get BSDF data */
479          nd.sd = loadBSDF(m->oargs.sarg[1]);
480                                                  /* diffuse reflectance */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines