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.298 by greg, Wed May 31 17:25:21 2017 UTC vs.
Revision 1.426 by greg, Fri Mar 17 20:43:16 2023 UTC

# Line 2058 | Line 2058 | Fixed early exit of rcontrib with internal error (samp
2058   discovered by Rob G.
2059  
2060   =================================
2061 < Version 5.1
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.
# Line 2146 | Line 2146 | Fixed bug in orientation of Reinhart/Tregenza sample g
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 averaging.
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.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines