More macro-management
Corrected test for ambient in photon map
Moved ambient ray truncation to rayorigin() -- remove ambRayInPmap() later
Initial check-in of photon map addition by Roland Schregle
Eliminated superfluous extern declarations
Minor optimizations
Improved output efficiency by reducing number of calls to fwrite()
Changed to FVECT macros where appropriate
Added checknorm() macro to avoid normalization errors with gcc --fast-math
Created RNUMBER type (#define) in preparation for 64-bit compiling
Corrected ray weighting for mixed materials
Eliminated some compiler warnings.
Rearranged some struct's for better efficiency on 64-bit architectures
Fixed another serious bug where raytrans() wasn't working with RR ray term.
Fixed serious bug in new Russian roulette algorithm
Fixed report of contributing weight for mixed materials
Added check to avoid exp underflow
Fixed bugs in black glass transmission and source weight computation
Added Russian roulette ray termination and fixed ambient weights & measures
Got rtcontrib working and wrote basic man page
Extensive changes to enable rtrace -oTW option for tracking ray contributions
Eliminated revf member from RAY struct, as it was never really needed
Added -oM option to rtrace to output material
Made illum work properly with distant source objects
Continued ANSIfication. There are only bits and pieces left now.
Created a source occluder cache to accelerate shadow testing.
Bug fix for -i option using antimatter.
Added grouping parens to reduce ambiguity warnings.
Eliminated copystruct() macro, which is unnecessary in ANSI. Reduced ambiguity warnings for nested if/if/else clauses.
Abstracted process and path handling for Windows. Renamed FLOAT to RREAL because of conflict on Windows. Added conditional compiles for some signal handlers.
Added missing prototype for raytexture()
Changed alias handling to allow tracking, fixed freeobjects() and do_irrad bugs
First working version of new "mesh" primitive, obj2mesh converter
Modified new ray hit interface to check whole sets at a time
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
eliminated unecessary modifier loop checking (I hope!)
minor cosmetic fix to make code easier to read
improved the way ray weights are computed for participating media
fixed bug in mixture calculation
changed behavior to return FHUGE in r->rt when ray hits nothing
added object number to ray structure for instance tracking
removed distance mung for FHUGE
changed albedo to 3-color parameter
fixed improper use of salbedo in rayparticipate
changed mixtures so that mixing material with void is allowed also altered general behavoir so that surfaces without materials are invis.
added M_MIST (mist) material and global participating medium
changed aft clipping plane to work through transparent surfaces
added raydist() function
improved error message for conflicting materials
bug fix for surfaces coincident with octree faces
added test against aft plane in empty voxels
bug fixes from last change
added -vo and -va (fore and aft clipping plane) view options
added missing value for return statement in rayshade()
fixed bug for rays that hit nothing
fixed bug in raymixture() when mixing materials with coef=0
bug fixes associated with material mixtures
added missing material function return values
minor bug fixes
made mixtures work with materials
removed use of FTINY that was causing errors with -DSMLFLT in localhit()
fixed handling of void surfaces, which didn't work for instances
changed ray counters to unsigned long values
portability fixes (removed gcc warnings)
made void surfaces legal
moved check exclude set from ray structure to localhit()
modified OBJREC and RAY structures to avoid redundant intersection testing using sets instead of flags
updated revision number for release 2.0
added FLOAT definition to better control size of structures
added rayclear() function
added revf member to ray structure for dynamic evaluation
added raynum counter and reinstated repeat call test in setfunc()
changed initialization of effective ray length
fixed bug related to distant sources and -i option
fixed bug introduced by better trans distance comp.
added -i option for irradiance calculation
added -i option for irradiance calculation
changed allocation of transformations in newrayxf() to bmalloc
eliminated what should be redundant assignment of rox in rayorigin
changed handling of matrix transformations with new MAT4 & XF types dynamic allocation of ray transformations with newrayxf() added missing light source vector transformation to m_brdf.c
simplified direction flag in raymove
Added rt field to RAY structure for more accurate z-buffering
comment change
Fixed bug in source ray initialization in direct()
fixed clip test causing problem with light sources
Reduced preposterous MAXLOOP value
changed location of clip test
changed tests in rayshade
moved setting of ray transformation to intersection routines (bug)
fixed bugs in instance mapping of modifiers
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.