| 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. |