ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/doc/notes/ReleaseNotes
(Generate patch)

Comparing ray/doc/notes/ReleaseNotes (file contents):
Revision 1.96 by greg, Fri Sep 2 04:15:42 2005 UTC vs.
Revision 1.436 by greg, Fri Dec 8 17:56:26 2023 UTC

# Line 1140 | Line 1140 | of recursive routines using sets to avoid overrunning
1140   the stack limit.
1141  
1142   ==============================
1143 < Version 3.6
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)
# Line 1343 | Line 1343 | Fixed bug in rcalc where it sometimes wasn't parsing t
1343   correctly.
1344  
1345   =====================
1346 < Version 3.7
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
# Line 1489 | Line 1489 | line on the input.  This was not intentional, but I de
1489   behavior so I documented it rather than changing it.
1490  
1491   =====================
1492 < Version 3.8
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
# Line 1511 | Line 1511 | Fixed bug in antimatter using Russian Roulette samplin
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 Atelier.)
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 (Released September 1, 2020)
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 > Also fixed inconsistency of -oN output when ray casting versus full trace.
2275 > Before, it would flip normal to front side unless ray casting.  Now, -oN
2276 > always reports the unflipped normal.
2277 >
2278 > Changed rlam behavior so -iaN reads N lines from a stream rather than N
2279 > characters.  This seems more useful, since -ibN is somewhat redundant with
2280 > the old behavior.
2281 >
2282 > Created rsplit program as compliment to rlam and to handle more complex
2283 > rtrace output into separate files or streams.
2284 >
2285 > Improved getinfo so that it can also hop over resolution string with -c
2286 > and header elide mode.  Use +d to include resolution string in output,
2287 > and -d to elide with - and -c options.
2288 >
2289 > Made pvalue -u option mean "uncompressed" with -r.  Also, allow skipping
2290 > bytes on standard input.
2291 >
2292 > Created rcode_depth tool to convert to and from a 16-bit/pixel portable
2293 > depth image encoding that uses a mix of linear and reciprocal distance
2294 > with explicit representations of 0 and infinity.  Code for loading these
2295 > depth maps is in src/common/depthcodec.{h,c}.
2296 >
2297 > Created rcode_norm tool to convert to and from 32-bit/pixel portable
2298 > surface normal representation, matching the one in src/common/dircode.c.
2299 > Code for loading normal maps is in src/common/normcodec.{h,c}.
2300 >
2301 > Created rcode_ident tool to create indexed identifier files.
2302 > Code for loading these files is in src/common/idmap.{h,c}.
2303 >
2304 > Added -o* option to rtpict to produce layered images that handle most
2305 > output types from rtrace (colors, surface normals, distances, IDs).
2306 >
2307 > Created rcode2bmp script to create images from new rcode_* output maps.
2308 >
2309 > Improved efficiency of rmtxop in cases where matrix multiplication is
2310 > faster evaluated right-to-left, as when the final component is a
2311 > column vector.  Also added ability to apply trailing unary operators
2312 > (-t, and -s or -c) to resulting matrix.
2313 >
2314 > Added new depth, normal, and ID file types to radcompare.
2315 >
2316 > Added BigEndian= header line for automatic byte-swapping in rmtxop
2317 > and radcompare.
2318 >
2319 > Added new "turbo" palette to falsecolor (thanks to Taoning).
2320 >
2321 > Nathaniel Jones created the "dcglare" program for annual glare
2322 > simulations when the sun and sky are visible through the window.
2323 > Tutorial is posted at
2324 > "https://github.com/nljones/Accelerad/wiki/The-Imageless-Method-for-Spatial-and-Annual-Glare-Analysis".
2325 >
2326 > Added support for loading RGBE images into matrices in dctimestep.
2327 >
2328 > Added -y option to gensky and gendaylit to support more accurate Michalsky
2329 > solar position calculation.
2330 >
2331 > Changed rsplit, so specifying a space as the separator parses words
2332 > between whitespace.
2333 >
2334 > Added ability of vwrays, pinterp, and pmblur2 to read encoded depth files.
2335 >
2336 > Added -o RxCxR1xC1 facility to perform blocking in rcollate.
2337 >
2338 > Made it so number of segments in genworm, genrev, and gensurf can be
2339 > given as expressions of previously defined variables, etc.
2340 >
2341 > Added -D and -n option to gendaymtx to output sun description and skip
2342 > matrix output on request.  A -M option was also added to output solar
2343 > modifiers for rcontrib.  Support also added for leap days in WEA input.
2344 > Enhancements sponsored by Ladybug Tools.
2345 >
2346 > Updated eplus_uvf to work with IDF version 9.x, checking version number.
2347 >
2348 > Fix to glarendx issues with dgi calculation.
2349 >
2350 > Made it so rmtxop and dctimestep undo any exposure applied to Radiance
2351 > pictures they may load.
2352 >
2353 > Added robjutil utility to manipulate Wavefront .OBJ files.
2354 >
2355 > Fixed a crash related to rtrace -om or -oM with mesh instances containing
2356 > materials.
2357 >
2358 > Improved rtrace flushing function to handle any value for -x without
2359 > deadlock on controlling process.
2360 >
2361 > Eliminated unnecessary start-up procedures for rtrace when only ray-casting
2362 > is needed (i.e., no tracing or value output).
2363 >
2364 > Improved isotropic sampling method in bsdf2ttree using "zipper" approach
2365 > applied in genBSDF.
2366 >
2367 > Added limit to memory used by high-resolution tensor tree BSDFs for
2368 > cumulative cache during MC sampling (rendering).  Limit set to 250MBytes
2369 > per BSDF for standard architectures.
2370 >
2371 > Added -n and -s options to bsdf2ttree to provide some user control
2372 > over super-sampling.
2373 >
2374 > Improved surface normal codec used by ambient file to store orthonormal
2375 > directions exactly.
2376 >
2377 > Improved peak extraction method, which was undervaluing transmission
2378 > in many cases.
2379 >
2380 > New version of evalglare from Jan Wienold.
2381 >
2382 > Added -u option to gendaymtx to elide data columns (time steps) when
2383 > the sun is not visible above the horizon.
2384 >
2385 > =========================
2386 > Version 5.4
2387 >
2388 > Added rcollate -c option to force operation to continue even if it
2389 > seems unnecessary.  Made tool more robust.
2390 >
2391 > Added -t option to rcontrib (and rfluxmtx) to report progress after the
2392 > given number of seconds.
2393 >
2394 > Added "test" target to makeall to run unit tests.
2395 >
2396 > Modified bsdf2ttree to allow different parameters per input SIR file.
2397 >
2398 > Fixed issues with very large matrix files (> 2GB) in dctimestep, rmtxop,
2399 > and rcollate.
2400 >
2401 > Added -rf and -rb options to rmtxop to load front or back reflectance
2402 > matrix data from XML file rather than transmission.  (Lars Grobe suggested.)
2403 >
2404 > Improved behavior for coincident surfaces with different materials.
2405 > Rather than returning one surface or the other based on floating-point
2406 > vagaries, opaque materials are now preferred over transparent ones.
2407 > If the materials are both transparent or both opaque, then whichever
2408 > surface appeared later in the scene description will be selected.
2409 > This came of a request for consistent behavior with legal CAD output
2410 > from Peter Apian-Bennewitz.
2411 >
2412 > Added explicit tests for on-edge intersections with polygons.  This should
2413 > eliminate stray rays and tiny light leaks that often appear even in
2414 > well-constructed geometry.
2415 >
2416 > Added "-s up" option to pabopto2bsdf to allow for 180 degree symmetry,
2417 > meaning that data repeats after 180 degree rotation (as distinguished
2418 > from "-s bilateral" whose data is mirrored about a vertical plane).
2419 > Thanks to Helen Rose Wilson for the suggestion and informing me that
2420 > such a thing exists.
2421 >
2422 > Removed upper limit on number of modifiers in rcontrib.
2423 >
2424 > Put cap on maximum ambient gradient to avoid over-extrapolation of
2425 > poorly computed irradiance cache values.
2426 >
2427 > Added robjutil +T option to triangulate all faces in .OBJ description.
2428 >
2429 > Altered BSDF library to have both front and back diffuse transmittance
2430 > values, which can be different.  This was necessary to avoid issues
2431 > caused by measurement and modeling discrepancies.
2432 >
2433 > Added pabopto2bsdf -g option to cull near-grazing scattering to avoid
2434 > issues with noise and negative values.
2435 >
2436 > Increased default dynamic range from 32 to 100 in pcond and normtiff.
2437 >
2438 > Added -o and -n options to genbox to create .OBJ output and segment
2439 > edges and corners for transparent materials.  Also added -s option
2440 > to control smoothing for .OBJ and Radiance with segmented rounding.
2441 >
2442 > Made it so robjutil with the +r option for Radiance output now
2443 > produces normal smoothing unless normals are removed with -n.
2444 >
2445 > Added exposure preservation to pcompos when possible (i.e., when
2446 > there is only one input or inputs agree on exposure).
2447 >
2448 > Added -DSHARP_RGB compile-time option to use sharp RGB color space
2449 > rather than historic default.  This can make for more accurate color
2450 > calculations, but requires that materials be recalibrated.  The
2451 > PRIMARIES= line is also produced on output from rpict or rvu with
2452 > the correct set of primaries based on how the system was compiled.
2453 >
2454 > Added automatic flushing to the output of total, except when the -r
2455 > (running subtotals) option is used.
2456 >
2457 > Improved behavior of little-used -aw option, so that it avoids sea-level
2458 > rise caused by adding its own estimate back into the ambient level remainder.
2459 > It ended up being simple enough to derate the final average by the factor
2460 > corresponding to average surface absorpition, thus removing the average
2461 > from the final bounce estimate.
2462 >
2463 > Introduced ies2rad upgrades by Randolph Fritz.  Randolph says it
2464 > fixes the following problems:
2465 >
2466 >        1. Generates correct Radiance geometry for spheres in 1995, 2002,
2467 >        and 2019 IES files.
2468 >
2469 >        2. Generates correct Radiance geometry for vertical cylinders that
2470 >        are taller than they are wide.
2471 >
2472 >        3. Ignores the file source ("File Generation Type") field in the
2473 >        2019 version of the file, which would otherwise be incorrectly used
2474 >        as an output multiplier.
2475 >
2476 >    It also offers the following enhancements:
2477 >
2478 >        1. Shape information is included in the .rad file comments.
2479 >
2480 >        2. 1995, 2002, and 2019-version luminous opening geometry is
2481 >        accounted for.
2482 >
2483 >        3. The 2002 and 2019 IES file versions are recognized and
2484 >        processed appropriately.
2485 >
2486 >        4. I have made an attempt to do something intelligent with less
2487 >        common "luminous opening" shapes in the 1995, 2002, and 2019 versions
2488 >        of the standard, though I have not implemented any support for new
2489 >        geometry; approximations are substituted and warning messages issued.
2490 >        Unfortunately, this code is not tested, since I don't have any IES
2491 >        files that use these shapes.
2492 >
2493 > Added support for depth-of-field blurring in vwrays using -pd option.
2494 > Also, made -c count work with vwrays -i, producing multiple samples
2495 > per indicated pixel position.  At the same time, support for the -pd
2496 > option was added to rtpict, which calls on vwrays for its samples.
2497 >
2498 > Fixed issue with BSDFs that didn't obey reciprocity, where direct
2499 > sampling wasn't following exactly with indirect sampling.  This was
2500 > discovered and reported by Jon Sargent.
2501 >
2502 > Created checkBSDF tool to test XML BSDF reciprocity and perform similar
2503 > sanity checks.
2504 >
2505 > Added -O option to pvalue and pextrem to report watts/sr/m^2 even if
2506 > picture is XYZE.
2507 >
2508 > Made subtle changes to header i/o routines to preserve alignment in
2509 > binary file formats to enable memory-mapping.  Implemented memory-mapped
2510 > matrix loading in rmtxop for binary double files.
2511 >
2512 > Removed ambient value sorting, which was written when ambient caches
2513 > could overwhelm available memory.  This is rarely the case these days,
2514 > and the added code complexity and updating of cache values with LRU
2515 > counts dirties pages that would otherwise remain clean, so it was
2516 > often a loss even when VM was an issue.
2517 >
2518 > Added iso2klems script to compute a Klems BSDF based on specular
2519 > and diffuse measurements as a function of incident angle.
2520 >
2521 > Fixed issue with over-counting diffuse component during aBSDF
2522 > peak extraction.
2523 >
2524 > Added dctimestep -x and -y options to specify image dimensions
2525 > for multiple outputs corresponding to result vectors.
2526 >
2527 > Added -P option to rcalc to pass formatted input when cond is <= 0.
2528 >
2529 > Created rcrop utility for cropping matrices and pictures more
2530 > conveniently, correcting view information.  Expect it to be handy
2531 > for extracting rows and columns from matrices, mostly.
2532 >
2533 > Changed pcomb so -o option elides original exposure values
2534 > from indented source headers.
2535 >
2536 > Added getinfo -r option, which is similar to -a except it will
2537 > replace indicated lines with new ones.
2538 >
2539 > Slight change to vwrays -d option to not spit out "-ld-", and to
2540 > produce "-ld+" without requiring input picture as argument.
2541 >
2542 > Added automatic overture calculation to rtpict with -n > 1 if
2543 > ambient cache is on and file is named.  If straight image output
2544 > is requested, we randomize all samples and avoid cache collisions.
2545 >
2546 > Added cnt -s option to shuffle output.
2547 >
2548 > Fixed issue with divide-by-zero errors in the ambient super-sampling
2549 > routine discovered by Jon Sargent of Solemma.  This affected regions
2550 > that had zero radiance, such as black backgrounds or unlit areas
2551 > with -av 0 0 0, when super-sampling was effectively disabled, causing
2552 > some loss in accuracy of the results.
2553 >
2554 > Updated Klems Half- and Quarter-bases to match angles currently used
2555 > in WINDOW.
2556 >
2557 > Eliminated most aiming failures for triangular light sources, at the
2558 > expense of conservative sampling near the centroid.  Thanks to
2559 > David Geisler-Moroder for his help on this.
2560 >
2561 > Increased maximum set size to 8191 to avoid set overflow errors.
2562 >
2563 > Added source obstruction test to statistics being kept on which
2564 > sources were visible in adaptive shadow testing code.  Previous
2565 > behavior was likely over-estimating source contributions.
2566 >
2567 > Added diffuse components into maximum directional hemispherical
2568 > reported by checkBSDF, so comparing to 100% is easier for each
2569 > component.
2570 >
2571 > Fixed incorrect calculations in iso2klems script, thanks to
2572 > help from Jacob Jonnson.
2573 >
2574 > Updated official copyright and license according to new wording
2575 > provided by Jean Haemmerle at the LBNL Intellectual Property Office.
2576 > Both were copied verbatim from e-mail I received from Taoning Wang
2577 > on 8/20/2022.
2578 >
2579 > Added -features option to rpict, rtrace, and rcontrib to check
2580 > which features are present or look for specific feature support.
2581 > This addition was suggested by Peter Apian-Bennewitz as an easier
2582 > way to determine which version of Radiance is installed and what
2583 > it supports, and is timely as we begin our refactoring of the
2584 > rendering code.  There are no current plans to add this to rvu.
2585 >
2586 > Added falsecolor -odim, -orct, and -c0 options to overlay grid of
2587 > values on image.  This was requested by Rob Shakespeare.
2588 >
2589 > Added -i* and -o* options in rhcopy for reading rays from the
2590 > standard input and writing rays from holodeck to standard output.
2591 > This will hopefully be useful in combining rholo with rcontrib.
2592 >
2593 > Added further checking for coincident (overlapping) flat surfaces,
2594 > preferring front sides to back sides in the ray intersection
2595 > calculation.  This only applies to rings and faces, as the other
2596 > surface types would have required additional calculations to
2597 > make them work.  Material transparency is still the primary
2598 > consideration, now followed by ray hit side, followed by
2599 > modifier definition order in the input.
2600 >
2601 > Increased octree and object limits to allow scenes with billions
2602 > of primitives.
2603 >
2604 > Made reciprocity averaging default to "off" in bsdf2ttree, as it seems
2605 > to create more problems than it solves.
2606 >
2607 > ====================
2608 > Version 6.0
2609 >
2610 > Extensive changes to enable spectral rendering, which defaults to "off"
2611 > to maintain backwards-compatibility with previous versions, with the
2612 > exception of the ambient file format, which is changed.  The MAXCSAMP
2613 > macro, which defaults to 24, sets the maximum number of spectral samples.
2614 > The actual number of samples is set by the "-cs" option, which defaults
2615 > to 3 for rpict, rtrace, and rcontrib.  The latter two programs support
2616 > straight spectral output, but rpict is initially restricted to
2617 > tristimulus output pictures.  New pattern primitives "spectrum",
2618 > "specfile", and "specfunc" have been added as a means to specify
2619 > spectral reflectance, emittance, etc. to materials that still have
2620 > only 3 color channels.  Those RGB channels will still affect the
2621 > spectrum if used.  Unfortunately photon-mapping is currently broken when
2622 > spectral sampling is enabled, but we will fix this as soon as possible.
2623 > Calculation overhead appears to be approximately 10-15% for RGB
2624 > renderings compared to version 5.4a.
2625 >
2626 > Added spectral rendering to rvu as well, and made -cs and -cw
2627 > options standard across the rendering library.  I also brought
2628 > mkillum, ranimove, rsensor, and mksource into the fold.  These
2629 > tools were broken in the initial release.  (Hopefully, they are
2630 > working now, but none have been tested as yet.)
2631 > There was also an indexing bug in the spectral->RGB conversions
2632 > that made reds into blues and vice versa, which has been fixed.
2633 >
2634 > Added i/o for spectral pictures to rmtxop, the first program that can
2635 > ingest them.  (Only rtrace, rcontrib, and rfluxmtx can render them.)
2636 > New symbolic rmtxop -c options, such as RGB, XYZ, S (for scotopic)
2637 > and M (for melanopic) make color conversions simpler.  Alternatively,
2638 > a reference matrix or picture may be given and the color space of
2639 > that file will be used.  The -C option takes either a symbolic
2640 > color space or reference file and is "sticky," so it applies to
2641 > all subsequent input files that do not have their own -c right ahead
2642 > of them.
2643 >
2644 > Added spectral picture support to rcrop and radcompare.
2645 >
2646 > Added new utility, rmtxcomb, which is hard to type and hard to
2647 > pronounce, and probably equally difficult to use.  Sort of a
2648 > combination of rmtxop and pcomb, it works with all the inputs and
2649 > outputs that rmtxop handles, but allows for general expressions
2650 > like those in pcomb for putting matrices together, working on
2651 > an element at a time.  (No resizing of matrices or accessing
2652 > neighboring elements, as permitted in pcomb.)  It saves memory
2653 > over rmtxop by operating on a row at a time, so can handle
2654 > input and output matrices with any number of rows.  It does
2655 > provide for a single matrix-multiplication operation at the end,
2656 > which only requires memory for that final matrix.
2657 >
2658 > Added support for filtering hyperspectral images to pfilt.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines