gpt4 book ai didi

ios - SKLabelNodes 下降 fps

转载 作者:行者123 更新时间:2023-11-29 01:29:35 29 4
gpt4 key购买 nike

我有一个基于SpriteKit的小游戏。

在这个游戏中,我使用了很多带有字母(或字母组合)的节点,用户可以四处移动来构建单词。

这些节点基本上是带有 SKLabelNode 的 SKSpriteNode。

当我有相当多的节点时,绘制计数会增加,而 FPS 会急剧下降。

显然,当我删除 SKLabelNodes 时,绘制计数保持较低水平。但我仍然需要那些信件。

问题是,在不降低 FPS 的情况下添加这些字母的最佳方法是什么?

最佳答案

有三种方法可以做到这一点,每一种都是不同的折衷方案。

第一个,也是最简单的,是在现有标签上使用 shouldRasterize。对于 Sprite Kit 中的标签,这似乎不存在。卫生部!

将位图纹理用作对象上的字母,实际上用作 Sprite ,这是 Sprite Kit 处理得最好的东西。这将涉及使用位图字体生成器,例如 Whirlwind 在评论中指出的优秀 BMGlyph。

这并不容易,因为编码部分会更加劳动密集,但您应该通过这种方式获得绝对最佳的性能。

您仍然可以交换字母,但您需要将它们视为纹理的子部分而不是字母。将每个字母在纹理中的位置分配给易于内存的内容的数组或字典将既高效又易于使用。但安装起来需要大量劳动力。比 SKLabelNode 更重要

或者,您可以疯狂地使用代码创建纹理,方法是在虚拟对象上使用 SKLabelNode,然后将其“渲染”或“绘制”到纹理,然后为每个字母使用该纹理对象/ Sprite 。类似于 BMGlyph 的工作方式,但更耗时且更不灵活。

BMGlyph 是速度和易用性的最佳结合,它也有一些非常漂亮的效果来创建漂亮的文本。

关于ios - SKLabelNodes 下降 fps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33584756/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com