203 |
|
if (!(nd.specfl & SP_PURE) && |
204 |
|
specthresh > FTINY && |
205 |
|
(specthresh >= 1.-FTINY || |
206 |
< |
specthresh > nd.rspec)) |
206 |
> |
specthresh + .05 - .1*frandom() > nd.rspec)) |
207 |
|
nd.specfl |= SP_RBLT; |
208 |
|
/* compute reflected ray */ |
209 |
|
for (i = 0; i < 3; i++) |
232 |
|
/* check threshold */ |
233 |
|
if (!(nd.specfl & SP_PURE) && specthresh > FTINY && |
234 |
|
(specthresh >= 1.-FTINY || |
235 |
< |
specthresh > nd.tspec)) |
235 |
> |
specthresh + .05 - .1*frandom() > nd.tspec)) |
236 |
|
nd.specfl |= SP_TBLT; |
237 |
|
if (r->crtype & SHADOW || |
238 |
|
DOT(r->pert,r->pert) <= FTINY*FTINY) { |