【发布时间】:2017-11-10 22:31:49
【问题描述】:
我正在尝试创建许多相互重叠和隐藏的精灵。
class BubbleNode: SKSpriteNode {
init() {
let texture = SKTexture(imageNamed: "body")
super.init(texture: texture, color: .clear, size: texture.size())
let eye = SKSpriteNode(imageNamed: "eye")
eye.zPosition = 1
eye.position = CGPoint(x: -20, y: 0)
let eye_right = eye.copy() as! SKSpriteNode
eye_right.position = CGPoint(x: 20, y: 0)
let mouth_smiling = SKSpriteNode(imageNamed: "mouth_smiling")
mouth_smiling.zPosition = 1
mouth_smiling.position = CGPoint(x: 0, y: -20)
addChild(eye)
addChild(eye_right)
addChild(mouth_smiling)
}
}
在我看来,子元素的 zPosition 是有意义的。
我正在添加这样的气泡:
func touchDown(atPoint pos : CGPoint) {
let n = BubbleNode()
n.position = pos
self.addChild(n)
}
所以我预计精灵会重叠并隐藏不可见的部分。
相反,我先渲染身体,然后将眼睛和嘴巴渲染为兄弟姐妹:
我尝试翻转view.ignoresSiblingOrder,但没有帮助。
【问题讨论】:
标签: ios swift sprite-kit