diff options
author | Andre Susano Pinto <andresusanopinto@gmail.com> | 2009-07-15 21:38:00 +0400 |
---|---|---|
committer | Andre Susano Pinto <andresusanopinto@gmail.com> | 2009-07-15 21:38:00 +0400 |
commit | ef1fcd8ad1d8fb4feed704286982e8b5be03b149 (patch) | |
tree | f3e45dea70d74a8e667c597d9d1a5c7452dc7a6c /source/blender/render/intern/include/rayobject.h | |
parent | e3f7cad32d4c597fec7576fe5530f5adc9a33159 (diff) |
*Added support to "BB hints" (which works like a BB version of LCTS - longest common transversing subtree)
It creates a tree cut after knowing that a given point will pass on a BB.
This tree cut is used to accelarate the rays casted from a given BB, eliminating unnecessary BB tests from root till the tree cut.
Diffstat (limited to 'source/blender/render/intern/include/rayobject.h')
-rw-r--r-- | source/blender/render/intern/include/rayobject.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/render/intern/include/rayobject.h b/source/blender/render/intern/include/rayobject.h index 16ebc537ef9..6f8debead19 100644 --- a/source/blender/render/intern/include/rayobject.h +++ b/source/blender/render/intern/include/rayobject.h @@ -98,6 +98,7 @@ typedef void (*RE_rayobject_done_callback)(RayObject *); typedef void (*RE_rayobject_free_callback)(RayObject *); typedef void (*RE_rayobject_merge_bb_callback)(RayObject *, float *min, float *max); typedef float (*RE_rayobject_cost_callback)(RayObject *); +typedef void (*RE_rayobject_hint_bb_callback)(RayObject *, RayHint *, float *, float *); typedef struct RayObjectAPI { @@ -107,6 +108,7 @@ typedef struct RayObjectAPI RE_rayobject_free_callback free; RE_rayobject_merge_bb_callback bb; RE_rayobject_cost_callback cost; + RE_rayobject_hint_bb_callback hint_bb; } RayObjectAPI; |