我正在用 xcode 6.1 使用 swift 和 spriteKit 制作游戏。
我的问题是,当我在 iPhone 6 或 iPhone 6+ 上运行游戏时,场景/图像无法正确调整大小
我在我的 GameViewController
上有这个// Configure the view.
let skView = view as SKView
skView.multipleTouchEnabled = false
// Create and configure the scene.
scene = GameScene(size: skView.bounds.size)
scene.scaleMode = .AspectFill
// Present the scene.
skView.presentScene(scene)
这是在我的 GameScene
override init(size: CGSize) {
super.init(size: size)
anchorPoint = CGPoint(x: 0.5, y: 0.5)
let background = SKSpriteNode(imageNamed: "Background")
addChild(background)
}
我已经尝试了所有的缩放模式,但它们似乎不起作用。我希望有人能告诉我这是怎么回事
最佳答案
场景的大小正在设置为 View 中的大小
scene = GameScene(size: skView.bounds.size)
所以只有场景中的图像太小而无法填满 View 。
对您的 GameViewController 进行以下更改:
如果将场景的大小设置为背景图片的大小:
scene = GameScene(size: CGSize(width: backgroundImageWidth, height: backgroundImageHeight))
(用实际值替换 backgroundImageWidth 和 backgroundImageHeight) 然后设置场景的缩放模式以填充 View :
scene.scaleMode = .Fill
(这可能会使场景看起来被拉伸(stretch),您可以使用其他缩放模式)
关于iphone - 使用 swift 和 spritekit 调整场景大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26940307/