| 23 | 
  | 
 *  sort of context, so it is impossible to simultaneously run | 
| 24 | 
  | 
 *  this library on multiple scenes or in multiple threads. | 
| 25 | 
  | 
 *  You get one scene and one thread, and if you want more, you | 
| 26 | 
< | 
 *  will have to go with the process model used by the programs | 
| 27 | 
< | 
 *  gen/mkillum, hd/rholo, and px/pinterp.  Finally, unrecoverable | 
| 28 | 
< | 
 *  errors result in a call to the application-defined function | 
| 29 | 
< | 
 *  quit().  The usual thing to do is to call exit(). | 
| 26 | 
> | 
 *  will have to go with the process model defined in raypcalls.c. | 
| 27 | 
> | 
 *  Finally, unrecoverable errors result in a call to the application- | 
| 28 | 
> | 
 *  defined function quit().  The usual thing to do is to call exit(). | 
| 29 | 
  | 
 *  You might want to do something else instead, like | 
| 30 | 
  | 
 *  call setjmp()/longjmp() to bring you back to the calling | 
| 31 | 
  | 
 *  function for recovery.  You may also wish to define your own | 
| 178 | 
  | 
        RAY     *r | 
| 179 | 
  | 
) | 
| 180 | 
  | 
{ | 
| 181 | 
< | 
        rayorigin(r, NULL, PRIMARY, 1.0); | 
| 182 | 
< | 
        samplendx++; | 
| 181 | 
> | 
        rayorigin(r, PRIMARY, NULL, NULL); | 
| 182 | 
> | 
        samplendx = rand_samp ? random() : samplendx+1; | 
| 183 | 
  | 
        rayvalue(r);            /* assumes origin and direction are set */ | 
| 184 | 
  | 
} | 
| 185 | 
  | 
 | 
| 362 | 
  | 
        memset(rp->ambfile, '\0', sizeof(rp->ambfile)); | 
| 363 | 
  | 
        rp->ambvwt = 0; | 
| 364 | 
  | 
        rp->ambres = 256; | 
| 365 | 
< | 
        rp->ambacc = 0.1; | 
| 365 | 
> | 
        rp->ambacc = 0.15; | 
| 366 | 
  | 
        rp->ambdiv = 1024; | 
| 367 | 
  | 
        rp->ambssamp = 512; | 
| 368 | 
  | 
        rp->ambounce = 0; |