diff options
author | Lukas Stockner <lukas.stockner@freenet.de> | 2018-10-09 01:03:47 +0300 |
---|---|---|
committer | Lukas Stockner <lukas.stockner@freenet.de> | 2018-10-09 01:14:29 +0300 |
commit | 7920ebd1573a45d3c3f71cde7f748828b46bb91f (patch) | |
tree | 5c7c10492b1c58096d30659cc287f32ac5b93880 /intern | |
parent | 3bc885e5f46ba103ed25f7e1c3bd897157ef768e (diff) |
Cycles: Fix NLM denoising kernels zeroing the wrong buffer on OpenCL
Since my temporary buffer commit (about a month ago), the OpenCL device was zeroing the wrong buffer, leading to
completely wrong filtered feature passes and therefore significantly lower-quality results than CPU and CUDA.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/cycles/device/opencl/opencl_base.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/intern/cycles/device/opencl/opencl_base.cpp b/intern/cycles/device/opencl/opencl_base.cpp index ffd3b7d7625..1e73d37d7a4 100644 --- a/intern/cycles/device/opencl/opencl_base.cpp +++ b/intern/cycles/device/opencl/opencl_base.cpp @@ -761,7 +761,7 @@ bool OpenCLDeviceBase::denoising_non_local_means(device_ptr image_ptr, cl_mem variance_mem = CL_MEM_PTR(variance_ptr); cl_mem out_mem = CL_MEM_PTR(out_ptr); - mem_zero_kernel(*difference, sizeof(float)*pass_stride); + mem_zero_kernel(*weightAccum, sizeof(float)*pass_stride); mem_zero_kernel(out_ptr, sizeof(float)*pass_stride); cl_kernel ckNLMCalcDifference = denoising_program(ustring("filter_nlm_calc_difference")); |