如何为 Android SurfaceView 找到最佳的 PixelFormat

2023-11-30

我发现更改 SurfaceView 中的像素格式对帧速率有很大影响。但是,我似乎无法找到一种方法来根据每个设备选择最佳格式。

Example:

@Override
public void surfaceCreated(final SurfaceHolder holder) {
    //This line seems to fix speed issue with his res devices
    holder.setFormat(PixelFormat.RGBA_8888);
    androidGame.setSurfaceHolder(holder);
}

这导致我的游戏在 Galaxy Nexus (ICS 4.0) 上运行得更快,但在 Motorola Xoom (3.2.1) 上运行得很慢。

如果我更改为 PixelFormat.OPAQUE,情况就会相反。 Nexus 很慢,而 Xoom 现在很快。所以我需要能够确定每个设备的最佳格式。我尝试过使用 getWindow().getAttributes().format 但这总是返回 -1 (不透明)。


我在 2012 年 Google IO 大会上于办公时间与 Romain Guy 进行了交谈。不幸的是,没有合理的方法来检测要使用的最佳像素格式。您必须在每个设备上运行基准测试才能找到其最佳格式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为 Android SurfaceView 找到最佳的 PixelFormat 的相关文章

随机推荐