我对快速编程比较陌生。我已经创建了一个我没有使用SpriteKit的应用程序,我会通过将图像缩小到屏幕宽度和高度的倍数来调整大多数视图。不确定这是否是最好的策略,但它有效,我能够构建一个在所有设备上看起来都不错的应用程序。
使用spritekit和scene.sks文件,我没有像我之前那样选择自动布局来调整我的精灵的大小。关于在线通用应用程序的内容并不多,所以我很难找到解决方案。
我的问题是如何调整对象大小并确保我的场景在不同设备上看起来相同?
如果你有一个很好的例子可以解释这将是非常有帮助的。谢谢!
答案 0 :(得分:2)
我们在SpriteKt中通常做的是给SKScene一个固定的大小,让SpriteKit在不同的设备上为你做缩放。
所以基本上我们有2种方法可以正确地完成它
1)将场景大小设置为iPad(例如1024x768 -landscape,768x1024 - portrait)。这是Xcode 7中的默认设置。
你通常只是在iPad上的顶部/底部(风景)或左/右(人像)上显示/显示一些额外的背景,这些背景会在iPhone上被裁剪。
iPhone上的iPad /裁剪更多游戏的例子:
Altos Adventure,Leos Fortune,Limbo,The Line Zen,Modern Combat 5.
2) Apple将xCode 8中的默认场景大小更改为iPhone 6/7(750 * 1334-Portait,1337 * 750-Landscape)。此设置将在iPad上裁剪您的游戏。
在iPad上显示较少的游戏示例:
Lumino City,机器人独角兽攻击
在这两个选项之间进行选择取决于您,并取决于您正在制作的游戏。我通常更喜欢使用选项1并在iPad上显示更多背景。
无论场景大小比例模式通常最好保留默认设置.aspectFill。
您可以使用通用资产广告位和/或设备特定图片。这样,您将在所有设备上获得一致的体验
Spritekit scale full game to iPad
How to make SKScene have fixed width?
希望这有帮助