| 143 |
|
*/ |
| 144 |
|
/* roughness + source */ |
| 145 |
|
au2 = av2 = omega / PI; |
| 146 |
< |
au2 += .25 * np->u_alpha2; |
| 147 |
< |
av2 += .25 * np->v_alpha2; |
| 146 |
> |
au2 += np->u_alpha2; |
| 147 |
> |
av2 += np->v_alpha2; |
| 148 |
|
/* "half vector" */ |
| 149 |
|
h[0] = ldir[0] - np->prdir[0]; |
| 150 |
|
h[1] = ldir[1] - np->prdir[1]; |
| 253 |
|
VCOPY(nd.prdir, r->rdir); |
| 254 |
|
} else { |
| 255 |
|
for (i = 0; i < 3; i++) /* perturb */ |
| 256 |
< |
nd.prdir[i] = r->rdir[i] - |
| 257 |
< |
0.5*r->pert[i]; |
| 256 |
> |
nd.prdir[i] = r->rdir[i] - r->pert[i]; |
| 257 |
|
if (DOT(nd.prdir, r->ron) < -FTINY) |
| 258 |
|
normalize(nd.prdir); /* OK */ |
| 259 |
|
else |