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 に答える