在 Corona SDK 中,可以使用动态图像分辨率,修改 config.lua 并添加带有相应后缀的图像,为不同的设备设置不同的分辨率。虽然这个系统适用于需要支持少量分辨率的 iOS,但 Android 有许多需要支持的分辨率,并且在更高分辨率的设备上缩放时,较低分辨率的图形看起来很模糊。
是否可以让 Corona SDK 在其动态图像分辨率系统中首先选择更高分辨率的图像,以确保 Android 用户不会得到一个模糊的应用程序?我知道节省内存不是默认行为,但我的目标是更高端的设备。
首先,不要这样做(首先加载更高分辨率),因为某些设备无法处理它(不是因为内存不足,而是因为 GPU 容量不足来处理大图像),你会遇到一些讨厌的问题。
您需要做的是更改高分辨率图形的阈值,而不是使用默认值。
这是我的 config.lua 相关部分,所以你可以明白我在说什么
content = {
width = 307,
height = 512,
scale = "letterBox",
fps = 60,
imageSuffix = {
["@2"] = 1.42857143, -- note I am not using 2 here
["@4"] = 4,
},
我选择 1.42 的原因是我发现这个数字可以让大多数 Android 手机加载 @2 图像而不是 @1 而不会遇到内存或 GPU 问题。