gpt4 book ai didi

ios - 将背景图像添加到 SpriteKit 项目

转载 作者:行者123 更新时间:2023-11-28 08:34:04 25 4
gpt4 key购买 nike

iPhone 6 和 6s 应该有 750 x 1334 分辨率 [1] , 自 iPhone 5 以来每部 iPhone 的屏幕比例都是 16:9 [2] .因此,为了让应用程序的背景图片完美契合,它的比例必须为 16:9。我正在使用 SpriteKit 进行一个项目,我希望游戏有一张墙纸,从一个边到另一个边覆盖背面。但是,当我在模拟器上运行该应用程序时,背景图像总是在右侧和左侧被裁剪。我什至尝试过各种比率和分辨率。这个项目背景的代码是:

    let background = SKSpriteNode(imageNamed: "backtImage")
background.size = self.size
background.position = CGPoint(x: self.size.width/2, y: self.size.height/2)
background.zPosition = 0
self.addChild(background)

我做错了什么?

最佳答案

这可能是因为您的 SKView 与您的 SKScene 尺寸不匹配。

来源:

@available(iOS 7.0, *)
public enum SKSceneScaleMode : Int {

case Fill /* Scale the SKScene to fill the entire SKView. */
case AspectFill /* Scale the SKScene to fill the SKView while preserving the scene's aspect ratio. Some cropping may occur if the view has a different aspect ratio. */
case AspectFit /* Scale the SKScene to fit within the SKView while preserving the scene's aspect ratio. Some letterboxing may occur if the view has a different aspect ratio. */
case ResizeFill /* Modify the SKScene's actual size to exactly match the SKView. */
}

您可以按如下方式更改您的代码:

override func viewDidLoad() {
super.viewDidLoad()

if let scene = GameScene(fileNamed:"GameScene") {
// Configure the view.
let skView = self.view as! SKView
...
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .ResizeFill // <- this is an example

skView.presentScene(scene)
}
}

关于ios - 将背景图像添加到 SpriteKit 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38273954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com