diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-02-14 13:23:30 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-03-13 16:29:48 +0300 |
commit | fa6a1d06d1aecad33659393fc49ed8506213db28 (patch) | |
tree | 9cba5300d8fbce2fe200243f120b20abcdcc0864 /intern/cycles/util/util_debug.cpp | |
parent | 81c199af8365c5a52bb7e8a1a4046acfceea1519 (diff) |
Cycles: Add BVH8 and packeted triangle intersectioncycles_bvh8
This is an initial implementation of BVH8 optimization structure
and packated triangle intersection. The aim is to get faster ray
to scene intersection checks.
Scene BVH4 BVH8
barbershop_interior 10:24.94 10:10.74
bmw27 02:41.25 02:38.83
classroom 08:16.49 07:56.15
fishy_cat 04:24.56 04:17.29
koro 06:03.06 06:01.45
pavillon_barcelona 09:21.26 09:02.98
victor 23:39.65 22:53.71
Original BVH8 patch from Anton Gavrikov.
batched triangles intersection from Victoria Zhislina.
Extra work and tests and fixes from Maxym Dmytrychenko.
Diffstat (limited to 'intern/cycles/util/util_debug.cpp')
-rw-r--r-- | intern/cycles/util/util_debug.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/intern/cycles/util/util_debug.cpp b/intern/cycles/util/util_debug.cpp index 9a66a372822..a761c9c46de 100644 --- a/intern/cycles/util/util_debug.cpp +++ b/intern/cycles/util/util_debug.cpp @@ -57,7 +57,19 @@ void DebugFlags::CPU::reset() #undef STRINGIFY #undef CHECK_CPU_FLAGS - bvh_layout = BVH_LAYOUT_DEFAULT; + if (getenv("CYCLES_BVH2") != NULL) { + bvh_layout = BVH_LAYOUT_BVH2; + } + else if (getenv("CYCLES_BVH4") != NULL) { + bvh_layout = BVH_LAYOUT_BVH4; + } + else if (getenv("CYCLES_BVH8") != NULL) { + bvh_layout = BVH_LAYOUT_BVH8; + } + else { + bvh_layout = BVH_LAYOUT_DEFAULT; + } + split_kernel = false; } |