| 1 | 
greg | 
1.1 | 
.\" RCSid "$Id" | 
| 2 | 
  | 
  | 
.TH RANIMATE 1 6/24/98 RADIANCE | 
| 3 | 
  | 
  | 
.SH NAME | 
| 4 | 
  | 
  | 
ranimate - compute a RADIANCE animation | 
| 5 | 
  | 
  | 
.SH SYNOPSIS | 
| 6 | 
  | 
  | 
.B ranimate | 
| 7 | 
  | 
  | 
[ | 
| 8 | 
  | 
  | 
.B \-s | 
| 9 | 
  | 
  | 
][ | 
| 10 | 
  | 
  | 
.B \-n | 
| 11 | 
  | 
  | 
][ | 
| 12 | 
  | 
  | 
.B \-e | 
| 13 | 
  | 
  | 
][ | 
| 14 | 
  | 
  | 
.B \-w | 
| 15 | 
  | 
  | 
] | 
| 16 | 
  | 
  | 
.B ranfile | 
| 17 | 
  | 
  | 
.SH DESCRIPTION | 
| 18 | 
  | 
  | 
.I Ranimate | 
| 19 | 
  | 
  | 
is an executive program that reads the given | 
| 20 | 
  | 
  | 
.I ranfile | 
| 21 | 
  | 
  | 
and makes appropriate calls to | 
| 22 | 
  | 
  | 
.I rad(1), | 
| 23 | 
  | 
  | 
.I rpict(1), | 
| 24 | 
  | 
  | 
.I pinterp(1), | 
| 25 | 
  | 
  | 
and/or | 
| 26 | 
  | 
  | 
.I pfilt(1) | 
| 27 | 
  | 
  | 
to render an animation. | 
| 28 | 
  | 
  | 
Variables in | 
| 29 | 
  | 
  | 
.I ranfile | 
| 30 | 
  | 
  | 
indicate input files, process servers (execution hosts), output | 
| 31 | 
  | 
  | 
directories and file names, and various other controls and options. | 
| 32 | 
  | 
  | 
.PP | 
| 33 | 
  | 
  | 
Normally, commands are echoed to the standard output as they are | 
| 34 | 
  | 
  | 
executed. | 
| 35 | 
  | 
  | 
The | 
| 36 | 
  | 
  | 
.I \-s | 
| 37 | 
  | 
  | 
option tells | 
| 38 | 
  | 
  | 
.I ranimate | 
| 39 | 
  | 
  | 
to do its work silently. | 
| 40 | 
  | 
  | 
The | 
| 41 | 
  | 
  | 
.I \-n | 
| 42 | 
  | 
  | 
option tells | 
| 43 | 
  | 
  | 
.I ranimate | 
| 44 | 
  | 
  | 
not to take any action (ie. not to actually execute any commands). | 
| 45 | 
  | 
  | 
The | 
| 46 | 
  | 
  | 
.I \-e | 
| 47 | 
  | 
  | 
option tells | 
| 48 | 
  | 
  | 
.I ranimate | 
| 49 | 
  | 
  | 
to explicate all variables used for the animation, including | 
| 50 | 
  | 
  | 
default values not specified in the input file, and print them on | 
| 51 | 
  | 
  | 
the standard output. | 
| 52 | 
  | 
  | 
.PP | 
| 53 | 
  | 
  | 
The | 
| 54 | 
  | 
  | 
.I \-w | 
| 55 | 
  | 
  | 
option turns off warnings about multiply and misassigned variables. | 
| 56 | 
  | 
  | 
.PP | 
| 57 | 
  | 
  | 
Normally, | 
| 58 | 
  | 
  | 
.I ranimate | 
| 59 | 
  | 
  | 
will produce one animation frame for each view given in the specified | 
| 60 | 
  | 
  | 
view file. | 
| 61 | 
  | 
  | 
If an animation has ended or been killed in an incomplete state, however, | 
| 62 | 
  | 
  | 
.I ranimate | 
| 63 | 
  | 
  | 
will attempt to pick up where the earlier process left off. | 
| 64 | 
  | 
  | 
If the process is still running, or was started on another machine, | 
| 65 | 
  | 
  | 
.I ranimate | 
| 66 | 
  | 
  | 
will report this information and exit. | 
| 67 | 
  | 
  | 
.PP | 
| 68 | 
  | 
  | 
Animation variable assignments appear one per line in | 
| 69 | 
  | 
  | 
.I ranfile. | 
| 70 | 
  | 
  | 
The name of the variable is followed by an equals sign | 
| 71 | 
  | 
  | 
('=') and its value(s). | 
| 72 | 
  | 
  | 
The end of line may be escaped with a backslash ('\\'), though it is | 
| 73 | 
  | 
  | 
not usually necessary since additional variable values may be given | 
| 74 | 
  | 
  | 
in multiple assignments. | 
| 75 | 
  | 
  | 
Variables that should have only one value are given in upper case. | 
| 76 | 
  | 
  | 
Variables that may have multiple values are given in lower case. | 
| 77 | 
  | 
  | 
Variables may be abbreviated by their first three letters, except | 
| 78 | 
  | 
  | 
for "host", which must have all four. | 
| 79 | 
  | 
  | 
Comments in | 
| 80 | 
  | 
  | 
.I ranfile | 
| 81 | 
  | 
  | 
start with a pound sign ('#') and proceed to the end of line. | 
| 82 | 
  | 
  | 
.PP | 
| 83 | 
  | 
  | 
The animation variables, their interpretations and default values | 
| 84 | 
  | 
  | 
are given below. | 
| 85 | 
  | 
  | 
.TP 10n | 
| 86 | 
  | 
  | 
.BR DIRECTORY | 
| 87 | 
  | 
  | 
The name of the animation directory. | 
| 88 | 
  | 
  | 
All temporary files generated during the animation will be placed in | 
| 89 | 
  | 
  | 
this directory, which will be created by | 
| 90 | 
  | 
  | 
.I ranimate | 
| 91 | 
  | 
  | 
if it does not exist. | 
| 92 | 
  | 
  | 
A file named "STATUS" will also be created there, and will contain current | 
| 93 | 
  | 
  | 
information about the animation process. | 
| 94 | 
  | 
  | 
This variable has no default value, and its setting is required. | 
| 95 | 
  | 
  | 
.TP | 
| 96 | 
  | 
  | 
.BR OCTREE | 
| 97 | 
  | 
  | 
The name of the octree file for a static scene walk-through | 
| 98 | 
  | 
  | 
animation. | 
| 99 | 
  | 
  | 
There is no default value for this variable, and any | 
| 100 | 
  | 
  | 
setting will be ignored if the | 
| 101 | 
  | 
  | 
.I ANIMATE | 
| 102 | 
  | 
  | 
variable is also set (see below). | 
| 103 | 
  | 
  | 
.TP | 
| 104 | 
  | 
  | 
.BR ANIMATE | 
| 105 | 
  | 
  | 
The scene generation command for a dynamic animation. | 
| 106 | 
  | 
  | 
This command, if given, will be executed with the frame number as the | 
| 107 | 
  | 
  | 
final argument, and on its standard output it must produce | 
| 108 | 
  | 
  | 
the complete octree for that frame. | 
| 109 | 
  | 
  | 
Care must be taken that this command does not create any temporary files | 
| 110 | 
  | 
  | 
that might collide with same-named files created by other | 
| 111 | 
  | 
  | 
animation commands running in parallel. | 
| 112 | 
  | 
  | 
Also, the command should produce no output to the standard error, unless | 
| 113 | 
  | 
  | 
there is a fatal condition. | 
| 114 | 
  | 
  | 
(I.e., switch all warnings off; | 
| 115 | 
  | 
  | 
see the BUGS section, below.)\0 | 
| 116 | 
  | 
  | 
There is no default animation command, and either this variable or the | 
| 117 | 
  | 
  | 
.I OCTREE | 
| 118 | 
  | 
  | 
variable must be set. | 
| 119 | 
  | 
  | 
.TP | 
| 120 | 
  | 
  | 
.BR VIEWFILE | 
| 121 | 
  | 
  | 
This variable names a file from which | 
| 122 | 
  | 
  | 
.I ranimate | 
| 123 | 
  | 
  | 
may extract the view for each frame in the animation. | 
| 124 | 
  | 
  | 
This file should contain one valid view per frame, starting with | 
| 125 | 
  | 
  | 
frame 1 on line 1, regardless of the setting of the | 
| 126 | 
  | 
  | 
.I START | 
| 127 | 
  | 
  | 
variable. | 
| 128 | 
  | 
  | 
An exception is made for a view file with only a single view, which | 
| 129 | 
  | 
  | 
is used for every frame of a dynamic scene animation. | 
| 130 | 
  | 
  | 
This variable is required, and there is no default value. | 
| 131 | 
  | 
  | 
.TP | 
| 132 | 
  | 
  | 
.BR START | 
| 133 | 
  | 
  | 
The initial frame number in this animation sequence. | 
| 134 | 
  | 
  | 
The minimum value is 1, and if a later starting frame is given, | 
| 135 | 
  | 
  | 
.I ranimate | 
| 136 | 
  | 
  | 
assumes that the earlier frames are included in some other | 
| 137 | 
  | 
  | 
.I ranfile, | 
| 138 | 
  | 
  | 
which has been previously executed. | 
| 139 | 
  | 
  | 
(See the | 
| 140 | 
  | 
  | 
.I NEXTANIM | 
| 141 | 
  | 
  | 
variable, below.)\0 | 
| 142 | 
  | 
  | 
The default value is 1. | 
| 143 | 
  | 
  | 
.TP | 
| 144 | 
  | 
  | 
.BR END | 
| 145 | 
  | 
  | 
The final frame number in this sequence. | 
| 146 | 
  | 
  | 
The minimum value is equal to the | 
| 147 | 
  | 
  | 
.I START | 
| 148 | 
  | 
  | 
frame, | 
| 149 | 
  | 
  | 
and the default value is computed from the number of views in the | 
| 150 | 
  | 
  | 
given | 
| 151 | 
  | 
  | 
.I VIEWFILE. | 
| 152 | 
  | 
  | 
.TP | 
| 153 | 
  | 
  | 
.BR EXPOSURE | 
| 154 | 
  | 
  | 
This variable tells | 
| 155 | 
  | 
  | 
.I ranimate | 
| 156 | 
  | 
  | 
how to adjust the exposure for each frame. | 
| 157 | 
  | 
  | 
As in | 
| 158 | 
  | 
  | 
.I pfilt, | 
| 159 | 
  | 
  | 
the exposure setting may be given either as a multiplier or as a | 
| 160 | 
  | 
  | 
number of f-stop adjustments (eg. +2 or -1.5). | 
| 161 | 
  | 
  | 
Alternatively, a file name may be given, which | 
| 162 | 
  | 
  | 
.I ranimate | 
| 163 | 
  | 
  | 
will interpret as having one exposure value per line per frame, | 
| 164 | 
  | 
  | 
beginning with frame 1 at line 1. | 
| 165 | 
  | 
  | 
(See also the | 
| 166 | 
  | 
  | 
.I VIEWFILE | 
| 167 | 
  | 
  | 
variable, above.)\0 | 
| 168 | 
  | 
  | 
There is no default value for this variable. | 
| 169 | 
  | 
  | 
If it is not given, an average level will be computed by | 
| 170 | 
  | 
  | 
.I pfilt | 
| 171 | 
  | 
  | 
for each frame. | 
| 172 | 
  | 
  | 
.TP | 
| 173 | 
  | 
  | 
.BR BASENAME | 
| 174 | 
  | 
  | 
The base output file name for the final frames. | 
| 175 | 
  | 
  | 
This string will be passed to the | 
| 176 | 
  | 
  | 
.I \-o | 
| 177 | 
  | 
  | 
and | 
| 178 | 
  | 
  | 
.I \-z | 
| 179 | 
  | 
  | 
options of rpict, along with appropriate suffixes, | 
| 180 | 
  | 
  | 
and thus should contain a | 
| 181 | 
  | 
  | 
.I printf(3) | 
| 182 | 
  | 
  | 
style integer field to distinguish one frame number from another. | 
| 183 | 
  | 
  | 
The final frames will use this name with a ".pic" suffix. | 
| 184 | 
  | 
  | 
The default value is the assigned | 
| 185 | 
  | 
  | 
.I DIRECTORY | 
| 186 | 
  | 
  | 
followed by "/frame%03d". | 
| 187 | 
  | 
  | 
.TP | 
| 188 | 
  | 
  | 
.BR host | 
| 189 | 
  | 
  | 
A host to use for command execution. | 
| 190 | 
  | 
  | 
This variable may be assigned a host name, followed by an optional | 
| 191 | 
  | 
  | 
number of parallel processes, followed by an optional | 
| 192 | 
  | 
  | 
directory (relative to the user's home directory on that machine), | 
| 193 | 
  | 
  | 
followed by an alternate user name. | 
| 194 | 
  | 
  | 
Multiple | 
| 195 | 
  | 
  | 
.I host | 
| 196 | 
  | 
  | 
assignments may appear. | 
| 197 | 
  | 
  | 
It is not advisable to specify more than one process on a single-CPU | 
| 198 | 
  | 
  | 
host, as this just tends to slow things down. | 
| 199 | 
  | 
  | 
The default value is "localhost", which starts a single process in | 
| 200 | 
  | 
  | 
the current directory of the local machine. | 
| 201 | 
  | 
  | 
.TP | 
| 202 | 
  | 
  | 
.BR RIF | 
| 203 | 
  | 
  | 
This variable specifies a | 
| 204 | 
  | 
  | 
.I rad | 
| 205 | 
  | 
  | 
input file to use as a source of rendering options and other | 
| 206 | 
  | 
  | 
variable settings. | 
| 207 | 
  | 
  | 
If given, | 
| 208 | 
  | 
  | 
.I ranimate | 
| 209 | 
  | 
  | 
will execute | 
| 210 | 
  | 
  | 
.I rad | 
| 211 | 
  | 
  | 
and create an options file to later pass to | 
| 212 | 
  | 
  | 
.I rpict | 
| 213 | 
  | 
  | 
or | 
| 214 | 
  | 
  | 
.I rtrace. | 
| 215 | 
  | 
  | 
Besides prepending the | 
| 216 | 
  | 
  | 
.I render | 
| 217 | 
  | 
  | 
variable, | 
| 218 | 
  | 
  | 
.I ranimate | 
| 219 | 
  | 
  | 
will also extract default settings for the common variables: | 
| 220 | 
  | 
  | 
.I OCTREE, | 
| 221 | 
  | 
  | 
.I RESOLUTION, | 
| 222 | 
  | 
  | 
.I EXPOSURE | 
| 223 | 
  | 
  | 
and | 
| 224 | 
  | 
  | 
.I pfilt. | 
| 225 | 
  | 
  | 
Following the file name, overriding variable settings may be given, | 
| 226 | 
  | 
  | 
which will be passed to | 
| 227 | 
  | 
  | 
.I rad | 
| 228 | 
  | 
  | 
on the command line. | 
| 229 | 
  | 
  | 
Settings with spaces in them should be enclosed in quotes. | 
| 230 | 
  | 
  | 
The execution of | 
| 231 | 
  | 
  | 
.I rad | 
| 232 | 
  | 
  | 
will also update the contents of the octree, if necessary. | 
| 233 | 
  | 
  | 
There is no default value for this variable. | 
| 234 | 
  | 
  | 
.TP | 
| 235 | 
  | 
  | 
.BR DISKSPACE | 
| 236 | 
  | 
  | 
Specify the amount of disk space (in megabytes) available on the | 
| 237 | 
  | 
  | 
destination file system for temporary file storage. | 
| 238 | 
  | 
  | 
.I Ranimate | 
| 239 | 
  | 
  | 
will coordinate its batch operations based on this amount of storage, | 
| 240 | 
  | 
  | 
assuming that there is either enough additional space for all the | 
| 241 | 
  | 
  | 
final frames, or that the given | 
| 242 | 
  | 
  | 
.I TRANSFER | 
| 243 | 
  | 
  | 
command will move the finished frames to some other location (see | 
| 244 | 
  | 
  | 
below). | 
| 245 | 
  | 
  | 
The default value is 100 megabytes. | 
| 246 | 
  | 
  | 
.TP | 
| 247 | 
  | 
  | 
.BR ARCHIVE | 
| 248 | 
  | 
  | 
After each batch rendering is finished and checked for completeness, | 
| 249 | 
  | 
  | 
.I ranimate | 
| 250 | 
  | 
  | 
will execute the given command, passing the names of all the | 
| 251 | 
  | 
  | 
original pictures and z-buffer files generated by | 
| 252 | 
  | 
  | 
.I rpict. | 
| 253 | 
  | 
  | 
(The command is executed in the destination directory, and file names | 
| 254 | 
  | 
  | 
will be simple.)\0 | 
| 255 | 
  | 
  | 
Normally, the archive command copies the original files to a tape device | 
| 256 | 
  | 
  | 
or somewhere that they can be retrieved in the event of failure in | 
| 257 | 
  | 
  | 
the frame interpolation stages. | 
| 258 | 
  | 
  | 
After the archive command has successfully completed, the original | 
| 259 | 
  | 
  | 
renderings are removed. | 
| 260 | 
  | 
  | 
There is no default value for this variable, meaning that the | 
| 261 | 
  | 
  | 
original unfiltered frames will simply be removed. | 
| 262 | 
  | 
  | 
Note that the last one or two rendered frames may not be copied, archived | 
| 263 | 
  | 
  | 
or removed in case there is a another sequence picking up where this | 
| 264 | 
  | 
  | 
one left off. | 
| 265 | 
  | 
  | 
.TP | 
| 266 | 
  | 
  | 
.BR TRANSFER | 
| 267 | 
  | 
  | 
The command to transfer the completed animation frames. | 
| 268 | 
  | 
  | 
The shell changes to the destination directory and appends | 
| 269 | 
  | 
  | 
the names of all the finished frames to this command | 
| 270 | 
  | 
  | 
before it is executed. | 
| 271 | 
  | 
  | 
Normally, the transfer command does something such as convert the | 
| 272 | 
  | 
  | 
frames to another format and/or copy them to tape or some other | 
| 273 | 
  | 
  | 
destination device before removing them. | 
| 274 | 
  | 
  | 
If this variable is not given, the final frames are left where they | 
| 275 | 
  | 
  | 
are. | 
| 276 | 
  | 
  | 
(See | 
| 277 | 
  | 
  | 
.I BASENAME, | 
| 278 | 
  | 
  | 
above.)\0 | 
| 279 | 
  | 
  | 
.TP | 
| 280 | 
  | 
  | 
.BR RSH | 
| 281 | 
  | 
  | 
The command to use instead of | 
| 282 | 
  | 
  | 
.I rsh(1) | 
| 283 | 
  | 
  | 
to execute commands remotely on another machine. | 
| 284 | 
  | 
  | 
The arguments and behavior of this program must be identical to the UNIX | 
| 285 | 
  | 
  | 
.I rsh | 
| 286 | 
  | 
  | 
command, except that the | 
| 287 | 
  | 
  | 
.I -l | 
| 288 | 
  | 
  | 
option will always be used to specify an alternate user name rather than the | 
| 289 | 
  | 
  | 
.I "user@host" | 
| 290 | 
  | 
  | 
convention. | 
| 291 | 
  | 
  | 
Th | 
| 292 | 
  | 
  | 
.I -l | 
| 293 | 
  | 
  | 
option may or may not appear, but the | 
| 294 | 
  | 
  | 
.I -n | 
| 295 | 
  | 
  | 
option will always be used, and the expected starting directory will | 
| 296 | 
  | 
  | 
be that of the remote user, just as with | 
| 297 | 
  | 
  | 
.I rsh. | 
| 298 | 
  | 
  | 
.TP | 
| 299 | 
  | 
  | 
.BR NEXTANIM | 
| 300 | 
  | 
  | 
This variable specifies the next | 
| 301 | 
  | 
  | 
.I ranfile | 
| 302 | 
  | 
  | 
to use after this sequence is completed. | 
| 303 | 
  | 
  | 
This offers a convenient means to continue an animation that | 
| 304 | 
  | 
  | 
requires different control options in different segments. | 
| 305 | 
  | 
  | 
It is important in this case to correctly set the | 
| 306 | 
  | 
  | 
.I START | 
| 307 | 
  | 
  | 
and | 
| 308 | 
  | 
  | 
.I END | 
| 309 | 
  | 
  | 
variables in each | 
| 310 | 
  | 
  | 
.I ranfile | 
| 311 | 
  | 
  | 
so that the segments do not overlap frames. | 
| 312 | 
  | 
  | 
.TP | 
| 313 | 
  | 
  | 
.BR OVERSAMPLE | 
| 314 | 
  | 
  | 
This variable sets the multiplier of the original image size | 
| 315 | 
  | 
  | 
relative to the final size given by the | 
| 316 | 
  | 
  | 
.I RESOLUTION | 
| 317 | 
  | 
  | 
variable. | 
| 318 | 
  | 
  | 
This determines the quality of anti-aliasing in the final frames. | 
| 319 | 
  | 
  | 
A value of 1 means no anti-aliasing, and a value of 3 produces very | 
| 320 | 
  | 
  | 
good anti-aliasing. | 
| 321 | 
  | 
  | 
The default value is 2. | 
| 322 | 
  | 
  | 
(A fractional value may be used for previews, causing low | 
| 323 | 
  | 
  | 
resolution frames with large, blocky pixels to be produced.)\0 | 
| 324 | 
  | 
  | 
.TP | 
| 325 | 
  | 
  | 
.BR INTERPOLATE | 
| 326 | 
  | 
  | 
This variable sets the number of frames to interpolate between each | 
| 327 | 
  | 
  | 
rendered frame in a static scene walk-through. | 
| 328 | 
  | 
  | 
Z-buffers for each rendered frame will be generated by | 
| 329 | 
  | 
  | 
.I rpict, | 
| 330 | 
  | 
  | 
and | 
| 331 | 
  | 
  | 
.I pinterp | 
| 332 | 
  | 
  | 
will be called to perform the actual "tweening." | 
| 333 | 
  | 
  | 
This results in a potentially large savings in rendering time, but | 
| 334 | 
  | 
  | 
should be used with caution since certain information may be lost or | 
| 335 | 
  | 
  | 
inaccurate, such as specular highlights and reflections, and objects | 
| 336 | 
  | 
  | 
may even break apart if too few renderings are used to interpolate | 
| 337 | 
  | 
  | 
too much motion. | 
| 338 | 
  | 
  | 
The default value for this variable is 0, meaning no interpolation. | 
| 339 | 
  | 
  | 
Interpolation is also switched off if the | 
| 340 | 
  | 
  | 
.I ANIMATE | 
| 341 | 
  | 
  | 
variable is specified. | 
| 342 | 
  | 
  | 
.TP | 
| 343 | 
  | 
  | 
.BR MBLUR | 
| 344 | 
  | 
  | 
This variable specifies the fraction of a frame time that the shutter | 
| 345 | 
  | 
  | 
is simulated as being open for motion blur. | 
| 346 | 
  | 
  | 
A number of samples may be given as a second argument, which | 
| 347 | 
  | 
  | 
controls the number of additional frames computed and averaged | 
| 348 | 
  | 
  | 
together by | 
| 349 | 
  | 
  | 
.I pinterp. | 
| 350 | 
  | 
  | 
If this number is less than 2, then bluring is performed by | 
| 351 | 
  | 
  | 
.I rpict | 
| 352 | 
  | 
  | 
only, resulting in greater noise than the combination of | 
| 353 | 
  | 
  | 
.I rpict | 
| 354 | 
  | 
  | 
and | 
| 355 | 
  | 
  | 
.I pinterp used otherwise. | 
| 356 | 
  | 
  | 
(The default value for number of samples is 5.)\0 | 
| 357 | 
  | 
  | 
The | 
| 358 | 
  | 
  | 
.I pmblur(1) | 
| 359 | 
  | 
  | 
command is used to generate the given number of additional views for | 
| 360 | 
  | 
  | 
.I pinterp | 
| 361 | 
  | 
  | 
to average together. | 
| 362 | 
  | 
  | 
The default value is 0, meaning no motion blurring. | 
| 363 | 
  | 
  | 
This option does not currently work with the | 
| 364 | 
  | 
  | 
.I ANIMATE | 
| 365 | 
  | 
  | 
variable, since pinterp only works for static environments. | 
| 366 | 
  | 
  | 
.TP | 
| 367 | 
  | 
  | 
.BR RTRACE | 
| 368 | 
  | 
  | 
This boolean variable tells | 
| 369 | 
  | 
  | 
.I ranimate | 
| 370 | 
  | 
  | 
whether or not to employ | 
| 371 | 
  | 
  | 
.I rtrace | 
| 372 | 
  | 
  | 
during frame interpolation using the | 
| 373 | 
  | 
  | 
.I \-fr | 
| 374 | 
  | 
  | 
option to | 
| 375 | 
  | 
  | 
.I pinterp. | 
| 376 | 
  | 
  | 
If set to True, then the same rendering options and static octree | 
| 377 | 
  | 
  | 
are passed to | 
| 378 | 
  | 
  | 
.I rtrace | 
| 379 | 
  | 
  | 
as are normally used by | 
| 380 | 
  | 
  | 
.I rpict. | 
| 381 | 
  | 
  | 
The default value is False. | 
| 382 | 
  | 
  | 
Note that this variable only applies to static environment | 
| 383 | 
  | 
  | 
walk-throughs (i.e., no | 
| 384 | 
  | 
  | 
.I ANIMATE | 
| 385 | 
  | 
  | 
command). | 
| 386 | 
  | 
  | 
.TP | 
| 387 | 
  | 
  | 
.BR RESOLUTION | 
| 388 | 
  | 
  | 
This variable specifies the desired final picture resolution. | 
| 389 | 
  | 
  | 
If only a single number is given, this value will be used for both | 
| 390 | 
  | 
  | 
the horizontal and vertical picture dimensions. | 
| 391 | 
  | 
  | 
If two numbers are given, the first is the horizontal resolution and | 
| 392 | 
  | 
  | 
the second is the vertical resolution. | 
| 393 | 
  | 
  | 
If three numbers are given, the third is taken as the pixel aspect | 
| 394 | 
  | 
  | 
ratio for the final picture (a real value). | 
| 395 | 
  | 
  | 
If the pixel aspect ratio is zero, the exact dimensions given will | 
| 396 | 
  | 
  | 
be those produced. | 
| 397 | 
  | 
  | 
Otherwise, they will be used as a frame in which the final image | 
| 398 | 
  | 
  | 
must fit. | 
| 399 | 
  | 
  | 
The default value for this variable is 640. | 
| 400 | 
  | 
  | 
.TP | 
| 401 | 
  | 
  | 
.BR render | 
| 402 | 
  | 
  | 
This variable may be used to specify additional options to | 
| 403 | 
  | 
  | 
.I rpict | 
| 404 | 
  | 
  | 
or | 
| 405 | 
  | 
  | 
.I rtrace. | 
| 406 | 
  | 
  | 
These options will appear after the options set automatically by | 
| 407 | 
  | 
  | 
.I rad, | 
| 408 | 
  | 
  | 
and thus will override the default values. | 
| 409 | 
  | 
  | 
.TP | 
| 410 | 
  | 
  | 
.BR pinterp | 
| 411 | 
  | 
  | 
This variable may be used to specify additional options to | 
| 412 | 
  | 
  | 
.I pinterp, | 
| 413 | 
  | 
  | 
which is used to interpolate frames for a static scene walk-through. | 
| 414 | 
  | 
  | 
(See the | 
| 415 | 
  | 
  | 
.I pinterp | 
| 416 | 
  | 
  | 
man page, and the | 
| 417 | 
  | 
  | 
.I INTERPOLATE | 
| 418 | 
  | 
  | 
variable.)\0 | 
| 419 | 
  | 
  | 
Do not use this variable to set the | 
| 420 | 
  | 
  | 
.I pinterp | 
| 421 | 
  | 
  | 
.I \-fr | 
| 422 | 
  | 
  | 
option, but use the | 
| 423 | 
  | 
  | 
.I RTRACE | 
| 424 | 
  | 
  | 
setting instead. | 
| 425 | 
  | 
  | 
.TP | 
| 426 | 
  | 
  | 
.BR pfilt | 
| 427 | 
  | 
  | 
This variable may be used to specify additional options to | 
| 428 | 
  | 
  | 
.I pfilt. | 
| 429 | 
  | 
  | 
If this variable is given in the | 
| 430 | 
  | 
  | 
.I ranfile, | 
| 431 | 
  | 
  | 
then | 
| 432 | 
  | 
  | 
.I pfilt | 
| 433 | 
  | 
  | 
will always be used. | 
| 434 | 
  | 
  | 
(Normally, | 
| 435 | 
  | 
  | 
.I pfilt | 
| 436 | 
  | 
  | 
is called only if | 
| 437 | 
  | 
  | 
.I pinterp | 
| 438 | 
  | 
  | 
is not needed or automatic exposure is required.)\0 | 
| 439 | 
  | 
  | 
See the | 
| 440 | 
  | 
  | 
.I pfilt | 
| 441 | 
  | 
  | 
manual page for details. | 
| 442 | 
  | 
  | 
.SH EXAMPLES | 
| 443 | 
  | 
  | 
A minimal input file for | 
| 444 | 
  | 
  | 
.I ranimate | 
| 445 | 
  | 
  | 
might look like this: | 
| 446 | 
  | 
  | 
.IP "" .3i | 
| 447 | 
  | 
  | 
.nf | 
| 448 | 
  | 
  | 
:::::::::: | 
| 449 | 
  | 
  | 
sample.ran | 
| 450 | 
  | 
  | 
:::::::::: | 
| 451 | 
  | 
  | 
# The rad input file for our static scene: | 
| 452 | 
  | 
  | 
RIF= tutor.rif | 
| 453 | 
  | 
  | 
# The spool directory: | 
| 454 | 
  | 
  | 
DIRECTORY= anim1 | 
| 455 | 
  | 
  | 
# The view file containing one view per frame: | 
| 456 | 
  | 
  | 
VIEWFILE= anim1.vf | 
| 457 | 
  | 
  | 
# The amount of temporary disk space available: | 
| 458 | 
  | 
  | 
DISKSPACE= 50   # megabytes | 
| 459 | 
  | 
  | 
.fi | 
| 460 | 
  | 
  | 
.PP | 
| 461 | 
  | 
  | 
Note that most of the variables are not set in this file. | 
| 462 | 
  | 
  | 
If we only want to see what default values | 
| 463 | 
  | 
  | 
.I ranimate | 
| 464 | 
  | 
  | 
would use without actually executing anything, we can invoke it | 
| 465 | 
  | 
  | 
thus: | 
| 466 | 
  | 
  | 
.IP "" .2i | 
| 467 | 
  | 
  | 
ranimate -n -e sample.ran | 
| 468 | 
  | 
  | 
.PP | 
| 469 | 
  | 
  | 
This will print the variables we have given as well as default | 
| 470 | 
  | 
  | 
values | 
| 471 | 
  | 
  | 
.I ranimate | 
| 472 | 
  | 
  | 
has assigned for us. | 
| 473 | 
  | 
  | 
Also, we will see the list of commands that | 
| 474 | 
  | 
  | 
.I ranimate | 
| 475 | 
  | 
  | 
would have executed had the | 
| 476 | 
  | 
  | 
.I \-n | 
| 477 | 
  | 
  | 
option not been present. | 
| 478 | 
  | 
  | 
.PP | 
| 479 | 
  | 
  | 
Usually, we execute | 
| 480 | 
  | 
  | 
.I ranimate | 
| 481 | 
  | 
  | 
in the background, redirecting the standard output and standard | 
| 482 | 
  | 
  | 
error to a file: | 
| 483 | 
  | 
  | 
.IP "" .2i | 
| 484 | 
  | 
  | 
ranimate sample.ran >& sample.err & | 
| 485 | 
  | 
  | 
.PP | 
| 486 | 
  | 
  | 
If we decide that the default values | 
| 487 | 
  | 
  | 
.I ranimate | 
| 488 | 
  | 
  | 
has chosen for our variables are not all appropriate, we can add | 
| 489 | 
  | 
  | 
some more assignments to the file: | 
| 490 | 
  | 
  | 
.IP "" .3i | 
| 491 | 
  | 
  | 
.nf | 
| 492 | 
  | 
  | 
host= rays 3 ~greg/obj/tutor ray        # execute as ray on multi-host "rays" | 
| 493 | 
  | 
  | 
host= thishost                          # execute one copy on this host also | 
| 494 | 
  | 
  | 
INTERP= 3                               # render every fourth frame | 
| 495 | 
  | 
  | 
RES= 1024                               # shoot for 1024x resolution | 
| 496 | 
  | 
  | 
MBLUR= .25                              # apply camera motion blur | 
| 497 | 
  | 
  | 
EXP= anim1.exp                          # adjust exposure according to file | 
| 498 | 
  | 
  | 
pfilt= -r .9                            # use Gaussian filtering | 
| 499 | 
  | 
  | 
ARCHIVE= tar cf /dev/nrtape             # save original renderings to tape | 
| 500 | 
  | 
  | 
.fi | 
| 501 | 
  | 
  | 
.PP | 
| 502 | 
  | 
  | 
Note the use of abbreviation for variable names. | 
| 503 | 
  | 
  | 
.SH FILES | 
| 504 | 
  | 
  | 
$(DIRECTORY)/STATUS     animation status file | 
| 505 | 
  | 
  | 
$(DIRECTORY)/*          other temporary files | 
| 506 | 
  | 
  | 
$(BASENAME).pic         final animation frames | 
| 507 | 
  | 
  | 
.SH AUTHOR | 
| 508 | 
  | 
  | 
Greg Ward | 
| 509 | 
  | 
  | 
.SH BUGS | 
| 510 | 
  | 
  | 
Due to the difficulty of controlling processes on multiple execution | 
| 511 | 
  | 
  | 
hosts, the | 
| 512 | 
  | 
  | 
.I \-n | 
| 513 | 
  | 
  | 
option of | 
| 514 | 
  | 
  | 
.I ranimate | 
| 515 | 
  | 
  | 
is not useful in the same way as | 
| 516 | 
  | 
  | 
.I rad | 
| 517 | 
  | 
  | 
for generating a script of executable commands to render the | 
| 518 | 
  | 
  | 
sequence. | 
| 519 | 
  | 
  | 
It may give an idea of the sequence of events, but certain temporary | 
| 520 | 
  | 
  | 
files and so forth will not be in the correct state if the user | 
| 521 | 
  | 
  | 
attempts to create a separate batch script. | 
| 522 | 
  | 
  | 
.PP | 
| 523 | 
  | 
  | 
If multiple processors are available on a given host and the | 
| 524 | 
  | 
  | 
.I RTRACE | 
| 525 | 
  | 
  | 
variable is set to True, then the | 
| 526 | 
  | 
  | 
.I \-PP | 
| 527 | 
  | 
  | 
option of | 
| 528 | 
  | 
  | 
.I rtrace | 
| 529 | 
  | 
  | 
should be employed, but it is not. | 
| 530 | 
  | 
  | 
There is no easy way around this problem, but it has only minor | 
| 531 | 
  | 
  | 
consequences in most cases. | 
| 532 | 
  | 
  | 
(The | 
| 533 | 
  | 
  | 
.I \-PP | 
| 534 | 
  | 
  | 
option is used for | 
| 535 | 
  | 
  | 
.I rpict, | 
| 536 | 
  | 
  | 
however.)\0 | 
| 537 | 
  | 
  | 
.I | 
| 538 | 
  | 
  | 
.PP | 
| 539 | 
  | 
  | 
The current implementation of the remote shell does not return the | 
| 540 | 
  | 
  | 
exit status of the remote process, which makes it difficult to | 
| 541 | 
  | 
  | 
determine for sure if there has been a serious error or not. | 
| 542 | 
  | 
  | 
Because of this, | 
| 543 | 
  | 
  | 
.I ranimate | 
| 544 | 
  | 
  | 
normally turns off warnings on all rendering processes, and takes | 
| 545 | 
  | 
  | 
any output to standard error from a remote command as a sign that a | 
| 546 | 
  | 
  | 
fatal error has occurred. | 
| 547 | 
  | 
  | 
(This also precludes the use of the | 
| 548 | 
  | 
  | 
.I \-t | 
| 549 | 
  | 
  | 
option to report rendering progress.)\0 | 
| 550 | 
  | 
  | 
If the error was caused by a process server going down, the server | 
| 551 | 
  | 
  | 
is removed from the active list and frame recovery takes place. | 
| 552 | 
  | 
  | 
Otherwise, | 
| 553 | 
  | 
  | 
.I ranimate | 
| 554 | 
  | 
  | 
quits at that point in the animation. | 
| 555 | 
  | 
  | 
.PP | 
| 556 | 
  | 
  | 
The current execution environment, in particular the RAYPATH variable, | 
| 557 | 
  | 
  | 
will not be passed during remote command execution, so it is necessary | 
| 558 | 
  | 
  | 
to set whatever variables are important in the remote startup script | 
| 559 | 
  | 
  | 
(e.g., ".cshrc" for the C-shell). | 
| 560 | 
  | 
  | 
This requirement may be circumvented by substituting the | 
| 561 | 
  | 
  | 
.I on(1) | 
| 562 | 
  | 
  | 
command for | 
| 563 | 
  | 
  | 
.I rsh(1) | 
| 564 | 
  | 
  | 
using the | 
| 565 | 
  | 
  | 
.I RSH | 
| 566 | 
  | 
  | 
control variable, or by writing a custom remote execution script. | 
| 567 | 
  | 
  | 
.PP | 
| 568 | 
  | 
  | 
If a different remote user name is used, | 
| 569 | 
  | 
  | 
.I ranimate | 
| 570 | 
  | 
  | 
first attempts to change to the original user's directory with a | 
| 571 | 
  | 
  | 
command of the form | 
| 572 | 
  | 
  | 
.I "cd \~uname". | 
| 573 | 
  | 
  | 
This works under | 
| 574 | 
  | 
  | 
.I csh(1), | 
| 575 | 
  | 
  | 
but may fail under other shells such as | 
| 576 | 
  | 
  | 
.I sh(1). | 
| 577 | 
  | 
  | 
.PP | 
| 578 | 
  | 
  | 
If multiple hosts with different floating point formats are used, | 
| 579 | 
  | 
  | 
.I pinterp | 
| 580 | 
  | 
  | 
will fail because the Z-buffer files will be inconsistent. | 
| 581 | 
  | 
  | 
(Recall that | 
| 582 | 
  | 
  | 
.I pinterp | 
| 583 | 
  | 
  | 
is called if INTERPOLATE > 0 and/or MBLUR is assigned.)\0 | 
| 584 | 
  | 
  | 
Since most modern machines use IEEE floating point, this is not | 
| 585 | 
  | 
  | 
usually a problem, but it is something to keep in mind. | 
| 586 | 
  | 
  | 
.SH "SEE ALSO" | 
| 587 | 
  | 
  | 
pfilt(1), pinterp(1), pmblur(1), rad(1), | 
| 588 | 
  | 
  | 
ranimove(1), rpict(1), rsh(1), rtrace(1) |