--- ray/doc/notes/ReleaseNotes 2003/07/10 03:47:00 1.8 +++ ray/doc/notes/ReleaseNotes 2018/10/09 17:57:17 1.327 @@ -1140,7 +1140,7 @@ of recursive routines using sets to avoid overrunning the stack limit. ============================== -Version 3.6 +Version 3.6 (Released 10/21/04) Modified 4-byte RGBE encoding routine to avoid problems when one or two primary values is negative and the other(s) @@ -1172,4 +1172,1069 @@ Added -N option to rad to start multiple rendering pro parallel. Fixed bug where mesh instances were not being freed, so subsequent calls -in programs like ranimate would refer to bogus data. +in programs like ranimove would refer to bogus data. + +Added support in normtiff for floating-point and 16-bit/sample TIFF input +files. + +Changed marksources() routine (src/rt/source.c) to check all +primitives in the modifier chain for emitting types, not only +the first. This permits sources to be described with intervening +modifiers before the light/illum/glow primitive and allows aliases +as well. + +Fixed bug in xform where it was neglecting to add transform arguments +to new mesh primitive. + +Added -dF and -dD options to pvalue for byte-swapped floats and +doubles, respectively. + +Changed meta2tga to output correct colors. + +Changed local coordinate index from 32-bits to 16-bits, which requires +that Radiance mesh files be recompiled. (Later decided against this +change, as it caused problems with some models.) + +Changed integer tone-mapping routines to better deal with images +containing large, constant regions. + +Improved interaction with rholo -o ogl driver under OS X, which was +returning bad values from the depth buffer. + +Minor bug fix in ranimove where it was restarting processes when it +didn't need to. + +Increased accuracy of default ambient parameters in rpict, rview, and +rtrace. In rad program, doubled -ar value, -ad value, and -as value, +and decreased -aa value a bit. Also adjusted -lr upwards and -lw +downwards. I should have done these things long ago, as processors +have been getting faster and faster over the years. + +Fixed bug discovered by Marcus Jacobs where oconv was dumping core +when it was given too many modifiers. + +Fixed problem with rpict where it was drawing illum sources badly +even when they weren't all that small in the view. + +Added in(i) function to rcalc for more flexible channel evaluation. + +Replaced all calls to vfork() with regular fork() calls. + +Fixed bug in glarendx for dgr calculation with sources behind view. + +Added -p option to histo to print percentages/percentiles r.t. counts. + +Added a source occluder cache to accelerate shadow testing. This +can save up to 50% of the calculation time in scenes with many +light sources, especially ones containing large occluders. This +optimization may be tuned or switched off with the -DSHADCACHE=N +compile switch, where N is the resolution of the shadow cache, or +0 to disable it. Since this is purely a time vs. memory trade-off, +I decided not to make it a new command-line option. (We already +have plenty.) + +****** COMPATIBILITY CHANGE ******** +Changed the following command names to avoid conflicts: + rview -> rvu (with symbolic link back to rview) + calc -> icalc + lam -> rlam + gencat -> gencatenary + +Improved -f option of normpat, which caused odd color changes before. + +Created pgblur script which does fast Gaussian blur of image without changing +its dimensions. This is very useful in certain types of image processing +calculations, such as finding or removing low frequencies. + +****** COMPATIBILITY CHANGE ******** +Changed little-used objpict script so that it takes scene files rather than +rpict options on the command line, and puts everything into the right +coordinate position automatically rather than requiring the user to do it. + +Added -I option to replmarks for mesh instancing. + +Made similar change for virtual sources to allow modifiers and aliases +on the mirror and prism types to work properly. + +Rob Guglielmetti added -lw and -lh options to falsecolor to control the +legend dimensions. Made it so -lw 0 and/or -lh 0 turns legend off. + +Made it so pcompos will read everything from a stream even if it doesn't +need it, so input commands will not receive a hangup signal. + +Wrote ra_bmp program to convert to and from Windows BMP files (finally). +It's the most horrible image format I've ever seen, and I've seen a lot. + +Increased -aa default value for all renderers (and also -ad and -as in +rview) at Schorsch's suggestion. I think this undid my earlier decrease +of -aa last time, which I guess was ill-considered. + +Modified oconv to keep subdividing the octree if there are too many +objects in a voxel even when the -r resolution limit has been +reached. This was not done before due to problems with recursion, +and still, it will only continue to 256 times the original -r limit. +If that isn't enough, then there's probably no hope, anyway. + +Added -l option to obj2mesh to search for material files in library +locations. + +Increased polygon vertex limit to 512 in obj2mesh and obj2rad and added +warning if this limit is exceeded. + +Added tone-mapping and monitor primary options to ra_bmp. This gives +new functionality similar to normtiff and ximage. It would be nice to +add this feature to the other ra_* programs as well... someday. + +Fixed long-standing bug in reported pixel ordering out of certain +protate commands. + +Added -p option to rcalc for "passive mode" that transmits +unrecognized input -- useful for substituting data in the +middle of a stream. + +Fixed a very obscure bug in rpict that caused a dark horizontal +line in certain cylindrical projections due to improper drawing +of the sky dome source in rt/srcdraw.c. + +Fixed problems with effective ray lengths computed for dielectric +and BRTDfunc materials. This was most evident in breakup of holodeck +views when VDISTANCE=True. + +Fixed rad so that 'scene' variable may consist only of inline commands. + +Fixed bug introduced in shadow caching routines where sources in the +middle of spheres were not illuminating properly. Thanks to Guilio +Antonutto for spotting this problem. + +Modified gensky behavior so if time is given with standard time zone +designation, any -m option is ignored. + +Added -n option to mkillum for (shared memory) parallel processing. + +Fixed a long-standing bug in parallel processing code that only +seemed to manifest with the new mkillum -n option, where rtrace +would deadlock upon termination. The reason it never showed up +before is because I always closed processes in the reverse order +of opening them in other programs. I went through and found similar +(potential) bugs in the rview device subprocess code and util/netproc.c. + +Corrected the normalization of the Gaussian reflectance model. This will +cause an increase in specularity for low-lying light sources. +Thanks to Don Walters of Boeing and Arne Duer of the Univ. of Innsbruck +for pointing out this error. The square root used for the two cosines +in the denominator of the normalization factor should not be present. +This was a serious mistake I made in the original model, which went +undiscovered (at least to my knowledge) for over a decade. I think +Bruce Walter of Cornell may have known about it, but I never heard +the details of his discovery. + +Enabled the -p option for primary conversion without tone-mapping +in ra_bmp. Also provides for XYZE input conversion to RGB. + +Fixed what I consider a bug in pvalue -o when taking XYZE files on input, +where it was inappropriately undoing the exposure value so that it always +reported radiance rather than XYZ values with Y in cd/m^2. + +Made it so ra_bmp only produces run-length encoded 8-bit output for +grayscale images that are tone-mapped. This minimizes circumstances +under which output scanline order is reversed. + +Fixed bug in rcalc where it sometimes wasn't parsing the input format +correctly. + +===================== +Version 3.7 (Released 7/25/05) + +Fixed bug in source occluder cache which caused consistency error +for distant sources and mist materials. (Thanks to Mark Stock for +finding the problem.) + +Fixed serious bug in source drawing routines for rpict, where the edges +of light sources were appearing through obstructions. (Thanks to Veronica +Sundstedt for pointing this out.) + +(The above were included in the 3.6.1 patch release.) + +Changed default temporary directory from /usr/tmp, which doesn't exist +on a lot of systems these days, to /tmp. + +Eliminated many unused files and programs from the distribution, including +the following programs that were being built but no longer used: + oki20 - printer driver for OkiMate 20 printer (B&W) + oki20c - printer driver for OkiMate 20 color printer + pcwarp - intended as more general substitute for macbetcal, + but never quite worked + ra_avs - convert to & from AVS image format + ra_bn - convert to & from Barneyscann format + ra_pr - convert to & from 8-bit Sun rasterfile format + ra_pr24 - convert to & from 24-bit Sun rasterfile format + thf2rad - convert GDS "things file" to Radiance scene format +If anyone is still wanting any of the above programs, let us know and we'll +reinstate it. + +Fixed bug in pcond's acuity simulation for small view angles (less than +4 degrees horizontally or vertically). Thanks to James Lee for figuring +this out. + +Added script to convert to/from ICT's Poskanzer Float Map, which I don't +care to support officially due to its machine-dependent byte order. + +Fixed bug that caused incorrect reporting of non-surface in set when +mixing meshes and instances. (Thanks to Jack de Valpine for discovery.) + +Fixed inaccuracy in calculation of diffuse transmission in the presence +of pure specular (Fresnel reflection) using "trans" material. Thanks +to Christoph Reinhart for pointing out the error. + +Made internal change to tone-mapping library to use structure pointer +rather than stack, making code re-entrant and more up to modern standards. + +Added -pd option to handle depth-of-field blur in rpict. This requires +that the view directon (-vd option) include focal distance information, +which is now preserved by the various view file routines, and reported +by the vwright command. + +Added DBLUR variable to ranimate and pmdblur script to handle simultaneous +motion and depth-of-field blurring. Thanks to Visarc for funding this work. + +Added setting of focus distance in rvu ("focus" command) and rholo +('f'/"frame" command). + +Changed default remote shell in ranimate to "ssh" rather than "rsh", +which has been abandoned on most Unix systems due to security issues. + +Fixed behavior of source primitive using illum with no alternate +material. These now become transparent so one can see the sky or +light-probe background for use in image-based lighting. Previously, +the user needed to specify the background glow as the alternate +material for a distant illum source to behave properly. (This still +works.) + +Fixed some minor problems and inconsistencies with 16-bit/channel +TIFF i/o in ra_tiff. + +Created mksource program to generate distant sources for improved +image-based lighting with light probes. + +Changed ambient calculation so that -ad will not limit recursion +depth, and a minimum of 27 samples will be sent out for each stored +ambient value, or 3 samples if -aa is 0 (caching off). + +Added -oM option to rtrace to report material (rather than modifier) +for cases where actual material is aliased or further up modifier chain. + +Rearranged the way ray contributions are computed so that it might be +possible to use rtrace to derive daylight coefficients and optical +transfer functions. The new -oTW option of rtrace produces color +contribution weights for each ray, which combined with the -ti (or -tI) +option permits the contribution of selected surfaces or sources to +be determined. Using the -oTW option, one should also specify +options "-dt 0 -aa 0 -as 0" for optimal results. In particular, +one cannot expect reasonable tallies with -ab >= 1 and irradiance +caching on (-aa > 0). + +The same code modifications included a change to the indirect computation +with caching switched off (-aa 0). Whereas before, the number of secondary +rays after the first bounce were half of the previous generation, they are +now determined by the surface reflectance, making for a better and faster +calculation. It should now be possible to compute many bounces with -aa 0, +which used to be prohibitively expensive. + +Added -T option to xshowtrace to trace rays to light sources. + +Added meta2bmp program to produce BMP files from metafile graphics. + +Added cct_x(t) and cct_y(t) to src/cal/cal/blackbody.cal to interpolate +CIE chromaticities for particular black-body temperatures. + +Increased maximum number of input pictures in pcomb and pcompos to 512. + +Created rtcontrib program for computing ray contribution coefficients. +This tool may be used to do standard optical ray tracing or daylight +coefficient calculations for annual simulations, among other uses. + +Added tilde ('~') output option as part of the -o* specification of +rtrace. This permits ray trees to be parsed more easily in binary +output mode, as needed by rtcontrib. + +Implemented Russian roulette ray termination with -lr <= 0. +Made -lr -10 the default in rtcontrib. + +Made rtcontrib -f option search RAYPATH directories. + +Made it so -o option of rtcontrib can pipe -o output to a command. + +Added -if and -of options to total for binary i/o (following rcalc mold). + +Switched default options in rtrace to use Russian roulette. (Rpict and rvu +still use biased ray termination.) + +Added rtcontrib -r option to recover partial output. + +Added -u rendering option for pure Monte Carlo sampling. +(Got rid of -DMC compile option, which this makes superfluous.) + +Changed -t option of rlam to accept strings as well as single characters. + +Fixed bug in rcalc with -l option where it would sometimes go into an +infinite loop. + +Fixed truly ancient bug in bounding box computation for cones, which +could (and did) cause missing segments. + +Added -z option to normtiff to output LZW-compressed files. + +Last change to total causes it to produce results when it sees an empty +line on the input. This was not intentional, but I decided I like this +behavior so I documented it rather than changing it. + +===================== +Version 3.8 (Released 10/17/06) + +Fixed Russian roulette ray termination, which was doing the opposite of +what it should have been doing, resulting in overestimated values below +minimum ray sampling weight (serious). + +Changed mksource to use 98th percentile (rather than 99th) for threshold. + +(Above changes included in 3.7.1 patch release.) + +Eliminated writing of EXPOSURE= line in ra_tiff -r when source TIFF +does not have STONITS set. + +Fixed bug in ambient calculation that caused black values for multiple +bounces in some scenes. Thanks to Mark Stock for creating and sharing +the sophisticated test scene that demonstrated this problem. + +Fixed bug in antimatter using Russian Roulette sampling. + +(Above changes included in 3.7.2 patch release 22 Aug 2005.) + +Created fieldcomb script to combine alternate fields in a rendering +sequence. (Development generously sponsored by Iebele Abel.) + +Added missing preload of mesh objects for more efficient memory use +during parallel rendering -- this was a serious oversight. + +Created ran2tiff program to automate exposure setting of animation +sequences using a moving histogram in combination with pcond, and +converting frames to TIFF. + +Eliminated SPEED macro from makeall and source tree. + +Added -pj option to vwrays to allow jittering of sample locations. + +Fixed bug in rtcontrib where it occasionally missed writing the +final bin file. (Pretty serious, actually.) + +Added -Dfseeko=fseek to MACH= line for linux, as fseeko(3) seems to be +broken in current versions of Linux. (Need to remove this later.) + +Rearranged struct's for better efficiency on 64-bit architectures. + +Added -i option to rlam so it works with binary input formats. + +Added rtcontrib -bn option to specify number of bins and fixed bug +in recovery of files containing multiple values per record. + +Added rtcontrib -fo option to write over existing files, which it now +refuses to do without this option. + +Made rtcontrib flush output when handed a zero-length ray vector, +to match behavior of rtrace. + +Improved color scale for falsecolor output. + +Added threshold test for Fresnel approximation to prevent its use +on smooth surfaces with unrealistically low specularities (less than 1.8%). +Water has a specular reflectance of 2.1% at room temperture. + +Removed NICE macro settings in rpict and rtrace, which was slowing down +the processes under Mac OS X (10.4) by about 60% due to processor napping. + +Made xform, replmarks and rad2mgf handle quoted modifiers and names properly. + +Fixed problem in genblinds, where it was generating slats that were too +wide with the +/-r option. (Thanks to Helena Buelow-Huebe for discovering +this bug.) + +Fixed bug in ra_ppm for 16-bit/sample i/o, where it was getting the byte +order wrong (apparently). + +Added -V option to rtcontrib to report actual contributions, rather than +just ray coefficients. + +Fixed bug in ranimate that caused it to fail in continuation of renderings. + +Renamed librt.a to librtrad.a, to avoid conflict on Solaris. Almost +everything now gets linked to -lrtrad instead of -lrt. + +Fixed problem with large sample sets, so -u+ option now is truly random. +Thanks to Rick Mistrick and Younju Yoon for identifying this problem, +which was related to a poorly designed hash function. + +Changed -u+ to be the default setting in rtrace (only). + +Fixed binary i/o for rlam and vwrays under Windows. + +Added tmCvLums() to tone-mapping routines using a 16-bit lookup table +on IEEE floats, which is also used to improve speed of COLOR conversions, +especially on machines with slow log() calls. The first call to +tmCvLums(), tmCvGrays(), or tmCvColors() initializes the table. + +Created optics2rad.csh script to convert from Optics 5 material output +to something correct for Radiance. Built on old glazing.cal function, +which is actually incorrect so removed from the distribution. + +Fixed nuisance bug in ximage under some SGI machines that caused it to +choose an inappropriate visual and display incorrect colors. (Thanks +to Oskar Itzinger for debugging the problem.) + +Fixed long-standing inaccuracy of pcompos -t and +t thresholding options. + +Fixed bug in handling of views with tabs rather than spaces. + +Fixed bug related to alias of alias. + +****** COMPATIBILITY CHANGE ******** +Changed default sky turbidity in gensky from the original default of +2.75 to the CIE 110-1994 standard value of 2.45. Thanks to Marilyne +Anderson of MIT for pointing out this discrepancy. + +Added -o option to ra_xyze to produce original pixel values. + +Fixed bug in tracing of virtual sources, where intervening glazing was +not being accounted for properly. + +Added -h option to pcompos and pcomb to eliminate verbose headers. + +===================== +Version 3.9 (Released 3/30/08) + +Added -spec option to falsecolor to restore original spectral color scale. +Also added "-s auto" option to automatically set the maximum value. + +Added byte-swapping input and output to rcalc. + +Additional error-checking for source surfaces. + +Re-fixed bug in octree code that caused it to allocate 8 times as +much memory as it actually used(!) -- this was pointed out way back +in 1999 by Erik Reinhard and Erik Jansen, but the fix they gave me +got lost in the slightly broken release process at the time. This +should make a big difference in memory usage, especially for the +new mesh primitive. (I measured 30% less memory usage.) + +Corrected ray weights for material mixtures. + +Reduced the default -n setting for obj2mesh to take better advantage +of the smaller octree structure size. + +Fixed bug in shadow cache where it was adding surfaces with antimatter +holes cut in them to the obstructor list. Thanks to John Mardaljevic +for discovering and reporting the problem. + +Adding ability in mkillum to incorporate BSDF data in calculation. +Internal interface (raypcalls) now used in place of rtrace process(es). + +Fixed pixel alignment in pcomb for size reduction and enlargement. + +Allow rtcontrib user to set -P and -PP options for persistent rendering. +The only caveat is that -n setting > 1 requires -PP rather than -P. + +Added -c option to rtcontrib to facilitate cumulative calculations. + +****** COMPATIBILITY CHANGE ******** +Fixed long-standing bug in source.cal, which caused it to produce +reversed anisotropic photometric distributions due to the +misorientation of the y-axis. Thanks to Zack Rogers for discovering +and helping debug this problem. + +Fixed long-standing bug in replmarks, where triangles with X-side +aligned with Z-axis would cause incorrect rotations. Thanks to +Zack Rogers for finding this error. + +Added rsensor program to compute sensor signal for daylighting controls. +Funding for this component was provided by the Architectural Energy +Corporation in Boulder, CO, and directed by Zack Rogers. + +Added "planisphere" (stereographic) fisheye view type for traditional +daylighting analysis. Feature requested & explained by Axel Jacobs. + +Modified -c option to rtcontrib so it can take a number of input +rays to average over, rather than only produce a single accumulated +record (which can now be done with -c 0). + +===================== +Version 4.0 (Released 3/12/10) + +Added -n option to rvu to provide parallel rendering. + +****** COMPATIBILITY CHANGE ******** +Changed ".pic" extension to ".hdr" in all sources and documentation +to improve interoperability with other software, since this has become +the de facto extension for Radiance RGBE and XYZE pictures. Since file +extensions were never more than a convention in Radiance, this does not +affect operation, but may require the update of scripts, etc. written +by others that assume the ".pic" suffix for Radiance output. + +Added -N option to objview to support multiprocessing. + +Improved sampling of circular sources (source, sphere, ring types) with +quite a bit of help from David Geisler-Moroder. + +Added "rpict" and "rvu" variables to rad, and made these as well as +the "oconv", "mkillum" and "pfilt" variables accept an alternate +command path in each case. Change suggested by Lars Grobe based +on similar Radzilla (radz) facility by Carsten Bauer. + +Fixed rad -v N specification to use actual view name if one. + +Fixed error in mkillum calculation where it neglected indirect +source contributions from BTDF illum's. + +Added GMT and LATLONG header lines for Greenwich Mean Time and +degrees North Latitude / East Longitude. + +Added gendaylit to distribution (finally). + +Added ability in vwright(1) to get view from command line arguments. + +Created genklemsamp(1) utility to generate samples suitable for +BSDF-based annual calculations. This is the first Perl script to +be added to Radiance. Hopefully, others will follow. + +Added klems_int.cal file to compute Klems bins for windows. + +Created genskyvec utility to sample a particular sky and +evaluate average radiance over the standard Tregenza sky patches. + +Created dctimestep program to compute a set of sensor values or +a combined image for a particular time using the daylight +coefficient method. + +Created src/rt/rayfifo.c for first-in/first-out handling of +multiprocessing by raypcalls.c. + +Added -n option to rtrace for executing on multiple cores +using new rayfifo calls. + +===================== +Version 4.1 (Released 11/04/2011) + +Changed ranimate behavior so remote login under a different user +doesn't necessarily require the presence of the originating user's +home directory. + +Changed standard transmission function normalization back to what +it was in version 3.5, following recommendation of David Geisler-Moroder, +who pointed out that the revised BTDF increased too much at grazing. + +Changed rad behavior with -N >1 on single view to call rpiece. + +Updated SCons build system for MINGW compilation, thanks to Christian +Kohler. + +Added -u option to rlam for unbuffered output. + +Modified dctimestep to accept sky vector and daylight coefficient matrix +or list of images to sum together, as suggested by Andy McNeil. + +Created genBSDF script to generate BSDF in Windows XML format. + +Modified mkillum to accept detailed geometry from BSDF XML files. + +Altered obj2rad to ignore zero normals (thanks to Jack de Valpine for +suggestions and help). + +Fixed bug in genklemsamp that caused non-uniform sampling over surfaces. + +Fixed bugs in rhoptimize and rhcopy for 64-bit compilation. + +Made a change to avoid problem using gcc --fast-math compile option. + +****** COMPATIBILITY CHANGE ******** +Changed behavior of rtrace and rtcontrib so that every scanline is +not flushed when both -x and -y are set. This avoids flush delays +in rtcontrib for large numbers of output files and delays while +rendering images using rtrace with the -n option. + +Added ability for rsensor to output ray origins and directions +rather than actually loading octree and computing sensor value. + +Fixed old bug in obj2rad where it would stop processing and +report a syntax error if the "void" type is used in the map file. + +Updated reflection model according to EGSR 2010 paper by David +Geisler-Moroder and Arne Duer. + +Replaced C-shell version of falsecolor with Perl script written +by Axel Jacobs. + +****** COMPATIBILITY CHANGE ******** +Changed -sj (specular jitter) option to something called specular +sampling (-ss), which if set less than 1 has the same behavior as +the old -sj, but when set greater than 1, spawns multiple ray +samples from semi-specular surfaces. + +Fixed bug noticed by Randolph Fritz that caused ambient sync errors. + +Fixed bug in findglare for reading picture files under Windows. + +Added options to pvalue to note other color spaces on reverse conversion. +Thanks to Erich Philips for the feature request. + +Added BSDF data-driven material type with full sampling support. + +Added BRDF calculations to genBSDF. + +Bug fixes in rsensor thanks to help from David Geisler-Moroder. + +Added variable-resolution BSDF support in renderers and genBSDF. + +Created pkgBSDF program to extract BSDF geometry and put it +together with surface description suitable for inclusion in +a Radiance scene. + +Muted warning for "no light sources found" when there is at least +one glow object and interreflections are on (-ab > 0). + +Fixed long-standing bug that caused underestimation of reflection +when specular component was below -st threshold in non-metals. + +Checked in cross-platform cmake build system created by Bill Hoffman +of KitWare and sponsored by NREL. This includes a qt-based +driver for rvu, which is built in the new subdirectory src/qtrvu. + +===================== +Version 4.2 (Release date 7/31/2014) + +Axel Jacobs added -cp and -palettes options to falsecolor. + +Fixed bug in matrix output of genBSDF introduced shortly before 4.1 release. + +Made rvu more responsive in multi-processing mode when changing parameters. +Explicit "new" command not needed to show changes, because it goes back +to "immediate mode" once something is changed. Processing will be slow +but response time quick until next "new" command. + +Fixed major bug in transmitting proxy material sampling. + +Patched cmake build tools (changes by Zack Galbreath). + +Removed requirement for pflip -h to be given input file (can pipe from stdin). + +Added "Number of processes" slider to trad "Action" pane to control rad -N +option for rvu and batch rendering. + +Added -c option to vwrays to repeat pixels for rtcontrib. + +Reworked rtcontrib program and renamed to rcontrib. New version runs much +faster, especially on multiprocessor systems, and doesn't require as much +memory. No longer calls rtrace; instead does all the work itself. + +Added -d option to genskyvec to produce direct-only (sun no sky) vector. + +Added Ashikhmin-Shirley anisotropic BRDF model (ashik2) with help +from Nicolas Boneel. + +Added Ruby rewrite of objview.csh by Rob Guglielmetti. + +Fixed bug in reciprocity for tensor tree BTDF representations. Thanks +to Andy McNeil for identifying the problem. + +Added MNAME and ZNAME variables to ranimove for debugging & testing. + +Created pmblur2 command to take motion and depth buffers from ranimove +to compute a better motion blur. + +****** COMPATIBILITY CHANGE ******** +Changed BSDF routines to use updated/corrected XML specification and +removed depracated BSDF support from mkillum. + +Fixed behavior of i/o flushing in rcontrib with -c > 1 (averaging). Thanks +to Lars Grobe for help identifying this problem. + +Fixed bug in depth-of-field blur where view distance was measured from +fore clipping plane rather than viewpoint. Thanks to Peter A-B for +pointing this out. + +Added options to dctimestep to allow multiple time steps (-n) +and multiple output pictures or sensor files (-o). Also added -i +option to specify float (-if) or double (-id) input for sky matrix. + +Created gendaymtx program to compute annual sky patch matrix based +on Ian Ashdown's implementation of Perez all-weather sky model. +Output can be sent directly to dctimestep in ASCII or binary stream. + +Replaced existing gendaylit.c with improved version from Wendelin Sprenger +and Jan Wienold of ISE. + +Improved accuracy of ambient calculation for large -ad settings. Thanks +to Lars Grobe for noticing the problem. + +Added -r option to gendaymtx to rotate the sky the specified number of +degrees about the zenith as suggested by A. McNeil. + +Axel Jacobs added -pal eco color map that does a blue-red-yellow scale. + +Created bsdf2klems tool to convert from various BSDF representations to +Klems basis matrix in XML file. + +Fixed problem with inappropriate reciprocity enforcement on tensor +tree reduction in genBSDF. (Thanks to A.McNeil for discovering issue.) + +Fixed bug in isotropic tensor tree sampling for impinging rays +exactly normal to surface. Thanks to Peter Apian-Bennewitz for +discovering and pointing out the error. + +Fixed double-counting bug in mirror material with alternate type. +Thanks to David Geisler-Moroder for spotting the problem and helping +to fix it. + +Created rcollate program to resize and transpose matrix data for Andy +McNeil's 5-phase annual simulation method. + +Added epw2wea conversion program by Christoph Reinhart. + +Implemented Perlin's improved noise function with help from Rahul Narain. +This will change the appearance of renderings using this function. + +Added "origin" command to rvu as requested by John Mardaljevic +to place view origin at selected point in scene. + +Switch to Perl versions of objview and objpict written by Axel Jacobs. + +Improved rendering speed of scenes with aliases by not entering new +modifiers into table if they are the same as the previously defined +modifier for that name. + +Made it so icalc and rcalc search RAYPATH directories for *.cal files +given on command line. This simplifies script writing and makes these +utilities consistent with other tools in Radiance. + +Added triangulation routine to handle convex polygons in obj2mesh. + +****** COMPATIBILITY CHANGE ******** +Made backface visibility apply to all material types, including +transparent and translucent materials (except dielectric and interface). +This makes the option useful in cases where adjacent trans surfaces +are placed next to each other by a modeler that only understands +volumetric objects. + +Changed dctimestep so that output matrices (-n > 1) are preceded by a +header, and added support for float and double output formats with -o[fd]. + +Introduced eplus_adduvf program to compute user view factors for EnergyPlus. + +Changed image-plane sampling in rpict to use Hilbert curve, which gives +less of a brushed/striped appearance to output pixels with -u- (default). + +Added ltview and ltpict Perl scripts contributed by Axel Jacobs, inspired +by Rob Guglielmetti. + +Added header variables for NROWS, NCOLS and NCOMP to help standardize +matrix files. This functionality has been incorporated into +rcollate, gendaymtx, and dctimestep. + +Created rmtxop utility to operate on multi-component matrices. This +facilitates some daylight matrix calculations, and provides a general +tool for manipulating matrix data. + +****** COMPATIBILITY CHANGE ******** +Introduced new Hessian-based error control in irradiance caching (ambient) +calculation. Since the format of the stored ambient values is different, +the old files will be rejected with an error message and must be removed. +The programs may be compiled with the -DOLDAMB option if this is a problem. + +Added -p option to rcontrib to set function file parameters on a per-modifier +basis to simplify bin evaluation. + +Created rfluxmtx program to compute flux transfer matrices from a sender +surface to one or more receiver surfaces. (Renamed the file klems_int.cal +to klems_full.cal in the process.) + +Added "-c" option to getinfo to execute command on data segment. + +================================ +Version 5.0 (Released 9/18/2015) + +Changed rmtxop so it writes out same type as lesser of inputs unless +directed otherwise using -f? option. + +Changed order of oconv arguments in rfluxmtx so user can specify input +octree using -i option at the end instead of (or in addition to) a +list of scene files. + +Added support for argument expansion to rfluxmtx and bug fixes. + +Fixed bug in indirect hemisphere sampling for some corner cases. + +Added default specular lobe to BSDF interpolation. + +Set minimum number of shadow checks before direct optimization (4). + +(Above changes included in 4.2.1 patch release.) + +****** COMPATIBILITY CHANGE ******** +Made header input and output the default behavior for dctimestep and +genskyvec. + +****** COMPATIBILITY CHANGE ******** +Changed pabopto2bsdf default behavior to add 90-degree rotation +to bring pgII's definition of "up" in line with Klems axis +conventions. Introduced a new header variable "upphi" to +control this added rotation. Using "#upphi 90" in each +BSDF input file gets back the original behavior, where it +assumes that the up direction is 90-degrees from the X-axis. +The default value of 0 corresponds to PAB's definition of +the X-axis as being "up". + +Fixed bug in rsensor related to having many rows (altitude) and +few columns (azimuth) in sensitivity file. + +Fixed floating point round-off error in new Hessian calculation +for some sytems (Windows, primarily). + +Fixed bug in tensor tree BSDF code that caused bus error on +some systems, and may have been source of other errors as well. + +(Above changes included in 4.2.2 patch release.) + +Improved ambient extrapolation to avoid zero values. Actual +threshold set to 5% of recorded value. + +Changed anisotropic Gaussian and Ashikhmin models so that +illegal orientation vectors are dealt with more gracefully. + +Created wrapBSDF tool and incorporated into genBSDF along +with new rfluxmtx computation. + +Initial check-in of Roland Schregle's photon map integration. +New 5.0a version designation as suggested by Andy McNeil. + +Added left-hand coordinate sytems to rfluxmtx to correct +problems with coordinate axis orientations pointed out by +David Geisler-Moroder. + +Added color output to genBSDF (+C option) and support for +color rendering of Klems and tensor tree data. + +Fixed another bug in rsensor that caused rays to be generated +on opposite side of hemisphere even where sensitivity was zero. + +Fixed bug discovered by Jacob Jonsson in Klems BSDF +interpolator that caused it to over-predict normal +transmittance and reflectance. + +Added ability to read input from commands in dctimestep +and rmtxop. + +Added photon map support to rad. Fixed some double-counting +issues in photon-mapping spotted by David Geisler-Moroder. + +Added photon map support to trad. + +Fixed bug in antimatter source testing when antimatter +definition follows potential obstructor in input. + +Fixed issue with missing character type identifier at head +of genBSDF XML output. + +Prompted by Roland S., added option to have pcompos -a order +rows from top rather than bottom of image. + +Changed dctimestep to accept matrix as well as BTDF input +in the VTDs invocation mode. This permits the output of +rmtxop to be used in a pinch when combining multiple BTDF +layers, although interreflection between layers is not +accounted for properly as it is in the WINDOW program. + +Added Jan Wienold et al.'s evalglare to distribution. + +Hopeful fix to deadlock issue under Mac OS X 10.10.x (Yosemite). + +Fixed early exit of rcontrib with internal error (sample behind sender) +discovered by Rob G. + +================================= +Version 5.1 (Released 8/17/2017) + +Fixed issue with vchars.mta and symbols.mta not being installed in +the appropriate metafile library location, with help from Rob G. + +Added ability to give quoted strings to output= directive in rfluxmtx. + +****** COMPATIBILITY CHANGE ******** +Added ability to digest color (CIE-XYZ) input in pabopto2bsdf. +This change alters the .sir (interpolant) format, so these files +will need to be regenerated. Use the new "#colorimetry: CIE-XYZ" tag +to enable on input. + +Rewrote bsdf2klems to support tristimulus color and call wrapBSDF. +Did the same for bsdf2ttree. Function specifications still gray only. + +Reduced a problem where rvu or rholo would be slow to quit when +run with many processes on a large model or one with a large +ambient file (taking lots of memory). We were waiting for +processes to quit one-by-one, which takes some time for each +process as it disentangles its shared memory. We now +wait for all the processes together, so they can disentangle +in parallel. It can still take up to a minute in some cases, +but not 10 minutes like it was taking before the fix. + +Enabled ambient cache value corral for all levels, not just final two. +This may reduce errors in certain pathological scenes. + +Added -in option to rcalc, rlam, and total to limit the number of +input records in hopes of circumventing Windows EOF issues on binary data. +Also added -on option to rcalc and total for logical symmetry. + +Increased modifier limit to 10,000 in rcontrib. + +Fixed issues with glrad and added zoom response to mouse wheel input. + +Added missing definition of "ashik2" material type to reference manual. + +Changed genBSDF to calculate device thickness assuming Zmax==0 so +pkgBSDF will generate correct proxy geometry. + +Created pabopto2xyz tool to combine different sensor measurements +into a single CIE-XYZ measurement file for color BSDF interpolation. + +Jan Wienold updated evalglare to version 1.30 + +Roland Schregle added out-of-core photon mapping routines, which +may be compiled using the PMAP_OOC macro. + +Added -a option to getinfo for easy addition of header lines. + +Fixed issue with multiple records on picture output in rcontrib (and rfluxmtx). +Credit to Sarith Subramaniam for pointing out the problem. + +Made mkillum more tolerant of non-planar polygons in its sampling routines. + +Added "-recover" option to genBSDF to pick up where it left off. + +Fixed genBSDF issue that was created incorrect normalization of +Klems output. Thanks to David G-M and Christian Knoflach for +discovering the error. Also improved sampling of indirect irradiance +that showed some slight bias due to poor sample collision avoidance. + +Fixed long-standing issue with -aa 0 neglecting textures in calculating +surface shading. + +Fixed bug in ranimove introduced during photon map integration. + +Added check for steep sections of BSDF in pabopto2bsdf, creating narrower +peakes in those places and mitigating some normalization issues. + +Added view360stereo.cal by Mark Stock to handle 360-degree over/under +stereo views. + +Added MAX2SHADE macro to place limit on number of light sources +to precheck for obstructions. (Currently set to 200.) This +avoids excessive start-up times for scenes with many light sources. +Thanks to Axel Jacobs for pointing out the problem. + +Added -v option to obj2mesh to print out mesh statistics. + +Rewrote bsdf2rad from ground up and made it a standard part of build. + +Fixed bug in orientation of Reinhart/Tregenza sample generator in rfluxmtx. + +Added ability to perform shadow-testing through unproxied BSDFs with strong +through (direct-direct) component. + +Added {+|-}a options to genBSDF and bsdf2ttree for switching off reciprocity +averaging. + +Added bias to see through BTDFs with a strong "through" component +rather than scattering view rays. This is in lieu of peak extraction, +which looked to be too difficult from an implementation standpoint. + +Added bsdfview tool analogous to objview but for BSDF files (XML and SIR), +which calls bsdf2rad then rad with a few useful default views. + +========================= +Version 5.2 (Release October 8, 2018) + +Created psketch program to apply non-photorealistic rendering to selected +objects, identified by modifier name(s). + +Added '*' and '/' operations to rmtxop for element-wise multiplication and +division of same-sized matrices. + +Changed falsecolor so "-s" option is adjusted to match legend if one. + +Falsecolor legend changes and improvements by David G-M and Stephen W. + +Fixed bug in peak extraction code that generated +"Bad call to SDqueryTreProjSA" error, reported by Lars Grobe. + +Increased maximum luminance to 10^7 in pcond to fix issue noticed +by Axel Jacobs where veiling glare not added for the sun under +some conditions. + +Increased maximum number of open files in rcontrib to the system upper +limit of 2048 rather than the default 512 under Windows. + +Added top-level resources directory with files from Rob Guglielmetti. + +Improved accuracy for peaky BSDFs and small light sources. + +Fixed issue with pmapdump noted by Axel Jacobs. + +Improved accuracy of bsdf2ttree when converting scattering interpolation +representatons with strong peaks. + +Tweaked peak-extraction code to work more reliably. + +Georg Mischler updated SCons build system. + +Rob Guglielmetti and Alex Swindler updated CMake build system. + +Modified pcomb so the first view seen in the inputs is written into header. + +Wrote rtpict script to run rtrace in parallel mode and simulate rpict with +-n option. + +Added ability to move forwards/backwards specified distance in rvu "origin" +command. Feature requested by John Mardaljevic, who essentially owns this +command, now. + +Reduced bias in ambient super-sampling method. + +Fixed bugs associated with zero transmission in chromatic tensor trees. +Thanks to Lars Grobe for pointing out issues. + +Added RAYPATH searching for -f options to genrev, gensurf, genworm, +bsdf2klems, bsdf2ttree, and pcomb. This makes behavior consistent +with rcalc, calc, and rendering tools. + +Worked with Randolph Fritz to fix some issues with ies2rad and newer +IESNA63 standards. + +Resurrected original bsdf2rad test program, renaming it bsdf2rado. Still an +optional build in src/cv/. + +Fixed bug in rcontrib with virtual sources, where pretest was adding +to modifier accumulation buffers. Reported by Mostapha. + +Added an "aBSDF" material type that explicitly checks for peak extraction. +Its arguments are the same as the original "BSDF" type, but without the +thickness parameter, as proxy geometry is not supported by this new type. +The old "BSDF" type no longer does peak extraction under any circumstances, +since this behavior is superfluous for proxied geometry. + +Added -r option to bsdf2rad (and bsdfview) to fix BSDF min and max range +for comparing BSDFs. + +Fixed issue with pfilt -m option and uneven image size changes pointed +out by Rob Shakespeare. + +Updates to evalglare and gendaylit from Jan Wienold, including new +colored sky option. + +========================= +Version 5.3