我正在关注SpriteKit的教程,当我将背景图像添加到场景时,图像不会填满整个场景(有边距)。
该项目是一个通用项目,我正在使用大小类(当我关闭它时效果相同)。
我是Swift和SpriteKit的新手,所以也许我错过了一些东西。这是我的代码(来自一个全新的项目):
override func didMoveToView(view: SKView) {
/* Setup your scene here */
self.anchorPoint = CGPointMake(0.5, 0.5)
let background = SKSpriteNode(imageNamed: "Background")
background.position = CGPointMake(0, 0)
background.size = CGSizeMake(self.view.bounds.size.width, self.view.bounds.size.height)
self.addChild(background)
}
这是截图:
我添加了位置和大小代码以确保。另外,frame.size显示(1024,768)但bounds.size显示正确的(640,1136)。任何帮助将不胜感激!
答案 0 :(得分:1)
您会发现在ViewController.swift中,当前的缩放模式为.AspectFill
,有时可以完全找到使用但在您的情况下,您需要将其更改为
scene.scaleMode = .ResizeFill
这将确保尺寸完全适合任何尺寸的屏幕。然后,您使用self.view.frame.size
代替self.view.bounds.size
,您就可以开始了!询问您是否需要更多信息,尽管文档很好地解释了scaleModes: