| 58 |
|
/* Handle precedence in case of multiple photon maps: contrib > caustic */ |
| 59 |
|
PhotonMap *pmap = contribPhotonMapping ? contribPmap : causticPmap; |
| 60 |
|
|
| 61 |
< |
/* Get caustic photon density estimate only at primary rays */ |
| 62 |
< |
if (pmap && (!rdepth || (!globalPmap & !contribPmap & !preCompPmap |
| 63 |
< |
&& r->crtype & AMBIENT))) { |
| 61 |
> |
/* Get caustic photon density estimate at primary rays or when |
| 62 |
> |
* filling in ambient rays that have no global photon map to use */ |
| 63 |
> |
if (pmap && (!rdepth || !globalPmap & !contribPmap & !preCompPmap)) { |
| 64 |
|
/* Temporarily factor ambient value into ray coefficient |
| 65 |
|
* (required for contribution photon map) */ |
| 66 |
|
copycolor(rcoef, r -> rcoef); |