SpriteKit纹理图集我开发一个OS X/iOS的填字游戏中使用的SKLabelNode作为一个SKNode子子显示字谜字母。我可以创建在运行时
所以对于每个字母有SKNode.SKLabelNode。不使用SKLabelNode绘制计数在6-8范围内。使用SKLabelNode他们去了场景中的孩子的数量可以是几乎100
现在我正在寻找一种方法来避免和想出了主意,在SKLabelNode光栅化到纹理,但这并不会降低绘制计数,因为仍然有很多不同的纹理。
我现在的想法就是这些光栅SKNode -Subclasses并把纹理到纹理图集。
所以问题是,是否有可能创造在运行时纹理图集?如果单个纹理改变怎么办?是否有可能在地图集中交换单个纹理,因此我必须重建它?
也许有处理不同SKLabelNodes的大量的“最佳途径”!?
由于FPS较低,您的应用程序是否会遇到性能问题? – sangony
不,绝对不是。但是,对于** SKLabelNode **,我有一个节点数约为** 300节点**和一个**绘制数为100 **。我现在已经为每个可能的情况和字母创建了纹理,并创建了一个纹理地图集,这导致了** 80个节点**和少于** 7个绘制** ...我认为哪个更好,对吗? –
@SimonKemper你不必在运行时创建图集,只需像平常一样创建它。我刚刚搜索,这里是可以用来在运行时创建纹理图集的方法(如果你确实需要的话):https://developer.apple.com/library/ios/documentation/SpriteKit/Reference/SKTextureAtlas/#//apple_ref/occ/clm/SKTextureAtlas/atlasWithDictionary:我同意Sangony认为过早优化是你应该避免的,但是像这样使用SKLabelNodes并不是高性能的解决方案,而且真的不需要IMO。 – Whirlwind