| 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. | 
| 2689 | + |  | 
| 2690 | + | Added error estimate spreading to ambient super-sampling | 
| 2691 | + | algorithm (-as) to improve performance especially in | 
| 2692 | + | scenes with sharp cut-offs. | 
| 2693 | + |  | 
| 2694 | + | Added -i option to gendaymtx to match -i option of gendaylit. | 
| 2695 | + | Thanks to Yongqing for initial implementation. | 
| 2696 | + |  | 
| 2697 | + | Changed rcrop so negative #rows or #cols counts back from end. | 
| 2698 | + |  | 
| 2699 | + | Added rcomb -n option for multi-processing of very large matrices. | 
| 2700 | + |  | 
| 2701 | + | Made it so rsplit and rlam can handle any number of input files | 
| 2702 | + | up to active open file descriptor limit. | 
| 2703 | + |  | 
| 2704 | + | Taoning Wang added genssky tool for generating spectral sky | 
| 2705 | + | descriptions. | 
| 2706 | + |  | 
| 2707 | + | Taoning added gensdaymtx utility based on gendaymtx, and | 
| 2708 | + | added epw2wea -a option to include required information. | 
| 2709 | + |  | 
| 2710 | + | Fixed bug introduced in Auguest 2022 (5.4 release) in distant | 
| 2711 | + | light source sampling, which caused aiming failures.  (Thanks | 
| 2712 | + | to Mike DiPompeo of LightStanza for reporting the issue.) | 
| 2713 | + |  | 
| 2714 | + | Added rxpict rendering tool based on C++ RpictSimulManager class. | 
| 2715 | + | Multi-processing and spectral output are supported. |