Ios 将着色器转换为内核

Ios 将着色器转换为内核,ios,objective-c,swift,shader,cifilter,Ios,Objective C,Swift,Shader,Cifilter,我正在尝试将这个特定的着色器转换为内核代码 我已经有这么多了 kernel vec4 thresholdFilter(__sample image, float time) { vec2 uv = destCoord(); float amount = sin(time) * 0.1; amount *= 0.3; float split = 1. - fract(time / 2.0); float scanOffset = 0.01; vec2 uv1 = vec2(u

我正在尝试将这个特定的着色器转换为内核代码

我已经有这么多了

kernel vec4 thresholdFilter(__sample image, float time)
 {
 vec2 uv = destCoord();
 float amount = sin(time) * 0.1;

 amount *= 0.3;
 float split = 1. - fract(time / 2.0);
 float scanOffset = 0.01;

  vec2 uv1 = vec2(uv.x + amount, uv.y);
  vec2 uv2 = vec2(uv.x, uv.y + amount);
  if (uv.y > split) {
  uv.x += scanOffset;
  uv1.x += scanOffset;
  uv2.x += scanOffset;
}

float r =  sample(image, uv1).r;
float g = sample(image, uv).g;
float b = sample(image, uv2).b;
float a = 1.0;

vec3 outPutPixel = sample(image, samplerTransform(image, uv)).rgb;
return vec4(outPutPixel, 1.0);
 }

这段代码的输出甚至与shaderToy的输出相差甚远。

Brad larson可以在这方面为您提供帮助。他在他的GPUImage库中做了类似的工作。在Shadertoy源代码中,代码的作用是什么!VHS(或
其他部分
部分)怎么办?还有,输出是什么样子的(或者你所说的“…甚至不接近…”是什么意思?@dfd您好,请看一看。@Amritrivedi,你找到了这样做的指南/文档吗?@AbhishekDave你偶然解决了这个问题吗?我们也在尝试同样的方法。。