| 25 |
|
/* sampling order */ |
| 26 |
|
static int samp_order = 6; |
| 27 |
|
/* super-sampling threshold */ |
| 28 |
< |
const double ssamp_thresh = 0.30; |
| 28 |
> |
static double ssamp_thresh = 0.35; |
| 29 |
|
/* number of super-samples */ |
| 30 |
|
#ifndef NSSAMP |
| 31 |
|
#define NSSAMP 256 |
| 192 |
|
if (funame != NULL) /* need to assign Dx, Dy, Dz? */ |
| 193 |
|
assignD = (fundefined(funame) < 6); |
| 194 |
|
#if (NSSAMP > 0) |
| 195 |
< |
rtrip = (char *)calloc(sqres, 1); /* track sample triggerings */ |
| 195 |
> |
rtrip = (char *)malloc(sqres); /* track sample triggerings */ |
| 196 |
|
ryval = (float *)calloc(sqres, sizeof(float)); |
| 197 |
|
#endif |
| 198 |
|
/* run through directions */ |
| 222 |
|
} |
| 223 |
|
sdv_next.cieY = funvalue(funame, 6, iovec); |
| 224 |
|
} |
| 225 |
+ |
/* |
| 226 |
+ |
* Super-sample when we detect a difference from before |
| 227 |
+ |
* or after in this row, or the previous row in this column. |
| 228 |
+ |
* Also super-sample if the previous neighbors performed |
| 229 |
+ |
* super-sampling, regardless of any differences. |
| 230 |
+ |
*/ |
| 231 |
+ |
memset(rtrip, 0, sqres); |
| 232 |
|
for (oy = 0; oy < sqres; oy++) { |
| 233 |
|
int trip; |
| 234 |
|
bsdf = sdv_next.cieY; /* keeping one step ahead... */ |
| 465 |
|
if (funame != NULL) /* need to assign Dx, Dy, Dz? */ |
| 466 |
|
assignD = (fundefined(funame) < 6); |
| 467 |
|
#if (NSSAMP > 0) |
| 468 |
< |
rtrip = (char *)calloc(sqres, 1); /* track sample triggerings */ |
| 468 |
> |
rtrip = (char *)malloc(sqres); /* track sample triggerings */ |
| 469 |
|
ryval = (float *)calloc(sqres, sizeof(float)); |
| 470 |
|
#endif |
| 471 |
|
/* run through directions */ |
| 494 |
|
} |
| 495 |
|
sdv_next.cieY = funvalue(funame, 6, iovec); |
| 496 |
|
} |
| 497 |
+ |
/* |
| 498 |
+ |
* Super-sample when we detect a difference from before |
| 499 |
+ |
* or after in this row, or the previous row in this column. |
| 500 |
+ |
* Also super-sample if the previous neighbors performed |
| 501 |
+ |
* super-sampling, regardless of any differences. |
| 502 |
+ |
*/ |
| 503 |
+ |
memset(rtrip, 0, sqres); |
| 504 |
|
for (oy = 0; oy < sqres; oy++) { |
| 505 |
|
int trip; |
| 506 |
|
bsdf = sdv_next.cieY; /* keeping one step ahead... */ |
| 807 |
|
goto userr; |
| 808 |
|
} |
| 809 |
|
++eclock; |
| 810 |
+ |
ssamp_thresh *= 0.5; /* lower sampling threshold */ |
| 811 |
|
add_wbsdf("-a", 1); |
| 812 |
|
add_wbsdf(tfmt[single_plane_incident], 1); |
| 813 |
|
if (dofwd) { |