【问题标题】:How to cache or preload SKLabelNode font in spritekit如何在 spritekit 中缓存或预加载 SKLabelNode 字体
【发布时间】:2015-07-07 04:21:02
【问题描述】:

我想加载一次字体并将其用于其他 sklabel 节点

let originalLabel: SKLabelNode = SKLabelNode(fontNamed: "fontName");

以后

var labelNode = originalLabel;
var labelNodeSecond = originalLabel;

但会出现以下错误

尝试添加一个已经有父节点的SKNode:SKLabelNode

【问题讨论】:

    标签: swift sprite-kit sklabelnode


    【解决方案1】:

    你可以通过初始化UIFont来设置一次字体:

    let yourFont = UIFont(name: "yourfontName", size: 17)
    
    var firstLabel = SKLabelNode(fontNamed: yourFont?.fontName) 
    var secondLabel = SKLabelNode(fontNamed: yourFont?.fontName)
    

    这样,您只需设置一次字体,SKLabelNodes 不必自己加载它。

    【讨论】:

    • 感谢克里斯蒂安,这让游戏速度提高了 40 倍,因为我正在创建 8 个 sklabelnodes,即使字体名称正确,它也非常慢!再次感谢您的帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-26
    • 1970-01-01
    相关资源
    最近更新 更多