问题描述
我正在从文件中加载SKScene。在其中,我可以在屏幕上看到一个SKShapeNode。但是,如果将“自定义类”设置为类似于下面的TestNode的类,则不会呈现ShapeNode:使用编码器和调试实现init,即使在Xcode的“属性编辑器”中,我也可以看到.scene为零。 ,将父级设置为“场景”。我什至可以获取在Node上设置的userData。节点以isPaused = true初始化,将其设置为false不会有帮助。
public class TestNode: SKNode {
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
}
.scene属性为何为零的任何想法?
解决方法
事实证明,自定义类必须与场景编辑器中添加的节点完全相同。
因此,如果场景中有一个SKSpriteNode(.sks文件)并设置其自定义类属性,则该自定义类也必须是SKSpriteNode,而不能仅仅是SKNode。