如何测量/量化 Corona SDK 游戏应用程序中的“呆滞”?

Posted

技术标签:

【中文标题】如何测量/量化 Corona SDK 游戏应用程序中的“呆滞”?【英文标题】:how to measure / quantify "sluggishness" in a Corona SDK game app? 【发布时间】:2013-09-30 00:09:12 【问题描述】:

如何衡量/量化 Corona SDK 游戏应用中的“迟缓”?

在我构建的基于 Corona SDK 的物理游戏(使用 Box2D)上,我正在寻找一些旧手机(例如 iPhone 4、三星 GT-I9000)的性能问题。它们可以工作,但有点迟钝,响应速度也不快。我已经尝试记录 FPS(每秒帧数)、内存和纹理内存,但是这些数字看起来还不错,似乎无助于量化缓慢。例如,帧速率没有低于默认值 30 FPS。

我是否需要在主游戏循环中添加时间戳,以查看它花费的时间。但是,如果帧速率没有下降,那么这是否意味着不应该存在问题,因为游戏正在设法在所需时间内完成游戏循环以将帧速率保持在所需的水平?

所以我最终会尝试弄清楚我所看到的是否“正常”,以及我是否可以现在发布(而不是花更多时间试图让游戏在旧手机上更流畅)

游戏的内存数据如下,我认为还可以:

- Model  / fps / memory / texture_memory
 - iPhone: 30, 1811kB, 9.6MB
 - iPhone5: 30, 1874kB, 34MB
 - iPad Retina, 30, 1800kb, 119MB

【问题讨论】:

【参考方案1】:

我建议使用Corona Profiler 之类的东西。它不是免费的(10 美元),但如果您经常使用 Corona,这笔钱花得值。

它完全按照您刚才的要求执行:它告诉您每个函数需要多长时间,以及使用了多少内存。 它指出我在没有意识到的情况下嵌套了几个循环,这对我有所帮助,这使函数所需的时间减少到以前的 15% 左右。我想你可以自己编写函数来执行此操作,但就我个人而言,我宁愿花 10 美元重新编写我的游戏。

【讨论】:

以上是关于如何测量/量化 Corona SDK 游戏应用程序中的“呆滞”?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法为我的 Corona SDK 游戏制作自定义图形? [复制]

将 Corona SDK 中的磁贴组合成一个单词以形成 Breakout 游戏网格?

如何使用 Corona SDK 在单个页面上加载超过 32 种声音

如何使用 corona sdk 检查我的应用程序之一是不是安装在 IOS 设备中

无法在使用我自己的密钥库(corona sdk)签名的 Android 上安装 .apk

如何在 Corona SDK 中绘制折线图