Swift 一个视图包含SpriteKit中另一个视图的一部分

Swift 一个视图包含SpriteKit中另一个视图的一部分,swift,sprite-kit,Swift,Sprite Kit,我正在尝试用SpriteKit创建一个应用程序。我打算在角落里有一个主视图和另一个视图,近距离显示主视图的一部分。角落中的视图除了近距离显示主视图的一部分之外没有其他用途。我似乎找不到任何类型的类或函数可以这样做。我在Stack Overflow或任何其他问答网站上也没有发现类似的问题 角视图是什么类型并不重要。主视图确实需要是SKView。除此之外,我想不出其他规格。有没有办法将一个视图的一部分镜像到另一个视图?这个答案基于Maetschl上面的评论 这可以通过SKTexture实现。在SKS

我正在尝试用SpriteKit创建一个应用程序。我打算在角落里有一个主视图和另一个视图,近距离显示主视图的一部分。角落中的视图除了近距离显示主视图的一部分之外没有其他用途。我似乎找不到任何类型的类或函数可以这样做。我在Stack Overflow或任何其他问答网站上也没有发现类似的问题


角视图是什么类型并不重要。主视图确实需要是
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:)