[Bf-blender-cvs] [29ce3df] master: Fix T48691: Cycles - OpenCL - HDR Image mapping does not match CUDA rendering
Lukas Stockner
noreply at git.blender.org
Tue Jun 21 00:52:21 CEST 2016
Commit: 29ce3dfeb6a8b0e85c477e7b917b50a6eaca8024
Author: Lukas Stockner
Date: Tue Jun 21 00:49:25 2016 +0200
Branches: master
https://developer.blender.org/rB29ce3dfeb6a8b0e85c477e7b917b50a6eaca8024
Fix T48691: Cycles - OpenCL - HDR Image mapping does not match CUDA rendering
The OpenCL texture code didn't offset the coordinates by half a pixel like the CPU code does.
===================================================================
M intern/cycles/kernel/svm/svm_image.h
===================================================================
diff --git a/intern/cycles/kernel/svm/svm_image.h b/intern/cycles/kernel/svm/svm_image.h
index 3d9ab40..aa9c07c 100644
--- a/intern/cycles/kernel/svm/svm_image.h
+++ b/intern/cycles/kernel/svm/svm_image.h
@@ -93,8 +93,8 @@ ccl_device float4 svm_image_texture(KernelGlobals *kg, int id, float x, float y,
r = svm_image_texture_read(kg, id, offset + ix + iy*width);
}
else { /* We default to linear interpolation if it is not closest */
- float tx = svm_image_texture_frac(x*width, &ix);
- float ty = svm_image_texture_frac(y*height, &iy);
+ float tx = svm_image_texture_frac(x*width - 0.5f, &ix);
+ float ty = svm_image_texture_frac(y*height - 0.5f, &iy);
if(periodic) {
ix = svm_image_texture_wrap_periodic(ix, width);
More information about the Bf-blender-cvs
mailing list