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

Comparing ray/src/rt/virtuals.c (file contents):
Revision 1.23 by greg, Tue Aug 13 12:16:43 1991 UTC vs.
Revision 1.26 by greg, Mon Aug 26 10:10:43 1991 UTC

# Line 287 | Line 287 | register int  sn;      /* target source number */
287          getplaneq(onorm, o);
288                                  /* set number of rays to sample */
289          if (source[sn].sflags & SDISTANT) {
290 <                n = 4.*or2/(thescene.cusize*thescene.cusize)*vspretest + .5;
290 >                                        /* 32. == heuristic constant */
291 >                n = 32.*or2/(thescene.cusize*thescene.cusize)*vspretest + .5;
292                  infront = DOT(onorm, source[sn].sloc) > 0.;
293          } else {
294                  for (i = 0; i < 3; i++)
# Line 318 | Line 319 | register int  sn;      /* target source number */
319   #endif
320                                  return(f);      /* too small a target! */
321                          }
322 <                        peano(offsdir, 3, urand(931*i+5827+ssn), .005);
322 >                        multisamp(offsdir, 3, urand(sn*931+5827+ssn));
323                          for (i = 0; i < 3; i++)
324                                  offsdir[i] = or*(1. - 2.*offsdir[i]);
325                          ssn++;
# Line 348 | Line 349 | register int  sn;      /* target source number */
349                  nok++;
350                                          /* check against obstructions */
351                  rayclear(&sr);
352 <                sr.revf = raytrace;
352 <                rayvalue(&sr);
353 <                if (bright(sr.rcol) > FTINY)
352 >                if (!localhit(&sr, &thescene) || sr.ro == source[sn].so)
353                          nhit++;
354                  if (nhit > 0 && nhit < nok) {
355   #ifdef DEBUG

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines