home *** CD-ROM | disk | FTP | other *** search
/ Altsys Virtuoso 2.0K / virtuoso_20k.iso / DemoApps / Graphics / Viewers / raytracers / ohta / Source / trace.c < prev   
Encoding:
C/C++ Source or Header  |  1991-10-08  |  377 b   |  26 lines

  1. #include "ray.h"
  2.  
  3. struct color black={0,0,0},white={1.0,1.0,1.0};
  4.  
  5. struct color trace(n,r)
  6. register int n;
  7. struct ray r;
  8. {struct intersect i;
  9.     if(n>=MAXLEVEL)
  10.         return bgcolor(r);
  11.     raycount++;
  12.     i=intersect(r);
  13.     if(i.obj>0)
  14.     {    if(sflag)
  15.             return ((*objects[i.obj].shade)(n,r,i));
  16.         else
  17.             return white;
  18.     }
  19.     else
  20.     {    if(sflag)
  21.             return bgcolor(r);
  22.         else
  23.             return black;
  24.     }
  25. }
  26.