绘制背景时不显示spriteKit对象

时间:2014-08-02 12:13:23

标签: ios swift sprite-kit

我正在使用xCode 6 beta 4来构建游戏。在iOS 8中,一切正常,但在iOS 7.0模拟器中,播放器对象没有显示。

编辑:感谢评论,我将background.zPosition更改为-100,现在我可以看到播放器对象了。为什么iOS 8.0不需要这样做仍然很奇怪。

我的代码:

class PlayScene : SKScene{


    let background = SKSpriteNode(imageNamed: "background1")
    let player = SKSpriteNode(imageNamed: "ball")
    var ForceX = CGVectorMake(250, 0)
    let Gravity = CGVectorMake(0, -15)
    var bgVelocity = CGFloat(0)
    var maxBgY = CGFloat(0)
    var origRunningBGPosition = CGFloat(0)
    var isJumping=false
    var startedJump = false


    override func didMoveToView(view: SKView!) {

        self.player.position=CGPointMake(150, 150)
        self.player.physicsBody=SKPhysicsBody(rectangleOfSize: self.player.size)
        self.player.physicsBody.affectedByGravity=false
        self.player.physicsBody.mass=CGFloat(1)



        self.background.size=CGSizeMake(self.frame.width, self.frame.height*3)
        self.background.anchorPoint=CGPointMake(0, 0)
        self.background.position=CGPointMake(0, 0)
        bgVelocity+=2.5
        self.maxBgY=self.background.size.height-self.frame.height
        maxBgY*=CGFloat(-1)
        self.origRunningBGPosition=CGRectGetMinY(self.frame)

         self.addChild(self.background)
         self.addChild(self.player)


    }

我发现,当我不使用背景时,我可以看到播放器,我无法理解它为什么会发生以及为什么只在iOS 7.0中出现?

1 个答案:

答案 0 :(得分:0)

当您在viewController中的viewDidLoad中定义skView时,它会保存skScenes,并且所有内容都将按照其使用的方式执行

skView.ignoresSiblingOrder = NO;