核心图像与核心图形

我正在制作一个使用基本核心图形功能的应用程序。该应用程序在Ipad2上运行得相当不错,但是由于视网膜显示,Ipad3的性能受到影响,这导致在较早前的4倍的像素数上完成绘图。我尝试了一些黑客来提高性能,但由于绘图发生在我的代码中的手势上,我想我必须切换到其他的选择。我想知道Core Image是否提供了可以使用Core Graphics执行的所有功能,以便我可以使用GPU处理功能。如果不是,那么最好的选择是什么,以便我可以使用具有更好处理能力的相同功能。

0
额外
意见: 1
是。因为当一些绘图操作被移除或者绘制了部分屏幕而不是整个屏幕时,性能显示出一些改进。
额外 作者 user1414340,
您是否100%肯定性能下降是由于像素数量的增加?
额外 作者 zoul,

2 答案

核心图像和核心图形非常不同。 Core Image是图像处理技术。您可以应用预先制作的滤镜,如棕褐色,黑色和白色,以及颜色反转,或者您可以创建自定义滤镜。 Core Graphics是一款使用Quartz 2D技术的渲染API,可以进行复杂的绘图。

Brad Larson的GPUImage是Core Image的一个很好的选择/补充。您可以在此处找到它。

如果你想提高性能,你可以尝试像OpenGL这样的低级API。这很难学,但是这里有几个链接让你开始:

0
额外
谢谢。这肯定会加剧。
额外 作者 user1414340,

我知道,迟到了一年,但看看WWDC 2010会议上的核心动画:424和425.两者都很重要,但有关于性能调整的一些很好的细节,在425时大约在11:00标记。

简短的概要是,有三个潜在的瓶颈,您需要确定,优化并保持迭代,直到您获得平滑的60 FPS。潜在的瓶颈是:

  • 读取带宽
  • 写入频宽
  • 处理/渲染通过。

425会话(核心动画实践,第2部分)涵盖了处理上述问题的技巧。

https://developer.apple.com/videos/wwdc/2010/

0
额外