| 1 | ========================= | 
| 2 | Version 1.2 (Released 3/9/90) | 
| 3 |  | 
| 4 | Added a -p option to rpict and pfilt to set the pixel aspect ratio for | 
| 5 | output.  Instead of giving the absolute x and y resolutions, the user | 
| 6 | now gives rpict and pfilt the maximum desired resolution for x and y | 
| 7 | and the pixel aspect ratio is used along with the given view to | 
| 8 | calculate appropriate values within this boundary.  This makes for | 
| 9 | much more natural view specifications.  For example, for a 512x400 | 
| 10 | device with a pixel aspect ratio of 1.0, the pfilt command: | 
| 11 |  | 
| 12 | pfilt -x 512 -y 400 -p 1 | 
| 13 |  | 
| 14 | will always produce the appropriate output, regardless of the aspect | 
| 15 | ratio of the input picture.  If necessary, the x or y output resolution | 
| 16 | will be reduced to accommodate the device's resolution.  A square image | 
| 17 | would occupy a region of 400x400 pixels. | 
| 18 |  | 
| 19 | View shift and lift options were added to the list of standard view | 
| 20 | parameters, for specifying views for panoramas and holograms. | 
| 21 |  | 
| 22 | Rview no longer takes options for x and y resolution, but instead | 
| 23 | gets them from the device driver along with the pixel ratio.  This | 
| 24 | makes it much easier to change the view aspect ratio (with the vh | 
| 25 | and vv parameters). | 
| 26 |  | 
| 27 | A -z option was added to rpict to write out the distances for each | 
| 28 | pixel in an image.  This may be useful for z-buffer operations, and | 
| 29 | is used by the new program pinterp, described below. | 
| 30 |  | 
| 31 | A program called pinterp was added to the burgeoning list of | 
| 32 | picture filters and converters.  This program is designed primarily | 
| 33 | to interpolate animated frames for walk-throughs of static scenes, | 
| 34 | but it has a number of other useful functions besides.  It takes as | 
| 35 | its input one or more rendered pictures (with their corresponding z | 
| 36 | value files) and desired viewpoint (hopefully not too far afield from | 
| 37 | the given images).  Pinterp then takes the input frames and moves the | 
| 38 | pixels to their new computed location.  Filling operations make sure | 
| 39 | that the final image does not have large unpainted regions. | 
| 40 |  | 
| 41 | Added smoothing option to gensurf, using bilinear Phong surface normal | 
| 42 | interpolation.  Not perfect, but it's better than nothing and permits | 
| 43 | the use of fewer polygons to represent smoothly curved surfaces. | 
| 44 |  | 
| 45 | ========================= | 
| 46 | Version 1.3 (Released 10/22/90) | 
| 47 |  | 
| 48 | Added conversion utility for IES (Illuminating Engineering Society) standard | 
| 49 | format luminaire data.  The translator, called ies2rad, takes any number | 
| 50 | of luminaire data files and creates the necessary Radiance geometric | 
| 51 | descriptions and data files and puts them in the specified library location. | 
| 52 | A new data format was added to accommodate irregularly-spaced data points. | 
| 53 |  | 
| 54 | Added rview driver for NeWS for Sun and Silicon Graphics workstations. | 
| 55 | This work was done by Isaac Kwo. | 
| 56 |  | 
| 57 | Fixed oconv for scenes with many overlapping instances (runs faster now). | 
| 58 |  | 
| 59 | Added consitency checks intended to detect stale octrees without restricting | 
| 60 | changes to surface modifiers.  (But you still can't change total number of | 
| 61 | objects).  Stale octrees caused some of the strangest behavior... | 
| 62 |  | 
| 63 | Finally broke down and wrote my own malloc(3) routines.  There is a | 
| 64 | CalTech module floating around Berkeley that caused a lot of trouble | 
| 65 | for bmalloc(), resulting in about twice the needed memory use. | 
| 66 |  | 
| 67 | Added translator for Architrion.  Arch2rad uses mapping rules to assign | 
| 68 | materials to surfaces from input file.  This is a general method (dreamed | 
| 69 | up by Charles Ehrlich) that allows users to assign materials based on | 
| 70 | whatever information is available from the CAD file.  See the accompanying | 
| 71 | description file on translators in the ray/doc/notes directory. | 
| 72 |  | 
| 73 | Added fisheye view types to rpict and rview, useful for looking at | 
| 74 | entire scenes and for LEEP virtual reality wide field stereo viewer. | 
| 75 |  | 
| 76 | Wrote xshowtrace, a fun program for watching rays as they are being | 
| 77 | traced on an X11 display. | 
| 78 |  | 
| 79 | Write ra_pr24 for converting between 24-bit Sun rasterfiles and | 
| 80 | Radiance pictures.  Perhaps this should be incorporated in ra_pr, as | 
| 81 | ra_t8 and ra_t16 should be one program, but the algorithms and memory | 
| 82 | requirements are totally different for colormapped images. | 
| 83 |  | 
| 84 | Added routines for performing 24-bit gamma correction in integer domain, | 
| 85 | making programs like ra_pr24 and ra_t16 run faster. | 
| 86 |  | 
| 87 | ========================= | 
| 88 | Version 1.4 (Released early 1991?) | 
| 89 |  | 
| 90 | Fixed bug in IES translator that resulted in the incorrect | 
| 91 | interpretation of type B photometric data.  (1.3.1) | 
| 92 |  | 
| 93 | Added types for using BRDF data:  plasfunc, metfunc, plasdata and metdata. | 
| 94 |  | 
| 95 | Added interpretation of source color to ies2rad and color corrective | 
| 96 | filtering to pfilt.  Reference file used by both is "lamp.tab" in | 
| 97 | library directory. | 
| 98 |  | 
| 99 | Added picture flipping program, pflip, and pattern preprocessing script, | 
| 100 | normpat.csh, to the px directory. | 
| 101 |  | 
| 102 | Fixed bug in ra_pr24 that caused the reversal of red and blue values. | 
| 103 | New version accepts both RT_STANDARD and RT_FORMAT_RGB files but | 
| 104 | produces only RT_STANDARD rasterfiles as output. | 
| 105 |  | 
| 106 | Added -m option to xform to change modifiers for surfaces. | 
| 107 |  | 
| 108 | Wrote replmarks program to replace markers in a Radiance scene file | 
| 109 | for light sources or other objects. | 
| 110 |  | 
| 111 | Added global compilation script, makeall. | 
| 112 |  | 
| 113 | Fixed calculation of luminance in display programs and gensky to use | 
| 114 | white light assumption. | 
| 115 |  | 
| 116 | Added options and features to pcomb. | 
| 117 |  | 
| 118 | Added FORMAT= line to all Radiance file headers for improved error | 
| 119 | checking and clarity. | 
| 120 |  | 
| 121 | Added icon bitmaps for rview and x11image under X11 and fixed a bug | 
| 122 | that caused x11image to ignore keyboard input. | 
| 123 |  | 
| 124 | ****** COMPATIBILITY CHANGE ******** | 
| 125 | Added constant definitions to cal files using ':' instead of '='. | 
| 126 | This makes for faster calculations since many more constant | 
| 127 | expressions can be reduced at "compile" time. | 
| 128 |  | 
| 129 | Created glare calculation programs in util directory.  Findglare locates | 
| 130 | glare sources, xglaresrc circles sources on a displayed image, and | 
| 131 | glarendx computes various glare indices. | 
| 132 |  | 
| 133 | ========================= | 
| 134 | Version 2.0 (Released 11/26/91) | 
| 135 |  | 
| 136 | Added -i option to renderers for computing irradiance rather than | 
| 137 | radiance.  Eliminated redundant -oI option from rtrace and added | 
| 138 | -I option to replace old -oi.  This hack ignores glass and similar | 
| 139 | surfaces during the calculation. | 
| 140 |  | 
| 141 | Changed icon for x11image (renamed ximage) to miniature bitmap of | 
| 142 | picture. | 
| 143 |  | 
| 144 | Fixed bug in xshowtrace that prevented it from working with twm. | 
| 145 |  | 
| 146 | Added memory recovery feature to rview so that when it refines | 
| 147 | itself out of memory it doesn't quit but instead gives the user | 
| 148 | a command line saying "out of memory:", which allows the output to | 
| 149 | be written and so forth before quitting or restarting the image. | 
| 150 |  | 
| 151 | Added -g (gamma correction) option to pvalue. | 
| 152 |  | 
| 153 | Added the more general BRTDfunc for procedural definition of bidirectional | 
| 154 | reflectance-transmittance distribution functions.  Also added transfunc | 
| 155 | and transdata types. | 
| 156 |  | 
| 157 | Changed trans types to modify the color of the transmitted specular | 
| 158 | component. | 
| 159 |  | 
| 160 | Fixed a bug in ra_t16 introduced in the last change which caused | 
| 161 | problems for the (default) 16-bit output mode. | 
| 162 |  | 
| 163 | Improved Monte Carlo sampling for penumbras (-dj) and ambient | 
| 164 | super-samples (-as) using stratified random number sequence introduced | 
| 165 | by Christophe Schlick at '91 Eurographics workshop on rendering. | 
| 166 |  | 
| 167 | Wrote falsecolor program to transform images to false color with | 
| 168 | value labels. | 
| 169 |  | 
| 170 | Modified pcomb to allow different output sizes and access to local | 
| 171 | pixel neighborhood for specialty filtering applications. | 
| 172 |  | 
| 173 | Made cone and sphere routines more forgiving of negative radii, | 
| 174 | switching between inverted types as necessary and giving warning | 
| 175 | messages instead of bombing.  Cones with equal radii are now | 
| 176 | silently converted into cylinders.  Hopefully, these changes will | 
| 177 | make writing Radiance scene file translators a little bit easier. | 
| 178 | Unfortunately, we still bomb for zero-sized cones and spheres. | 
| 179 |  | 
| 180 | Wrote a program called getbbox that just computes the bounding box | 
| 181 | for a set of Radiance scene files.  It is basically a modified version | 
| 182 | of oconv that doesn't store objects in memory and doesn't care about | 
| 183 | undefined modifiers. | 
| 184 |  | 
| 185 | Added -a and -l options to pcompos and made both pcompos and pcomb | 
| 186 | read from commands as well as files. | 
| 187 |  | 
| 188 | Substantially improved the accuracy and appearance of the interreflection | 
| 189 | calculation by computing gradients at the same time as primary values and | 
| 190 | then using a first order interpolation scheme.  This affects the information | 
| 191 | stored in ambient files, so old files will have to be thrown away. | 
| 192 |  | 
| 193 | Added secondary light sources from planar mirror, prismatic and | 
| 194 | holographic surfaces.  This created the new options -dr (direct relays) | 
| 195 | and -dp (direct presample density) to the renderers.  The document | 
| 196 | secsrc.note describes this feature in greater detail. | 
| 197 |  | 
| 198 | Put many of the routines into a common library. | 
| 199 |  | 
| 200 | Wrote a replacement for makedist, called mkillum, which generates | 
| 201 | light distribtuions and illum descriptions for windows, skylights, | 
| 202 | etc. in a much more natural and automatic fashion. | 
| 203 |  | 
| 204 | Fixed long-standing bug in text routines which caused slanted text | 
| 205 | to slant the wrong way! | 
| 206 |  | 
| 207 | Added -e option to ra_bn, ra_pr, ra_pr24, ra_t8 and ra_t16 programs | 
| 208 | for faster and more convenient image conversion w/o using pfilt. | 
| 209 |  | 
| 210 | ****** COMPATIBILITY CHANGE ******** | 
| 211 | Finally added contexts to calcomp routines so identical names in | 
| 212 | different function files no longer conflict.  Loading of function | 
| 213 | files also works automatically without those nasty "key" variables. | 
| 214 | New context marks (backquote characters) appear in some local variables | 
| 215 | defined in some of the cal files.  This is inconsistent with older | 
| 216 | versions, and must be changed back to and underscore or some other legal | 
| 217 | character if these files are used by 1.4 and earlier. | 
| 218 |  | 
| 219 | Wrote ra_tiff program, using Sam Leffler's libtiff package to read | 
| 220 | and write 24-bit TIFF images. | 
| 221 |  | 
| 222 | Wrote ra_ppm program to convert to and from Poskanzer Pixmaps. | 
| 223 |  | 
| 224 | ****** COMPATIBILITY CHANGE ******** | 
| 225 | Changed run-length encoding of Radiance pictures to gain better | 
| 226 | compression.  Routines can still read old format, but new ra_rgbe | 
| 227 | program must be used to write convert images to a more generic format | 
| 228 | that can be read by release 1.4 and earlier. | 
| 229 |  | 
| 230 | Defined U and V parameters in rayinit.cal for more convenient (and | 
| 231 | sloppy) use of 2-dimensional textures and patterns on planar surfaces. | 
| 232 |  | 
| 233 | Beefed up lampcolor program to compute spectral radiance for diffuse | 
| 234 | emitters.  This was a previously a pain in the butt and a serious | 
| 235 | source of error for scenes not modeled using IES data files. | 
| 236 |  | 
| 237 | Added version reporting to rpict, rtrace and rview.  Use standalone | 
| 238 | -version option. | 
| 239 |  | 
| 240 | Changed to quincunx initial sampling pattern in rpict.  This should | 
| 241 | reduce artifacts from adaptive image sampling at no added cost. | 
| 242 |  | 
| 243 | Added -rgb option to ra_pr24 to produce RT_FORMAT_RGB files. | 
| 244 |  | 
| 245 | Added -ds option to renderers to make source sampling more accurate | 
| 246 | for large area sources.  It is no longer necessary or recommended | 
| 247 | to break large sources (such as windows) into smaller pieces with | 
| 248 | gensurf unless their output distribution changes over their surface. | 
| 249 | Also, cylinders can now be used as light sources, provided they are not | 
| 250 | too short compared to their radius (causing them to be frequently missed). | 
| 251 |  | 
| 252 | Added -I option to xform to invert surfaces. | 
| 253 |  | 
| 254 | Added SMLFLT and BIGMEM defines to better control the sizes of data | 
| 255 | structures during compilation.  Made their setting relatively | 
| 256 | straightforward in makeall and created a separate rmake program to | 
| 257 | hold the options generated by makeall. | 
| 258 |  | 
| 259 | Made the programs more forgiving of machine differences on octrees. | 
| 260 |  | 
| 261 | ****** COMPATIBILITY CHANGE ******** | 
| 262 | Fixed incorrect conversion factor between radiance and luminance. | 
| 263 | The correct luminous efficacy value is now defined in color.h as | 
| 264 | WHTEFFICACY.  It was 470 lumens/watt previously, now it has been | 
| 265 | corrected to 179 lumens/watt.  This affects the absolute values | 
| 266 | in the output of programs like gensky and ies2rad.  Thus, these | 
| 267 | programs should be rerun to generate corrected files for this | 
| 268 | version of Radiance.  Also, the new versions of display programs | 
| 269 | like ximage will give different values with the 'l' command on | 
| 270 | an image generated with 1.4 and previous releases.  The following | 
| 271 | alias may be used to fix the radiance values in a picture generated | 
| 272 | using previous versions of gensky and ies2rad: | 
| 273 |  | 
| 274 | alias pfixabs '( echo EXPOSURE=.381 ; cat \!:1 ) > \!:1.$$ ; mv \!:1.$$ \!:1' | 
| 275 |  | 
| 276 | Improved accuracy of glass material type and added option for | 
| 277 | user-supplied index of refraction. | 
| 278 |  | 
| 279 | Added sgi to rt/Makefile and px/Makefile SPECIAL category for compiling | 
| 280 | Isaac Kwo's NeWS driver for rview and the glimage program by Jim Winget. | 
| 281 | Also fixed various compile problems for the SGI. | 
| 282 |  | 
| 283 | Improved handling of alternate scanline orientations.  The programs | 
| 284 | pflip and protate (used to be prot) now affect the scanline ordering | 
| 285 | of the file without messing up the view parameters for programs like | 
| 286 | pinterp and findglare. | 
| 287 |  | 
| 288 | ========================== | 
| 289 | Version 2.1 (Released 5/20/92) | 
| 290 |  | 
| 291 | ****** COMPATIBILITY CHANGE ******** | 
| 292 | Changed function specifications to allow the use of expressions as | 
| 293 | well as variables in scene files.  Use of this feature may result | 
| 294 | in some loss of backwards compatibility as older software does not | 
| 295 | support it. | 
| 296 |  | 
| 297 | Added makeall option for NeXT machine and changed code to suit. | 
| 298 |  | 
| 299 | ****** COMPATIBILITY CHANGE ******** | 
| 300 | Added off-specular sampling and anisotropic materials plastic2, | 
| 301 | metal2 and trans2.  The old options -sp, -sj, -st and -p have | 
| 302 | been renamed to -ps, -pj, -pt and -pa, respectively.  New options | 
| 303 | -sj and -st have been introduced. | 
| 304 |  | 
| 305 | Improved ray intersection calculations using -DSMLFLT option by | 
| 306 | increasing epsilon used in tests.  This eliminates most of the | 
| 307 | errors that occured when this compile option was used in version 2.0. | 
| 308 |  | 
| 309 | Added capability to gensurf to read height or point data from a | 
| 310 | file.  This makes it more convenient to make (optionally smoothed) | 
| 311 | landscapes from recorded measurements and the like. | 
| 312 |  | 
| 313 | Corrected irradiance gradient calculation.  New formula predicts | 
| 314 | gradient better and thus reduces artifacts in indirect calculation. | 
| 315 |  | 
| 316 | Modified replmarks to accept multiple markers. | 
| 317 |  | 
| 318 | Added -aI and -aE options to read ambient include/exclude materials | 
| 319 | from a file. | 
| 320 |  | 
| 321 | Reduced effect of light leaks during interreflection calculation. | 
| 322 |  | 
| 323 | Added -ang option to gensky for giving solar angles explicitly. | 
| 324 |  | 
| 325 | Added ability of "view" command within rview to accept view options. | 
| 326 |  | 
| 327 | Fixed a long-standing bug in gensky that caused it to report | 
| 328 | inaccurate values for the ground ambient level.  Since the dayfact | 
| 329 | script uses this value in calculating its results, version 2.0 will | 
| 330 | be in error (by as much as 30 or 40%). | 
| 331 |  | 
| 332 | Fixed a bug in the reflectance normalization for isotropic and | 
| 333 | anisotropic Gaussian highlights that caused too much light to | 
| 334 | be reflected near grazing angles.  Much thanks to the folks at | 
| 335 | Ohio State University (Steve Spencer and Kevin Simon) who | 
| 336 | pointed this out to me! | 
| 337 |  | 
| 338 | Fixed bug in xshowtrace introduced in 2.0.  It absolutely didn't work | 
| 339 | after my most recent changes to image.c.  (Sorry about that!) | 
| 340 |  | 
| 341 | Finally fixed shortcoming of view reading routines so they can get | 
| 342 | the views from pictures created with absolute program paths | 
| 343 | (eg. /usr/local/bin/rpict).  This affects programs like | 
| 344 | xshowtrace and glare, as well as the recover option of rpict. | 
| 345 |  | 
| 346 | Fixed isotropic Gaussian distribution (highlights for types "metal" | 
| 347 | and "plastic") to make them more accurate and bring them into line | 
| 348 | with the new anisotropic Gaussian models ("metal2" and "plastic2"). | 
| 349 | This may affect the appearance of some hightlights. | 
| 350 |  | 
| 351 | Added -H and -R options to pvalue to control resolution strings | 
| 352 | and color ordering. | 
| 353 |  | 
| 354 | Fixed byte ordering for 24-bit color displays in ximage. | 
| 355 |  | 
| 356 | ========================== | 
| 357 | Version 2.2 (No official release) | 
| 358 |  | 
| 359 | Made more fixes in rview and ximage for different display hardware. | 
| 360 | Philip Thompson and Peter Apian helped with suggestions and testing. | 
| 361 |  | 
| 362 | Fixed bug in -e option of xform that kept it from fully expanding | 
| 363 | some scene files. | 
| 364 |  | 
| 365 | Added proportional text spacing (-s option for psign, new argument | 
| 366 | for text primitives).  Added antialiasing (3x3 super-sampling) to psign. | 
| 367 |  | 
| 368 | Added code in display drivers to read environment variable called | 
| 369 | "GAMMA" to set gamma correction for different monitors.  See notes in | 
| 370 | this directory on gamma_corr. | 
| 371 |  | 
| 372 | Added CC defines to all the Rmakefiles so that other C compilers may be | 
| 373 | used consistently. | 
| 374 |  | 
| 375 | Added -x and -y options to psign to control output dimensions directly. | 
| 376 |  | 
| 377 | Decreased value of FTINY with SMLFLT option once again in an attempt to | 
| 378 | further reduce errors. | 
| 379 |  | 
| 380 | Reinstated rtrace's capability to produce 32-bit_rle_rgbe directly. | 
| 381 |  | 
| 382 | Added -S and -o options to rpict for more flexible production of | 
| 383 | multiple images and slave operation.  Rpict will also accept a recover | 
| 384 | file name the same as the output file for more convenient recovery. | 
| 385 |  | 
| 386 | Added ra_ps program to translate Radiance picture into PostScript file. | 
| 387 |  | 
| 388 | ****** COMPATIBILITY CHANGE ******** | 
| 389 | Made ambient files machine-independent so they can be conveniently moved | 
| 390 | and reused on any system.  Also added coordinated reads and writes so | 
| 391 | that multiple processes may use the same ambient file at the same time. | 
| 392 | Along with the -S option of rpict, this should greatly facilitate parallel | 
| 393 | rendering.  The new ambient file format also contains a header that | 
| 394 | can be read by getinfo.  Lookamb now has a -h option. | 
| 395 |  | 
| 396 | Created rpiece program for parallel rendering of a single image on | 
| 397 | multiple processors and workstations. | 
| 398 |  | 
| 399 | Eliminated star artifacts in mkillum distribution patterns by improving | 
| 400 | data interpolation method.  Improved ability of mkillum to correctly | 
| 401 | sample non-axis-aligned polygons. | 
| 402 |  | 
| 403 | Added -s and -o options to pcompos for slightly more convenient use | 
| 404 | of the -a option.  Also eliminated incompatibility between -a and -y | 
| 405 | options. | 
| 406 |  | 
| 407 | Fixed bug in spotlight sources that caused incorrect boundaries to be | 
| 408 | cast by mirrors. | 
| 409 |  | 
| 410 | Fixed rounding of scanlines in ra_pr24 to 16-bit boundaries. | 
| 411 |  | 
| 412 | Added @file and $envar expansion capabilities to rtrace, rpict and | 
| 413 | rview.  This is primarily to overcome the 128-byte command limit of | 
| 414 | MS-DOS. | 
| 415 |  | 
| 416 | Added -r option to gensky for the direct specification of solar | 
| 417 | brightness. | 
| 418 |  | 
| 419 | Added -oN option to rtrace for reporting unperturbed surface normals, | 
| 420 | and changed -on to report perturbed surface normals (used to be | 
| 421 | unperturbed). | 
| 422 |  | 
| 423 | Changed -di switch of rtrace, rpict and rview to -dv and changed | 
| 424 | sense.  Thus, instead of having a boolean variable called "source | 
| 425 | invisibility" that is normally off, there is now a boolean variable | 
| 426 | called "source visibility" that is normally on.  More logical, and | 
| 427 | also allows for the addition of -di and -de options for direct | 
| 428 | include and exclude in the future. | 
| 429 |  | 
| 430 | Fixed bug in image.c associated with -DSMLFLT that caused angular | 
| 431 | fisheye views to repeat the center pixel in the middle of an image. | 
| 432 |  | 
| 433 | Modified colordata and colorpict to take functions of a single variable | 
| 434 | instead of always requiring functions of three variables (red, green, blue). | 
| 435 |  | 
| 436 | Modified objview script to work in original object coordinates. | 
| 437 |  | 
| 438 | Added -P and -PP options to rpict and rtrace for persistent and parallel | 
| 439 | processing, respectively.  The -P option is most useful with the -fr | 
| 440 | option of pinterp, since rtrace doesn't have to be restarted for every | 
| 441 | frame in a long animation sequence.  The -PP option is most useful when | 
| 442 | running rpiece on a multiprocessing platform, to get acceptable memory | 
| 443 | sharing without the hassle of threaded code. | 
| 444 |  | 
| 445 | Changed signal handling in rpict so CONT is now used to elicit | 
| 446 | asynchronous progress reports.  ALRM now causes rpict to die | 
| 447 | unconditionally. | 
| 448 |  | 
| 449 | Created executive program called "rad" to run oconv, rview, rpict and | 
| 450 | pfilt automatically.  This should greatly simplify use of Radiance and | 
| 451 | reduce the problems associated with poorly chosen parameter values. | 
| 452 |  | 
| 453 | Added slave driver to rview to make it easier to run from other | 
| 454 | graphics applications.  (Thanks to Chris Nicholas of Sun for the | 
| 455 | suggestion.) | 
| 456 |  | 
| 457 | Fixed error in ies2rad.c and source.cal that caused incorrect | 
| 458 | interpretation of asymmetric Type C (A) fixture photometry.  Note the | 
| 459 | new definition of src_phi in source.cal.  This change may affect | 
| 460 | manually entered photometry. | 
| 461 |  | 
| 462 | Added '@' command to ximage to adjust exposure based on Blackwell's | 
| 463 | model of human contrast sensitivity. | 
| 464 |  | 
| 465 | Added functions to pcomb to get the ray origin and direction from the | 
| 466 | input picture view specifications. | 
| 467 |  | 
| 468 | Removed Fresnel approximation to specular reflection from Radiance materials, | 
| 469 | since the direct component was not being computed correctly.  This | 
| 470 | may have a slight affect on the appearance of surfaces, but it can't be | 
| 471 | helped. | 
| 472 |  | 
| 473 | ****** COMPATIBILITY CHANGE ******** | 
| 474 | Changed the definition of the BRTDfunc type so as to be more general and to | 
| 475 | allow for different reflection properties depending on what side of the | 
| 476 | surface the ray is incident.  Any scene and function files using the | 
| 477 | old definition of BRTDfunc must be updated.   Implemented the approximation | 
| 478 | used in Window 4 to reflection from coated glazings in lib/glazing.cal. | 
| 479 |  | 
| 480 | Added -ti, -te, -tI and -tE options to rtrace for including or | 
| 481 | excluding surfaces from those reported by the trace output specifier. | 
| 482 |  | 
| 483 | Fixed long-standing bug in pfilt gaussian filter option, which caused | 
| 484 | the image to be excessively defocused. | 
| 485 |  | 
| 486 | Added -m option to pfilt for image sample smoothing.  This helps get rid | 
| 487 | of some of the "speckle" associated with specular sampling. | 
| 488 |  | 
| 489 | Made -ovt* compatible with -I option of rtrace. | 
| 490 |  | 
| 491 | Changed ximage to work with multiple pictures.  It now opens one window | 
| 492 | for each picture file. | 
| 493 |  | 
| 494 | Fixed error reporting in rpict for most machines.  (Many thanks to Peter | 
| 495 | Apian-Bennewitz for his help and suggestions.) | 
| 496 |  | 
| 497 | ****** COMPATIBILITY CHANGE ******** | 
| 498 | Added intermediate sky to gensky and changed its options slightly. | 
| 499 | The new gensky uses a new version of skybright.cal, so any old | 
| 500 | gensky output in files must be recomputed with the new gensky before | 
| 501 | it will work.  (A "skybright: undefined" error should clue you in.) | 
| 502 |  | 
| 503 | ========================== | 
| 504 | Version 2.3 (Released 11/16/93) | 
| 505 |  | 
| 506 | No changes from the above, but the official release was designated 2.3 | 
| 507 | to avoid confusion with previous beta releases of 2.2. | 
| 508 |  | 
| 509 | ========================== | 
| 510 | Version 2.4 (Released 4/20/94) | 
| 511 |  | 
| 512 | Philip Thompson of MIT added use of a radiance.gamma resource to ximage | 
| 513 | and we added it to the x11 driver of rview as well.  This is an alternative | 
| 514 | to setting the GAMMA environment variable for X11 servers. | 
| 515 |  | 
| 516 | Added MLIB variable to Rmakefile's for defining alternate math libraries. | 
| 517 | I discovered that the default version of sqrt() under IRIX is a whole | 
| 518 | lot slower than what's in the libfastm.a library, and not much better. | 
| 519 | This can make a significant difference to the renderers, since sqrt() | 
| 520 | is relied on quite a bit, and it's assumed to be fast. | 
| 521 |  | 
| 522 | Added =SS option to pcompos to allow anchor points for image positions | 
| 523 | other than the lower left corner. | 
| 524 |  | 
| 525 | Wrote raddepend script for finding dependencies in scene files. | 
| 526 |  | 
| 527 | Fixed a bug in mkillum that caused it to incorrectly sample ring sources. | 
| 528 |  | 
| 529 | Finally allowed mixtures to work with materials, thanks to the encouragement | 
| 530 | and advice of Peter Apian-Bennewitz. | 
| 531 |  | 
| 532 | Wrote a triangular mesh converter, called tmesh2rad.  I defined my own | 
| 533 | format, since I wasn't too familiar with anyone else's format and I | 
| 534 | wanted to support some additional possibilities (most notably patterns). | 
| 535 |  | 
| 536 | Added initial "#?RADIANCE" line to headers to simplify Radiance file | 
| 537 | identification by programs used to magic numbers. | 
| 538 |  | 
| 539 | Created a translator for Wavefront .obj files, called obj2rad.  It uses | 
| 540 | the same type of mapping rules as arch2rad. | 
| 541 |  | 
| 542 | ============================= | 
| 543 | Version 2.5 (Released 6/26/95) | 
| 544 |  | 
| 545 | Wrote translators to and from the new MGF (Materials and Geometry | 
| 546 | Format) specification. | 
| 547 |  | 
| 548 | Changed color conversion routines to make light source colors (from | 
| 549 | lamp.tab) consistent with uniform white light standard. | 
| 550 |  | 
| 551 | Fixed a bug that caused very small local sources not to be sampled | 
| 552 | at all! | 
| 553 |  | 
| 554 | Added the ability for rview to read commands from its standard input | 
| 555 | under X11. | 
| 556 |  | 
| 557 | ****************** COMPATIBILITY CHANGE *********************** | 
| 558 | Changed GAMMA environment variable to DISPLAY_GAMMA, to bring it in | 
| 559 | line with the xli program, so users don't have to give two variables | 
| 560 | for the same value! | 
| 561 |  | 
| 562 | Added -t (touch) option to rad, to make it easier to deal with minor | 
| 563 | changes to input files. | 
| 564 |  | 
| 565 | Created graphical user interface to rad, called trad.  Based on Tcl/Tk, | 
| 566 | this should finally get people to start using this program! | 
| 567 |  | 
| 568 | Added -vo and -va (view fore and view aft) clipping plane options to | 
| 569 | Radiance view parameters. | 
| 570 |  | 
| 571 | Added -bv option for (opaque) back face visibility control. | 
| 572 |  | 
| 573 | Added -q, -a and -e options to pinterp, and made it faster.  (These | 
| 574 | should be big improvements.) | 
| 575 |  | 
| 576 | Created tabfunc program for converting data tables to functional | 
| 577 | language. | 
| 578 |  | 
| 579 | Wrote mgf2meta program to convert MGF data to line drawing. | 
| 580 |  | 
| 581 | Updated ies2rad program to interpret MGF geometry in IESNA-LM-63-1995 | 
| 582 | files. | 
| 583 |  | 
| 584 | Added sorting of ambient values according to access times to improve | 
| 585 | reference locality for better virtual memory performance. | 
| 586 |  | 
| 587 | Added source solid angle argument to BRTD functions for averaging | 
| 588 | values. | 
| 589 |  | 
| 590 | Wrote genclock program to create an analog clock. | 
| 591 |  | 
| 592 | Fixed a bug for bitmaps using hexbit4x1.fnt with brighttext, which | 
| 593 | caused thin lines to appear. | 
| 594 |  | 
| 595 | ============================= | 
| 596 | Version 3.0 (Released 6/19/96) | 
| 597 |  | 
| 598 | Added comments to data and font files. | 
| 599 |  | 
| 600 | Changed behavior of mirror to allow void alternate material. | 
| 601 |  | 
| 602 | Added cylindrical view type for Quicktime VR authoring and other | 
| 603 | interesting applications. | 
| 604 |  | 
| 605 | Increased default rtrace parameters for more accurate calculations when | 
| 606 | options are not specified. | 
| 607 |  | 
| 608 | Added RAWFILE and ZFILE variables to rad for saving raw picture file and | 
| 609 | Z (distance) information from rpict. | 
| 610 |  | 
| 611 | Ported trad for newer (4.0) version of Tk (wish).  Thanks to Bob Lipman | 
| 612 | of NIST for helping me track down the changes. | 
| 613 |  | 
| 614 | Added -B option to pinterp to blur multiple views into a single image, | 
| 615 | useful for motion blur and depth of field simulation. | 
| 616 |  | 
| 617 | Created pdfblur script and modified vwright to automate depth-of-field | 
| 618 | simulation with pinterp. | 
| 619 |  | 
| 620 | Added -c option for color PostScript output from ra_ps, and made both | 
| 621 | this program and psmeta produce EPS-compatible files. | 
| 622 |  | 
| 623 | Created macbethcal program for calibrating color image scanners and | 
| 624 | film recorders or printers using the Macbeth ColorChecker chart. | 
| 625 |  | 
| 626 | Created ra_xyze program for converting to and from new Radiance CIE XYZE | 
| 627 | picture type and calibrating monitor colors.  Modified Radiance picture | 
| 628 | filters (pcompos, pflip, pcomb, pinterp, protate and pfilt) to handle | 
| 629 | new picture type without complaint. | 
| 630 |  | 
| 631 | Added automatic ambient value computation to improve accuracy of results | 
| 632 | no matter what -av value is given.  (Only works for -ab > 0.)  This was | 
| 633 | a fairly obvious optomization I should have thought of ages ago. | 
| 634 | (Default is old behavior -- -aw option puts in new code.) | 
| 635 |  | 
| 636 | Modified interreflection calculation to take textures (surface normal | 
| 637 | perturbations) into account in indirect illumination.  This should | 
| 638 | improve the accuracy and appearance of textured surfaces in shadowed | 
| 639 | regions. | 
| 640 |  | 
| 641 | Added -T option to rpiece to limit execution time. | 
| 642 |  | 
| 643 | Fixed bug in mixtext type introduced in last release -- caused improper | 
| 644 | calculation of mixed modifiers. | 
| 645 |  | 
| 646 | Added basic options and functionality for participating media.  New material | 
| 647 | type "mist" and rendering options -me, -ma, -mg and -ms.  This should permit | 
| 648 | the modeling of visible light beams, uniform smoke, fog, and some types | 
| 649 | of clouds. | 
| 650 |  | 
| 651 | Added -o option to ximage to control output of 't' command (and | 
| 652 | middle mouse button).  This adds the ability to produce pixel | 
| 653 | position, radiance value and luminance.  The default action is | 
| 654 | the same as before. | 
| 655 |  | 
| 656 | Created pmblur script to generate views for camera motion blur in | 
| 657 | walk-through animations. | 
| 658 |  | 
| 659 | Added "inpic" variable to picture.cal for determining when the edge | 
| 660 | of a non-repeating image has been reached.  Use with mixfunc primitive. | 
| 661 |  | 
| 662 | Created ranimate program to control walk-through and dynamic animations | 
| 663 | on multiple hosts. | 
| 664 |  | 
| 665 | Fixed problem with antimatter type referring to final definition of | 
| 666 | material names.  Now, it uses the most recent ones. | 
| 667 |  | 
| 668 | Added an MC macro for true Monte Carlo sampling rather than the default | 
| 669 | Quasi Monte Carlo.  To enable, add -DMC to the OPT= line in rmake. | 
| 670 |  | 
| 671 | Fixed bug in pfilt -m option that caused floating point exceptions on | 
| 672 | Alphas. | 
| 673 |  | 
| 674 | Wrote xyzimage script for X11 display of XYZE and corrected RGBE pictures. | 
| 675 | Takes the same options as ximage with an added -p option, and checks | 
| 676 | the environment variable DISPLAY_PRIMARIES for setting of monitor | 
| 677 | primaries.  (See the ra_xyze manual page for further explanation.) | 
| 678 |  | 
| 679 | Made colorpict's use much less memory by storing data in RGBE format | 
| 680 | rather than floating point (takes 1/3 the space).  This should help with | 
| 681 | large image patterns. | 
| 682 |  | 
| 683 | At the insistence of Henrik Wann Jensen, changed the specular sampling | 
| 684 | code so that very rough specular surfaces will sample more truly, | 
| 685 | eliminating some strange mirror appearances evident using the old | 
| 686 | method. | 
| 687 |  | 
| 688 | Added drawing of small and skinny light sources so rpict won't miss | 
| 689 | these from inadequate image sampling.  The method used may not work | 
| 690 | perfectly for warped views (-vta, -vth and -vtc) having long, | 
| 691 | cylindrical light sources.  (Rob Shakespeare, take note!) | 
| 692 |  | 
| 693 | Added corner rounding to genprism command (-r option). | 
| 694 |  | 
| 695 | Changed mixtures so that mixing material with void is allowed, allowing | 
| 696 | for opacity maps.  Also altered general behavior so that surfaces | 
| 697 | without materials in their modifier list are invisible, not only | 
| 698 | surfaces with void modifiers. | 
| 699 |  | 
| 700 | ****************** COMPATIBILITY CHANGE *********************** | 
| 701 | The behavior of xform has been changed to make object library | 
| 702 | organization and usage simpler. | 
| 703 | 1)  The RAYPATH directories are searched for matching file names. | 
| 704 | 2)  Filenames beginning with '.', '/' or '~' do not result in searches. | 
| 705 | 3)  Xform performs a chdir to the found file's directory, obviating | 
| 706 | the need for peculiar inclusion names in subdirectories. | 
| 707 | 4)  The array option (-a) now works when xform reads from stdin. | 
| 708 | 5)  The expand option (-e) is now the default -- -c gets | 
| 709 | back old behavior. | 
| 710 |  | 
| 711 | ============================= | 
| 712 | Version 3.1 (Released 7/24/97) | 
| 713 |  | 
| 714 | Changed gensky so it will accept hour specifications as HH:MM, with | 
| 715 | designations for standard North American and European time zones. | 
| 716 |  | 
| 717 | Increased buffer size for in-line commands from 512 to 1024. | 
| 718 |  | 
| 719 | Added T(n), S(n), WE and pa(n) functions and constants to pcomb. | 
| 720 |  | 
| 721 | Created histo utility to compute 1-dimensional histograms from data files. | 
| 722 |  | 
| 723 | Created pacuity, pveil and psquish scripts (later combined in "pcond"): | 
| 724 |  | 
| 725 | o       The pacuity program takes a Radiance picture and defocuses it | 
| 726 | in places where the human eye loses resolution.  Unless the | 
| 727 | scene contains very low luminances (below .1 cd/m^2 or so), | 
| 728 | this will not have an appreciable effect.  The output can then | 
| 729 | be adjusted according to the Ferwerda, Pattanaik and Shirley | 
| 730 | tone mapping function using pcomb with the file | 
| 731 | src/cal/cal/ferwerda.cal.  (See the header comments therein.) | 
| 732 |  | 
| 733 | o       The pveil program finds sources of glare in an image and adds | 
| 734 | a corresponding amount of background luminance surrounding each | 
| 735 | glare source according to the adaptation response of the human | 
| 736 | eye.  This has the effect of reducing contrast around glare | 
| 737 | sources. | 
| 738 |  | 
| 739 | o       The psquish program is probably the most useful of the three, | 
| 740 | and must be applied after the other two if the others are | 
| 741 | used.  With the -a option, psquish uses the human visual | 
| 742 | response to compress the dynamic range of an image to fit within | 
| 743 | the limited dynamic range of a display (assumed to go from 1 to | 
| 744 | 100 cd/m^2), and also reduces color visibility in pictures with | 
| 745 | low light levels (below 1 cd/m^2).  Without the -a option, | 
| 746 | psquish simply does the best it can to fit a picture's dynamic | 
| 747 | range into what can be readily displayed, without regard to | 
| 748 | human visual response.  This has the effect of making problem | 
| 749 | scenes viewable, such as indoor scenes with windows looking out | 
| 750 | to bright exteriors. | 
| 751 |  | 
| 752 | Created pcond program, which combines pacuity, pveil and psquish in a | 
| 753 | more efficient, robust package.  (See man page for details.) | 
| 754 |  | 
| 755 | Renamed Perlin noise function partial functions, noise3a(), noise3b() | 
| 756 | and noise3c() to noise3x(), noise3y() and noise3z().  Added backward | 
| 757 | compatibility defines to rayinit.cal so nothing should be broken. | 
| 758 |  | 
| 759 | Fixed double-counting bug in calculation of specular transmission of | 
| 760 | light sources for trans type.  This might have caused unrealistically | 
| 761 | high estimates for illumination beneath trans surfaces with non-zero | 
| 762 | roughnesses when the interreflection calculation was used (-ab 1). | 
| 763 |  | 
| 764 | Added routines for reading and writing separate RGB files in pvalue. | 
| 765 | Also added -pP (where P is one of 'R', 'G' or 'B' upper or lower case) | 
| 766 | and -s option to skip specified number of bytes on header.  Finally, | 
| 767 | added a -n option for non-interleaved RGB input and output. | 
| 768 |  | 
| 769 | Fixed obscure bug in rcalc that caused it to return "Bad call to | 
| 770 | argument!" for certain combinations of function and output channel | 
| 771 | definitions. | 
| 772 |  | 
| 773 | Added "-e auto" and "-e human" options to ximage(1) and corresponding | 
| 774 | 'a' and 'h' commands to perform dynamic range compression similar to | 
| 775 | pcond(1). | 
| 776 |  | 
| 777 | ============================== | 
| 778 | Version 3.4 (Released 1/28/02) | 
| 779 |  | 
| 780 | Fixed bug in rpiece that caused it to incorrectly compute -vs and -vl | 
| 781 | (view shift and lift) offsets.  (Included in 3.1.1.) | 
| 782 |  | 
| 783 | Fixed bug in xform handling mist's with > 5 real arguments. | 
| 784 | (Included in 3.1.1.) | 
| 785 |  | 
| 786 | Fixed bug in mist handling routines that caused some incorrect calculations | 
| 787 | for distant sources.  (Included in 3.1.1.) | 
| 788 |  | 
| 789 | Added ability for lam utility to read from commands. | 
| 790 |  | 
| 791 | Created vwrays command to compute ray origins and directions for specified | 
| 792 | views or pictures. | 
| 793 |  | 
| 794 | Changed rtrace behavior to send bogus record when ray direction is zero. | 
| 795 | (Before, it only flushed values with no corresponding record.)  This | 
| 796 | change was needed to facilitate its use with the new vwrays program. | 
| 797 |  | 
| 798 | Modified ies2rad so that it no longer produces glow sources for the sides | 
| 799 | of objects, which caused unnatural dark bands near the ceilings of | 
| 800 | direct/indirect installations.  (Included in 3.1.4.) | 
| 801 |  | 
| 802 | Fixed bug in rpiece that caused the -pa option to fail.  (Included in 3.1.2.) | 
| 803 |  | 
| 804 | Made ximage emphasize pixels in the selected region for the 'a' and 'h' | 
| 805 | commands to adjust the exposure using histogram compression. | 
| 806 | (Included in 3.1.4.) | 
| 807 |  | 
| 808 | Fixed bug in trad which caused it to fail when there were tabs in the input. | 
| 809 | (Included in 3.1.3.) | 
| 810 |  | 
| 811 | Fixed bug in pcond that caused it to white-out borders of some fisheye views. | 
| 812 | (Included in 3.1.3.) | 
| 813 |  | 
| 814 | Added facility to ra_tiff to read and write new LogLuv high dynamic-range | 
| 815 | image formats. | 
| 816 |  | 
| 817 | Changed ambient value averaging in rendering programs (-aw option) to use | 
| 818 | geometric mean rather than arithmetic mean, which tended to arrive at | 
| 819 | too-high estimates and cause runaway calculations.  (Included in 3.1.4.) | 
| 820 |  | 
| 821 | Added -g, -p, -m and -d options for gamma, paper size, margins and dpi | 
| 822 | to the ra_ps program.  This allows for much better control over output | 
| 823 | to PostScript printers. | 
| 824 |  | 
| 825 | Fixed compiles for AIX -- select() incompatibility and macro conflicts. | 
| 826 | (Included in 3.1.6.) | 
| 827 |  | 
| 828 | Increased table sizes to allow up to 4 million primitives when -DBIGMEM | 
| 829 | is defined, provided there's enough virtual memory to hold them! | 
| 830 |  | 
| 831 | Fixed error in viewloc() for computing view locations for cylindrical views. | 
| 832 |  | 
| 833 | Wrote rholo, rhcopy, rhpict, and rhoptimize programs for holodeck | 
| 834 | creation, display, and manipulation.  This is a much more powerful way | 
| 835 | to view a model than rview, though it lacks many of the utility commands. | 
| 836 |  | 
| 837 | Added the ability to separate concatanated animation frames using ra_rgbe. | 
| 838 | This output facility of rpict was previously useless because nothing could | 
| 839 | get anything past the first frame. | 
| 840 |  | 
| 841 | Wrote compamb program to compute a good ambient value for a rad input file. | 
| 842 | Using this script is preferable to setting the -aw option of rpict, which | 
| 843 | seems to result in splotchy artifacts in many situations. | 
| 844 |  | 
| 845 | Changed rad so it doesn't use the -aw option, which was causing some rather | 
| 846 | annoying artifacts.  (Added as patch to 3.1.8.) | 
| 847 |  | 
| 848 | Modified ranimate to change directories before running transfer or archive | 
| 849 | commands. | 
| 850 |  | 
| 851 | Added -pm option to rpict to perform jittered motion blurring. | 
| 852 |  | 
| 853 | Created phisto script and added -I option to pcond for computing | 
| 854 | multiple, identical exposures. | 
| 855 |  | 
| 856 | Fixed time zone specifications in gensky.  (Added as patch to 3.1.9.) | 
| 857 |  | 
| 858 | Fixed bug in mixture functions that caused erroneous modifier loops. | 
| 859 | (Added as patch to 3.1.10.) | 
| 860 |  | 
| 861 | Wrote glrad program for interactive display of Radiance scenes using OpenGL. | 
| 862 | Modified objview program to use rad and glrad for rendering. | 
| 863 |  | 
| 864 | Changed the way ray weights are computed for participating media (including | 
| 865 | dielectrics) so they more accurately reflect a ray's contribution, avoiding | 
| 866 | some artifacts with unsealed dielectric objects and the ambient calculation. | 
| 867 |  | 
| 868 | Fixed problem with dielectric materials with textures where rays that should | 
| 869 | have penetrated or reflected do the opposite. | 
| 870 |  | 
| 871 | Created ra_hexbit program to generate bitmap files for use with hexbit4x1.fnt. | 
| 872 |  | 
| 873 | ****************** COMPATIBILITY CHANGE *********************** | 
| 874 | Altered mixtures to take the most recent modifier definition | 
| 875 | rather than the last one in the entire description.  Made the | 
| 876 | same change for illum's and mirror's.  Also, fixed a bug in | 
| 877 | the antimatter type where it didn't always get the correct | 
| 878 | material for shading. | 
| 879 |  | 
| 880 | Wrote normtiff program to quickly tone-map and convert Radiance pictures | 
| 881 | and SGILOG-encoded TIFF's to flat RGB TIFF output. | 
| 882 |  | 
| 883 | Added -r option to protate for CCW rotations. | 
| 884 |  | 
| 885 | Added ability to load values from read-only ambient file in rpict, | 
| 886 | rtrace and rview.  This may be useful when starting with the same | 
| 887 | values on many processors, where NFS lock contention would slow | 
| 888 | things down if they also wrote values back to the file. | 
| 889 |  | 
| 890 | Wrote rhinfo program for printing out holodeck section information. | 
| 891 |  | 
| 892 | Modified rad "scene" variable to allow in-line command specifications. | 
| 893 |  | 
| 894 | Added added -s and -b options to ra_ppm for changing output scale and | 
| 895 | forcing greyscale output. | 
| 896 |  | 
| 897 | Now allow negative distances for the fore clipping plane in rpict. | 
| 898 | This may be useful for rendering holographic stereograms. | 
| 899 |  | 
| 900 | Added -f option to xform to read arguments from files.  This can save | 
| 901 | a lot of scene loading time by reducing multiple xform invocations. | 
| 902 |  | 
| 903 | Added support for 15-bit TrueColor visuals in ximage. | 
| 904 |  | 
| 905 | Added (undocumented) -P option to macbethcal for picking chart corners | 
| 906 | directly using ximage. | 
| 907 |  | 
| 908 | Added -r option to rholo for opening holodeck files read-only. | 
| 909 |  | 
| 910 | Added correction factor for solid angle change in dielectrics as | 
| 911 | noted in Eric Veach's thesis. | 
| 912 |  | 
| 913 | Added von Kries white balance transform for color conversion using | 
| 914 | CMCCAT2000 matrix. | 
| 915 |  | 
| 916 | Added CAPDATE field to rendering headers to record render date. | 
| 917 |  | 
| 918 | Added mixpict primitive for using pictures to generate mixtures. | 
| 919 |  | 
| 920 | Fixed bug in Type B photometry angle calculation in source.cal discovered | 
| 921 | by Erich Phillips. | 
| 922 |  | 
| 923 | ============================== | 
| 924 | Version 3.5 (Released 3/21/03) | 
| 925 |  | 
| 926 | Fixed bug in replmarks pointed out by Georg Mischler, which caused | 
| 927 | garbage to be output under specific conditions (unscaled, unrotated | 
| 928 | instances). | 
| 929 |  | 
| 930 | Fixed bug in normtiff that caused occassional weird colors | 
| 931 | on human tone-mapping of 32-bit LogLuv inputs (tmapluv.c). | 
| 932 |  | 
| 933 | Fixed -o option of pcomb so it resets le(i) and color exposure functions | 
| 934 | to unity. | 
| 935 |  | 
| 936 | Fixed a bug in Type B photometry in ies2rad source.cal introduced | 
| 937 | in last fix where spherical sources were getting symmetric | 
| 938 | distributions front-to-back. | 
| 939 |  | 
| 940 | Fixed another bug in ies2rad for 90-270 bilaterally symmetric fixtures, which | 
| 941 | seems to have been there from the beginning.  Thanks to Jack de Valpine | 
| 942 | for pointing it out. | 
| 943 |  | 
| 944 | Added NORANDOM symbol for tests with all random sampling turned off. | 
| 945 |  | 
| 946 | Fixed a bug in expression evaluation code that was causing unneeded | 
| 947 | evaluations of constants.  This is a fix on an earlier fix of a more | 
| 948 | serious bug prior to the 3.4 release, where the expression clock | 
| 949 | was wrapping silently and allowing values to go stale. | 
| 950 |  | 
| 951 | Fixed an even more serious bug in ies2rad for thin fixtures, where | 
| 952 | it was using "flatcorr" without the proper correction for the | 
| 953 | emitting area.  Thanks again to Jack de Valpine for spotting this. | 
| 954 |  | 
| 955 | --- All of the above was put into a 3.4.1 patch release 4/1/2002 | 
| 956 |  | 
| 957 | Added a facility to gensurf to make holes in the mesh using a | 
| 958 | valid(s,t) function. | 
| 959 |  | 
| 960 | Fixed bug in pcond that caused a bus error on images with large dark | 
| 961 | regions when acuity switch was set. | 
| 962 |  | 
| 963 | Fixed bug in pcomb that caused the S(n) function to return half | 
| 964 | the solid angle value it should have.  (Thanks to John Mardaljevic | 
| 965 | for discovering this error.) | 
| 966 |  | 
| 967 | Made rpict/rpiece/vwrays -vf option accept "-" as a synonym | 
| 968 | for standard input. | 
| 969 |  | 
| 970 | Fixed bug in persist functions (-P and -PP) with FreeBSD | 
| 971 | (including MacOS X) having to do with altered system function | 
| 972 | behaviors.  Neither mknod() nor freopen() behave as they | 
| 973 | used to. | 
| 974 |  | 
| 975 | Improved accuracy of irradiance gradient calculation near | 
| 976 | specular surfaces by using the effective ray distance | 
| 977 | rather than the first surface intersection.  (John | 
| 978 | Mardaljevic had pointed out some errors he was seeing | 
| 979 | with a particular atrium model.) | 
| 980 |  | 
| 981 | Reinstated my favorite little Fresnel approximation for | 
| 982 | perfectly smooth materials, so grazing angles show an | 
| 983 | accurate gradient.  Simultaneously revised the computation | 
| 984 | of the direct component for proper energy balance. | 
| 985 | (Thanks to Phillip Greenup for nagging John M. who nagged me.) | 
| 986 |  | 
| 987 | Improved the accuracy and appearance of indirect irradiance | 
| 988 | interpolation for smoothed surfaces.  (Thanks to Bernhard | 
| 989 | Spanlang for noticing the problem.) | 
| 990 |  | 
| 991 | Fixed intolerance for carriage-returns in mkillum's input files, | 
| 992 | which caused problems for files imported from DOS/Windows. | 
| 993 |  | 
| 994 | Fixed apparent bug that I couldn't reproduce in rpict for very | 
| 995 | narrow views, which sent it into an infinite loop under Linux. | 
| 996 | (Rich Gillibrand of Bristol Univ. pointed it out.) | 
| 997 |  | 
| 998 | Improved movement in rholo for low-detail holodecks on fast | 
| 999 | graphics processors by inserting 50 ms pause during motion | 
| 1000 | feedback. | 
| 1001 |  | 
| 1002 | Finally fixed ages-old consistency error where ambient value | 
| 1003 | lists were sorted incorrectly with the GNU-C compiler, | 
| 1004 | causing the dreaded "address not found in avlmemi" crash.  All | 
| 1005 | this time, I thought it was due to a faulty qsort(3) routine, | 
| 1006 | when in fact it was due to the way GNU-C compares pointers. | 
| 1007 | The fix was to change a single word in ambient.c from "AMBVAL" | 
| 1008 | to "char" and now it all magically works.  No more -Dtracktime=0, | 
| 1009 | hurrah! | 
| 1010 |  | 
| 1011 | Fixed pcond veil behavior for scenes that have their contrast | 
| 1012 | reduced by primary tone-mapping algorithms.  Previously, the | 
| 1013 | veil would come out looking like a fog because it was applied | 
| 1014 | prior to dynamic range compression and did not consider the | 
| 1015 | overall effect.  In the new version, the veil is adjusted | 
| 1016 | after dynamic range compression so that the net reduction | 
| 1017 | in visibility is approximately correct over the whole image. | 
| 1018 | (Later made this optional on compile with the ADJ_VEIL symbol, as I | 
| 1019 | noticed more artifacts than improvements in the resulting images.) | 
| 1020 |  | 
| 1021 | Fixed bug in BRTDfunc that caused an error in the calculation | 
| 1022 | of the diffuse transmitted ambient component.  This must have | 
| 1023 | been introduced early on, but never noticed by me or anyone. | 
| 1024 |  | 
| 1025 | Wrote an interactive script called "glaze" (src/gen/glaze.csh) | 
| 1026 | that computes a good material model for fritted and low-E glazing | 
| 1027 | systems.  Thanks to Visarc (Jack de Valpine) for paying for its | 
| 1028 | development and permitting it into the general distribution. | 
| 1029 |  | 
| 1030 | Increased scanline window in pcomb to 64 (+/- 32 pixels) to allow | 
| 1031 | for larger kernels in filtered images. | 
| 1032 |  | 
| 1033 | ****************** COMPATIBILITY CHANGE *********************** | 
| 1034 | Changed behavior of pfilt gaussian blur to match more precise | 
| 1035 | definition.  A blur radius of 0.6 is now preferred over the | 
| 1036 | previous value of 1.0. | 
| 1037 |  | 
| 1038 | Added ANSI function prototypes to the header files in | 
| 1039 | src/common/ and src/rt/ and cleaned up the options processing | 
| 1040 | in the rpict, rtrace, and rview main procedures so that the | 
| 1041 | core Radiance rendering code can be more easily | 
| 1042 | called by new application programs.  Changed src/rt/Rmakefile | 
| 1043 | to create a rendering library called "libradiance.a" and | 
| 1044 | to install it in the src/lib/ directory along with the new | 
| 1045 | raycalls.o module, which should facilitate the building | 
| 1046 | of new applications outside the src/rt/ directory.  The | 
| 1047 | raypcalls.o module, also installed in src/lib, manages | 
| 1048 | parallel rendering on multiprocessors with shared memories. | 
| 1049 |  | 
| 1050 | Wrote new ranimove animation rendering program, which is an | 
| 1051 | alternative to ranimate.  The key difference is that | 
| 1052 | ranimove is optimized for moving scenes, and includes | 
| 1053 | a complete blur simulation for camera and object motion. | 
| 1054 | It also incorporates an sophisticated model of perceivable | 
| 1055 | error based on visual focus, and allows progressive | 
| 1056 | animation so one can explicitly control rendering time | 
| 1057 | and/or accuracy.  See the man page for details. | 
| 1058 |  | 
| 1059 | ****************** COMPATIBILITY CHANGE *********************** | 
| 1060 | The sense of the MBLUR setting has been changed for the ranimate | 
| 1061 | command.  The first value is now the fraction of a frame during | 
| 1062 | which the shutter is open, and the _second_ argument (which is | 
| 1063 | optional) is the number of samples to specify to pmblur. | 
| 1064 |  | 
| 1065 | Enhanced octree reader behavior so it will accept command | 
| 1066 | specifications preceded by an exclamation mark ('!').  This | 
| 1067 | enables rtrace and rview to take octrees from commands similar | 
| 1068 | to rpict reading its octree from the standard input.  All | 
| 1069 | programs taking octrees as arguments will be affected by this | 
| 1070 | change.  However, since rad needs to get the modified date | 
| 1071 | from the octree, rad will refuse such an octree command | 
| 1072 | specification. | 
| 1073 |  | 
| 1074 | Fixed a bug in src/common/fgetline.c where it failed to elide | 
| 1075 | carriage-returns in Windows files. | 
| 1076 |  | 
| 1077 | Modified src/common/fgetword.c so it accepts single- or | 
| 1078 | double-quoted words with spaces in preparation for the | 
| 1079 | Windows version, which needs to allow spaces in file | 
| 1080 | paths.  Since fgetword() is called by all programs that | 
| 1081 | read in string arguments in scene files, these may now | 
| 1082 | be quoted with the expected behavior.  Also added a | 
| 1083 | fputword() call to the library to automatically quote | 
| 1084 | words on output that contain white space.  This routine | 
| 1085 | is now called from all the right places, I hope!  The | 
| 1086 | code does not support spaces in primitive identifiers, | 
| 1087 | and you will get peculiar errors if you try them. | 
| 1088 |  | 
| 1089 | Eliminated virtually all symbolic links from the source | 
| 1090 | tree, most of which were links to compatibility routines | 
| 1091 | and the calcomp functions for expression parsing. | 
| 1092 | Replaced -D* defines used in cal* routines with "esupport" | 
| 1093 | global that allows calling programs to set which language | 
| 1094 | options they want to support at runtime.  More programs now | 
| 1095 | link against the -lrt library.  Consolidated the src/cal | 
| 1096 | subdirectories in the process. | 
| 1097 |  | 
| 1098 | Added -dw option to pvalue program to input and output | 
| 1099 | 16-bit word values (-dW for byte swapping). | 
| 1100 |  | 
| 1101 | Changed call ordering in material shaders to ensure | 
| 1102 | proper surface normal perturbation for two-sided, | 
| 1103 | textured surfaces. | 
| 1104 |  | 
| 1105 | Added a new "mesh" primitive, which permits very | 
| 1106 | complicated geometries with associated (u,v) coordinates | 
| 1107 | using the new obj2mesh converter and the new -o option | 
| 1108 | of gensurf for .OBJ output.  Mesh compilation takes | 
| 1109 | roughly 500 bytes/triangle in obj2mesh, but memory | 
| 1110 | access is well-ordered compared to rendering, which | 
| 1111 | takes about 50 bytes/triangle with full surface normal | 
| 1112 | and (u,v) coordinate interpolation.  (The actual mesh | 
| 1113 | is represented in 15 bytes/triangle, and the rest is | 
| 1114 | taken by the octree structure and malloc overhead.) | 
| 1115 | Local coordinates are set with the "vt" statement | 
| 1116 | in the Wavefront .OBJ file and accessed via the new | 
| 1117 | "Lu" and "Lv" variables in a Radiance .cal file. | 
| 1118 | Multiple instances of the same mesh with different | 
| 1119 | transformations take little additional space during | 
| 1120 | rendering, permitting scanned relief surfaces and | 
| 1121 | displacement-map-like effects to be repeated as desired. | 
| 1122 |  | 
| 1123 | Changed internal representation of alias'es in order | 
| 1124 | to maintain information about links for programs like | 
| 1125 | rshow that work from frozen octrees.  Added a special | 
| 1126 | alias modifier keyword, "inherit", to indicate that | 
| 1127 | an alias should get the same modifier as the original | 
| 1128 | target to simplify common alias usage for material | 
| 1129 | substitution. | 
| 1130 |  | 
| 1131 | Increased default oconv -n value to 6.  Since triangle | 
| 1132 | meshes commonly have six faces joining at each vertex, | 
| 1133 | values less than this cause resolution-limited voxel | 
| 1134 | subdivision.  Increased default -r option to 16384 | 
| 1135 | as well.  Also increased maximum internal set size | 
| 1136 | from 127 to 511, to accommodate difficult mesh | 
| 1137 | models where many faces come together at a point. | 
| 1138 | This required a little reprogramming in for couple | 
| 1139 | of recursive routines using sets to avoid overrunning | 
| 1140 | the stack limit. | 
| 1141 |  | 
| 1142 | ============================== | 
| 1143 | Version 3.6 (Released 10/21/04) | 
| 1144 |  | 
| 1145 | Modified 4-byte RGBE encoding routine to avoid problems | 
| 1146 | when one or two primary values is negative and the other(s) | 
| 1147 | positive.  This used to generate some strange color values. | 
| 1148 |  | 
| 1149 | Added -oc option to rtrace to output local (u,v) coordinates. | 
| 1150 |  | 
| 1151 | Fixed bugs in local uv and j unit vector variables in src/rt/func.c. | 
| 1152 |  | 
| 1153 | Added warning message to OpenGL rendering routines about new | 
| 1154 | mesh primitive, which we cannot currently render. | 
| 1155 |  | 
| 1156 | Added -if, -id, -of, and -od options to rcalc to provide for | 
| 1157 | binary float and double i/o. | 
| 1158 |  | 
| 1159 | ****************** COMPATIBILITY CHANGE *********************** | 
| 1160 | Changed holodeck format to used off_t instead of long for beam | 
| 1161 | positions, which allows holodecks to grow to system file size limit. | 
| 1162 |  | 
| 1163 | Fixed wrapping long in source hit test code, which would cause | 
| 1164 | odd horizontal lines in some very long renderings. | 
| 1165 |  | 
| 1166 | Added -f and -w options to ra_tiff to create IEEE float and 16-bit/primary | 
| 1167 | TIFF output, respectively.  These formats are also understood on reverse | 
| 1168 | conversion.  (16-bit/primary has been understood for some time, but not | 
| 1169 | IEEE float.) | 
| 1170 |  | 
| 1171 | Added -N option to rad to start multiple rendering processes in | 
| 1172 | parallel. | 
| 1173 |  | 
| 1174 | Fixed bug where mesh instances were not being freed, so subsequent calls | 
| 1175 | in programs like ranimove would refer to bogus data. | 
| 1176 |  | 
| 1177 | Added support in normtiff for floating-point and 16-bit/sample TIFF input | 
| 1178 | files. | 
| 1179 |  | 
| 1180 | Changed marksources() routine (src/rt/source.c) to check all | 
| 1181 | primitives in the modifier chain for emitting types, not only | 
| 1182 | the first.  This permits sources to be described with intervening | 
| 1183 | modifiers before the light/illum/glow primitive and allows aliases | 
| 1184 | as well. | 
| 1185 |  | 
| 1186 | Fixed bug in xform where it was neglecting to add transform arguments | 
| 1187 | to new mesh primitive. | 
| 1188 |  | 
| 1189 | Added -dF and -dD options to pvalue for byte-swapped floats and | 
| 1190 | doubles, respectively. | 
| 1191 |  | 
| 1192 | Changed meta2tga to output correct colors. | 
| 1193 |  | 
| 1194 | Changed local coordinate index from 32-bits to 16-bits, which requires | 
| 1195 | that Radiance mesh files be recompiled.  (Later decided against this | 
| 1196 | change, as it caused problems with some models.) | 
| 1197 |  | 
| 1198 | Changed integer tone-mapping routines to better deal with images | 
| 1199 | containing large, constant regions. | 
| 1200 |  | 
| 1201 | Improved interaction with rholo -o ogl driver under OS X, which was | 
| 1202 | returning bad values from the depth buffer. | 
| 1203 |  | 
| 1204 | Minor bug fix in ranimove where it was restarting processes when it | 
| 1205 | didn't need to. | 
| 1206 |  | 
| 1207 | Increased accuracy of default ambient parameters in rpict, rview, and | 
| 1208 | rtrace.  In rad program, doubled -ar value, -ad value, and -as value, | 
| 1209 | and decreased -aa value a bit.  Also adjusted -lr upwards and -lw | 
| 1210 | downwards.  I should have done these things long ago, as processors | 
| 1211 | have been getting faster and faster over the years. | 
| 1212 |  | 
| 1213 | Fixed bug discovered by Marcus Jacobs where oconv was dumping core | 
| 1214 | when it was given too many modifiers. | 
| 1215 |  | 
| 1216 | Fixed problem with rpict where it was drawing illum sources badly | 
| 1217 | even when they weren't all that small in the view. | 
| 1218 |  | 
| 1219 | Added in(i) function to rcalc for more flexible channel evaluation. | 
| 1220 |  | 
| 1221 | Replaced all calls to vfork() with regular fork() calls. | 
| 1222 |  | 
| 1223 | Fixed bug in glarendx for dgr calculation with sources behind view. | 
| 1224 |  | 
| 1225 | Added -p option to histo to print percentages/percentiles r.t. counts. | 
| 1226 |  | 
| 1227 | Added a source occluder cache to accelerate shadow testing.  This | 
| 1228 | can save up to 50% of the calculation time in scenes with many | 
| 1229 | light sources, especially ones containing large occluders.  This | 
| 1230 | optimization may be tuned or switched off with the -DSHADCACHE=N | 
| 1231 | compile switch, where N is the resolution of the shadow cache, or | 
| 1232 | 0 to disable it.  Since this is purely a time vs. memory trade-off, | 
| 1233 | I decided not to make it a new command-line option.  (We already | 
| 1234 | have plenty.) | 
| 1235 |  | 
| 1236 | ****** COMPATIBILITY CHANGE ******** | 
| 1237 | Changed the following command names to avoid conflicts: | 
| 1238 | rview -> rvu (with symbolic link back to rview) | 
| 1239 | calc -> icalc | 
| 1240 | lam -> rlam | 
| 1241 | gencat -> gencatenary | 
| 1242 |  | 
| 1243 | Improved -f option of normpat, which caused odd color changes before. | 
| 1244 |  | 
| 1245 | Created pgblur script which does fast Gaussian blur of image without changing | 
| 1246 | its dimensions.  This is very useful in certain types of image processing | 
| 1247 | calculations, such as finding or removing low frequencies. | 
| 1248 |  | 
| 1249 | ****** COMPATIBILITY CHANGE ******** | 
| 1250 | Changed little-used objpict script so that it takes scene files rather than | 
| 1251 | rpict options on the command line, and puts everything into the right | 
| 1252 | coordinate position automatically rather than requiring the user to do it. | 
| 1253 |  | 
| 1254 | Added -I option to replmarks for mesh instancing. | 
| 1255 |  | 
| 1256 | Made similar change for virtual sources to allow modifiers and aliases | 
| 1257 | on the mirror and prism types to work properly. | 
| 1258 |  | 
| 1259 | Rob Guglielmetti added -lw and -lh options to falsecolor to control the | 
| 1260 | legend dimensions.  Made it so -lw 0 and/or -lh 0 turns legend off. | 
| 1261 |  | 
| 1262 | Made it so pcompos will read everything from a stream even if it doesn't | 
| 1263 | need it, so input commands will not receive a hangup signal. | 
| 1264 |  | 
| 1265 | Wrote ra_bmp program to convert to and from Windows BMP files (finally). | 
| 1266 | It's the most horrible image format I've ever seen, and I've seen a lot. | 
| 1267 |  | 
| 1268 | Increased -aa default value for all renderers (and also -ad and -as in | 
| 1269 | rview) at Schorsch's suggestion.  I think this undid my earlier decrease | 
| 1270 | of -aa last time, which I guess was ill-considered. | 
| 1271 |  | 
| 1272 | Modified oconv to keep subdividing the octree if there are too many | 
| 1273 | objects in a voxel even when the -r resolution limit has been | 
| 1274 | reached.  This was not done before due to problems with recursion, | 
| 1275 | and still, it will only continue to 256 times the original -r limit. | 
| 1276 | If that isn't enough, then there's probably no hope, anyway. | 
| 1277 |  | 
| 1278 | Added -l option to obj2mesh to search for material files in library | 
| 1279 | locations. | 
| 1280 |  | 
| 1281 | Increased polygon vertex limit to 512 in obj2mesh and obj2rad and added | 
| 1282 | warning if this limit is exceeded. | 
| 1283 |  | 
| 1284 | Added tone-mapping and monitor primary options to ra_bmp.  This gives | 
| 1285 | new functionality similar to normtiff and ximage.  It would be nice to | 
| 1286 | add this feature to the other ra_* programs as well...  someday. | 
| 1287 |  | 
| 1288 | Fixed long-standing bug in reported pixel ordering out of certain | 
| 1289 | protate commands. | 
| 1290 |  | 
| 1291 | Added -p option to rcalc for "passive mode" that transmits | 
| 1292 | unrecognized input -- useful for substituting data in the | 
| 1293 | middle of a stream. | 
| 1294 |  | 
| 1295 | Fixed a very obscure bug in rpict that caused a dark horizontal | 
| 1296 | line in certain cylindrical projections due to improper drawing | 
| 1297 | of the sky dome source in rt/srcdraw.c. | 
| 1298 |  | 
| 1299 | Fixed problems with effective ray lengths computed for dielectric | 
| 1300 | and BRTDfunc materials.  This was most evident in breakup of holodeck | 
| 1301 | views when VDISTANCE=True. | 
| 1302 |  | 
| 1303 | Fixed rad so that 'scene' variable may consist only of inline commands. | 
| 1304 |  | 
| 1305 | Fixed bug introduced in shadow caching routines where sources in the | 
| 1306 | middle of spheres were not illuminating properly.  Thanks to Guilio | 
| 1307 | Antonutto for spotting this problem. | 
| 1308 |  | 
| 1309 | Modified gensky behavior so if time is given with standard time zone | 
| 1310 | designation, any -m option is ignored. | 
| 1311 |  | 
| 1312 | Added -n option to mkillum for (shared memory) parallel processing. | 
| 1313 |  | 
| 1314 | Fixed a long-standing bug in parallel processing code that only | 
| 1315 | seemed to manifest with the new mkillum -n option, where rtrace | 
| 1316 | would deadlock upon termination.  The reason it never showed up | 
| 1317 | before is because I always closed processes in the reverse order | 
| 1318 | of opening them in other programs.  I went through and found similar | 
| 1319 | (potential) bugs in the rview device subprocess code and util/netproc.c. | 
| 1320 |  | 
| 1321 | Corrected the normalization of the Gaussian reflectance model.  This will | 
| 1322 | cause an increase in specularity for low-lying light sources. | 
| 1323 | Thanks to Don Walters of Boeing and Arne Duer of the Univ. of Innsbruck | 
| 1324 | for pointing out this error.  The square root used for the two cosines | 
| 1325 | in the denominator of the normalization factor should not be present. | 
| 1326 | This was a serious mistake I made in the original model, which went | 
| 1327 | undiscovered (at least to my knowledge) for over a decade.  I think | 
| 1328 | Bruce Walter of Cornell may have known about it, but I never heard | 
| 1329 | the details of his discovery. | 
| 1330 |  | 
| 1331 | Enabled the -p option for primary conversion without tone-mapping | 
| 1332 | in ra_bmp.  Also provides for XYZE input conversion to RGB. | 
| 1333 |  | 
| 1334 | Fixed what I consider a bug in pvalue -o when taking XYZE files on input, | 
| 1335 | where it was inappropriately undoing the exposure value so that it always | 
| 1336 | reported radiance rather than XYZ values with Y in cd/m^2. | 
| 1337 |  | 
| 1338 | Made it so ra_bmp only produces run-length encoded 8-bit output for | 
| 1339 | grayscale images that are tone-mapped.  This minimizes circumstances | 
| 1340 | under which output scanline order is reversed. | 
| 1341 |  | 
| 1342 | Fixed bug in rcalc where it sometimes wasn't parsing the input format | 
| 1343 | correctly. | 
| 1344 |  | 
| 1345 | ===================== | 
| 1346 | Version 3.7 (Released 7/25/05) | 
| 1347 |  | 
| 1348 | Fixed bug in source occluder cache which caused consistency error | 
| 1349 | for distant sources and mist materials.  (Thanks to Mark Stock for | 
| 1350 | finding the problem.) | 
| 1351 |  | 
| 1352 | Fixed serious bug in source drawing routines for rpict, where the edges | 
| 1353 | of light sources were appearing through obstructions.  (Thanks to Veronica | 
| 1354 | Sundstedt for pointing this out.) | 
| 1355 |  | 
| 1356 | (The above were included in the 3.6.1 patch release.) | 
| 1357 |  | 
| 1358 | Changed default temporary directory from /usr/tmp, which doesn't exist | 
| 1359 | on a lot of systems these days, to /tmp. | 
| 1360 |  | 
| 1361 | Eliminated many unused files and programs from the distribution, including | 
| 1362 | the following programs that were being built but no longer used: | 
| 1363 | oki20   - printer driver for OkiMate 20 printer (B&W) | 
| 1364 | oki20c  - printer driver for OkiMate 20 color printer | 
| 1365 | pcwarp  - intended as more general substitute for macbetcal, | 
| 1366 | but never quite worked | 
| 1367 | ra_avs  - convert to & from AVS image format | 
| 1368 | ra_bn   - convert to & from Barneyscann format | 
| 1369 | ra_pr   - convert to & from 8-bit Sun rasterfile format | 
| 1370 | ra_pr24 - convert to & from 24-bit Sun rasterfile format | 
| 1371 | thf2rad - convert GDS "things file" to Radiance scene format | 
| 1372 | If anyone is still wanting any of the above programs, let us know and we'll | 
| 1373 | reinstate it. | 
| 1374 |  | 
| 1375 | Fixed bug in pcond's acuity simulation for small view angles (less than | 
| 1376 | 4 degrees horizontally or vertically).  Thanks to James Lee for figuring | 
| 1377 | this out. | 
| 1378 |  | 
| 1379 | Added script to convert to/from ICT's Poskanzer Float Map, which I don't | 
| 1380 | care to support officially due to its machine-dependent byte order. | 
| 1381 |  | 
| 1382 | Fixed bug that caused incorrect reporting of non-surface in set when | 
| 1383 | mixing meshes and instances.  (Thanks to Jack de Valpine for discovery.) | 
| 1384 |  | 
| 1385 | Fixed inaccuracy in calculation of diffuse transmission in the presence | 
| 1386 | of pure specular (Fresnel reflection) using "trans" material.  Thanks | 
| 1387 | to Christoph Reinhart for pointing out the error. | 
| 1388 |  | 
| 1389 | Made internal change to tone-mapping library to use structure pointer | 
| 1390 | rather than stack, making code re-entrant and more up to modern standards. | 
| 1391 |  | 
| 1392 | Added -pd option to handle depth-of-field blur in rpict.  This requires | 
| 1393 | that the view directon (-vd option) include focal distance information, | 
| 1394 | which is now preserved by the various view file routines, and reported | 
| 1395 | by the vwright command. | 
| 1396 |  | 
| 1397 | Added DBLUR variable to ranimate and pmdblur script to handle simultaneous | 
| 1398 | motion and depth-of-field blurring.  Thanks to Visarc for funding this work. | 
| 1399 |  | 
| 1400 | Added setting of focus distance in rvu ("focus" command) and rholo | 
| 1401 | ('f'/"frame" command). | 
| 1402 |  | 
| 1403 | Changed default remote shell in ranimate to "ssh" rather than "rsh", | 
| 1404 | which has been abandoned on most Unix systems due to security issues. | 
| 1405 |  | 
| 1406 | Fixed behavior of source primitive using illum with no alternate | 
| 1407 | material.  These now become transparent so one can see the sky or | 
| 1408 | light-probe background for use in image-based lighting.  Previously, | 
| 1409 | the user needed to specify the background glow as the alternate | 
| 1410 | material for a distant illum source to behave properly.  (This still | 
| 1411 | works.) | 
| 1412 |  | 
| 1413 | Fixed some minor problems and inconsistencies with 16-bit/channel | 
| 1414 | TIFF i/o in ra_tiff. | 
| 1415 |  | 
| 1416 | Created mksource program to generate distant sources for improved | 
| 1417 | image-based lighting with light probes. | 
| 1418 |  | 
| 1419 | Changed ambient calculation so that -ad will not limit recursion | 
| 1420 | depth, and a minimum of 27 samples will be sent out for each stored | 
| 1421 | ambient value, or 3 samples if -aa is 0 (caching off). | 
| 1422 |  | 
| 1423 | Added -oM option to rtrace to report material (rather than modifier) | 
| 1424 | for cases where actual material is aliased or further up modifier chain. | 
| 1425 |  | 
| 1426 | Rearranged the way ray contributions are computed so that it might be | 
| 1427 | possible to use rtrace to derive daylight coefficients and optical | 
| 1428 | transfer functions.  The new -oTW option of rtrace produces color | 
| 1429 | contribution weights for each ray, which combined with the -ti (or -tI) | 
| 1430 | option permits the contribution of selected surfaces or sources to | 
| 1431 | be determined.  Using the -oTW option, one should also specify | 
| 1432 | options "-dt 0 -aa 0 -as 0" for optimal results.  In particular, | 
| 1433 | one cannot expect reasonable tallies with -ab >= 1 and irradiance | 
| 1434 | caching on (-aa > 0). | 
| 1435 |  | 
| 1436 | The same code modifications included a change to the indirect computation | 
| 1437 | with caching switched off (-aa 0).  Whereas before, the number of secondary | 
| 1438 | rays after the first bounce were half of the previous generation, they are | 
| 1439 | now determined by the surface reflectance, making for a better and faster | 
| 1440 | calculation.  It should now be possible to compute many bounces with -aa 0, | 
| 1441 | which used to be prohibitively expensive. | 
| 1442 |  | 
| 1443 | Added -T option to xshowtrace to trace rays to light sources. | 
| 1444 |  | 
| 1445 | Added meta2bmp program to produce BMP files from metafile graphics. | 
| 1446 |  | 
| 1447 | Added cct_x(t) and cct_y(t) to src/cal/cal/blackbody.cal to interpolate | 
| 1448 | CIE chromaticities for particular black-body temperatures. | 
| 1449 |  | 
| 1450 | Increased maximum number of input pictures in pcomb and pcompos to 512. | 
| 1451 |  | 
| 1452 | Created rtcontrib program for computing ray contribution coefficients. | 
| 1453 | This tool may be used to do standard optical ray tracing or daylight | 
| 1454 | coefficient calculations for annual simulations, among other uses. | 
| 1455 |  | 
| 1456 | Added tilde ('~') output option as part of the -o* specification of | 
| 1457 | rtrace.  This permits ray trees to be parsed more easily in binary | 
| 1458 | output mode, as needed by rtcontrib. | 
| 1459 |  | 
| 1460 | Implemented Russian roulette ray termination with -lr <= 0. | 
| 1461 | Made -lr -10 the default in rtcontrib. | 
| 1462 |  | 
| 1463 | Made rtcontrib -f option search RAYPATH directories. | 
| 1464 |  | 
| 1465 | Made it so -o option of rtcontrib can pipe -o output to a command. | 
| 1466 |  | 
| 1467 | Added -if and -of options to total for binary i/o (following rcalc mold). | 
| 1468 |  | 
| 1469 | Switched default options in rtrace to use Russian roulette.  (Rpict and rvu | 
| 1470 | still use biased ray termination.) | 
| 1471 |  | 
| 1472 | Added rtcontrib -r option to recover partial output. | 
| 1473 |  | 
| 1474 | Added -u rendering option for pure Monte Carlo sampling. | 
| 1475 | (Got rid of -DMC compile option, which this makes superfluous.) | 
| 1476 |  | 
| 1477 | Changed -t option of rlam to accept strings as well as single characters. | 
| 1478 |  | 
| 1479 | Fixed bug in rcalc with -l option where it would sometimes go into an | 
| 1480 | infinite loop. | 
| 1481 |  | 
| 1482 | Fixed truly ancient bug in bounding box computation for cones, which | 
| 1483 | could (and did) cause missing segments. | 
| 1484 |  | 
| 1485 | Added -z option to normtiff to output LZW-compressed files. | 
| 1486 |  | 
| 1487 | Last change to total causes it to produce results when it sees an empty | 
| 1488 | line on the input.  This was not intentional, but I decided I like this | 
| 1489 | behavior so I documented it rather than changing it. | 
| 1490 |  | 
| 1491 | ===================== | 
| 1492 | Version 3.8 (Released 10/17/06) | 
| 1493 |  | 
| 1494 | Fixed Russian roulette ray termination, which was doing the opposite of | 
| 1495 | what it should have been doing, resulting in overestimated values below | 
| 1496 | minimum ray sampling weight (serious). | 
| 1497 |  | 
| 1498 | Changed mksource to use 98th percentile (rather than 99th) for threshold. | 
| 1499 |  | 
| 1500 | (Above changes included in 3.7.1 patch release.) | 
| 1501 |  | 
| 1502 | Eliminated writing of EXPOSURE= line in ra_tiff -r when source TIFF | 
| 1503 | does not have STONITS set. | 
| 1504 |  | 
| 1505 | Fixed bug in ambient calculation that caused black values for multiple | 
| 1506 | bounces in some scenes.  Thanks to Mark Stock for creating and sharing | 
| 1507 | the sophisticated test scene that demonstrated this problem. | 
| 1508 |  | 
| 1509 | Fixed bug in antimatter using Russian Roulette sampling. | 
| 1510 |  | 
| 1511 | (Above changes included in 3.7.2 patch release 22 Aug 2005.) | 
| 1512 |  | 
| 1513 | Created fieldcomb script to combine alternate fields in a rendering | 
| 1514 | sequence.  (Development generously sponsored by Iebele Abel.) | 
| 1515 |  | 
| 1516 | Added missing preload of mesh objects for more efficient memory use | 
| 1517 | during parallel rendering -- this was a serious oversight. | 
| 1518 |  | 
| 1519 | Created ran2tiff program to automate exposure setting of animation | 
| 1520 | sequences using a moving histogram in combination with pcond, and | 
| 1521 | converting frames to TIFF. | 
| 1522 |  | 
| 1523 | Eliminated SPEED macro from makeall and source tree. | 
| 1524 |  | 
| 1525 | Added -pj option to vwrays to allow jittering of sample locations. | 
| 1526 |  | 
| 1527 | Fixed bug in rtcontrib where it occasionally missed writing the | 
| 1528 | final bin file.  (Pretty serious, actually.) | 
| 1529 |  | 
| 1530 | Added -Dfseeko=fseek to MACH= line for linux, as fseeko(3) seems to be | 
| 1531 | broken in current versions of Linux.  (Need to remove this later.) | 
| 1532 |  | 
| 1533 | Rearranged struct's for better efficiency on 64-bit architectures. | 
| 1534 |  | 
| 1535 | Added -i option to rlam so it works with binary input formats. | 
| 1536 |  | 
| 1537 | Added rtcontrib -bn option to specify number of bins and fixed bug | 
| 1538 | in recovery of files containing multiple values per record. | 
| 1539 |  | 
| 1540 | Added rtcontrib -fo option to write over existing files, which it now | 
| 1541 | refuses to do without this option. | 
| 1542 |  | 
| 1543 | Made rtcontrib flush output when handed a zero-length ray vector, | 
| 1544 | to match behavior of rtrace. | 
| 1545 |  | 
| 1546 | Improved color scale for falsecolor output. | 
| 1547 |  | 
| 1548 | Added threshold test for Fresnel approximation to prevent its use | 
| 1549 | on smooth surfaces with unrealistically low specularities (less than 1.8%). | 
| 1550 | Water has a specular reflectance of 2.1% at room temperture. | 
| 1551 |  | 
| 1552 | Removed NICE macro settings in rpict and rtrace, which was slowing down | 
| 1553 | the processes under Mac OS X (10.4) by about 60% due to processor napping. | 
| 1554 |  | 
| 1555 | Made xform, replmarks and rad2mgf handle quoted modifiers and names properly. | 
| 1556 |  | 
| 1557 | Fixed problem in genblinds, where it was generating slats that were too | 
| 1558 | wide with the +/-r option.  (Thanks to Helena Buelow-Huebe for discovering | 
| 1559 | this bug.) | 
| 1560 |  | 
| 1561 | Fixed bug in ra_ppm for 16-bit/sample i/o, where it was getting the byte | 
| 1562 | order wrong (apparently). | 
| 1563 |  | 
| 1564 | Added -V option to rtcontrib to report actual contributions, rather than | 
| 1565 | just ray coefficients. | 
| 1566 |  | 
| 1567 | Fixed bug in ranimate that caused it to fail in continuation of renderings. | 
| 1568 |  | 
| 1569 | Renamed librt.a to librtrad.a, to avoid conflict on Solaris. Almost | 
| 1570 | everything now gets linked to -lrtrad instead of -lrt. | 
| 1571 |  | 
| 1572 | Fixed problem with large sample sets, so -u+ option now is truly random. | 
| 1573 | Thanks to Rick Mistrick and Younju Yoon for identifying this problem, | 
| 1574 | which was related to a poorly designed hash function. | 
| 1575 |  | 
| 1576 | Changed -u+ to be the default setting in rtrace (only). | 
| 1577 |  | 
| 1578 | Fixed binary i/o for rlam and vwrays under Windows. | 
| 1579 |  | 
| 1580 | Added tmCvLums() to tone-mapping routines using a 16-bit lookup table | 
| 1581 | on IEEE floats, which is also used to improve speed of COLOR conversions, | 
| 1582 | especially on machines with slow log() calls.  The first call to | 
| 1583 | tmCvLums(), tmCvGrays(), or tmCvColors() initializes the table. | 
| 1584 |  | 
| 1585 | Created optics2rad.csh script to convert from Optics 5 material output | 
| 1586 | to something correct for Radiance.  Built on old glazing.cal function, | 
| 1587 | which is actually incorrect so removed from the distribution. | 
| 1588 |  | 
| 1589 | Fixed nuisance bug in ximage under some SGI machines that caused it to | 
| 1590 | choose an inappropriate visual and display incorrect colors.  (Thanks | 
| 1591 | to Oskar Itzinger for debugging the problem.) | 
| 1592 |  | 
| 1593 | Fixed long-standing inaccuracy of pcompos -t and +t thresholding options. | 
| 1594 |  | 
| 1595 | Fixed bug in handling of views with tabs rather than spaces. | 
| 1596 |  | 
| 1597 | Fixed bug related to alias of alias. | 
| 1598 |  | 
| 1599 | ****** COMPATIBILITY CHANGE ******** | 
| 1600 | Changed default sky turbidity in gensky from the original default of | 
| 1601 | 2.75 to the CIE 110-1994 standard value of 2.45.  Thanks to Marilyne | 
| 1602 | Anderson of MIT for pointing out this discrepancy. | 
| 1603 |  | 
| 1604 | Added -o option to ra_xyze to produce original pixel values. | 
| 1605 |  | 
| 1606 | Fixed bug in tracing of virtual sources, where intervening glazing was | 
| 1607 | not being accounted for properly. | 
| 1608 |  | 
| 1609 | Added -h option to pcompos and pcomb to eliminate verbose headers. | 
| 1610 |  | 
| 1611 | ===================== | 
| 1612 | Version 3.9 (Released 3/30/08) | 
| 1613 |  | 
| 1614 | Added -spec option to falsecolor to restore original spectral color scale. | 
| 1615 | Also added "-s auto" option to automatically set the maximum value. | 
| 1616 |  | 
| 1617 | Added byte-swapping input and output to rcalc. | 
| 1618 |  | 
| 1619 | Additional error-checking for source surfaces. | 
| 1620 |  | 
| 1621 | Re-fixed bug in octree code that caused it to allocate 8 times as | 
| 1622 | much memory as it actually used(!) -- this was pointed out way back | 
| 1623 | in 1999 by Erik Reinhard and Erik Jansen, but the fix they gave me | 
| 1624 | got lost in the slightly broken release process at the time.  This | 
| 1625 | should make a big difference in memory usage, especially for the | 
| 1626 | new mesh primitive.  (I measured 30% less memory usage.) | 
| 1627 |  | 
| 1628 | Corrected ray weights for material mixtures. | 
| 1629 |  | 
| 1630 | Reduced the default -n setting for obj2mesh to take better advantage | 
| 1631 | of the smaller octree structure size. | 
| 1632 |  | 
| 1633 | Fixed bug in shadow cache where it was adding surfaces with antimatter | 
| 1634 | holes cut in them to the obstructor list.  Thanks to John Mardaljevic | 
| 1635 | for discovering and reporting the problem. | 
| 1636 |  | 
| 1637 | Adding ability in mkillum to incorporate BSDF data in calculation. | 
| 1638 | Internal interface (raypcalls) now used in place of rtrace process(es). | 
| 1639 |  | 
| 1640 | Fixed pixel alignment in pcomb for size reduction and enlargement. | 
| 1641 |  | 
| 1642 | Allow rtcontrib user to set -P and -PP options for persistent rendering. | 
| 1643 | The only caveat is that -n setting > 1 requires -PP rather than -P. | 
| 1644 |  | 
| 1645 | Added -c option to rtcontrib to facilitate cumulative calculations. | 
| 1646 |  | 
| 1647 | ****** COMPATIBILITY CHANGE ******** | 
| 1648 | Fixed long-standing bug in source.cal, which caused it to produce | 
| 1649 | reversed anisotropic photometric distributions due to the | 
| 1650 | misorientation of the y-axis.  Thanks to Zack Rogers for discovering | 
| 1651 | and helping debug this problem. | 
| 1652 |  | 
| 1653 | Fixed long-standing bug in replmarks, where triangles with X-side | 
| 1654 | aligned with Z-axis would cause incorrect rotations.  Thanks to | 
| 1655 | Zack Rogers for finding this error. | 
| 1656 |  | 
| 1657 | Added rsensor program to compute sensor signal for daylighting controls. | 
| 1658 | Funding for this component was provided by the Architectural Energy | 
| 1659 | Corporation in Boulder, CO, and directed by Zack Rogers. | 
| 1660 |  | 
| 1661 | Added "planisphere" (stereographic) fisheye view type for traditional | 
| 1662 | daylighting analysis.  Feature requested & explained by Axel Jacobs. | 
| 1663 |  | 
| 1664 | Modified -c option to rtcontrib so it can take a number of input | 
| 1665 | rays to average over, rather than only produce a single accumulated | 
| 1666 | record (which can now be done with -c 0). | 
| 1667 |  | 
| 1668 | ===================== | 
| 1669 | Version 4.0 (Released 3/12/10) | 
| 1670 |  | 
| 1671 | Added -n option to rvu to provide parallel rendering. | 
| 1672 |  | 
| 1673 | ****** COMPATIBILITY CHANGE ******** | 
| 1674 | Changed ".pic" extension to ".hdr" in all sources and documentation | 
| 1675 | to improve interoperability with other software, since this has become | 
| 1676 | the de facto extension for Radiance RGBE and XYZE pictures.  Since file | 
| 1677 | extensions were never more than a convention in Radiance, this does not | 
| 1678 | affect operation, but may require the update of scripts, etc. written | 
| 1679 | by others that assume the ".pic" suffix for Radiance output. | 
| 1680 |  | 
| 1681 | Added -N option to objview to support multiprocessing. | 
| 1682 |  | 
| 1683 | Improved sampling of circular sources (source, sphere, ring types) with | 
| 1684 | quite a bit of help from David Geisler-Moroder. | 
| 1685 |  | 
| 1686 | Added "rpict" and "rvu" variables to rad, and made these as well as | 
| 1687 | the "oconv", "mkillum" and "pfilt" variables accept an alternate | 
| 1688 | command path in each case.  Change suggested by Lars Grobe based | 
| 1689 | on similar Radzilla (radz) facility by Carsten Bauer. | 
| 1690 |  | 
| 1691 | Fixed rad -v N specification to use actual view name if one. | 
| 1692 |  | 
| 1693 | Fixed error in mkillum calculation where it neglected indirect | 
| 1694 | source contributions from BTDF illum's. | 
| 1695 |  | 
| 1696 | Added GMT and LATLONG header lines for Greenwich Mean Time and | 
| 1697 | degrees North Latitude / East Longitude. | 
| 1698 |  | 
| 1699 | Added gendaylit to distribution (finally). | 
| 1700 |  | 
| 1701 | Added ability in vwright(1) to get view from command line arguments. | 
| 1702 |  | 
| 1703 | Created genklemsamp(1) utility to generate samples suitable for | 
| 1704 | BSDF-based annual calculations.  This is the first Perl script to | 
| 1705 | be added to Radiance.  Hopefully, others will follow. | 
| 1706 |  | 
| 1707 | Added klems_int.cal file to compute Klems bins for windows. | 
| 1708 |  | 
| 1709 | Created genskyvec  utility to sample a particular sky and | 
| 1710 | evaluate average radiance over the standard Tregenza sky patches. | 
| 1711 |  | 
| 1712 | Created dctimestep program to compute a set of sensor values or | 
| 1713 | a combined image for a particular time using the daylight | 
| 1714 | coefficient method. | 
| 1715 |  | 
| 1716 | Created src/rt/rayfifo.c for first-in/first-out handling of | 
| 1717 | multiprocessing by raypcalls.c. | 
| 1718 |  | 
| 1719 | Added -n option to rtrace for executing on multiple cores | 
| 1720 | using new rayfifo calls. | 
| 1721 |  | 
| 1722 | ===================== | 
| 1723 | Version 4.1 (Released 11/04/2011) | 
| 1724 |  | 
| 1725 | Changed ranimate behavior so remote login under a different user | 
| 1726 | doesn't necessarily require the presence of the originating user's | 
| 1727 | home directory. | 
| 1728 |  | 
| 1729 | Changed standard transmission function normalization back to what | 
| 1730 | it was in version 3.5, following recommendation of David Geisler-Moroder, | 
| 1731 | who pointed out that the revised BTDF increased too much at grazing. | 
| 1732 |  | 
| 1733 | Changed rad behavior with -N >1 on single view to call rpiece. | 
| 1734 |  | 
| 1735 | Updated SCons build system for MINGW compilation, thanks to Christian | 
| 1736 | Kohler. | 
| 1737 |  | 
| 1738 | Added -u option to rlam for unbuffered output. | 
| 1739 |  | 
| 1740 | Modified dctimestep to accept sky vector and daylight coefficient matrix | 
| 1741 | or list of images to sum together, as suggested by Andy McNeil. | 
| 1742 |  | 
| 1743 | Created genBSDF script to generate BSDF in Windows XML format. | 
| 1744 |  | 
| 1745 | Modified mkillum to accept detailed geometry from BSDF XML files. | 
| 1746 |  | 
| 1747 | Altered obj2rad to ignore zero normals (thanks to Jack de Valpine for | 
| 1748 | suggestions and help). | 
| 1749 |  | 
| 1750 | Fixed bug in genklemsamp that caused non-uniform sampling over surfaces. | 
| 1751 |  | 
| 1752 | Fixed bugs in rhoptimize and rhcopy for 64-bit compilation. | 
| 1753 |  | 
| 1754 | Made a change to avoid problem using gcc --fast-math compile option. | 
| 1755 |  | 
| 1756 | ****** COMPATIBILITY CHANGE ******** | 
| 1757 | Changed behavior of rtrace and rtcontrib so that every scanline is | 
| 1758 | not flushed when both -x and -y are set.  This avoids flush delays | 
| 1759 | in rtcontrib for large numbers of output files and delays while | 
| 1760 | rendering images using rtrace with the -n option. | 
| 1761 |  | 
| 1762 | Added ability for rsensor to output ray origins and directions | 
| 1763 | rather than actually loading octree and computing sensor value. | 
| 1764 |  | 
| 1765 | Fixed old bug in obj2rad where it would stop processing and | 
| 1766 | report a syntax error if the "void" type is used in the map file. | 
| 1767 |  | 
| 1768 | Updated reflection model according to EGSR 2010 paper by David | 
| 1769 | Geisler-Moroder and Arne Duer. | 
| 1770 |  | 
| 1771 | Replaced C-shell version of falsecolor with Perl script written | 
| 1772 | by Axel Jacobs. | 
| 1773 |  | 
| 1774 | ****** COMPATIBILITY CHANGE ******** | 
| 1775 | Changed -sj (specular jitter) option to something called specular | 
| 1776 | sampling (-ss), which if set less than 1 has the same behavior as | 
| 1777 | the old -sj, but when set greater than 1, spawns multiple ray | 
| 1778 | samples from semi-specular surfaces. | 
| 1779 |  | 
| 1780 | Fixed bug noticed by Randolph Fritz that caused ambient sync errors. | 
| 1781 |  | 
| 1782 | Fixed bug in findglare for reading picture files under Windows. | 
| 1783 |  | 
| 1784 | Added options to pvalue to note other color spaces on reverse conversion. | 
| 1785 | Thanks to Erich Philips for the feature request. | 
| 1786 |  | 
| 1787 | Added BSDF data-driven material type with full sampling support. | 
| 1788 |  | 
| 1789 | Added BRDF calculations to genBSDF. | 
| 1790 |  | 
| 1791 | Bug fixes in rsensor thanks to help from David Geisler-Moroder. | 
| 1792 |  | 
| 1793 | Added variable-resolution BSDF support in renderers and genBSDF. | 
| 1794 |  | 
| 1795 | Created pkgBSDF program to extract BSDF geometry and put it | 
| 1796 | together with surface description suitable for inclusion in | 
| 1797 | a Radiance scene. | 
| 1798 |  | 
| 1799 | Muted warning for "no light sources found" when there is at least | 
| 1800 | one glow object and interreflections are on (-ab > 0). | 
| 1801 |  | 
| 1802 | Fixed long-standing bug that caused underestimation of reflection | 
| 1803 | when specular component was below -st threshold in non-metals. | 
| 1804 |  | 
| 1805 | Checked in cross-platform cmake build system created by Bill Hoffman | 
| 1806 | of KitWare and sponsored by NREL.  This includes a qt-based | 
| 1807 | driver for rvu, which is built in the new subdirectory src/qtrvu. | 
| 1808 |  | 
| 1809 | ===================== | 
| 1810 | Version 4.2 (Release date 7/31/2014) | 
| 1811 |  | 
| 1812 | Axel Jacobs added -cp and -palettes options to falsecolor. | 
| 1813 |  | 
| 1814 | Fixed bug in matrix output of genBSDF introduced shortly before 4.1 release. | 
| 1815 |  | 
| 1816 | Made rvu more responsive in multi-processing mode when changing parameters. | 
| 1817 | Explicit "new" command not needed to show changes, because it goes back | 
| 1818 | to "immediate mode" once something is changed.  Processing will be slow | 
| 1819 | but response time quick until next "new" command. | 
| 1820 |  | 
| 1821 | Fixed major bug in transmitting proxy material sampling. | 
| 1822 |  | 
| 1823 | Patched cmake build tools (changes by Zack Galbreath). | 
| 1824 |  | 
| 1825 | Removed requirement for pflip -h to be given input file (can pipe from stdin). | 
| 1826 |  | 
| 1827 | Added "Number of processes" slider to trad "Action" pane to control rad -N | 
| 1828 | option for rvu and batch rendering. | 
| 1829 |  | 
| 1830 | Added -c option to vwrays to repeat pixels for rtcontrib. | 
| 1831 |  | 
| 1832 | Reworked rtcontrib program and renamed to rcontrib.  New version runs much | 
| 1833 | faster, especially on multiprocessor systems, and doesn't require as much | 
| 1834 | memory.  No longer calls rtrace; instead does all the work itself. | 
| 1835 |  | 
| 1836 | Added -d option to genskyvec to produce direct-only (sun no sky) vector. | 
| 1837 |  | 
| 1838 | Added Ashikhmin-Shirley anisotropic BRDF model (ashik2) with help | 
| 1839 | from Nicolas Boneel. | 
| 1840 |  | 
| 1841 | Added Ruby rewrite of objview.csh by Rob Guglielmetti. | 
| 1842 |  | 
| 1843 | Fixed bug in reciprocity for tensor tree BTDF representations.  Thanks | 
| 1844 | to Andy McNeil for identifying the problem. | 
| 1845 |  | 
| 1846 | Added MNAME and ZNAME variables to ranimove for debugging & testing. | 
| 1847 |  | 
| 1848 | Created pmblur2 command to take motion and depth buffers from ranimove | 
| 1849 | to compute a better motion blur. | 
| 1850 |  | 
| 1851 | ****** COMPATIBILITY CHANGE ******** | 
| 1852 | Changed BSDF routines to use updated/corrected XML specification and | 
| 1853 | removed depracated BSDF support from mkillum. | 
| 1854 |  | 
| 1855 | Fixed behavior of i/o flushing in rcontrib with -c > 1 (averaging).  Thanks | 
| 1856 | to Lars Grobe for help identifying this problem. | 
| 1857 |  | 
| 1858 | Fixed bug in depth-of-field blur where view distance was measured from | 
| 1859 | fore clipping plane rather than viewpoint.  Thanks to Peter A-B for | 
| 1860 | pointing this out. | 
| 1861 |  | 
| 1862 | Added options to dctimestep to allow multiple time steps (-n) | 
| 1863 | and multiple output pictures or sensor files (-o).  Also added -i | 
| 1864 | option to specify float (-if) or double (-id) input for sky matrix. | 
| 1865 |  | 
| 1866 | Created gendaymtx program to compute annual sky patch matrix based | 
| 1867 | on Ian Ashdown's implementation of Perez all-weather sky model. | 
| 1868 | Output can be sent directly to dctimestep in ASCII or binary stream. | 
| 1869 |  | 
| 1870 | Replaced existing gendaylit.c with improved version from Wendelin Sprenger | 
| 1871 | and Jan Wienold of ISE. | 
| 1872 |  | 
| 1873 | Improved accuracy of ambient calculation for large -ad settings.  Thanks | 
| 1874 | to Lars Grobe for noticing the problem. | 
| 1875 |  | 
| 1876 | Added -r option to gendaymtx to rotate the sky the specified number of | 
| 1877 | degrees about the zenith as suggested by A. McNeil. | 
| 1878 |  | 
| 1879 | Axel Jacobs added -pal eco color map that does a blue-red-yellow scale. | 
| 1880 |  | 
| 1881 | Created bsdf2klems tool to convert from various BSDF representations to | 
| 1882 | Klems basis matrix in XML file. | 
| 1883 |  | 
| 1884 | Fixed problem with inappropriate reciprocity enforcement on tensor | 
| 1885 | tree reduction in genBSDF.  (Thanks to A.McNeil for discovering issue.) | 
| 1886 |  | 
| 1887 | Fixed bug in isotropic tensor tree sampling for impinging rays | 
| 1888 | exactly normal to surface.  Thanks to Peter Apian-Bennewitz for | 
| 1889 | discovering and pointing out the error. | 
| 1890 |  | 
| 1891 | Fixed double-counting bug in mirror material with alternate type. | 
| 1892 | Thanks to David Geisler-Moroder for spotting the problem and helping | 
| 1893 | to fix it. | 
| 1894 |  | 
| 1895 | Created rcollate program to resize and transpose matrix data for Andy | 
| 1896 | McNeil's 5-phase annual simulation method. | 
| 1897 |  | 
| 1898 | Added epw2wea conversion program by Christoph Reinhart. | 
| 1899 |  | 
| 1900 | Implemented Perlin's improved noise function with help from Rahul Narain. | 
| 1901 | This will change the appearance of renderings using this function. | 
| 1902 |  | 
| 1903 | Added "origin" command to rvu as requested by John Mardaljevic | 
| 1904 | to place view origin at selected point in scene. | 
| 1905 |  | 
| 1906 | Switch to Perl versions of objview and objpict written by Axel Jacobs. | 
| 1907 |  | 
| 1908 | Improved rendering speed of scenes with aliases by not entering new | 
| 1909 | modifiers into table if they are the same as the previously defined | 
| 1910 | modifier for that name. | 
| 1911 |  | 
| 1912 | Made it so icalc and rcalc search RAYPATH directories for *.cal files | 
| 1913 | given on command line.  This simplifies script writing and makes these | 
| 1914 | utilities consistent with other tools in Radiance. | 
| 1915 |  | 
| 1916 | Added triangulation routine to handle convex polygons in obj2mesh. | 
| 1917 |  | 
| 1918 | ****** COMPATIBILITY CHANGE ******** | 
| 1919 | Made backface visibility apply to all material types, including | 
| 1920 | transparent and translucent materials (except dielectric and interface). | 
| 1921 | This makes the option useful in cases where adjacent trans surfaces | 
| 1922 | are placed next to each other by a modeler that only understands | 
| 1923 | volumetric objects. | 
| 1924 |  | 
| 1925 | Changed dctimestep so that output matrices (-n > 1) are preceded by a | 
| 1926 | header, and added support for float and double output formats with -o[fd]. | 
| 1927 |  | 
| 1928 | Introduced eplus_adduvf program to compute user view factors for EnergyPlus. | 
| 1929 |  | 
| 1930 | Changed image-plane sampling in rpict to use Hilbert curve, which gives | 
| 1931 | less of a brushed/striped appearance to output pixels with -u- (default). | 
| 1932 |  | 
| 1933 | Added ltview and ltpict Perl scripts contributed by Axel Jacobs, inspired | 
| 1934 | by Rob Guglielmetti. | 
| 1935 |  | 
| 1936 | Added header variables for NROWS, NCOLS and NCOMP to help standardize | 
| 1937 | matrix files.  This functionality has been incorporated into | 
| 1938 | rcollate, gendaymtx, and dctimestep. | 
| 1939 |  | 
| 1940 | Created rmtxop utility to operate on multi-component matrices.  This | 
| 1941 | facilitates some daylight matrix calculations, and provides a general | 
| 1942 | tool for manipulating matrix data. | 
| 1943 |  | 
| 1944 | ****** COMPATIBILITY CHANGE ******** | 
| 1945 | Introduced new Hessian-based error control in irradiance caching (ambient) | 
| 1946 | calculation.  Since the format of the stored ambient values is different, | 
| 1947 | the old files will be rejected with an error message and must be removed. | 
| 1948 | The programs may be compiled with the -DOLDAMB option if this is a problem. | 
| 1949 |  | 
| 1950 | Added -p option to rcontrib to set function file parameters on a per-modifier | 
| 1951 | basis to simplify bin evaluation. | 
| 1952 |  | 
| 1953 | Created rfluxmtx program to compute flux transfer matrices from a sender | 
| 1954 | surface to one or more receiver surfaces.  (Renamed the file klems_int.cal | 
| 1955 | to klems_full.cal in the process.) | 
| 1956 |  | 
| 1957 | Added "-c" option to getinfo to execute command on data segment. | 
| 1958 |  | 
| 1959 | ================================ | 
| 1960 | Version 5.0 (Released 9/18/2015) | 
| 1961 |  | 
| 1962 | Changed rmtxop so it writes out same type as lesser of inputs unless | 
| 1963 | directed otherwise using -f? option. | 
| 1964 |  | 
| 1965 | Changed order of oconv arguments in rfluxmtx so user can specify input | 
| 1966 | octree using -i option at the end instead of (or in addition to) a | 
| 1967 | list of scene files. | 
| 1968 |  | 
| 1969 | Added support for argument expansion to rfluxmtx and bug fixes. | 
| 1970 |  | 
| 1971 | Fixed bug in indirect hemisphere sampling for some corner cases. | 
| 1972 |  | 
| 1973 | Added default specular lobe to BSDF interpolation. | 
| 1974 |  | 
| 1975 | Set minimum number of shadow checks before direct optimization (4). | 
| 1976 |  | 
| 1977 | (Above changes included in 4.2.1 patch release.) | 
| 1978 |  | 
| 1979 | ****** COMPATIBILITY CHANGE ******** | 
| 1980 | Made header input and output the default behavior for dctimestep and | 
| 1981 | genskyvec. | 
| 1982 |  | 
| 1983 | ****** COMPATIBILITY CHANGE ******** | 
| 1984 | Changed pabopto2bsdf default behavior to add 90-degree rotation | 
| 1985 | to bring pgII's definition of "up" in line with Klems axis | 
| 1986 | conventions.  Introduced a new header variable "upphi" to | 
| 1987 | control this added rotation.  Using "#upphi 90" in each | 
| 1988 | BSDF input file gets back the original behavior, where it | 
| 1989 | assumes that the up direction is 90-degrees from the X-axis. | 
| 1990 | The default value of 0 corresponds to PAB's definition of | 
| 1991 | the X-axis as being "up". | 
| 1992 |  | 
| 1993 | Fixed bug in rsensor related to having many rows (altitude) and | 
| 1994 | few columns (azimuth) in sensitivity file. | 
| 1995 |  | 
| 1996 | Fixed floating point round-off error in new Hessian calculation | 
| 1997 | for some sytems (Windows, primarily). | 
| 1998 |  | 
| 1999 | Fixed bug in tensor tree BSDF code that caused bus error on | 
| 2000 | some systems, and may have been source of other errors as well. | 
| 2001 |  | 
| 2002 | (Above changes included in 4.2.2 patch release.) | 
| 2003 |  | 
| 2004 | Improved ambient extrapolation to avoid zero values.  Actual | 
| 2005 | threshold set to 5% of recorded value. | 
| 2006 |  | 
| 2007 | Changed anisotropic Gaussian and Ashikhmin models so that | 
| 2008 | illegal orientation vectors are dealt with more gracefully. | 
| 2009 |  | 
| 2010 | Created wrapBSDF tool and incorporated into genBSDF along | 
| 2011 | with new rfluxmtx computation. | 
| 2012 |  | 
| 2013 | Initial check-in of Roland Schregle's photon map integration. | 
| 2014 | New 5.0a version designation as suggested by Andy McNeil. | 
| 2015 |  | 
| 2016 | Added left-hand coordinate sytems to rfluxmtx to correct | 
| 2017 | problems with coordinate axis orientations pointed out by | 
| 2018 | David Geisler-Moroder. | 
| 2019 |  | 
| 2020 | Added color output to genBSDF (+C option) and support for | 
| 2021 | color rendering of Klems and tensor tree data. | 
| 2022 |  | 
| 2023 | Fixed another bug in rsensor that caused rays to be generated | 
| 2024 | on opposite side of hemisphere even where sensitivity was zero. | 
| 2025 |  | 
| 2026 | Fixed bug discovered by Jacob Jonsson in Klems BSDF | 
| 2027 | interpolator that caused it to over-predict normal | 
| 2028 | transmittance and reflectance. | 
| 2029 |  | 
| 2030 | Added ability to read input from commands in dctimestep | 
| 2031 | and rmtxop. | 
| 2032 |  | 
| 2033 | Added photon map support to rad.  Fixed some double-counting | 
| 2034 | issues in photon-mapping spotted by David Geisler-Moroder. | 
| 2035 |  | 
| 2036 | Added photon map support to trad. | 
| 2037 |  | 
| 2038 | Fixed bug in antimatter source testing when antimatter | 
| 2039 | definition follows potential obstructor in input. | 
| 2040 |  | 
| 2041 | Fixed issue with missing character type identifier at head | 
| 2042 | of genBSDF XML output. | 
| 2043 |  | 
| 2044 | Prompted by Roland S., added option to have pcompos -a order | 
| 2045 | rows from top rather than bottom of image. | 
| 2046 |  | 
| 2047 | Changed dctimestep to accept matrix as well as BTDF input | 
| 2048 | in the VTDs invocation mode.  This permits the output of | 
| 2049 | rmtxop to be used in a pinch when combining multiple BTDF | 
| 2050 | layers, although interreflection between layers is not | 
| 2051 | accounted for properly as it is in the WINDOW program. | 
| 2052 |  | 
| 2053 | Added Jan Wienold et al.'s evalglare to distribution. | 
| 2054 |  | 
| 2055 | Hopeful fix to deadlock issue under Mac OS X 10.10.x (Yosemite). | 
| 2056 |  | 
| 2057 | Fixed early exit of rcontrib with internal error (sample behind sender) | 
| 2058 | discovered by Rob G. | 
| 2059 |  | 
| 2060 | ================================= | 
| 2061 | Version 5.1 (Released 8/17/2017) | 
| 2062 |  | 
| 2063 | Fixed issue with vchars.mta and symbols.mta not being installed in | 
| 2064 | the appropriate metafile library location, with help from Rob G. | 
| 2065 |  | 
| 2066 | Added ability to give quoted strings to output= directive in rfluxmtx. | 
| 2067 |  | 
| 2068 | ****** COMPATIBILITY CHANGE ******** | 
| 2069 | Added ability to digest color (CIE-XYZ) input in pabopto2bsdf. | 
| 2070 | This change alters the .sir (interpolant) format, so these files | 
| 2071 | will need to be regenerated.  Use the new "#colorimetry: CIE-XYZ" tag | 
| 2072 | to enable on input. | 
| 2073 |  | 
| 2074 | Rewrote bsdf2klems to support tristimulus color and call wrapBSDF. | 
| 2075 | Did the same for bsdf2ttree.  Function specifications still gray only. | 
| 2076 |  | 
| 2077 | Reduced a problem where rvu or rholo would be slow to quit when | 
| 2078 | run with many processes on a large model or one with a large | 
| 2079 | ambient file (taking lots of memory).  We were waiting for | 
| 2080 | processes to quit one-by-one, which takes some time for each | 
| 2081 | process as it disentangles its shared memory.  We now | 
| 2082 | wait for all the processes together, so they can disentangle | 
| 2083 | in parallel.  It can still take up to a minute in some cases, | 
| 2084 | but not 10 minutes like it was taking before the fix. | 
| 2085 |  | 
| 2086 | Enabled ambient cache value corral for all levels, not just final two. | 
| 2087 | This may reduce errors in certain pathological scenes. | 
| 2088 |  | 
| 2089 | Added -in option to rcalc, rlam, and total to limit the number of | 
| 2090 | input records in hopes of circumventing Windows EOF issues on binary data. | 
| 2091 | Also added -on option to rcalc and total for logical symmetry. | 
| 2092 |  | 
| 2093 | Increased modifier limit to 10,000 in rcontrib. | 
| 2094 |  | 
| 2095 | Fixed issues with glrad and added zoom response to mouse wheel input. | 
| 2096 |  | 
| 2097 | Added missing definition of "ashik2" material type to reference manual. | 
| 2098 |  | 
| 2099 | Changed genBSDF to calculate device thickness assuming Zmax==0 so | 
| 2100 | pkgBSDF will generate correct proxy geometry. | 
| 2101 |  | 
| 2102 | Created pabopto2xyz tool to combine different sensor measurements | 
| 2103 | into a single CIE-XYZ measurement file for color BSDF interpolation. | 
| 2104 |  | 
| 2105 | Jan Wienold updated evalglare to version 1.30 | 
| 2106 |  | 
| 2107 | Roland Schregle added out-of-core photon mapping routines, which | 
| 2108 | may be compiled using the PMAP_OOC macro. | 
| 2109 |  | 
| 2110 | Added -a option to getinfo for easy addition of header lines. | 
| 2111 |  | 
| 2112 | Fixed issue with multiple records on picture output in rcontrib (and rfluxmtx). | 
| 2113 | Credit to Sarith Subramaniam for pointing out the problem. | 
| 2114 |  | 
| 2115 | Made mkillum more tolerant of non-planar polygons in its sampling routines. | 
| 2116 |  | 
| 2117 | Added "-recover" option to genBSDF to pick up where it left off. | 
| 2118 |  | 
| 2119 | Fixed genBSDF issue that was created incorrect normalization of | 
| 2120 | Klems output.  Thanks to David G-M and Christian Knoflach for | 
| 2121 | discovering the error.  Also improved sampling of indirect irradiance | 
| 2122 | that showed some slight bias due to poor sample collision avoidance. | 
| 2123 |  | 
| 2124 | Fixed long-standing issue with -aa 0 neglecting textures in calculating | 
| 2125 | surface shading. | 
| 2126 |  | 
| 2127 | Fixed bug in ranimove introduced during photon map integration. | 
| 2128 |  | 
| 2129 | Added check for steep sections of BSDF in pabopto2bsdf, creating narrower | 
| 2130 | peakes in those places and mitigating some normalization issues. | 
| 2131 |  | 
| 2132 | Added view360stereo.cal by Mark Stock to handle 360-degree over/under | 
| 2133 | stereo views. | 
| 2134 |  | 
| 2135 | Added MAX2SHADE macro to place limit on number of light sources | 
| 2136 | to precheck for obstructions.  (Currently set to 200.)  This | 
| 2137 | avoids excessive start-up times for scenes with many light sources. | 
| 2138 | Thanks to Axel Jacobs for pointing out the problem. | 
| 2139 |  | 
| 2140 | Added -v option to obj2mesh to print out mesh statistics. | 
| 2141 |  | 
| 2142 | Rewrote bsdf2rad from ground up and made it a standard part of build. | 
| 2143 |  | 
| 2144 | Fixed bug in orientation of Reinhart/Tregenza sample generator in rfluxmtx. | 
| 2145 |  | 
| 2146 | Added ability to perform shadow-testing through unproxied BSDFs with strong | 
| 2147 | through (direct-direct) component. | 
| 2148 |  | 
| 2149 | Added {+|-}a options to genBSDF and bsdf2ttree for switching off reciprocity | 
| 2150 | averaging. | 
| 2151 |  | 
| 2152 | Added bias to see through BTDFs with a strong "through" component | 
| 2153 | rather than scattering view rays.  This is in lieu of peak extraction, | 
| 2154 | which looked to be too difficult from an implementation standpoint. | 
| 2155 |  | 
| 2156 | Added bsdfview tool analogous to objview but for BSDF files (XML and SIR), | 
| 2157 | which calls bsdf2rad then rad with a few useful default views. | 
| 2158 |  | 
| 2159 | ========================= | 
| 2160 | Version 5.2 (Release October 8, 2018) | 
| 2161 |  | 
| 2162 | Created psketch program to apply non-photorealistic rendering to selected | 
| 2163 | objects, identified by modifier name(s). | 
| 2164 |  | 
| 2165 | Added '*' and '/' operations to rmtxop for element-wise multiplication and | 
| 2166 | division of same-sized matrices. | 
| 2167 |  | 
| 2168 | Changed falsecolor so "-s" option is adjusted to match legend if one. | 
| 2169 |  | 
| 2170 | Falsecolor legend changes and improvements by David G-M and Stephen W. | 
| 2171 |  | 
| 2172 | Fixed bug in peak extraction code that generated | 
| 2173 | "Bad call to SDqueryTreProjSA" error, reported by Lars Grobe. | 
| 2174 |  | 
| 2175 | Increased maximum luminance to 10^7 in pcond to fix issue noticed | 
| 2176 | by Axel Jacobs where veiling glare not added for the sun under | 
| 2177 | some conditions. | 
| 2178 |  | 
| 2179 | Increased maximum number of open files in rcontrib to the system upper | 
| 2180 | limit of 2048 rather than the default 512 under Windows. | 
| 2181 |  | 
| 2182 | Added top-level resources directory with files from Rob Guglielmetti. | 
| 2183 |  | 
| 2184 | Improved accuracy for peaky BSDFs and small light sources. | 
| 2185 |  | 
| 2186 | Fixed issue with pmapdump noted by Axel Jacobs. | 
| 2187 |  | 
| 2188 | Improved accuracy of bsdf2ttree when converting scattering interpolation | 
| 2189 | representatons with strong peaks. | 
| 2190 |  | 
| 2191 | Tweaked peak-extraction code to work more reliably. | 
| 2192 |  | 
| 2193 | Georg Mischler updated SCons build system. | 
| 2194 |  | 
| 2195 | Rob Guglielmetti and Alex Swindler updated CMake build system. | 
| 2196 |  | 
| 2197 | Modified pcomb so the first view seen in the inputs is written into header. | 
| 2198 |  | 
| 2199 | Wrote rtpict script to run rtrace in parallel mode and simulate rpict with | 
| 2200 | -n option. | 
| 2201 |  | 
| 2202 | Added ability to move forwards/backwards specified distance in rvu "origin" | 
| 2203 | command.  Feature requested by John Mardaljevic, who essentially owns this | 
| 2204 | command, now. | 
| 2205 |  | 
| 2206 | Reduced bias in ambient super-sampling method. | 
| 2207 |  | 
| 2208 | Fixed bugs associated with zero transmission in chromatic tensor trees. | 
| 2209 | Thanks to Lars Grobe for pointing out issues. | 
| 2210 |  | 
| 2211 | Added RAYPATH searching for -f options to genrev, gensurf, genworm, | 
| 2212 | bsdf2klems, bsdf2ttree, and pcomb.  This makes behavior consistent | 
| 2213 | with rcalc, calc, and rendering tools. | 
| 2214 |  | 
| 2215 | Worked with Randolph Fritz to fix some issues with ies2rad and newer | 
| 2216 | IESNA63 standards. | 
| 2217 |  | 
| 2218 | Resurrected original bsdf2rad test program, renaming it bsdf2rado. Still an | 
| 2219 | optional build in src/cv/. | 
| 2220 |  | 
| 2221 | Fixed bug in rcontrib with virtual sources, where pretest was adding | 
| 2222 | to modifier accumulation buffers.  Reported by Mostapha. | 
| 2223 |  | 
| 2224 | Added an "aBSDF" material type that explicitly checks for peak extraction. | 
| 2225 | Its arguments are the same as the original "BSDF" type, but without the | 
| 2226 | thickness parameter, as proxy geometry is not supported by this new type. | 
| 2227 | The old "BSDF" type no longer does peak extraction under any circumstances, | 
| 2228 | since this behavior is superfluous for proxied geometry. | 
| 2229 |  | 
| 2230 | Added -r option to bsdf2rad (and bsdfview) to fix BSDF min and max range | 
| 2231 | for comparing BSDFs. | 
| 2232 |  | 
| 2233 | Fixed issue with pfilt -m option and uneven image size changes pointed | 
| 2234 | out by Rob Shakespeare. | 
| 2235 |  | 
| 2236 | Updates to evalglare and gendaylit from Jan Wienold, including new | 
| 2237 | colored sky option. | 
| 2238 |  | 
| 2239 | ========================= | 
| 2240 | Version 5.3 | 
| 2241 |  | 
| 2242 | Created radcompare program to compare Radiance tool output to reference outputs | 
| 2243 | during unit-testing. | 
| 2244 |  | 
| 2245 | Fixed issue reading very large files (> 2 GBytes) in rcollate. | 
| 2246 |  | 
| 2247 | Made picking function in rvu ignore transparent and void surfaces. | 
| 2248 |  | 
| 2249 | Added -orRxX options to rtrace to enable output of mirrored and unmirrored | 
| 2250 | contributions and distances to enable new types of reprojections.  This also | 
| 2251 | cleaned up and unified handling of effective ray lengths throughout code. | 
| 2252 |  | 
| 2253 | Bug fixes from Jan Wienold for evalglare. | 
| 2254 |  | 
| 2255 | Changed indexed (numbered) output from dctimestep to start from 0 rather | 
| 2256 | than 1, to make it more consistent with expected input naming. | 
| 2257 |  | 
| 2258 | Increased default sampling in bsdf2klems (-n option) to 1024. | 
| 2259 |  | 
| 2260 | Fixed an issue noticed by David G-M that was causing genBSDF to bias | 
| 2261 | isotropic tensor tree samples resulting in subsequent failure of | 
| 2262 | peak extraction with "aBSDF" type. | 
| 2263 |  | 
| 2264 | Introduced max() and min() functions to .cal library. | 
| 2265 |  | 
| 2266 | Added random incident patch sampling to bsdf2klems to improve accuracy | 
| 2267 | with scattering interpolation representation input (e.g., from | 
| 2268 | pabopto2bsdf).  The other input types already sampled incident patch area. | 
| 2269 |  | 
| 2270 | Added gendaymtx -A option to compute average sky over all the input | 
| 2271 | time steps. | 
| 2272 |  | 
| 2273 | Added ability to output color image from rtrace with any of -ovrx options. | 
| 2274 |  | 
| 2275 | Changed rlam behavior so -iaN reads N lines from a stream rather than N | 
| 2276 | characters.  This seems more useful, since -ibN is somewhat redundant with | 
| 2277 | the old behavior. | 
| 2278 |  | 
| 2279 | Created rsplit program as compliment to rlam and to handle more complex | 
| 2280 | rtrace output into separate files or streams. | 
| 2281 |  | 
| 2282 | Improved getinfo so that it can also hop over resolution string with -c | 
| 2283 | and header elide mode. | 
| 2284 |  | 
| 2285 | Made pvalue -u option mean "uncompressed" with -r.  Also, allow skipping | 
| 2286 | bytes on standard input. | 
| 2287 |  | 
| 2288 | Created rcode_depth tool to convert to and from a 16-bit/pixel portable | 
| 2289 | depth image encoding that uses a mix of linear and reciprocal distance | 
| 2290 | with explicit representations of 0 and infinity.  Code for loading these | 
| 2291 | depth maps is in src/util/depthcodec.{h,c}. | 
| 2292 |  | 
| 2293 | Created rcode_norm tool to convert to and from 32-bit/pixel portable | 
| 2294 | surface normal representation, matching the one in src/common/dircode.c. | 
| 2295 | Code for loading normal maps is in src/util/normcodec.{h,c}. | 
| 2296 |  | 
| 2297 | Created rcode_ident tool to create indexed identifier files. | 
| 2298 | Code for loading these files is in src/util/idmap.{h,c}. | 
| 2299 |  | 
| 2300 | Added -o* option to rtpict to produce layered images that handle most | 
| 2301 | output types from rtrace (colors, surface normals, distances, IDs). | 
| 2302 |  | 
| 2303 | Created rcode2bmp script to create images from new rcode_* output maps. |