ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/Development/ray/doc/notes/ReleaseNotes
Revision: 1.172
Committed: Thu Jul 1 21:54:55 2010 UTC (15 years, 6 months ago) by greg
Branch: MAIN
Changes since 1.171: +3 -0 lines
Log Message:
Added new form to dctimestep that takes a combined DC matrix (or image set)

File Contents

# User Rev Content
1 greg 1.1 =========================
2     Version 1.2 (Released 3/9/90)
3    
4     Added a -p option to rpict and pfilt to set the pixel aspect ratio for
5     output. Instead of giving the absolute x and y resolutions, the user
6     now gives rpict and pfilt the maximum desired resolution for x and y
7     and the pixel aspect ratio is used along with the given view to
8     calculate appropriate values within this boundary. This makes for
9     much more natural view specifications. For example, for a 512x400
10     device with a pixel aspect ratio of 1.0, the pfilt command:
11    
12     pfilt -x 512 -y 400 -p 1
13    
14     will always produce the appropriate output, regardless of the aspect
15     ratio of the input picture. If necessary, the x or y output resolution
16     will be reduced to accommodate the device's resolution. A square image
17     would occupy a region of 400x400 pixels.
18    
19     View shift and lift options were added to the list of standard view
20     parameters, for specifying views for panoramas and holograms.
21    
22     Rview no longer takes options for x and y resolution, but instead
23     gets them from the device driver along with the pixel ratio. This
24     makes it much easier to change the view aspect ratio (with the vh
25     and vv parameters).
26    
27     A -z option was added to rpict to write out the distances for each
28     pixel in an image. This may be useful for z-buffer operations, and
29     is used by the new program pinterp, described below.
30    
31     A program called pinterp was added to the burgeoning list of
32     picture filters and converters. This program is designed primarily
33     to interpolate animated frames for walk-throughs of static scenes,
34     but it has a number of other useful functions besides. It takes as
35     its input one or more rendered pictures (with their corresponding z
36     value files) and desired viewpoint (hopefully not too far afield from
37     the given images). Pinterp then takes the input frames and moves the
38     pixels to their new computed location. Filling operations make sure
39     that the final image does not have large unpainted regions.
40    
41     Added smoothing option to gensurf, using bilinear Phong surface normal
42     interpolation. Not perfect, but it's better than nothing and permits
43     the use of fewer polygons to represent smoothly curved surfaces.
44    
45     =========================
46     Version 1.3 (Released 10/22/90)
47    
48     Added conversion utility for IES (Illuminating Engineering Society) standard
49     format luminaire data. The translator, called ies2rad, takes any number
50     of luminaire data files and creates the necessary Radiance geometric
51     descriptions and data files and puts them in the specified library location.
52     A new data format was added to accommodate irregularly-spaced data points.
53    
54     Added rview driver for NeWS for Sun and Silicon Graphics workstations.
55     This work was done by Isaac Kwo.
56    
57     Fixed oconv for scenes with many overlapping instances (runs faster now).
58    
59     Added consitency checks intended to detect stale octrees without restricting
60     changes to surface modifiers. (But you still can't change total number of
61     objects). Stale octrees caused some of the strangest behavior...
62    
63     Finally broke down and wrote my own malloc(3) routines. There is a
64     CalTech module floating around Berkeley that caused a lot of trouble
65     for bmalloc(), resulting in about twice the needed memory use.
66    
67     Added translator for Architrion. Arch2rad uses mapping rules to assign
68     materials to surfaces from input file. This is a general method (dreamed
69     up by Charles Ehrlich) that allows users to assign materials based on
70     whatever information is available from the CAD file. See the accompanying
71     description file on translators in the ray/doc/notes directory.
72    
73     Added fisheye view types to rpict and rview, useful for looking at
74     entire scenes and for LEEP virtual reality wide field stereo viewer.
75    
76     Wrote xshowtrace, a fun program for watching rays as they are being
77     traced on an X11 display.
78    
79     Write ra_pr24 for converting between 24-bit Sun rasterfiles and
80     Radiance pictures. Perhaps this should be incorporated in ra_pr, as
81     ra_t8 and ra_t16 should be one program, but the algorithms and memory
82     requirements are totally different for colormapped images.
83    
84     Added routines for performing 24-bit gamma correction in integer domain,
85     making programs like ra_pr24 and ra_t16 run faster.
86    
87     =========================
88     Version 1.4 (Released early 1991?)
89    
90     Fixed bug in IES translator that resulted in the incorrect
91     interpretation of type B photometric data. (1.3.1)
92    
93     Added types for using BRDF data: plasfunc, metfunc, plasdata and metdata.
94    
95     Added interpretation of source color to ies2rad and color corrective
96     filtering to pfilt. Reference file used by both is "lamp.tab" in
97     library directory.
98    
99     Added picture flipping program, pflip, and pattern preprocessing script,
100     normpat.csh, to the px directory.
101    
102     Fixed bug in ra_pr24 that caused the reversal of red and blue values.
103     New version accepts both RT_STANDARD and RT_FORMAT_RGB files but
104     produces only RT_STANDARD rasterfiles as output.
105    
106     Added -m option to xform to change modifiers for surfaces.
107    
108     Wrote replmarks program to replace markers in a Radiance scene file
109     for light sources or other objects.
110    
111     Added global compilation script, makeall.
112    
113     Fixed calculation of luminance in display programs and gensky to use
114     white light assumption.
115    
116     Added options and features to pcomb.
117    
118     Added FORMAT= line to all Radiance file headers for improved error
119     checking and clarity.
120    
121     Added icon bitmaps for rview and x11image under X11 and fixed a bug
122     that caused x11image to ignore keyboard input.
123    
124     ****** COMPATIBILITY CHANGE ********
125     Added constant definitions to cal files using ':' instead of '='.
126     This makes for faster calculations since many more constant
127     expressions can be reduced at "compile" time.
128    
129     Created glare calculation programs in util directory. Findglare locates
130     glare sources, xglaresrc circles sources on a displayed image, and
131     glarendx computes various glare indices.
132    
133     =========================
134     Version 2.0 (Released 11/26/91)
135    
136     Added -i option to renderers for computing irradiance rather than
137     radiance. Eliminated redundant -oI option from rtrace and added
138     -I option to replace old -oi. This hack ignores glass and similar
139     surfaces during the calculation.
140    
141     Changed icon for x11image (renamed ximage) to miniature bitmap of
142     picture.
143    
144     Fixed bug in xshowtrace that prevented it from working with twm.
145    
146     Added memory recovery feature to rview so that when it refines
147     itself out of memory it doesn't quit but instead gives the user
148     a command line saying "out of memory:", which allows the output to
149     be written and so forth before quitting or restarting the image.
150    
151     Added -g (gamma correction) option to pvalue.
152    
153     Added the more general BRTDfunc for procedural definition of bidirectional
154     reflectance-transmittance distribution functions. Also added transfunc
155     and transdata types.
156    
157     Changed trans types to modify the color of the transmitted specular
158     component.
159    
160     Fixed a bug in ra_t16 introduced in the last change which caused
161     problems for the (default) 16-bit output mode.
162    
163     Improved Monte Carlo sampling for penumbras (-dj) and ambient
164     super-samples (-as) using stratified random number sequence introduced
165     by Christophe Schlick at '91 Eurographics workshop on rendering.
166    
167     Wrote falsecolor program to transform images to false color with
168     value labels.
169    
170     Modified pcomb to allow different output sizes and access to local
171     pixel neighborhood for specialty filtering applications.
172    
173     Made cone and sphere routines more forgiving of negative radii,
174     switching between inverted types as necessary and giving warning
175     messages instead of bombing. Cones with equal radii are now
176     silently converted into cylinders. Hopefully, these changes will
177     make writing Radiance scene file translators a little bit easier.
178     Unfortunately, we still bomb for zero-sized cones and spheres.
179    
180     Wrote a program called getbbox that just computes the bounding box
181     for a set of Radiance scene files. It is basically a modified version
182     of oconv that doesn't store objects in memory and doesn't care about
183     undefined modifiers.
184    
185     Added -a and -l options to pcompos and made both pcompos and pcomb
186     read from commands as well as files.
187    
188     Substantially improved the accuracy and appearance of the interreflection
189     calculation by computing gradients at the same time as primary values and
190     then using a first order interpolation scheme. This affects the information
191     stored in ambient files, so old files will have to be thrown away.
192    
193     Added secondary light sources from planar mirror, prismatic and
194     holographic surfaces. This created the new options -dr (direct relays)
195     and -dp (direct presample density) to the renderers. The document
196     secsrc.note describes this feature in greater detail.
197    
198     Put many of the routines into a common library.
199    
200     Wrote a replacement for makedist, called mkillum, which generates
201     light distribtuions and illum descriptions for windows, skylights,
202     etc. in a much more natural and automatic fashion.
203    
204     Fixed long-standing bug in text routines which caused slanted text
205     to slant the wrong way!
206    
207     Added -e option to ra_bn, ra_pr, ra_pr24, ra_t8 and ra_t16 programs
208     for faster and more convenient image conversion w/o using pfilt.
209    
210     ****** COMPATIBILITY CHANGE ********
211     Finally added contexts to calcomp routines so identical names in
212     different function files no longer conflict. Loading of function
213     files also works automatically without those nasty "key" variables.
214     New context marks (backquote characters) appear in some local variables
215     defined in some of the cal files. This is inconsistent with older
216     versions, and must be changed back to and underscore or some other legal
217     character if these files are used by 1.4 and earlier.
218    
219     Wrote ra_tiff program, using Sam Leffler's libtiff package to read
220     and write 24-bit TIFF images.
221    
222     Wrote ra_ppm program to convert to and from Poskanzer Pixmaps.
223    
224     ****** COMPATIBILITY CHANGE ********
225     Changed run-length encoding of Radiance pictures to gain better
226     compression. Routines can still read old format, but new ra_rgbe
227     program must be used to write convert images to a more generic format
228     that can be read by release 1.4 and earlier.
229    
230     Defined U and V parameters in rayinit.cal for more convenient (and
231     sloppy) use of 2-dimensional textures and patterns on planar surfaces.
232    
233     Beefed up lampcolor program to compute spectral radiance for diffuse
234     emitters. This was a previously a pain in the butt and a serious
235     source of error for scenes not modeled using IES data files.
236    
237     Added version reporting to rpict, rtrace and rview. Use standalone
238     -version option.
239    
240     Changed to quincunx initial sampling pattern in rpict. This should
241     reduce artifacts from adaptive image sampling at no added cost.
242    
243     Added -rgb option to ra_pr24 to produce RT_FORMAT_RGB files.
244    
245     Added -ds option to renderers to make source sampling more accurate
246     for large area sources. It is no longer necessary or recommended
247     to break large sources (such as windows) into smaller pieces with
248     gensurf unless their output distribution changes over their surface.
249     Also, cylinders can now be used as light sources, provided they are not
250     too short compared to their radius (causing them to be frequently missed).
251    
252     Added -I option to xform to invert surfaces.
253    
254     Added SMLFLT and BIGMEM defines to better control the sizes of data
255     structures during compilation. Made their setting relatively
256     straightforward in makeall and created a separate rmake program to
257     hold the options generated by makeall.
258    
259     Made the programs more forgiving of machine differences on octrees.
260    
261     ****** COMPATIBILITY CHANGE ********
262     Fixed incorrect conversion factor between radiance and luminance.
263     The correct luminous efficacy value is now defined in color.h as
264     WHTEFFICACY. It was 470 lumens/watt previously, now it has been
265     corrected to 179 lumens/watt. This affects the absolute values
266     in the output of programs like gensky and ies2rad. Thus, these
267     programs should be rerun to generate corrected files for this
268     version of Radiance. Also, the new versions of display programs
269     like ximage will give different values with the 'l' command on
270     an image generated with 1.4 and previous releases. The following
271     alias may be used to fix the radiance values in a picture generated
272     using previous versions of gensky and ies2rad:
273    
274     alias pfixabs '( echo EXPOSURE=.381 ; cat \!:1 ) > \!:1.$$ ; mv \!:1.$$ \!:1'
275    
276     Improved accuracy of glass material type and added option for
277     user-supplied index of refraction.
278    
279     Added sgi to rt/Makefile and px/Makefile SPECIAL category for compiling
280     Isaac Kwo's NeWS driver for rview and the glimage program by Jim Winget.
281     Also fixed various compile problems for the SGI.
282    
283     Improved handling of alternate scanline orientations. The programs
284     pflip and protate (used to be prot) now affect the scanline ordering
285     of the file without messing up the view parameters for programs like
286     pinterp and findglare.
287    
288     ==========================
289     Version 2.1 (Released 5/20/92)
290    
291     ****** COMPATIBILITY CHANGE ********
292     Changed function specifications to allow the use of expressions as
293     well as variables in scene files. Use of this feature may result
294     in some loss of backwards compatibility as older software does not
295     support it.
296    
297     Added makeall option for NeXT machine and changed code to suit.
298    
299     ****** COMPATIBILITY CHANGE ********
300     Added off-specular sampling and anisotropic materials plastic2,
301     metal2 and trans2. The old options -sp, -sj, -st and -p have
302     been renamed to -ps, -pj, -pt and -pa, respectively. New options
303     -sj and -st have been introduced.
304    
305     Improved ray intersection calculations using -DSMLFLT option by
306     increasing epsilon used in tests. This eliminates most of the
307     errors that occured when this compile option was used in version 2.0.
308    
309     Added capability to gensurf to read height or point data from a
310     file. This makes it more convenient to make (optionally smoothed)
311     landscapes from recorded measurements and the like.
312    
313     Corrected irradiance gradient calculation. New formula predicts
314     gradient better and thus reduces artifacts in indirect calculation.
315    
316     Modified replmarks to accept multiple markers.
317    
318     Added -aI and -aE options to read ambient include/exclude materials
319     from a file.
320    
321     Reduced effect of light leaks during interreflection calculation.
322    
323     Added -ang option to gensky for giving solar angles explicitly.
324    
325     Added ability of "view" command within rview to accept view options.
326    
327     Fixed a long-standing bug in gensky that caused it to report
328     inaccurate values for the ground ambient level. Since the dayfact
329     script uses this value in calculating its results, version 2.0 will
330     be in error (by as much as 30 or 40%).
331    
332     Fixed a bug in the reflectance normalization for isotropic and
333     anisotropic Gaussian highlights that caused too much light to
334     be reflected near grazing angles. Much thanks to the folks at
335     Ohio State University (Steve Spencer and Kevin Simon) who
336     pointed this out to me!
337    
338     Fixed bug in xshowtrace introduced in 2.0. It absolutely didn't work
339     after my most recent changes to image.c. (Sorry about that!)
340    
341     Finally fixed shortcoming of view reading routines so they can get
342     the views from pictures created with absolute program paths
343     (eg. /usr/local/bin/rpict). This affects programs like
344     xshowtrace and glare, as well as the recover option of rpict.
345    
346     Fixed isotropic Gaussian distribution (highlights for types "metal"
347     and "plastic") to make them more accurate and bring them into line
348     with the new anisotropic Gaussian models ("metal2" and "plastic2").
349     This may affect the appearance of some hightlights.
350    
351     Added -H and -R options to pvalue to control resolution strings
352     and color ordering.
353    
354     Fixed byte ordering for 24-bit color displays in ximage.
355    
356     ==========================
357     Version 2.2 (No official release)
358    
359     Made more fixes in rview and ximage for different display hardware.
360     Philip Thompson and Peter Apian helped with suggestions and testing.
361    
362     Fixed bug in -e option of xform that kept it from fully expanding
363     some scene files.
364    
365     Added proportional text spacing (-s option for psign, new argument
366     for text primitives). Added antialiasing (3x3 super-sampling) to psign.
367    
368     Added code in display drivers to read environment variable called
369     "GAMMA" to set gamma correction for different monitors. See notes in
370     this directory on gamma_corr.
371    
372     Added CC defines to all the Rmakefiles so that other C compilers may be
373     used consistently.
374    
375     Added -x and -y options to psign to control output dimensions directly.
376    
377     Decreased value of FTINY with SMLFLT option once again in an attempt to
378     further reduce errors.
379    
380     Reinstated rtrace's capability to produce 32-bit_rle_rgbe directly.
381    
382     Added -S and -o options to rpict for more flexible production of
383     multiple images and slave operation. Rpict will also accept a recover
384     file name the same as the output file for more convenient recovery.
385    
386     Added ra_ps program to translate Radiance picture into PostScript file.
387    
388     ****** COMPATIBILITY CHANGE ********
389     Made ambient files machine-independent so they can be conveniently moved
390     and reused on any system. Also added coordinated reads and writes so
391     that multiple processes may use the same ambient file at the same time.
392     Along with the -S option of rpict, this should greatly facilitate parallel
393     rendering. The new ambient file format also contains a header that
394     can be read by getinfo. Lookamb now has a -h option.
395    
396     Created rpiece program for parallel rendering of a single image on
397     multiple processors and workstations.
398    
399     Eliminated star artifacts in mkillum distribution patterns by improving
400     data interpolation method. Improved ability of mkillum to correctly
401     sample non-axis-aligned polygons.
402    
403     Added -s and -o options to pcompos for slightly more convenient use
404     of the -a option. Also eliminated incompatibility between -a and -y
405     options.
406    
407     Fixed bug in spotlight sources that caused incorrect boundaries to be
408     cast by mirrors.
409    
410     Fixed rounding of scanlines in ra_pr24 to 16-bit boundaries.
411    
412     Added @file and $envar expansion capabilities to rtrace, rpict and
413     rview. This is primarily to overcome the 128-byte command limit of
414     MS-DOS.
415    
416     Added -r option to gensky for the direct specification of solar
417     brightness.
418    
419     Added -oN option to rtrace for reporting unperturbed surface normals,
420     and changed -on to report perturbed surface normals (used to be
421     unperturbed).
422    
423     Changed -di switch of rtrace, rpict and rview to -dv and changed
424     sense. Thus, instead of having a boolean variable called "source
425     invisibility" that is normally off, there is now a boolean variable
426     called "source visibility" that is normally on. More logical, and
427     also allows for the addition of -di and -de options for direct
428     include and exclude in the future.
429    
430     Fixed bug in image.c associated with -DSMLFLT that caused angular
431     fisheye views to repeat the center pixel in the middle of an image.
432    
433     Modified colordata and colorpict to take functions of a single variable
434     instead of always requiring functions of three variables (red, green, blue).
435    
436     Modified objview script to work in original object coordinates.
437    
438     Added -P and -PP options to rpict and rtrace for persistent and parallel
439     processing, respectively. The -P option is most useful with the -fr
440     option of pinterp, since rtrace doesn't have to be restarted for every
441     frame in a long animation sequence. The -PP option is most useful when
442     running rpiece on a multiprocessing platform, to get acceptable memory
443     sharing without the hassle of threaded code.
444    
445     Changed signal handling in rpict so CONT is now used to elicit
446     asynchronous progress reports. ALRM now causes rpict to die
447     unconditionally.
448    
449     Created executive program called "rad" to run oconv, rview, rpict and
450     pfilt automatically. This should greatly simplify use of Radiance and
451     reduce the problems associated with poorly chosen parameter values.
452    
453     Added slave driver to rview to make it easier to run from other
454     graphics applications. (Thanks to Chris Nicholas of Sun for the
455     suggestion.)
456    
457     Fixed error in ies2rad.c and source.cal that caused incorrect
458     interpretation of asymmetric Type C (A) fixture photometry. Note the
459     new definition of src_phi in source.cal. This change may affect
460     manually entered photometry.
461    
462     Added '@' command to ximage to adjust exposure based on Blackwell's
463     model of human contrast sensitivity.
464    
465     Added functions to pcomb to get the ray origin and direction from the
466     input picture view specifications.
467    
468     Removed Fresnel approximation to specular reflection from Radiance materials,
469     since the direct component was not being computed correctly. This
470     may have a slight affect on the appearance of surfaces, but it can't be
471     helped.
472    
473     ****** COMPATIBILITY CHANGE ********
474     Changed the definition of the BRTDfunc type so as to be more general and to
475     allow for different reflection properties depending on what side of the
476     surface the ray is incident. Any scene and function files using the
477     old definition of BRTDfunc must be updated. Implemented the approximation
478     used in Window 4 to reflection from coated glazings in lib/glazing.cal.
479    
480     Added -ti, -te, -tI and -tE options to rtrace for including or
481     excluding surfaces from those reported by the trace output specifier.
482    
483     Fixed long-standing bug in pfilt gaussian filter option, which caused
484     the image to be excessively defocused.
485    
486     Added -m option to pfilt for image sample smoothing. This helps get rid
487     of some of the "speckle" associated with specular sampling.
488    
489     Made -ovt* compatible with -I option of rtrace.
490    
491     Changed ximage to work with multiple pictures. It now opens one window
492     for each picture file.
493    
494     Fixed error reporting in rpict for most machines. (Many thanks to Peter
495     Apian-Bennewitz for his help and suggestions.)
496    
497     ****** COMPATIBILITY CHANGE ********
498     Added intermediate sky to gensky and changed its options slightly.
499     The new gensky uses a new version of skybright.cal, so any old
500     gensky output in files must be recomputed with the new gensky before
501     it will work. (A "skybright: undefined" error should clue you in.)
502    
503     ==========================
504     Version 2.3 (Released 11/16/93)
505    
506     No changes from the above, but the official release was designated 2.3
507     to avoid confusion with previous beta releases of 2.2.
508    
509     ==========================
510     Version 2.4 (Released 4/20/94)
511    
512     Philip Thompson of MIT added use of a radiance.gamma resource to ximage
513     and we added it to the x11 driver of rview as well. This is an alternative
514     to setting the GAMMA environment variable for X11 servers.
515    
516     Added MLIB variable to Rmakefile's for defining alternate math libraries.
517     I discovered that the default version of sqrt() under IRIX is a whole
518     lot slower than what's in the libfastm.a library, and not much better.
519     This can make a significant difference to the renderers, since sqrt()
520     is relied on quite a bit, and it's assumed to be fast.
521    
522     Added =SS option to pcompos to allow anchor points for image positions
523     other than the lower left corner.
524    
525     Wrote raddepend script for finding dependencies in scene files.
526    
527     Fixed a bug in mkillum that caused it to incorrectly sample ring sources.
528    
529     Finally allowed mixtures to work with materials, thanks to the encouragement
530     and advice of Peter Apian-Bennewitz.
531    
532     Wrote a triangular mesh converter, called tmesh2rad. I defined my own
533     format, since I wasn't too familiar with anyone else's format and I
534     wanted to support some additional possibilities (most notably patterns).
535    
536     Added initial "#?RADIANCE" line to headers to simplify Radiance file
537     identification by programs used to magic numbers.
538    
539     Created a translator for Wavefront .obj files, called obj2rad. It uses
540     the same type of mapping rules as arch2rad.
541    
542     =============================
543     Version 2.5 (Released 6/26/95)
544    
545     Wrote translators to and from the new MGF (Materials and Geometry
546     Format) specification.
547    
548     Changed color conversion routines to make light source colors (from
549     lamp.tab) consistent with uniform white light standard.
550    
551     Fixed a bug that caused very small local sources not to be sampled
552     at all!
553    
554     Added the ability for rview to read commands from its standard input
555     under X11.
556    
557     ****************** COMPATIBILITY CHANGE ***********************
558     Changed GAMMA environment variable to DISPLAY_GAMMA, to bring it in
559     line with the xli program, so users don't have to give two variables
560     for the same value!
561    
562     Added -t (touch) option to rad, to make it easier to deal with minor
563     changes to input files.
564    
565     Created graphical user interface to rad, called trad. Based on Tcl/Tk,
566     this should finally get people to start using this program!
567    
568     Added -vo and -va (view fore and view aft) clipping plane options to
569     Radiance view parameters.
570    
571     Added -bv option for (opaque) back face visibility control.
572    
573     Added -q, -a and -e options to pinterp, and made it faster. (These
574     should be big improvements.)
575    
576     Created tabfunc program for converting data tables to functional
577     language.
578    
579     Wrote mgf2meta program to convert MGF data to line drawing.
580    
581     Updated ies2rad program to interpret MGF geometry in IESNA-LM-63-1995
582     files.
583    
584     Added sorting of ambient values according to access times to improve
585     reference locality for better virtual memory performance.
586    
587     Added source solid angle argument to BRTD functions for averaging
588     values.
589    
590     Wrote genclock program to create an analog clock.
591    
592     Fixed a bug for bitmaps using hexbit4x1.fnt with brighttext, which
593     caused thin lines to appear.
594    
595     =============================
596     Version 3.0 (Released 6/19/96)
597    
598     Added comments to data and font files.
599    
600     Changed behavior of mirror to allow void alternate material.
601    
602     Added cylindrical view type for Quicktime VR authoring and other
603     interesting applications.
604    
605     Increased default rtrace parameters for more accurate calculations when
606     options are not specified.
607    
608     Added RAWFILE and ZFILE variables to rad for saving raw picture file and
609     Z (distance) information from rpict.
610    
611     Ported trad for newer (4.0) version of Tk (wish). Thanks to Bob Lipman
612     of NIST for helping me track down the changes.
613    
614     Added -B option to pinterp to blur multiple views into a single image,
615     useful for motion blur and depth of field simulation.
616    
617     Created pdfblur script and modified vwright to automate depth-of-field
618     simulation with pinterp.
619    
620     Added -c option for color PostScript output from ra_ps, and made both
621     this program and psmeta produce EPS-compatible files.
622    
623     Created macbethcal program for calibrating color image scanners and
624     film recorders or printers using the Macbeth ColorChecker chart.
625    
626     Created ra_xyze program for converting to and from new Radiance CIE XYZE
627     picture type and calibrating monitor colors. Modified Radiance picture
628     filters (pcompos, pflip, pcomb, pinterp, protate and pfilt) to handle
629     new picture type without complaint.
630    
631     Added automatic ambient value computation to improve accuracy of results
632     no matter what -av value is given. (Only works for -ab > 0.) This was
633     a fairly obvious optomization I should have thought of ages ago.
634     (Default is old behavior -- -aw option puts in new code.)
635    
636     Modified interreflection calculation to take textures (surface normal
637     perturbations) into account in indirect illumination. This should
638     improve the accuracy and appearance of textured surfaces in shadowed
639     regions.
640    
641     Added -T option to rpiece to limit execution time.
642    
643     Fixed bug in mixtext type introduced in last release -- caused improper
644     calculation of mixed modifiers.
645    
646     Added basic options and functionality for participating media. New material
647     type "mist" and rendering options -me, -ma, -mg and -ms. This should permit
648     the modeling of visible light beams, uniform smoke, fog, and some types
649     of clouds.
650    
651     Added -o option to ximage to control output of 't' command (and
652     middle mouse button). This adds the ability to produce pixel
653     position, radiance value and luminance. The default action is
654     the same as before.
655    
656     Created pmblur script to generate views for camera motion blur in
657     walk-through animations.
658    
659     Added "inpic" variable to picture.cal for determining when the edge
660     of a non-repeating image has been reached. Use with mixfunc primitive.
661    
662     Created ranimate program to control walk-through and dynamic animations
663     on multiple hosts.
664    
665     Fixed problem with antimatter type referring to final definition of
666     material names. Now, it uses the most recent ones.
667    
668     Added an MC macro for true Monte Carlo sampling rather than the default
669     Quasi Monte Carlo. To enable, add -DMC to the OPT= line in rmake.
670    
671     Fixed bug in pfilt -m option that caused floating point exceptions on
672     Alphas.
673    
674     Wrote xyzimage script for X11 display of XYZE and corrected RGBE pictures.
675     Takes the same options as ximage with an added -p option, and checks
676     the environment variable DISPLAY_PRIMARIES for setting of monitor
677     primaries. (See the ra_xyze manual page for further explanation.)
678    
679     Made colorpict's use much less memory by storing data in RGBE format
680     rather than floating point (takes 1/3 the space). This should help with
681     large image patterns.
682    
683     At the insistence of Henrik Wann Jensen, changed the specular sampling
684     code so that very rough specular surfaces will sample more truly,
685     eliminating some strange mirror appearances evident using the old
686     method.
687    
688     Added drawing of small and skinny light sources so rpict won't miss
689     these from inadequate image sampling. The method used may not work
690     perfectly for warped views (-vta, -vth and -vtc) having long,
691     cylindrical light sources. (Rob Shakespeare, take note!)
692    
693     Added corner rounding to genprism command (-r option).
694    
695     Changed mixtures so that mixing material with void is allowed, allowing
696     for opacity maps. Also altered general behavior so that surfaces
697     without materials in their modifier list are invisible, not only
698     surfaces with void modifiers.
699    
700     ****************** COMPATIBILITY CHANGE ***********************
701     The behavior of xform has been changed to make object library
702     organization and usage simpler.
703     1) The RAYPATH directories are searched for matching file names.
704     2) Filenames beginning with '.', '/' or '~' do not result in searches.
705     3) Xform performs a chdir to the found file's directory, obviating
706     the need for peculiar inclusion names in subdirectories.
707     4) The array option (-a) now works when xform reads from stdin.
708     5) The expand option (-e) is now the default -- -c gets
709     back old behavior.
710    
711     =============================
712     Version 3.1 (Released 7/24/97)
713    
714     Changed gensky so it will accept hour specifications as HH:MM, with
715     designations for standard North American and European time zones.
716    
717     Increased buffer size for in-line commands from 512 to 1024.
718    
719     Added T(n), S(n), WE and pa(n) functions and constants to pcomb.
720    
721     Created histo utility to compute 1-dimensional histograms from data files.
722    
723     Created pacuity, pveil and psquish scripts (later combined in "pcond"):
724    
725     o The pacuity program takes a Radiance picture and defocuses it
726     in places where the human eye loses resolution. Unless the
727     scene contains very low luminances (below .1 cd/m^2 or so),
728     this will not have an appreciable effect. The output can then
729     be adjusted according to the Ferwerda, Pattanaik and Shirley
730     tone mapping function using pcomb with the file
731     src/cal/cal/ferwerda.cal. (See the header comments therein.)
732    
733     o The pveil program finds sources of glare in an image and adds
734     a corresponding amount of background luminance surrounding each
735     glare source according to the adaptation response of the human
736     eye. This has the effect of reducing contrast around glare
737     sources.
738    
739     o The psquish program is probably the most useful of the three,
740     and must be applied after the other two if the others are
741     used. With the -a option, psquish uses the human visual
742     response to compress the dynamic range of an image to fit within
743     the limited dynamic range of a display (assumed to go from 1 to
744     100 cd/m^2), and also reduces color visibility in pictures with
745     low light levels (below 1 cd/m^2). Without the -a option,
746     psquish simply does the best it can to fit a picture's dynamic
747     range into what can be readily displayed, without regard to
748     human visual response. This has the effect of making problem
749     scenes viewable, such as indoor scenes with windows looking out
750     to bright exteriors.
751    
752     Created pcond program, which combines pacuity, pveil and psquish in a
753     more efficient, robust package. (See man page for details.)
754    
755     Renamed Perlin noise function partial functions, noise3a(), noise3b()
756     and noise3c() to noise3x(), noise3y() and noise3z(). Added backward
757     compatibility defines to rayinit.cal so nothing should be broken.
758    
759     Fixed double-counting bug in calculation of specular transmission of
760     light sources for trans type. This might have caused unrealistically
761     high estimates for illumination beneath trans surfaces with non-zero
762     roughnesses when the interreflection calculation was used (-ab 1).
763    
764     Added routines for reading and writing separate RGB files in pvalue.
765     Also added -pP (where P is one of 'R', 'G' or 'B' upper or lower case)
766     and -s option to skip specified number of bytes on header. Finally,
767     added a -n option for non-interleaved RGB input and output.
768    
769     Fixed obscure bug in rcalc that caused it to return "Bad call to
770     argument!" for certain combinations of function and output channel
771     definitions.
772    
773     Added "-e auto" and "-e human" options to ximage(1) and corresponding
774     'a' and 'h' commands to perform dynamic range compression similar to
775     pcond(1).
776    
777     ==============================
778     Version 3.4 (Released 1/28/02)
779    
780     Fixed bug in rpiece that caused it to incorrectly compute -vs and -vl
781     (view shift and lift) offsets. (Included in 3.1.1.)
782    
783     Fixed bug in xform handling mist's with > 5 real arguments.
784     (Included in 3.1.1.)
785    
786     Fixed bug in mist handling routines that caused some incorrect calculations
787     for distant sources. (Included in 3.1.1.)
788    
789     Added ability for lam utility to read from commands.
790    
791     Created vwrays command to compute ray origins and directions for specified
792     views or pictures.
793    
794     Changed rtrace behavior to send bogus record when ray direction is zero.
795     (Before, it only flushed values with no corresponding record.) This
796     change was needed to facilitate its use with the new vwrays program.
797    
798     Modified ies2rad so that it no longer produces glow sources for the sides
799     of objects, which caused unnatural dark bands near the ceilings of
800     direct/indirect installations. (Included in 3.1.4.)
801    
802     Fixed bug in rpiece that caused the -pa option to fail. (Included in 3.1.2.)
803    
804     Made ximage emphasize pixels in the selected region for the 'a' and 'h'
805     commands to adjust the exposure using histogram compression.
806     (Included in 3.1.4.)
807    
808     Fixed bug in trad which caused it to fail when there were tabs in the input.
809     (Included in 3.1.3.)
810    
811     Fixed bug in pcond that caused it to white-out borders of some fisheye views.
812     (Included in 3.1.3.)