From 6cdc954e8c41a19ae1e6ef3e8d5c375dd3f646a5 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Wed, 15 Feb 2017 10:48:02 +0100 Subject: Cycles: Pass special flag whether BVH motion steps are used Doesn't currently change anything, but would need for some future work here. It uses existing padding in kernel BVH structure, so there is nothing changed memory-wise. --- intern/cycles/kernel/kernel_types.h | 3 ++- intern/cycles/render/mesh.cpp | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/intern/cycles/kernel/kernel_types.h b/intern/cycles/kernel/kernel_types.h index f518530106c..8250eaf6073 100644 --- a/intern/cycles/kernel/kernel_types.h +++ b/intern/cycles/kernel/kernel_types.h @@ -1202,7 +1202,8 @@ typedef struct KernelBVH { int have_curves; int have_instancing; int use_qbvh; - int pad1, pad2; + int use_bvh_steps; + int pad1; } KernelBVH; static_assert_align(KernelBVH, 16); diff --git a/intern/cycles/render/mesh.cpp b/intern/cycles/render/mesh.cpp index 42dd4da8d0c..b7660297f3e 100644 --- a/intern/cycles/render/mesh.cpp +++ b/intern/cycles/render/mesh.cpp @@ -1880,6 +1880,7 @@ void MeshManager::device_update_bvh(Device *device, DeviceScene *dscene, Scene * dscene->data.bvh.root = pack.root_index; dscene->data.bvh.use_qbvh = scene->params.use_qbvh; + dscene->data.bvh.use_bvh_steps = (scene->params.num_bvh_time_steps != 0); } void MeshManager::device_update_flags(Device * /*device*/, -- cgit v1.2.3