0

Android OS でのゲームでは、主に ndk を使用してゲームと薄い Java ラッパーを作成し、gles 2.0 ハードウェアを搭載したすべてのデバイスをサポートできるようにしています。

私たちの実装は非常に標準的で、GLSurfaceView のオーバーライドを使用しています。アプリが一時停止または破棄されます。

gl コンテキストが再作成されると (再開時 - onSurfaceChanged())、情報をゲームに戻し、すべての gl リソースを再読み込みします。この種の問題を抱えていないかなりの数の 3D ゲーム (Gun Bros など) も、リソースをリロードしないようです (すべてのメモリがあり、すぐにロードし直さない限り)。

なぜこれが起こっているのかについての情報はありますか?

4

1 に答える 1

0

単なるアイデアですが、destroyContext() で glReadPixels などを使用して画面をダンプし、onSurfaceChanged() で最初に行うことは、それをアップロードして描画することであり、最初の onDrawFrame の前に有効な画像をユーザーに表示します。

于 2011-08-12T05:50:07.800 に答える