我正在开发一个在 Android 上使用 OpenGL ES2 的小游戏。
该游戏在许多设备上以 60FPS 的速度运行,目前只有一个设备:Wiko Highway 4G(配备 Tegra 4i 处理器的强大智能手机)。
所以,我下载了“NVidia Tegra Android Development Pack”来寻找瓶颈。这些工具告诉我,我的游戏在处理器上占用了大约 40%,所以我不明白为什么帧率这么低(20-25 FPS)。
通过一些测试,我看到我有 20FPS。我尝试过使用较小的场景(一个没有纹理或效果的盒子):结果相同。
终于,两天后我有了一点想法,但我不明白如何解决它:当物体很远时,帧率还可以,当相机靠近时,帧率变慢。所以,我认为屏幕上绘制的像素数是有问题的(他的分辨率是 1920×1080)。
问题应该来自哪里?我已经在这个问题上失去了三天:/
我在用着:
- 安卓 NDK R10D
- OpenGL ES2
- 自定义引擎
- 我尝试过以下设备:Nexus 4 (ARM)、iPad 2 (PowerVR)、Nexus 7 (ARM)、iPhone 6 (PowerVR)、Samsung Galaxy S2(以及 Wiko 高速公路 4G,唯一一款帧速率较慢的设备,以及我认为的最新设备)