| 26 |
|
*/ |
| 27 |
|
#define ambRayInPmap(r) ((r) -> crtype & AMBIENT && photonMapping && \ |
| 28 |
|
(ambounce < 0 || (r) -> rlvl > 1 || \ |
| 29 |
< |
causticPhotonMapping || contribPhotonMapping)) |
| 29 |
> |
causticPhotonMapping || \ |
| 30 |
> |
contribPhotonMapping)) |
| 31 |
|
|
| 32 |
|
/* |
| 33 |
|
Check for paths already accounted for in photon map to avoid |
| 41 |
|
contrib, or dedicated caustic photon map. |
| 42 |
|
*/ |
| 43 |
|
#define shadowRayInPmap(r) ((r) -> crtype & SHADOW && \ |
| 44 |
< |
(ambounce < 0 || ((r) -> crtype & AMBIENT ? \ |
| 45 |
< |
photonMapping : causticPhotonMapping))) |
| 46 |
< |
|
| 44 |
> |
(ambounce < 0 || \ |
| 45 |
> |
((r) -> crtype & AMBIENT \ |
| 46 |
> |
? photonMapping \ |
| 47 |
> |
: causticPhotonMapping || \ |
| 48 |
> |
contribPhotonMapping))) |
| 49 |
> |
|
| 50 |
|
/* Check if scattered ray spawns a caustic photon */ |
| 51 |
|
#define PMAP_CAUSTICRAY(r) ((r) -> rtype & SPECULAR) |
| 52 |
|
|