0

解释情况:我有一个 LibGDX 游戏运行没有问题作为桌面项目......但是一旦我将应用程序安装到我的 Android 设备上,它只显示第一个屏幕......在这种情况下,它是一个显然不需要太多资源的菜单屏幕......纹理的分辨率不是2的幂,但我使用的是OpenGl2.0。

当我现在将屏幕更改为实际的游戏屏幕时,我的设备只是黑屏。此屏幕包含一个 Box2d 世界,其中包含许多对象、一个大纹理 (6500x877) 和一个动画。我的猜测是,我的处理器(Nvidia Tegra2)的能力存在问题。在查看 CPU 负载期间是否有机会调试游戏?我不能使用模拟器,因为这不适用于 LibGDX。

4

1 回答 1

1

使用 OpenGL Tracer 获取有关正在发生的事情的更多信息:http: //developer.android.com/tools/help/gltracer.html。另外:OpenGL调试

跟踪器工具要求您在最新的 Android 版本(4.1 或更高版本)上运行

您还可以Gdx.gl.glGetError()在代码中以编程方式偶尔调用,以查看是否有任何 OpenGL 命令触发了错误。请参阅何时应该调用 glGetError?

您可以使用以下命令查询 OpenGL 运行时支持的最大纹理尺寸

IntBuffer max = BufferUtils.newIntBuffer(16); // See http://lwjgl.org/forum/index.php?topic=1314.0;wap2
max.clear();
gl.glGetIntegerv(GL10.GL_MAX_TEXTURE_SIZE, max);
int maxTexDim = max.get(0);

在你的情况下,我怀疑你会得到 4096 或 2048 回来......

于 2013-07-08T15:41:24.633 回答