SKNode中的CoreGraphics元素

时间:2014-01-06 17:02:36

标签: ios core-graphics sprite-kit

我正在使用SpriteKit构建游戏类型的应用程序。在我想要创建一个区域的其中一个场景中,用户将能够进行绘制。遗憾的是,使用SKShapeNodes会产生锯齿状线条并导致FPS下降。我考虑过使用Core Graphics方法,但我需要绘制线条作为Node的一部分。那么有没有办法将Node用作CG的画布?

2 个答案:

答案 0 :(得分:1)

来自SKNode documentation

  

与视图不同,您无法创建执行自定义绘图的SKNode子类。

所以我认为答案是不,你不能这样做。

每个节点都有一个scene属性,scene确实有一个指向包含它的view的链接。但是,使精灵动画快速运行的事情是精灵是固定的 - 图像已经被绘制,只需要复制。 SKSpriteNode以外的节点类型同样针对速度进行了优化。因此,精灵类中没有绘图方法 - 您的代码没有机会进行自定义绘图。

答案 1 :(得分:0)

你可以使用textureWithCGImage:

绘制到CGImage并使用它创建一个SKTexture