1

我前段时间开始使用 LibGDX,我正在制作一个测试项目来习惯这个库。我创建了一些图像并将它们添加到 assets 文件夹中,并Texture使用AssetManager. 一切正常,我有 60 FPS。

我想以一种更有效的方式工作,所以我使用 TexturePacker 工具将我的所有图像打包到一个图集中。我再次使用加载图集AssetManager并开始使用TextureRegions 而不是Textures。

在此更改之后,我开始注意到 FPS 从 60 突然下降到 50 甚至 30 一次。我尝试将像素格式更改为 RGBA4444,我确保 min 和 mag 过滤器都设置为Nearest,但我仍然看到那些烦人的丢帧。

我在游戏本身并没有做任何沉重的事情,目前是一些演员在一个舞台上。我得到了一些 MoveActions 和 Animation,但还没有什么特别的。

有没有人知道什么会导致 FPS 下降?

谢谢

4

1 回答 1

1

谢谢大家的意见,我已经解决了这个问题。我调用AssetManager.update了渲染,当它完成加载时,我将所有区域加载到静态字段中以便于访问。

问题是即使在我填充了所有字段之后,每次都会调用它。我想所有重复的findRegion电话都会打嗝。所以基本上问题是渲染循环中的处理过多。

希望它会帮助某人。

于 2014-10-02T20:45:52.643 回答