diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-02-15 14:59:31 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-02-15 14:59:31 +0300 |
commit | 8b8c0d00499f72d43c0c6daecd2909eff8edf068 (patch) | |
tree | 3aebdc310b4dbf5127301806579a314251dbc9f5 /intern/cycles/kernel/geom | |
parent | 6cdc954e8c41a19ae1e6ef3e8d5c375dd3f646a5 (diff) |
Cycles: Don't calculate primitive time if BVH motion steps are not used
Solves memory regression by the default configuration.
Diffstat (limited to 'intern/cycles/kernel/geom')
-rw-r--r-- | intern/cycles/kernel/geom/geom_curve.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/intern/cycles/kernel/geom/geom_curve.h b/intern/cycles/kernel/geom/geom_curve.h index c8749545cdd..712b67a1b55 100644 --- a/intern/cycles/kernel/geom/geom_curve.h +++ b/intern/cycles/kernel/geom/geom_curve.h @@ -231,7 +231,7 @@ ccl_device_forceinline bool bvh_cardinal_curve_intersect(KernelGlobals *kg, Inte { const bool is_curve_primitive = (type & PRIMITIVE_CURVE); - if(!is_curve_primitive) { + if(!is_curve_primitive && kernel_data.bvh.use_bvh_steps) { const float2 prim_time = kernel_tex_fetch(__prim_time, curveAddr); if(time < prim_time.x || time > prim_time.y) { return false; @@ -700,7 +700,7 @@ ccl_device_forceinline bool bvh_curve_intersect(KernelGlobals *kg, Intersection const bool is_curve_primitive = (type & PRIMITIVE_CURVE); - if(!is_curve_primitive) { + if(!is_curve_primitive && kernel_data.bvh.use_bvh_steps) { const float2 prim_time = kernel_tex_fetch(__prim_time, curveAddr); if(time < prim_time.x || time > prim_time.y) { return false; |