2010-11-03 79 views
1

我有场景中存储的场景作为由点序列表示的形状的集合。我使用CGContextMoveToPoint,CGContextAddLineToPoint,CGContextSetFillColorWithColor和CGContextFillPath函数绘制了这个场景。问题是我需要在短时间间隔(0.01秒)内重新绘制计时器事件的场景,并且场景重绘非常缓慢。有没有办法加速这个东西?或者只有OpenGLES可以帮助我?如何加速石英2d

回答

5

Quartz 2D(Core Graphics)图形在iPhone上不加速。路径填充也可能受CPU限制。如果您想要硬件加速,则必须将场景转换为OpenGL ES(三角形条纹和纹理)。即使使用OpenGL ES,您也必须相当好地优化图形以获得60 Hz的帧速率(0.017秒)。

另一种可能性是将您的形状预渲染到CALayers中,并为图层设置动画效果(缩放,旋转,叠加,隐藏等)CALayer动画也是硬件辅助的。

+0

理解,谢谢 – heximal 2010-11-03 21:18:51