let lib = try! device.makeDefaultLibrary(bundle: Bundle(for: type(of: self))) で取れたUIImage(ciimage:)使ったらそのコスト(多分)無いし実は変わらない…? (edited)CIContext 次第だと思いますが、GPUのコンテキストで作ったものなら、そのままGPUで描画になりそうですね。vec2 blurCoordinates[9]; ... blurCoordinates[4] = destCoord(); ... // これは動かない(iOS11までは動いていた) vec4 centralColor = sample(inputImage, samplerTransform(inputImage, blurCoordinates[4])); // これは動く vec4 centralColor = sample(inputImage, samplerTransform(inputImage, destCoord())); (edited)renderCommandEncoder?.setVertexBuffer() renderCommandEncoder?.drawPrimitives() をオブジェクト数分書けばいい。 これが分からなくて半日ハマりました。 (edited)