ios - SKSpriteNode hidden under a UI Background Image -
i have skspritenode
functions properly. when add uiimage
, skspritenode
becomes hidden behind uiimage
. have been trying figure out why, having little bit of trouble , can't seem figure out missing allow sksspritenode
appear on top of ui background image, instead of behind can't seen. appreciated!
import uikit import spritekit class gameviewcontroller: uiviewcontroller { override func viewdidload() { super.viewdidload() if let scene = gamescene(filenamed:"gamescene") { // configure view. let skview = self.view as! skview skview.showsfps = true skview.showsnodecount = true /* sprite kit applies additional optimizations improve rendering performance */ skview.ignoressiblingorder = true /* set scale mode scale fit window */ scene.scalemode = .aspectfill skview.presentscene(scene) } } override func shouldautorotate() -> bool { return true } override func supportedinterfaceorientations() -> uiinterfaceorientationmask { if uidevice.currentdevice().userinterfaceidiom == .phone { return .allbutupsidedown } else { return .all } } override func didreceivememorywarning() { super.didreceivememorywarning() // release cached data, images, etc aren't in use. } override func prefersstatusbarhidden() -> bool { return true }
}
import spritekit import scenekit class gamescene: skscene, skphysicscontactdelegate { var blueball:skspritenode! override func didmovetoview(view: skview) { self.physicsworld.gravity = cgvectormake(0.0, -5.0) self.physicsworld.contactdelegate = self blueball = skspritenode( imagenamed: "ball") blueball.position = cgpoint(x: cgrectgetmidx(self.frame), y: cgrectgetmidy(self.frame)) blueball.physicsbody = skphysicsbody(circleofradius: blueball.size.width / 1.5 ) blueball.physicsbody!.dynamic = true blueball.physicsbody!.allowsrotation = false self.addchild(blueball) } override func touchesbegan(touches: set<uitouch> , withevent event: uievent?) { self.blueball.physicsbody?.velocity = cgvectormake(35, 0) self.blueball.physicsbody?.applyimpulse(cgvectormake(4, 10)) }
}
for draw order use zposition
property:
in case need give sprite want displayed in front higher
.zposition
value 1 displayed further back.
example: ball.zposition = 10
zposition
definition:
the height of node relative parent.
tipps: default value 0.0. positive z axis projected toward viewer nodes larger z values closer viewer.
Comments
Post a Comment