【问题标题】:resizing scene with swift and spritekit使用 swift 和 spritekit 调整场景大小
【发布时间】:2015-01-12 10:52:54
【问题描述】:

我正在使用 swift 和 spriteKit 和 xcode 6.1 制作游戏。

我的问题是,当我在 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)
}

我已经尝试了所有的缩放模式,但它们似乎不起作用。希望有人能告诉我这是怎么回事

【问题讨论】:

  • 你有iPh6和iPh6+的启动图吗?

标签: iphone swift ios8 sprite-kit


【解决方案1】:

场景的大小被设置为视图的大小

scene = GameScene(size: skView.bounds.size)

所以只有场景中的图像太小而无法填满视图。

对您的 GameViewController 进行以下更改:

如果您将场景的大小设置为背景图像的大小:

scene = GameScene(size: CGSize(width: backgroundImageWidth, height: backgroundImageHeight))

(将 backgroundImageWidth 和 backgroundImageHeight 替换为实际值) 然后设置场景的缩放模式以填充视图:

scene.scaleMode = .Fill

(这可能会使场景看起来被拉伸,您可以使用其他缩放模式)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多