[英]GameScene SpriteKit does not fit iPhone X display
我一直在寻找和尝试我在互联网上找到的所有解决方案。 他们都没有像预期的那样工作。 我的游戏需要一个边框,如图所示。 它适用于iPhone 8和8 Plus。 在X上,我似乎无法找到填充它的正确方法而不会破坏我的游戏场景。 即使我使用resizeFill
或aspectFill
它aspectFill
切断我游戏区域的重要内容。 图像中的一个是aspectFit
但是给了我黑色边框,它看起来不太好并且没有利用更大的屏幕。 GameScene文件中的布局不符合iPhone X.如何使游戏针对所有这3种设备进行优化。 我知道如何使用约束和自动布局为故事板上的应用程序执行此操作,但我对SpriteKit和GameScenes不熟悉。 即使iPhone X上的黑色边框填满了边框的颜色,我也不介意。 但我不知道如何实现它,我不认为它是优化所有这3种设备的游戏的最佳实践。 预先感谢您的帮助。
我想你想要这样的东西👆
首先,您希望场景调整大小(更改大小和宽高比),以便与显示完美匹配。 所以打开GameViewController.swift
并设置
scene.scaleMode = .resizeFill
现在,您要创建一个与场景周边相匹配的矩形。 这很容易,打开你的场景并写下以下内容
class GameScene: SKScene {
override func didMove(to view: SKView) {
let rectangle = SKShapeNode(rect: self.frame)
rectangle.strokeColor = .green
rectangle.lineWidth = 20
addChild(rectangle)
}
}
正如您所看到的,我正在使用场景的相同帧创建一个矩形。 因此,您确定矩形将始终与场景的周长匹配(与显示匹配)。
而已。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.