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.350 by greg, Fri Jul 26 00:34:06 2019 UTC vs.
Revision 1.430 by greg, Tue Nov 21 01:36:32 2023 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 2271 | Line 2271 | Added gendaymtx -A option to compute average sky over
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
# Line 2280 | Line 2283 | Created rsplit program as compliment to rlam and to ha
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.
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.
# Line 2288 | Line 2292 | bytes on standard input.
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/util/depthcodec.{h,c}.
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/util/normcodec.{h,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/util/idmap.{h,c}.
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.)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines