Cycles: OpenCL tweaks
[blender.git] / intern / cycles / kernel / kernel_compat_cpu.h
index fd96148968fb4130d0c4100e804ec46c5dc0004c..783ae5198455544c98f3ef9b7139007a7b235b01 100644 (file)
@@ -55,8 +55,10 @@ template<typename T> struct texture  {
                return ((__m128i*)data)[index];
        }*/
 
-       float interp(float x)
+       float interp(float x, int size)
        {
+               kernel_assert(size == width);
+
                x = clamp(x, 0.0f, 1.0f)*width;
 
                int index = min((int)x, width-1);
@@ -151,7 +153,7 @@ typedef texture_image<uchar4> texture_image_uchar4;
 #define kernel_tex_fetch(tex, index) (kg->tex.fetch(index))
 #define kernel_tex_fetch_m128(tex, index) (kg->tex.fetch_m128(index))
 #define kernel_tex_fetch_m128i(tex, index) (kg->tex.fetch_m128i(index))
-#define kernel_tex_interp(tex, t) (kg->tex.interp(t))
+#define kernel_tex_interp(tex, t, size) (kg->tex.interp(t, size))
 #define kernel_tex_image_interp(tex, x, y) (kg->tex.interp(x, y))
 
 #define kernel_data (kg->__data)