Stripped out code related to old (pre-Hessian) ambient calculation
Inserted safety valve to shut off super-sampling when ad drops below 64 samples
Added -orRxX options to rtrace for VR rendering
Further refinement on variance estimate
Reduced bias introduced by ambient super-sampling
Removed unused variable
Removed infrequently useful and problematic code
Attempt to fix issue with low-angle ambient through trans and the like
Fixed issue where ambient super-samples were being left off deep ray trees
Fixed bug in scenes with zero octree size
Increased minimum sampling spacing slightly -- rejection still less than 1%
Tweaked sample collision test to use 1/10th of ambient division size
Fixed regression in genBSDF affecting Klems normalization
Lowered threshold for which cache values to include corral
Enabled ambient cache corral at all levels
Made axis randomization optional in getperpendicular()
Improved behavior of anisotropic reflections
Fixed floating-point error under Windows caused by cos^2 + sin^2 > 1
Removed unused variable
More conservative setting of corral flags
Added grazing angle extrapolation to BSDF interpolation
Sampling bug fix for -aa 0 (and rcontrib)
Officially replaced ambient calculation with new Hessian-based error control
Minor code improvements/simplifications
Reorganized calculation now storing average division value & min. distance
Switched to old ambient radius modification with weight
Fixed potential issue with small number of samples
Changes to hem-in too-large cache radii with -ar 0
Minor correction to limit on corraling operation (NEWAMB)
Tore out complicated vertex comparisons that were no faster (-DNEWAMB)
Better fix for previous bug and include diagonals in error est. (NEWAMB)
Fixed bug in ambient super-sampling for scenes with uniform areas (NEWAMB)
Fixed problem with too-distant samples and limited corral to 2 bounces (NEWAMB)
Betterment of last tweak (-DNEWAMB)
Another tweak to prevent corraling in tight quarters (-DNEWAMB)
Fixed bug that caused too-long calculations in cache corral (-DNEWAMB)
Added "corral" flags to prevent light leaks in new calculation (-DNEWAMB)
Changed (unused) algorithm to threshold at 5th percentile instead of average
Switched to storing reciprocal distance so we can optionally check periphery
Added baroque book-keeping to avoid calculating pointless Hessians
Fixed bug introduced in change to support -as option (-DNEWAMB)
Got rid of struct s_ambsamp, which was never really needed, anyway
Simplified hemisphere sampling call (-DNEWAMB)
Minor optimization
Added support for ambient super-samples (-as) in new calculation (-DNEWAMB)
Re-corrected sign of direction gradient calculation
Fixed bug that was causing segmentation violations for all-black scenes
Fixed eigenvalue calculation for double-root and randomization of axes
Went back to old axis initialization method
Randomize hemisphere orientation for better sampling
Eliminated redundant calcs and put limit on radii based on gradient
Very minor tweaks
Reinstated clamping of translation gradient when increasing radius to minimum
Corrected some math so the results are starting to look agreeable
Fixed floating-point errors due to use of float where double needed
Bug fix and optimization
Fixed numerous errors in Hessian (-DNEWAMB) calculation, doubtless more to go
Tidying up code, bug fixes and minor improvements
Compilable but untested version of Hessian calculation (-DNEWAMB)
Partial implementation of Hessian calculation
Partial implementation of Hessian gradient calculation (-DNEWAMB)
Eliminated a number of minor warnings (all innocuous)
Improved accuracy of ambient calculation for large -ad settings
Added checknorm() macro to avoid normalization errors with gcc --fast-math
Fixed memory leak for certain ambient calculations (thanks to D. Brainard)
Changed bright() to intens() in a couple of places for consistency
Fixed bug in ambient calculation causing zero results for some scenes
(Very) minor optimization
Bug fix for -aa 0 -as > 0
Added Russian roulette ray termination and fixed ambient weights & measures
Fixed application of ray weights and coefficients in ambient calculation
Extensive changes to enable rtrace -oTW option for tracking ray contributions
Changed minimum number of ambient rays
Added grouping parens to reduce ambiguity warnings.
Eliminated copystruct() macro, which is unnecessary in ANSI. Reduced ambiguity warnings for nested if/if/else clauses.
Replaced inline copyright notice with #include "copyright.h"
Changes and check-in for 3.5 release Includes new source files and modifications not recorded for many years See ray/doc/notes/ReleaseNotes for notes between 3.1 and 3.5 release
switched to faster table-lookup for sin() and cos() functions
changed from using effective ray distance to object distance in divsample()
fixed bug in super-sampling test which resulted in unnec. sampling
changed maxarad heuristic limit and overrode super-sampling for ambient values that have radii less than minarad after division sampling
Removed problematic math function declarations
improved assignment and use of minarad and maxarad
improved gradient estimators
updated revision number for release 2.0
reinstated capping of irradiance gradient
made it so ambient radius reduce when large gradient detected fixed incorrect position gradient calculation
added pretest for sampling limit to inithemi()
changed peano() call to multisamp()
made ambient value weighting incremental
changed urand sampling to use Peano curve through n dimensions
corrected division separation between theta and phi
fixed problem with urand on multiple dimensions
changed initialization of effective length
placed upper limit on position gradient
made computations of gradients a little more robust
fixed constants in ambcomp.c and added gradient calc to ambient.c
bug fixes
bug fixes
initial implementation of dirgradient() and posgradient()
Initial revision
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.