diff options
Diffstat (limited to 'intern/cycles/kernel/filter/filter_reconstruction.h')
-rw-r--r-- | intern/cycles/kernel/filter/filter_reconstruction.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/intern/cycles/kernel/filter/filter_reconstruction.h b/intern/cycles/kernel/filter/filter_reconstruction.h index e5d3b0da835..31a7487c77a 100644 --- a/intern/cycles/kernel/filter/filter_reconstruction.h +++ b/intern/cycles/kernel/filter/filter_reconstruction.h @@ -18,9 +18,11 @@ CCL_NAMESPACE_BEGIN ccl_device_inline void kernel_filter_construct_gramian(int x, int y, int storage_stride, - int dx, int dy, + int dx, int dy, int t, int buffer_stride, int pass_stride, + int frame_offset, + bool use_time, const ccl_global float *ccl_restrict buffer, const ccl_global float *ccl_restrict transform, ccl_global int *rank, @@ -34,7 +36,7 @@ ccl_device_inline void kernel_filter_construct_gramian(int x, int y, } int p_offset = y * buffer_stride + x; - int q_offset = (y+dy) * buffer_stride + (x+dx); + int q_offset = (y+dy) * buffer_stride + (x+dx) + frame_offset; #ifdef __KERNEL_GPU__ const int stride = storage_stride; @@ -57,9 +59,9 @@ ccl_device_inline void kernel_filter_construct_gramian(int x, int y, return; } - filter_get_design_row_transform(make_int2(x, y), buffer + p_offset, - make_int2(x+dx, y+dy), buffer + q_offset, - pass_stride, *rank, design_row, transform, stride); + filter_get_design_row_transform(make_int3(x, y, t), buffer + p_offset, + make_int3(x+dx, y+dy, t), buffer + q_offset, + pass_stride, *rank, design_row, transform, stride, use_time); #ifdef __KERNEL_GPU__ math_trimatrix_add_gramian_strided(XtWX, (*rank)+1, design_row, weight, stride); |