--- ray/src/util/rad.c 2021/01/21 21:36:28 2.128 +++ ray/src/util/rad.c 2023/11/16 23:37:29 2.132 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: rad.c,v 2.128 2021/01/21 21:36:28 greg Exp $"; +static const char RCSid[] = "$Id: rad.c,v 2.132 2023/11/16 23:37:29 greg Exp $"; #endif /* * Executive program for oconv, rpict and pfilt @@ -64,7 +64,7 @@ static const char RCSid[] = "$Id: rad.c,v 2.128 2021/0 int NVARS = 31; VARIABLE vv[] = { /* variable-value pairs */ - {"AMBFILE", 3, 0, NULL, onevalue}, + {"AMBFILE", 3, 0, NULL, strvalue}, {"DETAIL", 3, 0, NULL, qualvalue}, {"EXPOSURE", 3, 0, NULL, fltvalue}, {"EYESEP", 3, 0, NULL, fltvalue}, @@ -75,15 +75,15 @@ VARIABLE vv[] = { /* variable-value pairs */ {"mkpmap", 3, 0, NULL, catvalues}, {"objects", 3, 0, NULL, catvalues}, {"oconv", 3, 0, NULL, catvalues}, - {"OCTREE", 3, 0, NULL, onevalue}, - {"OPTFILE", 3, 0, NULL, onevalue}, - {"PCMAP", 2, 0, NULL, onevalue}, + {"OCTREE", 3, 0, NULL, strvalue}, + {"OPTFILE", 3, 0, NULL, strvalue}, + {"PCMAP", 2, 0, NULL, strvalue}, {"PENUMBRAS", 3, 0, NULL, boolvalue}, {"pfilt", 2, 0, NULL, catvalues}, - {"PGMAP", 2, 0, NULL, onevalue}, - {"PICTURE", 3, 0, NULL, onevalue}, + {"PGMAP", 2, 0, NULL, strvalue}, + {"PICTURE", 3, 0, NULL, strvalue}, {"QUALITY", 3, 0, NULL, qualvalue}, - {"RAWFILE", 3, 0, NULL, onevalue}, + {"RAWFILE", 3, 0, NULL, strvalue}, {"render", 3, 0, NULL, catvalues}, {"REPORT", 3, 0, NULL, onevalue}, {"RESOLUTION", 3, 0, NULL, onevalue}, @@ -93,7 +93,7 @@ VARIABLE vv[] = { /* variable-value pairs */ {"UP", 2, 0, NULL, onevalue}, {"VARIABILITY", 3, 0, NULL, qualvalue}, {"view", 2, 0, NULL, NULL}, - {"ZFILE", 2, 0, NULL, onevalue}, + {"ZFILE", 2, 0, NULL, strvalue}, {"ZONE", 2, 0, NULL, onevalue}, }; @@ -242,12 +242,18 @@ main( /* load variable values */ loadvars(rifname); /* get any additional assignments */ - for (i++; i < argc; i++) - if (setvariable(argv[i], matchvar) < 0) { - fprintf(stderr, "%s: unknown variable: %s\n", + for (i++; i < argc; i++) { + int rv = setvariable(argv[i], matchvar); + if (rv < 0) { + fprintf(stderr, "%s: unknown setting: %s\n", progname, argv[i]); quit(1); } + if (!rv) + fprintf(stderr, + "%s: bad variable assignment: %s (ignored)\n", + progname, argv[i]); + } /* check assignments */ checkvalues(); /* check files and dates */ @@ -924,7 +930,7 @@ lowqopts( /* low quality rendering options */ d = ambval(); sprintf(op, " -av %.2g %.2g %.2g", d, d, d); op += strlen(op); - op = addarg(op, "-lr 6 -lw .003"); + op = addarg(op, "-lr 6 -lw .001"); } @@ -1078,7 +1084,7 @@ hiqopts( /* high quality rendering options */ d = ambval(); sprintf(op, " -av %.2g %.2g %.2g", d, d, d); op += strlen(op); - op = addarg(op, "-lr 12 -lw 1e-5"); + op = addarg(op, "-lr 12 -lw 5e-6"); } @@ -1607,8 +1613,8 @@ rpict( /* run rpict and pfilt for each view */ } else { if (overture) { /* run overture calculation */ sprintf(combuf, - "%s%s %s%s -x 64 -y 64 -ps 1 %s > %s", - c_rpict, rep, vw, opts, + "%s%s %s%s%s -x 64 -y 64 -ps 1 %s > %s", + c_rpict, rep, vw, opts, po, oct1name, overfile); if (!do_rpiece || !next_process(0)) { if (runcom(combuf)) {