游戏开发:优化场景布局与添加瓦片地图
1. 手动添加协议方法
在开发过程中,我们可以选择手动添加协议方法,而非让 Xcode 自动添加,这样能更好地控制代码在文件中的位置。为了让代码组织更合理,在 didMove(to:) 方法下方添加如下协议方法:
func didChangeLayout() {
}
这个空方法可以清除错误,接下来我们要解决两个问题:一是在设备旋转时调整玩家节点的大小,二是确保屏幕上的控件在不同设备方向下都能正常显示。
2. 调整玩家节点大小
在设备旋转时,玩家精灵的大小可能会出现问题。我们可以利用之前学过的相机视口知识来解决这个问题。在 GameScene.swift 文件中,向 didChangeLayout() 方法添加以下代码:
let w = view?.bounds.size.width ?? 1024
let h = view?.bounds.size.height ?? 1336
if h >= w { // portrait, which matches the design
camera?.setScale(1.0)
} else {
camera?.setScale(1.25) // helps to keep relative size
// larger numbers results in "smaller" sce
超级会员免费看
订阅专栏 解锁全文
25

被折叠的 条评论
为什么被折叠?



