我正在尝试SKScene
根据游戏运行的设备调整位置。例如,由于 iPhone XS Max 的“一流”区域,我需要从SKScene
高度中减去该高度并相应地定位场景。
所以这就是我如何计算 akasafeAreaHeight
中的高度AppDelegate
并从场景高度 aka 中减去sceneHeight
:
safeAreaHeight = UIApplication.shared.statusBarFrame.size.height
sceneHeight -= safeAreaHeight
在GameViewController
我尝试重新定位 SKScene 如下所示:
if let view = self.view as! SKView? {
// Load the SKScene from 'MainMenuScene.sks'
if let scene = SKScene(fileNamed: "MainMenuScene") {
// Set the scale mode to scale to fit the window
scene.scaleMode = .aspectFit
scene.size.height = sceneHeight
scene.size.width = sceneWidth
scene.position.y -= safeAreaHeight
// Present the scene
view.presentScene(scene)
}
view.ignoresSiblingOrder = true
view.showsFPS = true
view.showsNodeCount = true
}
但是,我收到以下错误:
SKScene:设置 SKScene 的位置无效。
此外,我也尝试使用SKAction
移动位置SKScene
,然后收到以下错误:
SKScene:动画 SKScene 的位置没有效果。
感谢您的帮助。