--- ray/src/rt/rview.c 1989/02/02 10:41:39 1.1 +++ ray/src/rt/rview.c 1989/10/25 15:37:19 1.7 @@ -28,13 +28,15 @@ double maxdiff = .15; /* max. sample difference */ double exposure = 1.0; /* exposure for scene */ double dstrsrc = 0.0; /* square source distribution */ +double shadthresh = .1; /* shadow threshold */ +double shadcert = .25; /* shadow certainty */ int maxdepth = 4; /* maximum recursion depth */ double minweight = 1e-2; /* minimum ray weight */ COLOR ambval = BLKCOLOR; /* ambient value */ double ambacc = 0.2; /* ambient accuracy */ -int ambres = 64; /* ambient resolution */ +int ambres = 8; /* ambient resolution */ int ambdiv = 32; /* ambient divisions */ int ambssamp = 0; /* ambient super-samples */ int ambounce = 0; /* ambient bounces */ @@ -66,22 +68,21 @@ int code; devopen(dname) /* open device driver */ char *dname; { - extern char *progname; - char *devargv[3]; + extern char *progname, *octname; + char *id; register int i; + + id = octname!=NULL ? octname : progname; /* check device table */ for (i = 0; devtable[i].name; i++) if (!strcmp(dname, devtable[i].name)) - if ((dev = (*devtable[i].init)(progname)) == NULL) { + if ((dev = (*devtable[i].init)(dname, id)) == NULL) { sprintf(errmsg, "cannot initialize %s", dname); error(USER, errmsg); } else return; /* not there, try exec */ - devargv[0] = dname; - devargv[1] = progname; - devargv[2] = NULL; - if ((dev = comm_init(devargv)) == NULL) { + if ((dev = comm_init(dname, id)) == NULL) { sprintf(errmsg, "cannot start device \"%s\"", dname); error(USER, errmsg); }