用Pixel Bender实现的图片变形效果
其他变形效果也可实现,只要算出变形后的像素点位置对应原图片的像素点即可。
算出变形后图片的点P1(x1,y1)对应于原图像的P0(x0,y0),P1的像素值即P0的像素值,当然为了图片能更平滑,采用二次插值或线性插值。
input image4 src;//输入图片
output pixel4 dst;//输出像素值
outCoord();//是新图片的坐标 即(x1,y1)
dst = sampleNearest(src,float2 pos());//pos()是对应原图片的x0,y0坐标
中间代码是根据outCoord()算pos()的过程 即 pos() = f(outCoord());
我悲剧的高数 线代。。