--- ray/doc/notes/ReleaseNotes 2021/04/07 21:13:52 1.391 +++ ray/doc/notes/ReleaseNotes 2023/11/27 22:04:45 1.433 @@ -2434,3 +2434,205 @@ Added pabopto2bsdf -g option to cull near-grazing scat issues with noise and negative values. Increased default dynamic range from 32 to 100 in pcond and normtiff. + +Added -o and -n options to genbox to create .OBJ output and segment +edges and corners for transparent materials. Also added -s option +to control smoothing for .OBJ and Radiance with segmented rounding. + +Made it so robjutil with the +r option for Radiance output now +produces normal smoothing unless normals are removed with -n. + +Added exposure preservation to pcompos when possible (i.e., when +there is only one input or inputs agree on exposure). + +Added -DSHARP_RGB compile-time option to use sharp RGB color space +rather than historic default. This can make for more accurate color +calculations, but requires that materials be recalibrated. The +PRIMARIES= line is also produced on output from rpict or rvu with +the correct set of primaries based on how the system was compiled. + +Added automatic flushing to the output of total, except when the -r +(running subtotals) option is used. + +Improved behavior of little-used -aw option, so that it avoids sea-level +rise caused by adding its own estimate back into the ambient level remainder. +It ended up being simple enough to derate the final average by the factor +corresponding to average surface absorpition, thus removing the average +from the final bounce estimate. + +Introduced ies2rad upgrades by Randolph Fritz. Randolph says it +fixes the following problems: + + 1. Generates correct Radiance geometry for spheres in 1995, 2002, + and 2019 IES files. + + 2. Generates correct Radiance geometry for vertical cylinders that + are taller than they are wide. + + 3. Ignores the file source ("File Generation Type") field in the + 2019 version of the file, which would otherwise be incorrectly used + as an output multiplier. + + It also offers the following enhancements: + + 1. Shape information is included in the .rad file comments. + + 2. 1995, 2002, and 2019-version luminous opening geometry is + accounted for. + + 3. The 2002 and 2019 IES file versions are recognized and + processed appropriately. + + 4. I have made an attempt to do something intelligent with less + common "luminous opening" shapes in the 1995, 2002, and 2019 versions + of the standard, though I have not implemented any support for new + geometry; approximations are substituted and warning messages issued. + Unfortunately, this code is not tested, since I don't have any IES + files that use these shapes. + +Added support for depth-of-field blurring in vwrays using -pd option. +Also, made -c count work with vwrays -i, producing multiple samples +per indicated pixel position. At the same time, support for the -pd +option was added to rtpict, which calls on vwrays for its samples. + +Fixed issue with BSDFs that didn't obey reciprocity, where direct +sampling wasn't following exactly with indirect sampling. This was +discovered and reported by Jon Sargent. + +Created checkBSDF tool to test XML BSDF reciprocity and perform similar +sanity checks. + +Added -O option to pvalue and pextrem to report watts/sr/m^2 even if +picture is XYZE. + +Made subtle changes to header i/o routines to preserve alignment in +binary file formats to enable memory-mapping. Implemented memory-mapped +matrix loading in rmtxop for binary double files. + +Removed ambient value sorting, which was written when ambient caches +could overwhelm available memory. This is rarely the case these days, +and the added code complexity and updating of cache values with LRU +counts dirties pages that would otherwise remain clean, so it was +often a loss even when VM was an issue. + +Added iso2klems script to compute a Klems BSDF based on specular +and diffuse measurements as a function of incident angle. + +Fixed issue with over-counting diffuse component during aBSDF +peak extraction. + +Added dctimestep -x and -y options to specify image dimensions +for multiple outputs corresponding to result vectors. + +Added -P option to rcalc to pass formatted input when cond is <= 0. + +Created rcrop utility for cropping matrices and pictures more +conveniently, correcting view information. Expect it to be handy +for extracting rows and columns from matrices, mostly. + +Changed pcomb so -o option elides original exposure values +from indented source headers. + +Added getinfo -r option, which is similar to -a except it will +replace indicated lines with new ones. + +Slight change to vwrays -d option to not spit out "-ld-", and to +produce "-ld+" without requiring input picture as argument. + +Added automatic overture calculation to rtpict with -n > 1 if +ambient cache is on and file is named. If straight image output +is requested, we randomize all samples and avoid cache collisions. + +Added cnt -s option to shuffle output. + +Fixed issue with divide-by-zero errors in the ambient super-sampling +routine discovered by Jon Sargent of Solemma. This affected regions +that had zero radiance, such as black backgrounds or unlit areas +with -av 0 0 0, when super-sampling was effectively disabled, causing +some loss in accuracy of the results. + +Updated Klems Half- and Quarter-bases to match angles currently used +in WINDOW. + +Eliminated most aiming failures for triangular light sources, at the +expense of conservative sampling near the centroid. Thanks to +David Geisler-Moroder for his help on this. + +Increased maximum set size to 8191 to avoid set overflow errors. + +Added source obstruction test to statistics being kept on which +sources were visible in adaptive shadow testing code. Previous +behavior was likely over-estimating source contributions. + +Added diffuse components into maximum directional hemispherical +reported by checkBSDF, so comparing to 100% is easier for each +component. + +Fixed incorrect calculations in iso2klems script, thanks to +help from Jacob Jonnson. + +Updated official copyright and license according to new wording +provided by Jean Haemmerle at the LBNL Intellectual Property Office. +Both were copied verbatim from e-mail I received from Taoning Wang +on 8/20/2022. + +Added -features option to rpict, rtrace, and rcontrib to check +which features are present or look for specific feature support. +This addition was suggested by Peter Apian-Bennewitz as an easier +way to determine which version of Radiance is installed and what +it supports, and is timely as we begin our refactoring of the +rendering code. There are no current plans to add this to rvu. + +Added falsecolor -odim, -orct, and -c0 options to overlay grid of +values on image. This was requested by Rob Shakespeare. + +Added -i* and -o* options in rhcopy for reading rays from the +standard input and writing rays from holodeck to standard output. +This will hopefully be useful in combining rholo with rcontrib. + +Added further checking for coincident (overlapping) flat surfaces, +preferring front sides to back sides in the ray intersection +calculation. This only applies to rings and faces, as the other +surface types would have required additional calculations to +make them work. Material transparency is still the primary +consideration, now followed by ray hit side, followed by +modifier definition order in the input. + +Increased octree and object limits to allow scenes with billions +of primitives. + +Made reciprocity averaging default to "off" in bsdf2ttree, as it seems +to create more problems than it solves. + +==================== +Version 6.0 + +Extensive changes to enable spectral rendering, which defaults to "off" +to maintain backwards-compatibility with previous versions, with the +exception of the ambient file format, which is changed. The MAXCSAMP +macro, which defaults to 24, sets the maximum number of spectral samples. +The actual number of samples is set by the "-cs" option, which defaults +to 3 for rpict, rtrace, and rcontrib. The latter two programs support +straight spectral output, but rpict is initially restricted to +tristimulus output pictures. New pattern primitives "spectrum", +"specfile", and "specfunc" have been added as a means to specify +spectral reflectance, emittance, etc. to materials that still have +only 3 color channels. Those RGB channels will still affect the +spectrum if used. Unfortunately photon-mapping is currently broken when +spectral sampling is enabled, but we will fix this as soon as possible. +Calculation overhead appears to be approximately 10-15% for RGB +renderings compared to version 5.4a. + +Added spectral rendering to rvu as well, and made -cs and -cw +options standard across the rendering library. I also brought +mkillum, ranimove, rsensor, and mksource into the fold. These +tools were broken in the initial release. (Hopefully, they are +working now, but none have been tested as yet.) +There was also an indexing bug in the spectral->RGB conversions +that made reds into blues and vice versa, which has been fixed. + +Added i/o for spectral pictures to rmtxop, the first program that can +ingest them. (Only rtrace, rcontrib, and rfluxmtx can render them.) +New symbolic rmtxop -c options, such as RGB, XYZ, S (for scotopic) +and M (for melanopic) make color conversions simpler. +Also added spectral picture support to rcrop and radcompare.