2017-08-23 2 views
0

シーンの背景をGameScene.sksにしたいと思っています。私はTile Map Nodeを持っていますが、私はGameScene.swiftに背景を設定すると、画像は私のテクスチャ上にあります。私はそれをシーンの裏に置いておきたい。ここでSpriteKit zPosition背景

GameScene.swiftのコードです:ここで

import SpriteKit 

class GameScene: SKScene { 
    var background = SKSpriteNode(imageNamed: "BackGround")` 
    override func didMove (to view: SKView) { 
     background.zPosition = 1 
     background.position = CGPoint(x: frame.size.width/2, y: frame.size.height/2) 
     addChild(background) 
    } 
} 

はGameViewController.swiftのコードです:

import UIKit 
import SpriteKit 

class GameViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    if let view = self.view as! SKView? { 
     // Load the SKScene from 'GameScene.sks' 
     if let scene = SKScene(fileNamed: "GameScene") { 
      // Set the scale mode to scale to fit the window 
      scene.scaleMode = .aspectFill 
      // Present the scene 
      view.presentScene(scene) 
     } 
     view.ignoresSiblingOrder = true 

     view.showsFPS = true 
     view.showsNodeCount = true 
    } 
} 

override var prefersStatusBarHidden: Bool { 
    return true 
} 
+0

私はGameScene.sksで背景を作成できることを知っています。しかし、私はコード内にそれが欲しいので、私はバックグラウンドローリングのスピードを設定することができます。 –

答えて

0

は、シーン内の1以上のz位置していますか?その場合は、SKViewignoresSiblingOrderプロパティをfalseに設定してください。また、少なくともSKSceneSKNodeの文書を読むことをお勧めします。そして一般にSpriteKit documentation

+0

私はいくつかの情報を追加しました。私はSpriteKitで初心者です。私はどこに、どのようにそれを置く必要があるか私に説明していただけますか? –

+0

そして私はすべてのzポジションを設定しません。 –

+0

SpriteKitのノードのz位置によって、ノードがSpriteKitレンダリングループのレンダー順に位置することが決定されます。バックグラウンドノードの 'zPosition'を設定しているだけの場合は、それを他のノードの背後に置くためには負の値(-1)でなければなりません。 –