gpt4 book ai didi

ios - 使用 SpriteKit 为 iPhone X 调整屏幕大小

转载 作者:搜寻专家 更新时间:2023-10-31 23:07:24 27 4
gpt4 key购买 nike

因此,Stack Overflow 上有数十个问题涉及如何在 iPhone X 上正确拟合 SpriteKit 场景。但是,我找不到任何存在相同差距的问题。

我是否可以只为 iPhone X 调整屏幕大小?或者我是否必须创建另一个场景,只是为了让 iPhone X 适应屏幕?

这是我使用 .aspectFit 得到的结果: enter image description here

我想将该场景延伸到缺口下方和屏幕角曲线所在的上方。我看到很多非常适合的游戏,但还没有找到合适的解决方案。

注意:我无法使用 aspectFill,因为游戏的某些部分超出了视野。

任何链接或答案将不胜感激!

编辑

resizeFill 太大,一切都变大了

我已经尝试了所有 4 个调整屏幕大小的选项,但都没有奏效。有人有建议吗?

我觉得解决方案将以务实的方式完成,因为它需要与这些边界相关。

最佳答案

将此添加到您的代码中,它将为 iPhone X 和普通 iPhone 设置可玩游戏区域,然后使用 gameArea 常量来定义事物可以移动的距离。

//MARK: Playable Game Araa
let gameArea: CGRect

override init(size: CGSize) {
if UIDevice().userInterfaceIdiom == .phone && UIScreen.main.nativeBounds.height == 2436 {
//iPhone X
let maxAspectRatio: CGFloat = 19.5/9.0
let playableWidth = size.height / maxAspectRatio
let margin = (size.width - playableWidth) / 2
gameArea = CGRect(x: margin, y: 0, width: playableWidth, height: size.height)
} else {
let maxAspectRatio: CGFloat = 16.0/9.0
let playableWidth = size.height / maxAspectRatio
let margin = (size.width - playableWidth) / 2
gameArea = CGRect(x: margin, y: 0, width: playableWidth, height: size.height)
}

super.init(size: size)
}

关于ios - 使用 SpriteKit 为 iPhone X 调整屏幕大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49925034/

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