将所有SKSpriteNode子项合并为单个SKSpriteNode [英] Merge all SKSpriteNode children into a single SKSpriteNode

查看:97
本文介绍了将所有SKSpriteNode子项合并为单个SKSpriteNode的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将SKSpriteNode及其所有子SKSpriteNodes合并为一个没有子项的扁平SKSpriteNode?

谢谢。

解决方案

创建节点的纹理并从该纹理创建一个新的精灵:

  SKTexture * tex = [self.scene.view textureFromNode:parentSprite]; 
SKSpriteNode * newSprite = [SKSpriteNode spriteNodeWithTexture:tex];

PS:请确保不要在init中运行此项,否则self.view将为nil。


How can I take an SKSpriteNode and all its child SKSpriteNodes and merge them down into a single flattened SKSpriteNode with no children?

Thanks.

解决方案

Create a texture of the node and create a new sprite from that texture:

SKTexture* tex = [self.scene.view textureFromNode:parentSprite];
SKSpriteNode* newSprite = [SKSpriteNode spriteNodeWithTexture:tex];

PS: be sure not to run this in init otherwise self.view will be nil.

这篇关于将所有SKSpriteNode子项合并为单个SKSpriteNode的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆