[Bf-blender-cvs] [e5a1a9288c6] blender2.7: Fix T60320: Cycles OpenCL denoising filter errors on some drivers.

Brecht Van Lommel noreply at git.blender.org
Fri Jan 11 11:26:04 CET 2019


Commit: e5a1a9288c66ce218a03abf7666336a39ba03b8f
Author: Brecht Van Lommel
Date:   Fri Jan 11 11:12:38 2019 +0100
Branches: blender2.7
https://developer.blender.org/rBe5a1a9288c66ce218a03abf7666336a39ba03b8f

Fix T60320: Cycles OpenCL denoising filter errors on some drivers.

===================================================================

M	intern/cycles/kernel/filter/filter_nlm_gpu.h

===================================================================

diff --git a/intern/cycles/kernel/filter/filter_nlm_gpu.h b/intern/cycles/kernel/filter/filter_nlm_gpu.h
index 4ca49ea6733..cffd61cb7d1 100644
--- a/intern/cycles/kernel/filter/filter_nlm_gpu.h
+++ b/intern/cycles/kernel/filter/filter_nlm_gpu.h
@@ -36,8 +36,6 @@ ccl_device_inline bool get_nlm_coords_window(int w, int h, int r, int stride,
 	if(sy >= s) {
 		return false;
 	}
-	co->z = sx-r;
-	co->w = sy-r;
 
 	/* Pixels still need to lie inside the denoising buffer after applying the offset,
 	 * so determine the area for which this is the case. */
@@ -59,8 +57,8 @@ ccl_device_inline bool get_nlm_coords_window(int w, int h, int r, int stride,
 	if(!local_index_to_coord(clip_area, ccl_global_id(0), &x, &y)) {
 		return false;
 	}
-	co->x = x;
-	co->y = y;
+
+	*co = make_int4(x, y, sx - r, sy - r);
 
 	*ofs = (sy*s + sx) * stride;



More information about the Bf-blender-cvs mailing list