繁体   English   中英

GameScene SpriteKit不适合iPhone X显示器

[英]GameScene SpriteKit does not fit iPhone X display

我一直在寻找和尝试我在互联网上找到的所有解决方案。 他们都没有像预期的那样工作。 我的游戏需要一个边框,如图所示。 它适用于iPhone 8和8 Plus。 在X上,我似乎无法找到填充它的正确方法而不会破坏我的游戏场景。 即使我使用resizeFillaspectFillaspectFill切断我游戏区域的重要内容。 图像中的一个是aspectFit但是给了我黑色边框,它看起来不太好并且没有利用更大的屏幕。 GameScene文件中的布局不符合iPhone X.如何使游戏针对所有这3种设备进行优化。 我知道如何使用约束和自动布局为故事板上的应用程序执行此操作,但我对SpriteKit和GameScenes不熟悉。 即使iPhone X上的黑色边框填满了边框的颜色,我也不介意。 但我不知道如何实现它,我不认为它是优化所有这3种设备的游戏的最佳实践。 预先感谢您的帮助。 iPhone X,8和8 Plus

在此输入图像描述

我想你想要这样的东西👆

1.可调整大小的场景

首先,您希望场景调整大小(更改大小和宽高比),以便与显示完美匹配。 所以打开GameViewController.swift并设置

scene.scaleMode = .resizeFill

2.可调整大小的矩形

现在,您要创建一个与场景周边相匹配的矩形。 这很容易,打开你的场景并写下以下内容

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM