gpt4 book ai didi

java - libGDX 奇怪的 FPS 下降和调试

转载 作者:太空宇宙 更新时间:2023-11-04 13:27:06 25 4
gpt4 key购买 nike

我正在使用 libGDX 在 Android 中制作游戏,并使用游戏引擎的以下功能:

  • 声音、音乐
  • TextureAtlas(该对象总数:2)
  • 图 block map
  • 简单的手势检测
  • 很好地使用 AssetsManager,在使用后处理对象。

有时我会遇到一些奇怪的 FPS 下降的情况。FPS 通常在 59 左右,然后第二次下降到 39-42 左右,此时游戏会有点“卡住”,因此两帧之间的停顿很大。

我不知道到底是什么问题以及如何找到问题的根源,因为我无法用我的调试技巧来掩盖它。

  1. 我检查了内存分配,GC acitivity=> 没问题,此时 GC 尚未激活。
  2. 我尝试过方法跟踪,但它对于跟踪 bug 没有什么用处,因为仅跟踪会占用大量资源,而且启动时 FPS 约为 10。
  3. 我检查了我的代码并尝试找出问题,但每一帧我都做同样的事情,FPS 没有理由下降。

我不会在帖子中发布一些代码,因为我真的不知道哪部分代码会出现问题。

我问你:你对libGDX有没有一些经验,你如何解决它,你知道我如何使用调试工具捕获错误。

感谢您的建议。

最佳答案

声音和 Android 存在已知的小问题,尤其是在三星设备上(这可能是您的模拟器)。

我怀疑这就是导致问题的原因,如果您在播放多个并发声音时检查帧速率,它会像您所描述的那样略有下降。

尽可能地克服这个问题的方法是尽可能降低声音/音乐文件的采样率,并将音乐存储为 .mp3,将声音存储为 .wav。

原因是声音作为 wav 文件会跳过不必要的解码,当声音在内存中混合时,.mp3 会发生这种情况。

希望这有帮助。

关于java - libGDX 奇怪的 FPS 下降和调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32538894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com