硬件缩放与NativeActivity的OpenGL的表面(Hardware scaling the

2019-08-06 17:27发布

我们正在试图运行的设备,其本机屏幕尺寸为1080一个复杂的OpenGL应用程序。 不幸的是,该设备的3D芯片是不是真的在这个尺寸体面的帧速率不够好。

我们倒是更喜欢做的是渲染以720p(或更少),然后执行硬件加速像素提升到充满整个屏幕。

我知道Android的可与2D内容(使用ANativeWindow_lock()和朋友)自动执行此操作。 有没有什么办法,为3D内容自动做到这一点呢?

Answer 1:

对于GLSurfaceView,使用方法:

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

对于NativeActivity的使用:

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

在下面的博客帖子发现这一点:

Android开发者博客-使用了性能和效率的硬件缩放



文章来源: Hardware scaling the OpenGL surface with NativeActivity