| 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) | 
| 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 | 
| 1382 |  | Fixed bug that caused incorrect reporting of non-surface in set when | 
| 1383 |  | mixing meshes and instances.  (Thanks to Jack de Valpine for discovery.) | 
| 1384 |  |  | 
| 1385 | < | Fixed innacuracy in calculation of diffuse transmission in the presence | 
| 1385 | > | Fixed inaccuracy in calculation of diffuse transmission in the presence | 
| 1386 |  | of pure specular (Fresnel reflection) using "trans" material.  Thanks | 
| 1387 |  | to Christoph Reinhart for pointing out the error. | 
| 1388 |  |  | 
| 1395 |  | by the vwright command. | 
| 1396 |  |  | 
| 1397 |  | Added DBLUR variable to ranimate and pmdblur script to handle simultaneous | 
| 1398 | < | motion and depth-of-field blurring. | 
| 1398 | > | motion and depth-of-field blurring.  Thanks to Visarc for funding this work. | 
| 1399 | > |  | 
| 1400 | > | Added setting of focus distance in rvu ("focus" command) and rholo | 
| 1401 | > | ('f'/"frame" command). | 
| 1402 | > |  | 
| 1403 | > | Changed default remote shell in ranimate to "ssh" rather than "rsh", | 
| 1404 | > | which has been abandoned on most Unix systems due to security issues. | 
| 1405 | > |  | 
| 1406 | > | Fixed behavior of source primitive using illum with no alternate | 
| 1407 | > | material.  These now become transparent so one can see the sky or | 
| 1408 | > | light-probe background for use in image-based lighting.  Previously, | 
| 1409 | > | the user needed to specify the background glow as the alternate | 
| 1410 | > | material for a distant illum source to behave properly.  (This still | 
| 1411 | > | works.) | 
| 1412 | > |  | 
| 1413 | > | Fixed some minor problems and inconsistencies with 16-bit/channel | 
| 1414 | > | TIFF i/o in ra_tiff. | 
| 1415 | > |  | 
| 1416 | > | Created mksource program to generate distant sources for improved | 
| 1417 | > | image-based lighting with light probes. | 
| 1418 | > |  | 
| 1419 | > | Changed ambient calculation so that -ad will not limit recursion | 
| 1420 | > | depth, and a minimum of 27 samples will be sent out for each stored | 
| 1421 | > | ambient value, or 3 samples if -aa is 0 (caching off). | 
| 1422 | > |  | 
| 1423 | > | Added -oM option to rtrace to report material (rather than modifier) | 
| 1424 | > | for cases where actual material is aliased or further up modifier chain. | 
| 1425 | > |  | 
| 1426 | > | Rearranged the way ray contributions are computed so that it might be | 
| 1427 | > | possible to use rtrace to derive daylight coefficients and optical | 
| 1428 | > | transfer functions.  The new -oTW option of rtrace produces color | 
| 1429 | > | contribution weights for each ray, which combined with the -ti (or -tI) | 
| 1430 | > | option permits the contribution of selected surfaces or sources to | 
| 1431 | > | be determined.  Using the -oTW option, one should also specify | 
| 1432 | > | options "-dt 0 -aa 0 -as 0" for optimal results.  In particular, | 
| 1433 | > | one cannot expect reasonable tallies with -ab >= 1 and irradiance | 
| 1434 | > | caching on (-aa > 0). | 
| 1435 | > |  | 
| 1436 | > | The same code modifications included a change to the indirect computation | 
| 1437 | > | with caching switched off (-aa 0).  Whereas before, the number of secondary | 
| 1438 | > | rays after the first bounce were half of the previous generation, they are | 
| 1439 | > | now determined by the surface reflectance, making for a better and faster | 
| 1440 | > | calculation.  It should now be possible to compute many bounces with -aa 0, | 
| 1441 | > | which used to be prohibitively expensive. | 
| 1442 | > |  | 
| 1443 | > | Added -T option to xshowtrace to trace rays to light sources. | 
| 1444 | > |  | 
| 1445 | > | Added meta2bmp program to produce BMP files from metafile graphics. | 
| 1446 | > |  | 
| 1447 | > | Added cct_x(t) and cct_y(t) to src/cal/cal/blackbody.cal to interpolate | 
| 1448 | > | CIE chromaticities for particular black-body temperatures. | 
| 1449 | > |  | 
| 1450 | > | Increased maximum number of input pictures in pcomb and pcompos to 512. | 
| 1451 | > |  | 
| 1452 | > | Created rtcontrib program for computing ray contribution coefficients. | 
| 1453 | > | This tool may be used to do standard optical ray tracing or daylight | 
| 1454 | > | coefficient calculations for annual simulations, among other uses. | 
| 1455 | > |  | 
| 1456 | > | Added tilde ('~') output option as part of the -o* specification of | 
| 1457 | > | rtrace.  This permits ray trees to be parsed more easily in binary | 
| 1458 | > | output mode, as needed by rtcontrib. | 
| 1459 | > |  | 
| 1460 | > | Implemented Russian roulette ray termination with -lr <= 0. | 
| 1461 | > | Made -lr -10 the default in rtcontrib. | 
| 1462 | > |  | 
| 1463 | > | Made rtcontrib -f option search RAYPATH directories. | 
| 1464 | > |  | 
| 1465 | > | Made it so -o option of rtcontrib can pipe -o output to a command. | 
| 1466 | > |  | 
| 1467 | > | Added -if and -of options to total for binary i/o (following rcalc mold). | 
| 1468 | > |  | 
| 1469 | > | Switched default options in rtrace to use Russian roulette.  (Rpict and rvu | 
| 1470 | > | still use biased ray termination.) | 
| 1471 | > |  | 
| 1472 | > | Added rtcontrib -r option to recover partial output. | 
| 1473 | > |  | 
| 1474 | > | Added -u rendering option for pure Monte Carlo sampling. | 
| 1475 | > | (Got rid of -DMC compile option, which this makes superfluous.) | 
| 1476 | > |  | 
| 1477 | > | Changed -t option of rlam to accept strings as well as single characters. | 
| 1478 | > |  | 
| 1479 | > | Fixed bug in rcalc with -l option where it would sometimes go into an | 
| 1480 | > | infinite loop. | 
| 1481 | > |  | 
| 1482 | > | Fixed truly ancient bug in bounding box computation for cones, which | 
| 1483 | > | could (and did) cause missing segments. | 
| 1484 | > |  | 
| 1485 | > | Added -z option to normtiff to output LZW-compressed files. | 
| 1486 | > |  | 
| 1487 | > | Last change to total causes it to produce results when it sees an empty | 
| 1488 | > | line on the input.  This was not intentional, but I decided I like this | 
| 1489 | > | behavior so I documented it rather than changing it. | 
| 1490 | > |  | 
| 1491 | > | ===================== | 
| 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 | 
| 1496 | > | minimum ray sampling weight (serious). | 
| 1497 | > |  | 
| 1498 | > | Changed mksource to use 98th percentile (rather than 99th) for threshold. | 
| 1499 | > |  | 
| 1500 | > | (Above changes included in 3.7.1 patch release.) | 
| 1501 | > |  | 
| 1502 | > | Eliminated writing of EXPOSURE= line in ra_tiff -r when source TIFF | 
| 1503 | > | does not have STONITS set. | 
| 1504 | > |  | 
| 1505 | > | Fixed bug in ambient calculation that caused black values for multiple | 
| 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. | 
| 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, rcomb, which is something like a combination | 
| 2647 | > | of rmtxop and pcomb, it works with all the inputs and | 
| 2648 | > | outputs that rmtxop handles, but allows for general expressions | 
| 2649 | > | like those in pcomb for putting matrices together, working on | 
| 2650 | > | an element at a time.  (No resizing of matrices or accessing | 
| 2651 | > | neighboring elements, as permitted in pcomb.)  It saves memory | 
| 2652 | > | over rmtxop by operating on a row at a time, so can handle | 
| 2653 | > | input and output matrices with any number of rows.  It does | 
| 2654 | > | provide for a single matrix-multiplication operation at the end, | 
| 2655 | > | which only requires memory for that final matrix. | 
| 2656 | > |  | 
| 2657 | > | Added support for filtering hyperspectral images to pfilt. | 
| 2658 | > |  | 
| 2659 | > | Added support for 1- and 3-component float matrix i/o to | 
| 2660 | > | pcomb to allow for better interoperability. | 
| 2661 | > |  | 
| 2662 | > | Added support for -co+ option to rtpict, so it can directly | 
| 2663 | > | produce hyperspectral images. | 
| 2664 | > |  | 
| 2665 | > | Added new "specdata" and "specpict" primitives to support | 
| 2666 | > | interpolated spectral data files and hyperspectral images | 
| 2667 | > | as patterns. | 
| 2668 | > |  | 
| 2669 | > | Added support for multispectal sampling in rsensor, which will | 
| 2670 | > | put out as many color channels as specified in any -cs option | 
| 2671 | > | (default is 3 for RGB). | 
| 2672 | > |  | 
| 2673 | > | Added ability of mgf2rad to convert spectral data at least | 
| 2674 | > | for light, glow, plastic, and metal primitive types.  Need | 
| 2675 | > | to use new '-s' option to get new output. | 
| 2676 | > |  | 
| 2677 | > | Added handling of spectral images to rcode2bmp script. | 
| 2678 | > |  | 
| 2679 | > | Minor change to rcollate to allow explicit byte records to | 
| 2680 | > | be any specified length without checks against header input. | 
| 2681 | > |  | 
| 2682 | > | Added new hemisphere type to rfluxmtx, "h=cie" for CIE sky | 
| 2683 | > | scanner positions.  These are 145 patches with identical | 
| 2684 | > | row counts to Tregenza, but starting from a different | 
| 2685 | > | azimuth and reversing row directions at adjacent altitudes. | 
| 2686 | > |  | 
| 2687 | > | Added optimization for long argument lists and arrays in | 
| 2688 | > | the calcomp routines used for rendering and in rcalc, etc. |