如何解决SKScene 应该是什么尺寸?
当我 don't specify a size for my SKScene 时,我得到一些奇怪的行为,其中节点要么不出现,要么全屏出现。
一种解决方法是使用 Apple 的入门代码,其中包含 Scene.sks
并将大小硬编码为类似:
sceneView.presentScene(SKScene(size: CGSize(width: 750,height: 1334)))
在我们拥有自动布局、不同屏幕尺寸、尺寸类别、旋转等的世界中,硬编码场景的宽度和高度似乎是不正确的。
指定 SKScene 大小以使其尊重并适应我设备的尺寸、旋转等的正确方法是什么?
例如,我最好能够省略大小:
sceneView.presentScene(SKScene()))
... 而是让自动布局为我调整场景大小。但是,正如链接的问题所示,这会导致场景无法正确显示。或者,如果不能选择自动布局,我应该重写哪些方法以确保我的场景始终正确实例化/更新?
我注意到当我选择不正确的尺寸(例如 200x200)时,它仍然显示节点,但将它们放大到更大。这让我相信无论我选择什么尺寸,它都会正确填充相机输出输出(即不会裁剪任何内容)。但是,如果我选择了错误的尺寸,则艺术品会被不正确地放大/缩小。因此,我现在想知道我是否真的应该根据设备的尺寸来确定尺寸,或者更确切地说是根据相机给我的东西(例如它的像素分辨率)。
解决方法
SpriteKit 场景大小可以这样设置:
let array1 = [1,2,3]
let array2 = [1,3,5]
var combined = zip(array1,array2).map(+)
let commonCount = combined.count
combined.append(contentsOf: array1.dropFirst(commonCount))
combined.append(contentsOf: array2.dropFirst(commonCount))
print(combined) // [2,4,6,5]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。