CIGaussianBlur 处理过多
CIGaussianBlur takes too much processing
我正在尝试在游戏暂停屏幕上应用 CIGaussianBlur 效果。这是我的代码:
effectsNode = SKEffectNode();
let filter = CIFilter(name: "CIGaussianBlur");
let blurAmount = 10.0;
filter.setValue(blurAmount, forKey: kCIInputRadiusKey);
effectsNode.filter = filter;
effectsNode.blendMode = .Alpha;
此代码运行良好,但它占用过多的处理能力并大大降低了 FPS!我只想要游戏暂停时背景的静态模糊图像。
这个问题有解决方法吗?
你是在每一帧上应用效果吗?您应该只应用一次,然后保存结果,并在暂停期间显示该结果。您可以在 this post
中查看示例
我正在尝试在游戏暂停屏幕上应用 CIGaussianBlur 效果。这是我的代码:
effectsNode = SKEffectNode();
let filter = CIFilter(name: "CIGaussianBlur");
let blurAmount = 10.0;
filter.setValue(blurAmount, forKey: kCIInputRadiusKey);
effectsNode.filter = filter;
effectsNode.blendMode = .Alpha;
此代码运行良好,但它占用过多的处理能力并大大降低了 FPS!我只想要游戏暂停时背景的静态模糊图像。
这个问题有解决方法吗?
你是在每一帧上应用效果吗?您应该只应用一次,然后保存结果,并在暂停期间显示该结果。您可以在 this post
中查看示例