我正在迅速使用SpriteKit为游戏场景工作。我使用Universal images.xcassets作为背景图片。我的图像尺寸是2208x1536(px)放在iPhone 3x资产上。
它在iPhone上看起来不错但在iPad上我的背景不适合屏幕。
在iPhone上看起来不错。 http://i.stack.imgur.com/RJzNu.jpg
但是在iPad上背景不适合屏幕? i.stack.imgur.com/bbvSx.png (请添加http://)
这是我当前的图片资源。 i.stack.imgur.com/6CXUU.png (请添加http://)
然后,我尝试使用Device Specific images.xcassets,然后将相同的图像放在iPad 2x上 i.stack.imgur.com/n3jXZ.png (请添加http://)
现在,背景已经适合iPad上的屏幕,但是任何节点协调和字体大小都不正确。 i.stack.imgur.com/ylZ4V.jpg (请添加http://)
这是我项目的一些信息。
// scene size & scale mode
scene.size = skView.frame.size
scene.scaleMode = .AspectFill
// background color
self.backgroundColor = SKColor.brownColor()
// add background image
let bg = SKSpriteNode(imageNamed:"bg")
bg.position = CGPoint(x: CGRectGetMidX(self.frame), y: CGRectGetMidY(self.frame))
self.addChild(bg)
我的艺术品解析 i.stack.imgur.com/j9AAz.jpg (请添加http://)
如何解决此问题?
修改
我试图在我的项目中使用像素空间,现在这个问题已经解决了。
它在任何设备上看起来都很好并且协调正确。 http://i.stack.imgur.com/L1KoI.jpg
谢谢。
答案 0 :(得分:1)
对于场景的scaleMode而言,这似乎比资产问题更为严重。
Understanding SKScene scaleMode
编辑: 尝试使用通用资产@ 2x - @ 3x并使用边界代替框架使用此参考图像。这是iphone 6+ 和ipad Air
的结果