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.94 by greg, Mon Aug 22 16:07:26 2005 UTC vs.
Revision 1.415 by greg, Tue Apr 26 03:00:02 2022 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 1506 | Line 1506 | Fixed bug in ambient calculation that caused black val
1506   bounces in some scenes.  Thanks to Mark Stock for creating and sharing
1507   the sophisticated test scene that demonstrated this problem.
1508  
1509 + Fixed bug in antimatter using Russian Roulette sampling.
1510 +
1511   (Above changes included in 3.7.2 patch release 22 Aug 2005.)
1512 +
1513 + Created fieldcomb script to combine alternate fields in a rendering
1514 + sequence.  (Development generously sponsored by Iebele Abel.)
1515 +
1516 + Added missing preload of mesh objects for more efficient memory use
1517 + during parallel rendering -- this was a serious oversight.
1518 +
1519 + Created ran2tiff program to automate exposure setting of animation
1520 + sequences using a moving histogram in combination with pcond, and
1521 + converting frames to TIFF.
1522 +
1523 + Eliminated SPEED macro from makeall and source tree.
1524 +
1525 + Added -pj option to vwrays to allow jittering of sample locations.
1526 +
1527 + Fixed bug in rtcontrib where it occasionally missed writing the
1528 + final bin file.  (Pretty serious, actually.)
1529 +
1530 + Added -Dfseeko=fseek to MACH= line for linux, as fseeko(3) seems to be
1531 + broken in current versions of Linux.  (Need to remove this later.)
1532 +
1533 + Rearranged struct's for better efficiency on 64-bit architectures.
1534 +
1535 + Added -i option to rlam so it works with binary input formats.
1536 +
1537 + Added rtcontrib -bn option to specify number of bins and fixed bug
1538 + in recovery of files containing multiple values per record.
1539 +
1540 + Added rtcontrib -fo option to write over existing files, which it now
1541 + refuses to do without this option.
1542 +
1543 + Made rtcontrib flush output when handed a zero-length ray vector,
1544 + to match behavior of rtrace.
1545 +
1546 + Improved color scale for falsecolor output.
1547 +
1548 + Added threshold test for Fresnel approximation to prevent its use
1549 + on smooth surfaces with unrealistically low specularities (less than 1.8%).
1550 + Water has a specular reflectance of 2.1% at room temperture.
1551 +
1552 + Removed NICE macro settings in rpict and rtrace, which was slowing down
1553 + the processes under Mac OS X (10.4) by about 60% due to processor napping.
1554 +
1555 + Made xform, replmarks and rad2mgf handle quoted modifiers and names properly.
1556 +
1557 + Fixed problem in genblinds, where it was generating slats that were too
1558 + wide with the +/-r option.  (Thanks to Helena Buelow-Huebe for discovering
1559 + this bug.)
1560 +
1561 + Fixed bug in ra_ppm for 16-bit/sample i/o, where it was getting the byte
1562 + order wrong (apparently).
1563 +
1564 + Added -V option to rtcontrib to report actual contributions, rather than
1565 + just ray coefficients.
1566 +
1567 + Fixed bug in ranimate that caused it to fail in continuation of renderings.
1568 +
1569 + Renamed librt.a to librtrad.a, to avoid conflict on Solaris. Almost
1570 + everything now gets linked to -lrtrad instead of -lrt.
1571 +
1572 + Fixed problem with large sample sets, so -u+ option now is truly random.
1573 + Thanks to Rick Mistrick and Younju Yoon for identifying this problem,
1574 + which was related to a poorly designed hash function.
1575 +
1576 + Changed -u+ to be the default setting in rtrace (only).
1577 +
1578 + Fixed binary i/o for rlam and vwrays under Windows.
1579 +
1580 + Added tmCvLums() to tone-mapping routines using a 16-bit lookup table
1581 + on IEEE floats, which is also used to improve speed of COLOR conversions,
1582 + especially on machines with slow log() calls.  The first call to
1583 + tmCvLums(), tmCvGrays(), or tmCvColors() initializes the table.
1584 +
1585 + Created optics2rad.csh script to convert from Optics 5 material output
1586 + to something correct for Radiance.  Built on old glazing.cal function,
1587 + which is actually incorrect so removed from the distribution.
1588 +
1589 + Fixed nuisance bug in ximage under some SGI machines that caused it to
1590 + choose an inappropriate visual and display incorrect colors.  (Thanks
1591 + to Oskar Itzinger for debugging the problem.)
1592 +
1593 + Fixed long-standing inaccuracy of pcompos -t and +t thresholding options.
1594 +
1595 + Fixed bug in handling of views with tabs rather than spaces.
1596 +
1597 + Fixed bug related to alias of alias.
1598 +
1599 + ****** COMPATIBILITY CHANGE ********
1600 + Changed default sky turbidity in gensky from the original default of
1601 + 2.75 to the CIE 110-1994 standard value of 2.45.  Thanks to Marilyne
1602 + Anderson of MIT for pointing out this discrepancy.
1603 +
1604 + Added -o option to ra_xyze to produce original pixel values.
1605 +
1606 + Fixed bug in tracing of virtual sources, where intervening glazing was
1607 + not being accounted for properly.
1608 +
1609 + Added -h option to pcompos and pcomb to eliminate verbose headers.
1610 +
1611 + =====================
1612 + Version 3.9 (Released 3/30/08)
1613 +
1614 + Added -spec option to falsecolor to restore original spectral color scale.
1615 + Also added "-s auto" option to automatically set the maximum value.
1616 +
1617 + Added byte-swapping input and output to rcalc.
1618 +
1619 + Additional error-checking for source surfaces.
1620 +
1621 + Re-fixed bug in octree code that caused it to allocate 8 times as
1622 + much memory as it actually used(!) -- this was pointed out way back
1623 + in 1999 by Erik Reinhard and Erik Jansen, but the fix they gave me
1624 + got lost in the slightly broken release process at the time.  This
1625 + should make a big difference in memory usage, especially for the
1626 + new mesh primitive.  (I measured 30% less memory usage.)
1627 +
1628 + Corrected ray weights for material mixtures.
1629 +
1630 + Reduced the default -n setting for obj2mesh to take better advantage
1631 + of the smaller octree structure size.
1632 +
1633 + Fixed bug in shadow cache where it was adding surfaces with antimatter
1634 + holes cut in them to the obstructor list.  Thanks to John Mardaljevic
1635 + for discovering and reporting the problem.
1636 +
1637 + Adding ability in mkillum to incorporate BSDF data in calculation.
1638 + Internal interface (raypcalls) now used in place of rtrace process(es).
1639 +
1640 + Fixed pixel alignment in pcomb for size reduction and enlargement.
1641 +
1642 + Allow rtcontrib user to set -P and -PP options for persistent rendering.
1643 + The only caveat is that -n setting > 1 requires -PP rather than -P.
1644 +
1645 + Added -c option to rtcontrib to facilitate cumulative calculations.
1646 +
1647 + ****** COMPATIBILITY CHANGE ********
1648 + Fixed long-standing bug in source.cal, which caused it to produce
1649 + reversed anisotropic photometric distributions due to the
1650 + misorientation of the y-axis.  Thanks to Zack Rogers for discovering
1651 + and helping debug this problem.
1652 +
1653 + Fixed long-standing bug in replmarks, where triangles with X-side
1654 + aligned with Z-axis would cause incorrect rotations.  Thanks to
1655 + Zack Rogers for finding this error.
1656 +
1657 + Added rsensor program to compute sensor signal for daylighting controls.
1658 + Funding for this component was provided by the Architectural Energy
1659 + Corporation in Boulder, CO, and directed by Zack Rogers.
1660 +
1661 + Added "planisphere" (stereographic) fisheye view type for traditional
1662 + daylighting analysis.  Feature requested & explained by Axel Jacobs.
1663 +
1664 + Modified -c option to rtcontrib so it can take a number of input
1665 + rays to average over, rather than only produce a single accumulated
1666 + record (which can now be done with -c 0).
1667 +
1668 + =====================
1669 + Version 4.0 (Released 3/12/10)
1670 +
1671 + Added -n option to rvu to provide parallel rendering.
1672 +
1673 + ****** COMPATIBILITY CHANGE ********
1674 + Changed ".pic" extension to ".hdr" in all sources and documentation
1675 + to improve interoperability with other software, since this has become
1676 + the de facto extension for Radiance RGBE and XYZE pictures.  Since file
1677 + extensions were never more than a convention in Radiance, this does not
1678 + affect operation, but may require the update of scripts, etc. written
1679 + by others that assume the ".pic" suffix for Radiance output.
1680 +
1681 + Added -N option to objview to support multiprocessing.
1682 +
1683 + Improved sampling of circular sources (source, sphere, ring types) with
1684 + quite a bit of help from David Geisler-Moroder.
1685 +
1686 + Added "rpict" and "rvu" variables to rad, and made these as well as
1687 + the "oconv", "mkillum" and "pfilt" variables accept an alternate
1688 + command path in each case.  Change suggested by Lars Grobe based
1689 + on similar Radzilla (radz) facility by Carsten Bauer.
1690 +
1691 + Fixed rad -v N specification to use actual view name if one.
1692 +
1693 + Fixed error in mkillum calculation where it neglected indirect
1694 + source contributions from BTDF illum's.
1695 +
1696 + Added GMT and LATLONG header lines for Greenwich Mean Time and
1697 + degrees North Latitude / East Longitude.
1698 +
1699 + Added gendaylit to distribution (finally).
1700 +
1701 + Added ability in vwright(1) to get view from command line arguments.
1702 +
1703 + Created genklemsamp(1) utility to generate samples suitable for
1704 + BSDF-based annual calculations.  This is the first Perl script to
1705 + be added to Radiance.  Hopefully, others will follow.
1706 +
1707 + Added klems_int.cal file to compute Klems bins for windows.
1708 +
1709 + Created genskyvec  utility to sample a particular sky and
1710 + evaluate average radiance over the standard Tregenza sky patches.
1711 +
1712 + Created dctimestep program to compute a set of sensor values or
1713 + a combined image for a particular time using the daylight
1714 + coefficient method.
1715 +
1716 + Created src/rt/rayfifo.c for first-in/first-out handling of
1717 + multiprocessing by raypcalls.c.
1718 +
1719 + Added -n option to rtrace for executing on multiple cores
1720 + using new rayfifo calls.
1721 +
1722 + =====================
1723 + Version 4.1 (Released 11/04/2011)
1724 +
1725 + Changed ranimate behavior so remote login under a different user
1726 + doesn't necessarily require the presence of the originating user's
1727 + home directory.
1728 +
1729 + Changed standard transmission function normalization back to what
1730 + it was in version 3.5, following recommendation of David Geisler-Moroder,
1731 + who pointed out that the revised BTDF increased too much at grazing.
1732 +
1733 + Changed rad behavior with -N >1 on single view to call rpiece.
1734 +
1735 + Updated SCons build system for MINGW compilation, thanks to Christian
1736 + Kohler.
1737 +
1738 + Added -u option to rlam for unbuffered output.
1739 +
1740 + Modified dctimestep to accept sky vector and daylight coefficient matrix
1741 + or list of images to sum together, as suggested by Andy McNeil.
1742 +
1743 + Created genBSDF script to generate BSDF in Windows XML format.
1744 +
1745 + Modified mkillum to accept detailed geometry from BSDF XML files.
1746 +
1747 + Altered obj2rad to ignore zero normals (thanks to Jack de Valpine for
1748 + suggestions and help).
1749 +
1750 + Fixed bug in genklemsamp that caused non-uniform sampling over surfaces.
1751 +
1752 + Fixed bugs in rhoptimize and rhcopy for 64-bit compilation.
1753 +
1754 + Made a change to avoid problem using gcc --fast-math compile option.
1755 +
1756 + ****** COMPATIBILITY CHANGE ********
1757 + Changed behavior of rtrace and rtcontrib so that every scanline is
1758 + not flushed when both -x and -y are set.  This avoids flush delays
1759 + in rtcontrib for large numbers of output files and delays while
1760 + rendering images using rtrace with the -n option.
1761 +
1762 + Added ability for rsensor to output ray origins and directions
1763 + rather than actually loading octree and computing sensor value.
1764 +
1765 + Fixed old bug in obj2rad where it would stop processing and
1766 + report a syntax error if the "void" type is used in the map file.
1767 +
1768 + Updated reflection model according to EGSR 2010 paper by David
1769 + Geisler-Moroder and Arne Duer.
1770 +
1771 + Replaced C-shell version of falsecolor with Perl script written
1772 + by Axel Jacobs.
1773 +
1774 + ****** COMPATIBILITY CHANGE ********
1775 + Changed -sj (specular jitter) option to something called specular
1776 + sampling (-ss), which if set less than 1 has the same behavior as
1777 + the old -sj, but when set greater than 1, spawns multiple ray
1778 + samples from semi-specular surfaces.
1779 +
1780 + Fixed bug noticed by Randolph Fritz that caused ambient sync errors.
1781 +
1782 + Fixed bug in findglare for reading picture files under Windows.
1783 +
1784 + Added options to pvalue to note other color spaces on reverse conversion.
1785 + Thanks to Erich Philips for the feature request.
1786 +
1787 + Added BSDF data-driven material type with full sampling support.
1788 +
1789 + Added BRDF calculations to genBSDF.
1790 +
1791 + Bug fixes in rsensor thanks to help from David Geisler-Moroder.
1792 +
1793 + Added variable-resolution BSDF support in renderers and genBSDF.
1794 +
1795 + Created pkgBSDF program to extract BSDF geometry and put it
1796 + together with surface description suitable for inclusion in
1797 + a Radiance scene.
1798 +
1799 + Muted warning for "no light sources found" when there is at least
1800 + one glow object and interreflections are on (-ab > 0).
1801 +
1802 + Fixed long-standing bug that caused underestimation of reflection
1803 + when specular component was below -st threshold in non-metals.
1804 +
1805 + Checked in cross-platform cmake build system created by Bill Hoffman
1806 + of KitWare and sponsored by NREL.  This includes a qt-based
1807 + driver for rvu, which is built in the new subdirectory src/qtrvu.
1808 +
1809 + =====================
1810 + Version 4.2 (Release date 7/31/2014)
1811 +
1812 + Axel Jacobs added -cp and -palettes options to falsecolor.
1813 +
1814 + Fixed bug in matrix output of genBSDF introduced shortly before 4.1 release.
1815 +
1816 + Made rvu more responsive in multi-processing mode when changing parameters.
1817 + Explicit "new" command not needed to show changes, because it goes back
1818 + to "immediate mode" once something is changed.  Processing will be slow
1819 + but response time quick until next "new" command.
1820 +
1821 + Fixed major bug in transmitting proxy material sampling.
1822 +
1823 + Patched cmake build tools (changes by Zack Galbreath).
1824 +
1825 + Removed requirement for pflip -h to be given input file (can pipe from stdin).
1826 +
1827 + Added "Number of processes" slider to trad "Action" pane to control rad -N
1828 + option for rvu and batch rendering.
1829 +
1830 + Added -c option to vwrays to repeat pixels for rtcontrib.
1831 +
1832 + Reworked rtcontrib program and renamed to rcontrib.  New version runs much
1833 + faster, especially on multiprocessor systems, and doesn't require as much
1834 + memory.  No longer calls rtrace; instead does all the work itself.
1835 +
1836 + Added -d option to genskyvec to produce direct-only (sun no sky) vector.
1837 +
1838 + Added Ashikhmin-Shirley anisotropic BRDF model (ashik2) with help
1839 + from Nicolas Boneel.
1840 +
1841 + Added Ruby rewrite of objview.csh by Rob Guglielmetti.
1842 +
1843 + Fixed bug in reciprocity for tensor tree BTDF representations.  Thanks
1844 + to Andy McNeil for identifying the problem.
1845 +
1846 + Added MNAME and ZNAME variables to ranimove for debugging & testing.
1847 +
1848 + Created pmblur2 command to take motion and depth buffers from ranimove
1849 + to compute a better motion blur.
1850 +
1851 + ****** COMPATIBILITY CHANGE ********
1852 + Changed BSDF routines to use updated/corrected XML specification and
1853 + removed depracated BSDF support from mkillum.
1854 +
1855 + Fixed behavior of i/o flushing in rcontrib with -c > 1 (averaging).  Thanks
1856 + to Lars Grobe for help identifying this problem.
1857 +
1858 + Fixed bug in depth-of-field blur where view distance was measured from
1859 + fore clipping plane rather than viewpoint.  Thanks to Peter A-B for
1860 + pointing this out.
1861 +
1862 + Added options to dctimestep to allow multiple time steps (-n)
1863 + and multiple output pictures or sensor files (-o).  Also added -i
1864 + option to specify float (-if) or double (-id) input for sky matrix.
1865 +
1866 + Created gendaymtx program to compute annual sky patch matrix based
1867 + on Ian Ashdown's implementation of Perez all-weather sky model.
1868 + Output can be sent directly to dctimestep in ASCII or binary stream.
1869 +
1870 + Replaced existing gendaylit.c with improved version from Wendelin Sprenger
1871 + and Jan Wienold of ISE.
1872 +
1873 + Improved accuracy of ambient calculation for large -ad settings.  Thanks
1874 + to Lars Grobe for noticing the problem.
1875 +
1876 + Added -r option to gendaymtx to rotate the sky the specified number of
1877 + degrees about the zenith as suggested by A. McNeil.
1878 +
1879 + Axel Jacobs added -pal eco color map that does a blue-red-yellow scale.
1880 +
1881 + Created bsdf2klems tool to convert from various BSDF representations to
1882 + Klems basis matrix in XML file.
1883 +
1884 + Fixed problem with inappropriate reciprocity enforcement on tensor
1885 + tree reduction in genBSDF.  (Thanks to A.McNeil for discovering issue.)
1886 +
1887 + Fixed bug in isotropic tensor tree sampling for impinging rays
1888 + exactly normal to surface.  Thanks to Peter Apian-Bennewitz for
1889 + discovering and pointing out the error.
1890 +
1891 + Fixed double-counting bug in mirror material with alternate type.
1892 + Thanks to David Geisler-Moroder for spotting the problem and helping
1893 + to fix it.
1894 +
1895 + Created rcollate program to resize and transpose matrix data for Andy
1896 + McNeil's 5-phase annual simulation method.
1897 +
1898 + Added epw2wea conversion program by Christoph Reinhart.
1899 +
1900 + Implemented Perlin's improved noise function with help from Rahul Narain.
1901 + This will change the appearance of renderings using this function.
1902 +
1903 + Added "origin" command to rvu as requested by John Mardaljevic
1904 + to place view origin at selected point in scene.
1905 +
1906 + Switch to Perl versions of objview and objpict written by Axel Jacobs.
1907 +
1908 + Improved rendering speed of scenes with aliases by not entering new
1909 + modifiers into table if they are the same as the previously defined
1910 + modifier for that name.
1911 +
1912 + Made it so icalc and rcalc search RAYPATH directories for *.cal files
1913 + given on command line.  This simplifies script writing and makes these
1914 + utilities consistent with other tools in Radiance.
1915 +
1916 + Added triangulation routine to handle convex polygons in obj2mesh.
1917 +
1918 + ****** COMPATIBILITY CHANGE ********
1919 + Made backface visibility apply to all material types, including
1920 + transparent and translucent materials (except dielectric and interface).
1921 + This makes the option useful in cases where adjacent trans surfaces
1922 + are placed next to each other by a modeler that only understands
1923 + volumetric objects.
1924 +
1925 + Changed dctimestep so that output matrices (-n > 1) are preceded by a
1926 + header, and added support for float and double output formats with -o[fd].
1927 +
1928 + Introduced eplus_adduvf program to compute user view factors for EnergyPlus.
1929 +
1930 + Changed image-plane sampling in rpict to use Hilbert curve, which gives
1931 + less of a brushed/striped appearance to output pixels with -u- (default).
1932 +
1933 + Added ltview and ltpict Perl scripts contributed by Axel Jacobs, inspired
1934 + by Rob Guglielmetti.
1935 +
1936 + Added header variables for NROWS, NCOLS and NCOMP to help standardize
1937 + matrix files.  This functionality has been incorporated into
1938 + rcollate, gendaymtx, and dctimestep.
1939 +
1940 + Created rmtxop utility to operate on multi-component matrices.  This
1941 + facilitates some daylight matrix calculations, and provides a general
1942 + tool for manipulating matrix data.
1943 +
1944 + ****** COMPATIBILITY CHANGE ********
1945 + Introduced new Hessian-based error control in irradiance caching (ambient)
1946 + calculation.  Since the format of the stored ambient values is different,
1947 + the old files will be rejected with an error message and must be removed.
1948 + The programs may be compiled with the -DOLDAMB option if this is a problem.
1949 +
1950 + Added -p option to rcontrib to set function file parameters on a per-modifier
1951 + basis to simplify bin evaluation.
1952 +
1953 + Created rfluxmtx program to compute flux transfer matrices from a sender
1954 + surface to one or more receiver surfaces.  (Renamed the file klems_int.cal
1955 + to klems_full.cal in the process.)
1956 +
1957 + Added "-c" option to getinfo to execute command on data segment.
1958 +
1959 + ================================
1960 + Version 5.0 (Released 9/18/2015)
1961 +
1962 + Changed rmtxop so it writes out same type as lesser of inputs unless
1963 + directed otherwise using -f? option.
1964 +
1965 + Changed order of oconv arguments in rfluxmtx so user can specify input
1966 + octree using -i option at the end instead of (or in addition to) a
1967 + list of scene files.
1968 +
1969 + Added support for argument expansion to rfluxmtx and bug fixes.
1970 +
1971 + Fixed bug in indirect hemisphere sampling for some corner cases.
1972 +
1973 + Added default specular lobe to BSDF interpolation.
1974 +
1975 + Set minimum number of shadow checks before direct optimization (4).
1976 +
1977 + (Above changes included in 4.2.1 patch release.)
1978 +
1979 + ****** COMPATIBILITY CHANGE ********
1980 + Made header input and output the default behavior for dctimestep and
1981 + genskyvec.
1982 +
1983 + ****** COMPATIBILITY CHANGE ********
1984 + Changed pabopto2bsdf default behavior to add 90-degree rotation
1985 + to bring pgII's definition of "up" in line with Klems axis
1986 + conventions.  Introduced a new header variable "upphi" to
1987 + control this added rotation.  Using "#upphi 90" in each
1988 + BSDF input file gets back the original behavior, where it
1989 + assumes that the up direction is 90-degrees from the X-axis.
1990 + The default value of 0 corresponds to PAB's definition of
1991 + the X-axis as being "up".
1992 +
1993 + Fixed bug in rsensor related to having many rows (altitude) and
1994 + few columns (azimuth) in sensitivity file.
1995 +
1996 + Fixed floating point round-off error in new Hessian calculation
1997 + for some sytems (Windows, primarily).
1998 +
1999 + Fixed bug in tensor tree BSDF code that caused bus error on
2000 + some systems, and may have been source of other errors as well.
2001 +
2002 + (Above changes included in 4.2.2 patch release.)
2003 +
2004 + Improved ambient extrapolation to avoid zero values.  Actual
2005 + threshold set to 5% of recorded value.
2006 +
2007 + Changed anisotropic Gaussian and Ashikhmin models so that
2008 + illegal orientation vectors are dealt with more gracefully.
2009 +
2010 + Created wrapBSDF tool and incorporated into genBSDF along
2011 + with new rfluxmtx computation.
2012 +
2013 + Initial check-in of Roland Schregle's photon map integration.
2014 + New 5.0a version designation as suggested by Andy McNeil.
2015 +
2016 + Added left-hand coordinate sytems to rfluxmtx to correct
2017 + problems with coordinate axis orientations pointed out by
2018 + David Geisler-Moroder.
2019 +
2020 + Added color output to genBSDF (+C option) and support for
2021 + color rendering of Klems and tensor tree data.
2022 +
2023 + Fixed another bug in rsensor that caused rays to be generated
2024 + on opposite side of hemisphere even where sensitivity was zero.
2025 +
2026 + Fixed bug discovered by Jacob Jonsson in Klems BSDF
2027 + interpolator that caused it to over-predict normal
2028 + transmittance and reflectance.
2029 +
2030 + Added ability to read input from commands in dctimestep
2031 + and rmtxop.
2032 +
2033 + Added photon map support to rad.  Fixed some double-counting
2034 + issues in photon-mapping spotted by David Geisler-Moroder.
2035 +
2036 + Added photon map support to trad.
2037 +
2038 + Fixed bug in antimatter source testing when antimatter
2039 + definition follows potential obstructor in input.
2040 +
2041 + Fixed issue with missing character type identifier at head
2042 + of genBSDF XML output.
2043 +
2044 + Prompted by Roland S., added option to have pcompos -a order
2045 + rows from top rather than bottom of image.
2046 +
2047 + Changed dctimestep to accept matrix as well as BTDF input
2048 + in the VTDs invocation mode.  This permits the output of
2049 + rmtxop to be used in a pinch when combining multiple BTDF
2050 + layers, although interreflection between layers is not
2051 + accounted for properly as it is in the WINDOW program.
2052 +
2053 + Added Jan Wienold et al.'s evalglare to distribution.
2054 +
2055 + Hopeful fix to deadlock issue under Mac OS X 10.10.x (Yosemite).
2056 +
2057 + Fixed early exit of rcontrib with internal error (sample behind sender)
2058 + discovered by Rob G.
2059 +
2060 + =================================
2061 + Version 5.1 (Released 8/17/2017)
2062 +
2063 + Fixed issue with vchars.mta and symbols.mta not being installed in
2064 + the appropriate metafile library location, with help from Rob G.
2065 +
2066 + Added ability to give quoted strings to output= directive in rfluxmtx.
2067 +
2068 + ****** COMPATIBILITY CHANGE ********
2069 + Added ability to digest color (CIE-XYZ) input in pabopto2bsdf.
2070 + This change alters the .sir (interpolant) format, so these files
2071 + will need to be regenerated.  Use the new "#colorimetry: CIE-XYZ" tag
2072 + to enable on input.
2073 +
2074 + Rewrote bsdf2klems to support tristimulus color and call wrapBSDF.
2075 + Did the same for bsdf2ttree.  Function specifications still gray only.
2076 +
2077 + Reduced a problem where rvu or rholo would be slow to quit when
2078 + run with many processes on a large model or one with a large
2079 + ambient file (taking lots of memory).  We were waiting for
2080 + processes to quit one-by-one, which takes some time for each
2081 + process as it disentangles its shared memory.  We now
2082 + wait for all the processes together, so they can disentangle
2083 + in parallel.  It can still take up to a minute in some cases,
2084 + but not 10 minutes like it was taking before the fix.
2085 +
2086 + Enabled ambient cache value corral for all levels, not just final two.
2087 + This may reduce errors in certain pathological scenes.
2088 +
2089 + Added -in option to rcalc, rlam, and total to limit the number of
2090 + input records in hopes of circumventing Windows EOF issues on binary data.
2091 + Also added -on option to rcalc and total for logical symmetry.
2092 +
2093 + Increased modifier limit to 10,000 in rcontrib.
2094 +
2095 + Fixed issues with glrad and added zoom response to mouse wheel input.
2096 +
2097 + Added missing definition of "ashik2" material type to reference manual.
2098 +
2099 + Changed genBSDF to calculate device thickness assuming Zmax==0 so
2100 + pkgBSDF will generate correct proxy geometry.
2101 +
2102 + Created pabopto2xyz tool to combine different sensor measurements
2103 + into a single CIE-XYZ measurement file for color BSDF interpolation.
2104 +
2105 + Jan Wienold updated evalglare to version 1.30
2106 +
2107 + Roland Schregle added out-of-core photon mapping routines, which
2108 + may be compiled using the PMAP_OOC macro.
2109 +
2110 + Added -a option to getinfo for easy addition of header lines.
2111 +
2112 + Fixed issue with multiple records on picture output in rcontrib (and rfluxmtx).
2113 + Credit to Sarith Subramaniam for pointing out the problem.
2114 +
2115 + Made mkillum more tolerant of non-planar polygons in its sampling routines.
2116 +
2117 + Added "-recover" option to genBSDF to pick up where it left off.
2118 +
2119 + Fixed genBSDF issue that was created incorrect normalization of
2120 + Klems output.  Thanks to David G-M and Christian Knoflach for
2121 + discovering the error.  Also improved sampling of indirect irradiance
2122 + that showed some slight bias due to poor sample collision avoidance.
2123 +
2124 + Fixed long-standing issue with -aa 0 neglecting textures in calculating
2125 + surface shading.
2126 +
2127 + Fixed bug in ranimove introduced during photon map integration.
2128 +
2129 + Added check for steep sections of BSDF in pabopto2bsdf, creating narrower
2130 + peakes in those places and mitigating some normalization issues.
2131 +
2132 + Added view360stereo.cal by Mark Stock to handle 360-degree over/under
2133 + stereo views.
2134 +
2135 + Added MAX2SHADE macro to place limit on number of light sources
2136 + to precheck for obstructions.  (Currently set to 200.)  This
2137 + avoids excessive start-up times for scenes with many light sources.
2138 + Thanks to Axel Jacobs for pointing out the problem.
2139 +
2140 + Added -v option to obj2mesh to print out mesh statistics.
2141 +
2142 + Rewrote bsdf2rad from ground up and made it a standard part of build.
2143 +
2144 + Fixed bug in orientation of Reinhart/Tregenza sample generator in rfluxmtx.
2145 +
2146 + Added ability to perform shadow-testing through unproxied BSDFs with strong
2147 + through (direct-direct) component.
2148 +
2149 + Added {+|-}a options to genBSDF and bsdf2ttree for switching off reciprocity
2150 + averaging.
2151 +
2152 + Added bias to see through BTDFs with a strong "through" component
2153 + rather than scattering view rays.  This is in lieu of peak extraction,
2154 + which looked to be too difficult from an implementation standpoint.
2155 +
2156 + Added bsdfview tool analogous to objview but for BSDF files (XML and SIR),
2157 + which calls bsdf2rad then rad with a few useful default views.
2158 +
2159 + =========================
2160 + Version 5.2 (Release October 8, 2018)
2161 +
2162 + Created psketch program to apply non-photorealistic rendering to selected
2163 + objects, identified by modifier name(s).
2164 +
2165 + Added '*' and '/' operations to rmtxop for element-wise multiplication and
2166 + division of same-sized matrices.
2167 +
2168 + Changed falsecolor so "-s" option is adjusted to match legend if one.
2169 +
2170 + Falsecolor legend changes and improvements by David G-M and Stephen W.
2171 +
2172 + Fixed bug in peak extraction code that generated
2173 + "Bad call to SDqueryTreProjSA" error, reported by Lars Grobe.
2174 +
2175 + Increased maximum luminance to 10^7 in pcond to fix issue noticed
2176 + by Axel Jacobs where veiling glare not added for the sun under
2177 + some conditions.
2178 +
2179 + Increased maximum number of open files in rcontrib to the system upper
2180 + limit of 2048 rather than the default 512 under Windows.
2181 +
2182 + Added top-level resources directory with files from Rob Guglielmetti.
2183 +
2184 + Improved accuracy for peaky BSDFs and small light sources.
2185 +
2186 + Fixed issue with pmapdump noted by Axel Jacobs.
2187 +
2188 + Improved accuracy of bsdf2ttree when converting scattering interpolation
2189 + representatons with strong peaks.
2190 +
2191 + Tweaked peak-extraction code to work more reliably.
2192 +
2193 + Georg Mischler updated SCons build system.
2194 +
2195 + Rob Guglielmetti and Alex Swindler updated CMake build system.
2196 +
2197 + Modified pcomb so the first view seen in the inputs is written into header.
2198 +
2199 + Wrote rtpict script to run rtrace in parallel mode and simulate rpict with
2200 + -n option.
2201 +
2202 + Added ability to move forwards/backwards specified distance in rvu "origin"
2203 + command.  Feature requested by John Mardaljevic, who essentially owns this
2204 + command, now.
2205 +
2206 + Reduced bias in ambient super-sampling method.
2207 +
2208 + Fixed bugs associated with zero transmission in chromatic tensor trees.
2209 + Thanks to Lars Grobe for pointing out issues.
2210 +
2211 + Added RAYPATH searching for -f options to genrev, gensurf, genworm,
2212 + bsdf2klems, bsdf2ttree, and pcomb.  This makes behavior consistent
2213 + with rcalc, calc, and rendering tools.
2214 +
2215 + Worked with Randolph Fritz to fix some issues with ies2rad and newer
2216 + IESNA63 standards.
2217 +
2218 + Resurrected original bsdf2rad test program, renaming it bsdf2rado. Still an
2219 + optional build in src/cv/.
2220 +
2221 + Fixed bug in rcontrib with virtual sources, where pretest was adding
2222 + to modifier accumulation buffers.  Reported by Mostapha.
2223 +
2224 + Added an "aBSDF" material type that explicitly checks for peak extraction.
2225 + Its arguments are the same as the original "BSDF" type, but without the
2226 + thickness parameter, as proxy geometry is not supported by this new type.
2227 + The old "BSDF" type no longer does peak extraction under any circumstances,
2228 + since this behavior is superfluous for proxied geometry.
2229 +
2230 + Added -r option to bsdf2rad (and bsdfview) to fix BSDF min and max range
2231 + for comparing BSDFs.
2232 +
2233 + Fixed issue with pfilt -m option and uneven image size changes pointed
2234 + out by Rob Shakespeare.
2235 +
2236 + Updates to evalglare and gendaylit from Jan Wienold, including new
2237 + colored sky option.
2238 +
2239 + =========================
2240 + Version 5.3 (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.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines