gpt4 book ai didi

ios - 调用 SKLabelNode 时延迟?

转载 作者:可可西里 更新时间:2023-11-01 05:04:32 24 4
gpt4 key购买 nike

SKScene 转换时,我遇到了轻微延迟(滞后)的问题给另一个。通过注释掉各种代码,我将范围缩小到 SKLabelNode ,我的猜测是它在调用时加载/缓存字体,这导致在声明新的 SKScene 时出现小的延迟/卡顿。 .

有没有其他人注意到这一点,当你只使用一个 SKScene 时它不太明显(就像默认模板一样)因为减速只是在通常的启动延迟中消失了。有谁知道解决这个问题的方法,有没有办法预加载字体?我想我可以在 UIViewController 上加载字体在启动时看看我是否可以使用 SKScene 访问它,有人有什么想法吗?

-(id)initWithSize:(CGSize)size {
if (self = [super initWithSize:size]) {
[self setScore:0];

[self setBackgroundColor:[SKColor blackColor]];
SKLabelNode *labelNode = [SKLabelNode labelNodeWithFontNamed:@"System"];
[labelNode setText:@"00000"];
[labelNode setFontSize:20.0];
[labelNode setPosition:CGPointMake(CGRectGetMidX(self.frame),500)];
[labelNode setName:@"SCORE"];
[labelNode setAlpha:1.0];
[self addChild:labelNode];
[self setScoreLabel:labelNode];
...

最佳答案

延迟取决于字体的加载。最好预加载您打算使用的字体、声音和任何其他 Assets ,这样您在第一次实际使用时就不会出现延迟。

您可以在您的设置中预加载:

SKLabelNode *preload = [SKLabelNode labelNodeWithFontNamed:@"System"];
[preload setText:@"anything"];

如评论中所述,只有在使用 iOS 无法使用的字体时才需要预加载。

关于ios - 调用 SKLabelNode 时延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20380954/

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