--- ray/doc/notes/ReleaseNotes 2003/11/11 16:24:05 1.22 +++ ray/doc/notes/ReleaseNotes 2005/09/25 20:36:02 1.105 @@ -1172,7 +1172,7 @@ 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. @@ -1180,7 +1180,8 @@ 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. +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. @@ -1190,9 +1191,9 @@ doubles, respectively. Changed meta2tga to output correct colors. -****** COMPATIBILITY CHANGE ******** Changed local coordinate index from 32-bits to 16-bits, which requires -that Radiance mesh files be recompiled. +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. @@ -1218,3 +1219,317 @@ 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 + +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 + +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.