0

我们正在尝试在原生屏幕尺寸为 1080p 的设备上运行复杂的 OpenGL 应用程序。不幸的是,该设备的 3D 芯片组对于这种尺寸的体面帧速率来说还不够好。

我们更喜欢做的是 720p(或更低)的渲染,然后进行硬件加速放大以填满屏幕。

我知道 Android 可以使用 2D 内容自动执行此操作(使用 ANativeWindow_lock() 和朋友)。有没有办法自动为 3D 内容执行此操作?

4

1 回答 1

1

对于 GLSurfaceView,使用:

surfaceView = new GLSurfaceView(this);
surfaceView.getHolder().setFixedSize(1280, 720);

对于 NativeActivity,使用:

int32_t ret = ANativeWindow_setBuffersGeometry(window, 1280, 720, 0);

在以下博客文章中发现了这一点:

Android 开发者博客 - 使用硬件缩放器提高性能和效率

于 2014-03-04T10:25:23.287 回答