【问题标题】:different screen sizes with corona sdk使用 corona sdk 的不同屏幕尺寸
【发布时间】:2014-07-28 20:56:50
【问题描述】:

我正在使用 corona sdk 制作我的第一个 iphone 游戏,并希望它能够在尽可能多的设备(手机 + 平板电脑)上运行。但是我不确定如何处理不同的屏幕尺寸和分辨率。我使用电晕模拟器为 iPhone 5 开发了我的游戏,它在该设备上运行良好。当我在 iPhone 4 等低分辨率设备上尝试时,我在每侧得到 2 个黑色矩形。我尝试创建 2 个不同分辨率的不同背景,并将其添加到我的 config.lua 中:

imageSuffix = {
       ["@2x"] = 2
}

但这似乎并没有改变任何东西......我不确定我应该在 config.lua 文件的内容中设置什么高度和宽度,以及我应该为背景设置什么高度和宽度。如果这些问题很愚蠢,我很抱歉,我才刚刚开始。 提前致谢!

【问题讨论】:

  • 这个名字是个诅咒

标签: lua size screen coronasdk resolution


【解决方案1】:

听起来您需要全面了解配置文件和动态缩放。

这个问题有点宽泛,所以我建议你阅读这篇关于"the ultimate config/modernizing the config" 的文章。

有些屏幕更宽,而另一些则更窄。如果我们采取 分辨率超出等式,更容易可视化屏幕。 Corona 可以很容易地从图片中提取分辨率 动态缩放。使用 Dynamic Sc​​aling,您可以使用一组通用的 屏幕坐标和 Corona 将自动缩放文本和 不同分辨率屏幕的图形。它可以向上扩展或 向下取决于您的起点。也可以代替 需要放大时更高分辨率的图像。这就是全部 由项目文件夹中名为 config.lua 的 Lua 文件管理。

由于可用的分辨率差异很大,因此使用 每个设备的比例相同。如果你在 iPhone 上没关系 320×480 的 3GS 或 1536×2048 的 Retina iPad,位置 (0,0) 代表左上角和 (320,480),垂直纵向 模式,是右下角。屏幕中心为 (160,240)。 在这种情况下,每个点都是低分辨率设备上的一个像素 像 3GS,其原生屏幕分辨率为 320×480,而 在 Retina iPad 上,每个点都是四个像素。不要担心数学 — Corona 会为您处理。

来源:http://coronalabs.com/blog/2012/12/04/the-ultimate-config-lua-file/

这会创建一个充分利用动态缩放和图像缩放的配置文件。

local aspectRatio = display.pixelHeight / display.pixelWidth
application = {
   content = {
      width = aspectRatio > 1.5 and 320 or math.ceil( 480 / aspectRatio ),
      height = aspectRatio < 1.5 and 480 or math.ceil( 320 * aspectRatio ),
      scale = "letterBox",
      fps = 30,

      imageSuffix = {
         ["@2"] = 1.8,
         ["@4"] = 3.6,
      },
   },
}

【讨论】:

  • 谢谢!你对我帮助很大!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-28
  • 2015-11-18
  • 1970-01-01
  • 2012-01-27
  • 1970-01-01
  • 2012-05-23
  • 1970-01-01
相关资源
最近更新 更多