diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-01-08 20:10:32 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-01-09 14:14:20 +0300 |
commit | 8044e5f2d771a1c3ee1a116132ddc09ce3452cbb (patch) | |
tree | a30b0f3f2e90b197e9ebaebae6ceab108d9548d2 /intern/cycles/bvh/bvh.h | |
parent | b486088218f66810b97294f38f246e4650d32f2b (diff) |
Cycles: Make BVH wider prior to packing
This allows to do more non-trivial tree modifications to make
it more dense and more friendly for vectorization.
Diffstat (limited to 'intern/cycles/bvh/bvh.h')
-rw-r--r-- | intern/cycles/bvh/bvh.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/intern/cycles/bvh/bvh.h b/intern/cycles/bvh/bvh.h index c8ad29004d7..33a069eeaf5 100644 --- a/intern/cycles/bvh/bvh.h +++ b/intern/cycles/bvh/bvh.h @@ -99,8 +99,6 @@ protected: /* Refit range of primitives. */ void refit_primitives(int start, int end, BoundBox& bbox, uint& visibility); - static __forceinline bool leaf_check(const BVHNode *node, BVH_TYPE bvh); - static bool node_is_unaligned(const BVHNode *node, BVH_TYPE bvh); /* triangles and strands */ void pack_primitives(); @@ -112,6 +110,8 @@ protected: /* for subclasses to implement */ virtual void pack_nodes(const BVHNode *root) = 0; virtual void refit_nodes() = 0; + + virtual BVHNode *widen_children_nodes(const BVHNode *root) = 0; }; /* Pack Utility */ |