Xcode 8 beta 4 で Sprite Kit Level editor を使用してユニバーサル ゲームを開発しています。
レベル エディタでの私のシーンは 750x3334 です。私のシーンには背景画像があり、背景画像はシーンのサイズに合わせて調整されています。
シーンのアンカー ポイント = (0,1) 左上
背景のアンカー ポイント = (0,1) 左上。
シーン内にカメラが必要です。
スケール (1,1) で SKCameraNode を設定しました。カメラの位置はシーンの中心です。
シーンを作成するには:
if let scene = GKScene(fileNamed: "GameScene") {
if let sceneNode = scene.rootNode as! GameScene? {
// Copy gameplay related content over to the scene
sceneNode.entities = scene.entities
sceneNode.graphs = scene.graphs
sceneNode.scaleMode = .aspectFill
if let view = self.view as! SKView? {
view.presentScene(sceneNode)
view.ignoresSiblingOrder = true
view.showsFPS = true
view.showsNodeCount = true
}
}
}
ゲームの起動時に、背景の上部がデバイスの上端と同じになるようにカメラを設定する必要があります。
それを行うには:
override func sceneDidLoad() {
camera?.position.y = -UIScreen.main.nativeBounds.size.height/2
}
iPhone 6の場合、完全に機能します。iPhone 5、6+ の場合、上端に空白の領域 (シーン外) があります。
だから多分私の論理は間違っている...

