bilinear value added, now it uses global memory not texture, should work but slow