64 |
|
|
65 |
|
|
66 |
|
rayvalue(r) /* compute a ray's value */ |
67 |
< |
register RAY *r; |
67 |
> |
RAY *r; |
68 |
|
{ |
69 |
|
extern int (*trace)(); |
70 |
|
|
71 |
|
if (localhit(r, &thescene) || sourcehit(r)) |
72 |
< |
/* check for clipped object */ |
73 |
< |
if (r->clipset != NULL && inset(r->clipset, r->ro->omod)) |
74 |
< |
raytrans(r); |
75 |
< |
else |
76 |
< |
rayshade(r, r->ro->omod); |
72 |
> |
raycont(r); |
73 |
|
|
74 |
|
if (trace != NULL) |
75 |
|
(*trace)(r); /* trace execution */ |
76 |
|
} |
77 |
|
|
78 |
|
|
79 |
+ |
raycont(r) /* check for clipped object and continue */ |
80 |
+ |
register RAY *r; |
81 |
+ |
{ |
82 |
+ |
if (r->clipset != NULL && inset(r->clipset, r->ro->omod)) |
83 |
+ |
raytrans(r); |
84 |
+ |
else |
85 |
+ |
rayshade(r, r->ro->omod); |
86 |
+ |
} |
87 |
+ |
|
88 |
+ |
|
89 |
|
raytrans(r) /* transmit ray as is */ |
90 |
< |
RAY *r; |
90 |
> |
register RAY *r; |
91 |
|
{ |
92 |
|
RAY tr; |
93 |
|
|