--- ray/doc/notes/ReleaseNotes 2022/10/19 21:25:20 1.422 +++ ray/doc/notes/ReleaseNotes 2024/09/11 18:56:11 1.458 @@ -2582,3 +2582,139 @@ This addition was suggested by Peter Apian-Bennewitz a way to determine which version of Radiance is installed and what it supports, and is timely as we begin our refactoring of the rendering code. There are no current plans to add this to rvu. + +Added falsecolor -odim, -orct, and -c0 options to overlay grid of +values on image. This was requested by Rob Shakespeare. + +Added -i* and -o* options in rhcopy for reading rays from the +standard input and writing rays from holodeck to standard output. +This will hopefully be useful in combining rholo with rcontrib. + +Added further checking for coincident (overlapping) flat surfaces, +preferring front sides to back sides in the ray intersection +calculation. This only applies to rings and faces, as the other +surface types would have required additional calculations to +make them work. Material transparency is still the primary +consideration, now followed by ray hit side, followed by +modifier definition order in the input. + +Increased octree and object limits to allow scenes with billions +of primitives. + +Made reciprocity averaging default to "off" in bsdf2ttree, as it seems +to create more problems than it solves. + +==================== +Version 6.0 + +Extensive changes to enable spectral rendering, which defaults to "off" +to maintain backwards-compatibility with previous versions, with the +exception of the ambient file format, which is changed. The MAXCSAMP +macro, which defaults to 24, sets the maximum number of spectral samples. +The actual number of samples is set by the "-cs" option, which defaults +to 3 for rpict, rtrace, and rcontrib. The latter two programs support +straight spectral output, but rpict is initially restricted to +tristimulus output pictures. New pattern primitives "spectrum", +"specfile", and "specfunc" have been added as a means to specify +spectral reflectance, emittance, etc. to materials that still have +only 3 color channels. Those RGB channels will still affect the +spectrum if used. Unfortunately photon-mapping is currently broken when +spectral sampling is enabled, but we will fix this as soon as possible. +Calculation overhead appears to be approximately 10-15% for RGB +renderings compared to version 5.4a. + +Added spectral rendering to rvu as well, and made -cs and -cw +options standard across the rendering library. I also brought +mkillum, ranimove, rsensor, and mksource into the fold. These +tools were broken in the initial release. (Hopefully, they are +working now, but none have been tested as yet.) +There was also an indexing bug in the spectral->RGB conversions +that made reds into blues and vice versa, which has been fixed. + +Added i/o for spectral pictures to rmtxop, the first program that can +ingest them. (Only rtrace, rcontrib, and rfluxmtx can render them.) +New symbolic rmtxop -c options, such as RGB, XYZ, S (for scotopic) +and M (for melanopic) make color conversions simpler. Alternatively, +a reference matrix or picture may be given and the color space of +that file will be used. The -C option takes either a symbolic +color space or reference file and is "sticky," so it applies to +all subsequent input files that do not have their own -c right ahead +of them. + +Added spectral picture support to rcrop and radcompare. + +Added new utility, rcomb, which is something like a combination +of rmtxop and pcomb, it works with all the inputs and +outputs that rmtxop handles, but allows for general expressions +like those in pcomb for putting matrices together, working on +an element at a time. (No resizing of matrices or accessing +neighboring elements, as permitted in pcomb.) It saves memory +over rmtxop by operating on a row at a time, so can handle +input and output matrices with any number of rows. It does +provide for a single matrix-multiplication operation at the end, +which only requires memory for that final matrix. + +Added support for filtering hyperspectral images to pfilt. + +Added support for 1- and 3-component float matrix i/o to +pcomb to allow for better interoperability. + +Added support for -co+ option to rtpict, so it can directly +produce hyperspectral images. + +Added new "specdata" and "specpict" primitives to support +interpolated spectral data files and hyperspectral images +as patterns. + +Added support for multispectal sampling in rsensor, which will +put out as many color channels as specified in any -cs option +(default is 3 for RGB). + +Added ability of mgf2rad to convert spectral data at least +for light, glow, plastic, and metal primitive types. Need +to use new '-s' option to get new output. + +Added handling of spectral images to rcode2bmp script. + +Minor change to rcollate to allow explicit byte records to +be any specified length without checks against header input. + +Added new hemisphere type to rfluxmtx, "h=cie" for CIE sky +scanner positions. These are 145 patches with identical +row counts to Tregenza, but starting from a different +azimuth and reversing row directions at adjacent altitudes. + +Added optimization for long argument lists and arrays in +the calcomp routines used for rendering and in rcalc, etc. + +Added error estimate spreading to ambient super-sampling +algorithm (-as) to improve performance especially in +scenes with sharp cut-offs. + +Added -i option to gendaymtx to match -i option of gendaylit. +Thanks to Yongqing for initial implementation. + +Changed rcrop so negative #rows or #cols counts back from end. + +Added rcomb -n option for multi-processing of very large matrices. + +Made it so rsplit and rlam can handle any number of input files +up to active open file descriptor limit. + +Taoning Wang added genssky tool for generating spectral sky +descriptions. + +Taoning added gensdaymtx utility based on gendaymtx, and +added epw2wea -a option to include required information. + +Fixed bug introduced in Auguest 2022 (5.4 release) in distant +light source sampling, which caused aiming failures. (Thanks +to Mike DiPompeo of LightStanza for reporting the issue.) + +Added rxpict rendering tool based on C++ RpictSimulManager class. +Multi-processing and spectral output are supported. + +Added crude ability to read and convert spectra to RGB in ximage, +ra_bmp, and ra_rgbe programs. Also updated fast tone-mapping +library to handle spectral HSR inputs at the same time. HSR +input handling was added in a similar fashion to pcond and pvalue.