iphone - 使用 swift 和 spritekit 调整场景大小

标签 iphone swift ios8 sprite-kit

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

我的问题是,当我在 iPhone 6 或 iPhone 6+ 上运行游戏时,场景/图像无法正确调整大小

game image

我在我的 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/

相关文章:

.net - MonoTouch/MonoDevelop Ad Hoc 构建失败,但项目包 ID 和配置文件匹配

ios - 使用 NSThread 生成线程时如何解决 "target does not implement selector"这个异常?

swift - 带有两个 UIBarButtons 的 NavigationBar 标题

ios - Swift:无法使用类型的参数列表调用 'append'

登录注册首页的IOS最佳实践

google-maps - HTML/Javascript 中的 native iPhone 应用程序?

ios - 接受函数的回调作为参数

ios - 该应用程序包含或继承自 payload/XXX.APP/XXX : UIKeyboard 中的非公共(public)类

ios - 如何使用代码在 Swift iOS8 中模拟按钮按下

ios - @media iphone 5 和 6 查询