我有一个SKScene,我想要对特定图层进行快照。它可以是显示在白色UIView上的图层,其中包含SKView。但最后我想从这一层的状态中略过一下。 提前谢谢!
答案 0 :(得分:-1)
这对我有用:
var tempView = UIView(frame: CGRectMake(0, 0, 500, 500))
var tempSKView = SKView(frame: tempView.frame)
var tempScene = SKScene(size: tempSKView.bounds.size)
var lineTexture = SKTexture()
lineTexture = skView.textureFromNode(scene.lineLayer)
var lineLayerCopy = SKSpriteNode(texture: lineTexture)
lineLayerCopy.anchorPoint = CGPoint(x: 0.0, y: 0.0)
lineLayerCopy.size = CGSizeMake(500, 500)
tempScene.addChild(lineLayerCopy)
tempScene.backgroundColor = UIColor.whiteColor()
tempSKView.presentScene(tempScene)
tempView.addSubview(tempSKView)
self.view.addSubview(tempView)
注意:anchorPoint是必不可少的。它强制场景位于中心位置,因此您可以获得完美的图像。