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.362 by greg, Tue Jan 7 01:42:30 2020 UTC vs.
Revision 1.447 by greg, Fri Feb 23 03:47:57 2024 UTC

# Line 2237 | Line 2237 | Updates to evalglare and gendaylit from Jan Wienold, i
2237   colored sky option.
2238  
2239   =========================
2240 < Version 5.3
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.
# Line 2314 | Line 2314 | column vector.  Also added ability to apply trailing u
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.  Doesn't work quite as automatically as it should
2318 < for pvalue -r, currently.
2317 > and radcompare.
2318  
2319   Added new "turbo" palette to falsecolor (thanks to Taoning).
2320  
# Line 2329 | Line 2328 | Added support for loading RGBE images into matrices in
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
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.
# Line 2340 | Line 2339 | Made it so number of segments in genworm, genrev, and
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.
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.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines