将SKScene渲染到SKTexture?

fuz*_*oat 4 ios sprite-kit sktexture skeffectnode

在Sprite Kit中是否有一种方法可以捕获屏幕(所有当前SKScene渲染的节点),SKTexture以便我可以应用CIFilter然后将SKTexture分配给新的SKSpriteNode

我知道我可以设置一个SKEffectNode,作为我的节点树的父节点,应用过滤器等并以这种方式获得结果,但我真的需要一个过滤的 SKTexture(或SKSpriteNode)我可以在以后重用?

编辑:

可能的方法:

textureFromNode:
Renders and returns a Sprite Kit texture that contains the node’s contents.
Run Code Online (Sandbox Code Playgroud)

是的作品:

   SKTexture *texture = [[self view] textureFromNode:[self scene]];
   [blurSprite setTexture:texture];
Run Code Online (Sandbox Code Playgroud)

fuz*_*oat 7

来自Apple文档:

textureFromNode:呈现并返回包含节点内容的Sprite Kit纹理.

代码示例:

   SKTexture *texture = [[self view] textureFromNode:[self scene]];
   [blurSprite setTexture:texture];
Run Code Online (Sandbox Code Playgroud)