--- ray/src/hd/rhdisp3.c 2018/10/05 19:19:16 3.18 +++ ray/src/hd/rhdisp3.c 2020/05/14 20:58:03 3.20 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: rhdisp3.c,v 3.18 2018/10/05 19:19:16 greg Exp $"; +static const char RCSid[] = "$Id: rhdisp3.c,v 3.20 2020/05/14 20:58:03 greg Exp $"; #endif /* * Holodeck beam support for display process @@ -37,7 +37,7 @@ int bi; pf[i] = 0.5*(cp[0][i] + cp[2][i]); sf2 = 0.25*dist2(cp[0], cp[2]); /* compute half diagonal length */ for (i = 0; i < 4; i++) { /* compute visible quad */ - if (viewloc(ip[i], vp, cp[i]) <= 0) { + if (viewloc(ip[i], vp, cp[i]) != VL_GOOD) { af = 0; goto getback; } @@ -63,7 +63,7 @@ getback: pb[i] = 0.5*(cp[0][i] + cp[2][i]); sb2 = 0.25*dist2(cp[0], cp[2]); /* compute half diagonal length */ for (i = 0; i < 4; i++) { /* compute visible quad */ - if (viewloc(ip[i], &vrev, cp[i]) <= 0) { + if (viewloc(ip[i], &vrev, cp[i]) != VL_GOOD) { ab = 0; goto finish; } @@ -172,7 +172,7 @@ char *dp; return(0); #endif d = hdinter(gc2, NULL, &t, hp, orig, ld); - if (d >= FHUGE || t <= 0.) + if (d >= FHUGE*.99 || t <= 0.) return(0); return((*vf)(gc2+1, dp)); /* visit it */ }