16 |
|
#include "platform.h" |
17 |
|
#include "ranimove.h" |
18 |
|
#include "otypes.h" |
19 |
+ |
#include "otspecial.h" |
20 |
|
#include "source.h" |
21 |
|
#include "random.h" |
22 |
|
|
330 |
|
multp3(ovp, wpos, obj_move[moi].bxfm); |
331 |
|
wpos = ovp; |
332 |
|
} |
333 |
< |
if (viewloc(ovp, &vwprev, wpos) <= 0) |
333 |
> |
if (viewloc(ovp, &vwprev, wpos) != VL_GOOD) |
334 |
|
return; |
335 |
|
xp = (int)(ovp[0]*hres); |
336 |
|
yp = (int)(ovp[1]*vres); |
379 |
|
rayshade(&ir, ir.ro->omod); |
380 |
|
rayparticipate(&ir); |
381 |
|
} |
382 |
< |
copycolor(cbuffer[n], ir.rcol); |
382 |
> |
scolor_rgb(cbuffer[n], ir.rcol); |
383 |
|
zbuffer[n] = ir.rot; |
384 |
|
obuffer[n] = ir.robj; |
385 |
|
abuffer[n] = ADISTANT; |
403 |
|
n = ir.rno; |
404 |
|
} else |
405 |
|
ray_trace(&ir); |
406 |
< |
copycolor(cbuffer[n], ir.rcol); |
406 |
> |
scolor_rgb(cbuffer[n], ir.rcol); |
407 |
|
zbuffer[n] = ir.rot; |
408 |
|
obuffer[n] = ir.robj; |
409 |
|
sbuffer[n] = 1; |
417 |
|
if (nprocs > 1) /* get stragglers */ |
418 |
|
while (ray_presult(&ir, 0)) { |
419 |
|
n = ir.rno; |
420 |
< |
copycolor(cbuffer[n], ir.rcol); |
420 |
> |
scolor_rgb(cbuffer[n], ir.rcol); |
421 |
|
zbuffer[n] = ir.rot; |
422 |
|
obuffer[n] = ir.robj; |
423 |
|
sbuffer[n] = 1; |
424 |
< |
if (ir.rot >= FHUGE) |
424 |
> |
if (ir.rot >= 0.99*FHUGE) |
425 |
|
abuffer[n] = ADISTANT; |
426 |
|
else { |
427 |
|
abuffer[n] = ALOWQ; |