Swift 一个视图包含SpriteKit中另一个视图的一部分
我正在尝试用SpriteKit创建一个应用程序。我打算在角落里有一个主视图和另一个视图,近距离显示主视图的一部分。角落中的视图除了近距离显示主视图的一部分之外没有其他用途。我似乎找不到任何类型的类或函数可以这样做。我在Stack Overflow或任何其他问答网站上也没有发现类似的问题Swift 一个视图包含SpriteKit中另一个视图的一部分,swift,sprite-kit,Swift,Sprite Kit,我正在尝试用SpriteKit创建一个应用程序。我打算在角落里有一个主视图和另一个视图,近距离显示主视图的一部分。角落中的视图除了近距离显示主视图的一部分之外没有其他用途。我似乎找不到任何类型的类或函数可以这样做。我在Stack Overflow或任何其他问答网站上也没有发现类似的问题 角视图是什么类型并不重要。主视图确实需要是SKView。除此之外,我想不出其他规格。有没有办法将一个视图的一部分镜像到另一个视图?这个答案基于Maetschl上面的评论 这可以通过SKTexture实现。在SKS
角视图是什么类型并不重要。主视图确实需要是
SKView
。除此之外,我想不出其他规格。有没有办法将一个视图的一部分镜像到另一个视图?这个答案基于Maetschl上面的评论
这可以通过SKTexture
实现。在SKScene
中,添加名为textureNode的SKSpriteNode
或类似内容。在didMove()
中,使用空白初始值设定项初始化它并设置基本属性。您的SKScene
类应该如下所示
var textureNode : SKSpriteNode!
override func didMove(to view: SKView) {
textureNode = SKSpriteNode()
textureNode.position = .zero
textureNode.size = CGSize(width: 200, height: 200)
addChild(textureNode)
}
override func update(_ currentTime: TimeInterval) {
textureNode.texture = view?.texture(from: self) //Makes the new node display the scene
}
这样做的目的是让一个节点显示场景。节点显示的内容将根据场景的纹理进行更改。再次感谢Maetschl的灵感。尝试在一个视图中使用SKNodes,将小地图作为另一个SKNode的SKTexture:)