--- ray/doc/man/man1/rtcontrib.1 2005/06/02 04:47:26 1.7 +++ ray/doc/man/man1/rtcontrib.1 2007/11/17 01:13:50 1.17 @@ -1,4 +1,4 @@ -.\" RCSid "$Id: rtcontrib.1,v 1.7 2005/06/02 04:47:26 greg Exp $" +.\" RCSid "$Id: rtcontrib.1,v 1.17 2007/11/17 01:13:50 greg Exp $" .TH RTCONTRIB 1 5/25/05 RADIANCE .SH NAME rtcontrib - compute contribution coefficients in a RADIANCE scene @@ -7,6 +7,14 @@ rtcontrib - compute contribution coefficients in a RAD [ .B "\-n nprocs" ][ +.B \-V +][ +.B \-c +][ +.B \-fo +| +.B \-r +][ .B "\-e expr" ][ .B "\-f source" @@ -14,8 +22,13 @@ rtcontrib - compute contribution coefficients in a RAD .B "\-o ospec" ][ .B "\-b binv" +][ +.B "\-bn nbins" ] -.B "\-m mod .." +{ +.B "\-m mod | \-M file" +} +.. [ .B $EVAR ] @@ -30,13 +43,49 @@ rtrace options .B "rtcontrib [ options ] \-defaults" .SH DESCRIPTION .I Rtcontrib -computes ray contributions (i.e., color coefficients) +computes ray coefficients for objects whose modifiers are named in one or more .I \-m settings. These modifiers are usually materials associated with light sources or sky domes, and must directly modify some geometric primitives to be considered in the output. +A modifier list may also be read from a file using the +.I \-M +option. +The RAYPATH environment variable determines directories to search for +this file. +(No search takes place if a file name begins with a '.', '/' or '~' +character.)\0 +.PP +By setting the boolean +.I \-V +option, you may instruct +.I rtcontrib +to report the contribution from each material rather than the ray +coefficient. +This is particularly useful for light sources with directional output +distributions, whose value would otherwise be lost in the shuffle. +With the default +.I -V- +setting, the output of rtcontrib is a coefficient that must be multiplied +by the radiance of each material to arrive at a final contribution. +This is more convenient for computing daylight coefficeints, or cases +where the actual radiance is not desired. +Use the +.I -V+ +setting when you wish to simply sum together contributions +(with possible adjustment factors) to obtain a final radiance value. +Combined with the +.I \-i +or +.I \-I +option, irradiance contributions are reported by +.I \-V+ +rather than radiance, and +.I \-V- +coefficients contain an additonal factor of PI. +.PP The output of .I rtcontrib has many potential uses. @@ -48,10 +97,25 @@ More generally, can be used to compute arbitrary input-output relationships in optical systems, such as luminaires, light pipes, and shading devices. .PP +Setting the +.I \-c +option instructs +.I rtcontrib +to accumulate values rather than reporting one record per ray. +With this option, only a single record will be produced at the very +end, corresponding to the sum of all rays given on the input. +This is equivalent to passing all the output records through a program like +.I total(1) +to sum RGB values together, but is much more efficient. +Using this option, it is possible to reverse sampling, sending rays from +a parallel source such as the sun to a diffuse surface, for example. +Care must be taken to perform normalization based on the +radiation density and the number of rays sampled. +.PP .I Rtcontrib calls .I rtrace(1) -with the -oTW option to calculate the daughter ray +with the \-oTW (or \-oTV) option to calculate the daughter ray contributions for each input ray, and the output tallies are sent to one or more destinations according to the given .I \-o @@ -59,7 +123,19 @@ specification. If a destination begins with an exclamation mark ('!'), then a pipe is opened to a command and data is sent to its standard input. Otherwise, the destination is treated as a file. -(An existing file of the same name is clobbered.)\0 +An existing file of the same name will not be clobbered, unless the +.I \-fo +option is given. +If instead the +.I \-r +option is specified, data recovery is attempted on existing files. +(If +.I \-c +is used together with the +.I \-r +option, existing files are read in and new ray evaluations are added +to the previous results, providing a convenient means for +progressive simulation.)\0 If an output specification contains a "%s" format, this will be replaced by the modifier name. The @@ -70,14 +146,29 @@ this will be applied to a "%d" format in the output fi specification if present. The actual bin number is computed at run time based on ray direction and surface intersection, as described below. +If the number of bins is known in advance, it should be specified with the +.I \-bn +option, and this is critical for output files containing multiple values +per record. +Since bin numbers start from 0, the bin count is always equal to +the last bin plus 1. +Set the this value to 0 if the bin count is unknown (the default). The most recent -.I \-b +.I \-b, +.I \-bn and .I \-o options to the left of each .I \-m setting affect only that modifier. -(The ordering of other options is unimportant.)\0 +The ordering of other options is unimportant, except for +.I \-x +and +.I \-y +if the +.I \-c +is present, when they control the resolution string +produced in the corresponding output. .PP If a .I \-b @@ -109,8 +200,6 @@ Unlike will search the RADIANCE library directories for each file given in a .I \-f option. -(No search takes place if a file name begins with a '.', '/' or '~' -character.)\0 .PP If no .I \-o @@ -175,28 +264,28 @@ replaced by the contents of the given file. To compute the proportional contributions from sources modified by "light1" vs. "light2" on a set of illuminance values: .IP "" .2i -rtcontrib -I+ @render.opt -o c_%s.dat -m light1 -m light2 scene.oct < test.dat +rtcontrib \-I+ @render.opt \-o c_%s.dat \-m light1 \-m light2 scene.oct < test.dat .PP To generate a pair of images corresponding to these two lights' contributions: .IP "" .2i -vwrays -ff -x 1024 -y 1024 -vf best.vf | -rtcontrib -ffc `vwrays -d -x 1024 -y 1024 -vf best.vf` -@render.opt -o c_%s.pic -m light1 -m light2 scene.oct +vwrays \-ff \-x 1024 \-y 1024 \-vf best.vf | +rtcontrib \-ffc `vwrays \-d \-x 1024 \-y 1024 \-vf best.vf` +@render.opt \-o c_%s.pic \-m light1 \-m light2 scene.oct .PP These images may then be recombined using the desired outputs of light1 and light2: .IP "" .2i -pcomb -c 100 90 75 c_light1.pic -c 50 55 57 c_light2.pic > combined.pic +pcomb \-c 100 90 75 c_light1.pic \-c 50 55 57 c_light2.pic > combined.pic .PP To compute an array of illuminance contributions according to a Tregenza sky: .IP "" .2i -rtcontrib -b tbin -o sky.dat -m skyglow -b 0 -o ground.dat -m groundglow -@render.opt -f tregenza.cal scene.oct < test.dat +rtcontrib \-I+ \-b tbin \-o sky.dat \-m skyglow \-b 0 \-o ground.dat \-m groundglow +@render.opt \-f tregenza.cal scene.oct < test.dat .SH ENVIRONMENT -RAYPATH path to search for -f files +RAYPATH path to search for \-f and \-M files .SH AUTHOR Greg Ward .SH "SEE ALSO" cnt(1), getinfo(1), pcomb(1), pfilt(1), ra_rgbe(1), -rcalc(1), rpict(1), rtrace(1), vwrays(1), ximage(1) +rcalc(1), rpict(1), rtrace(1), total(1), vwrays(1), ximage(1)