我刚刚购买了新的iPad(第三代),正在测试一款使用CoreGraphics的高分辨率绘图应用程序。
在普通的1024x768模式下,iPad的性能与之前的版本相当,只有在快速绘画时会稍微有些延迟。
但是,当我尝试在高分辨率画布上绘画(2048x1536),该应用程序变得无法使用,非常缓慢和卡顿。这是因为CoreGraphics主要由CPU计算(我认为与iPad2相比并没有快多少),需要进行4倍的工作量吗?
基本上,我已经改变了我的绘画例程:
UIGraphicsBeginImageContext(CGSizeMake(1024, 768));
To
UIGraphicsBeginImageContextWithOptions(CGSizeMake(1024, 768), NO, 0.0);
为了实现视网膜绘图,线条非常好看而且清晰,图像保存为2048x1536。但正如所提到的,延迟和滞后使它作为绘图工具无用。
除了在openGL中重新编写我的应用程序(由于时间限制和早期尝试关键混合模式失败,这不是一个选择),还有什么我可以做来优化在新iPad上运行视网膜模式下的CoreGraphics应用程序?