2
作爲一個例子,我有一個圓圈向左移動,然後在屏幕上向右移動。我希望圓只有在兩個特定方塊(maskNodes)內時纔可見。我正在使用SKCropNode來嘗試實現這一點,但SKCropNode掩碼只允許我分配一個掩碼。有沒有人知道給SKCropNode分配兩個或多個掩碼的方法,或者甚至可以這樣做。謝謝!將多個蒙版分配給SKCropNode
override func didMoveToView(view: SKView) {
anchorPoint = CGPointMake(0.5, 0.5)
backgroundColor = UIColor.whiteColor()
let mask1 = SKSpriteNode(color: UIColor.blackColor(), size: CGSizeMake(50, 50))
mask1.position.x = -100
let mask2 = SKSpriteNode(color: UIColor.blackColor(), size: CGSizeMake(50, 50))
mask2.position.x = 100
let cropNode = SKCropNode()
cropNode.maskNode = mask1 // && mask2
addChild(cropNode)
let circle = SKShapeNode(circleOfRadius: 25)
circle.fillColor = UIColor.blackColor()
cropNode.addChild(circle)
// Move Circle
let moveLeft = SKAction.moveToX(-frame.size.width/2, duration: 2)
let moveRight = SKAction.moveToX(frame.size.width/2, duration: 2)
let seq = SKAction.repeatActionForever(SKAction.sequence([moveLeft, moveRight]))
circle.runAction(seq)
}