24

Android 用の Google の OpenGL デモで実際に問題が発生しています。Eclipse でセットアップしましたが、実行できません。問題なくビルドできますが、"java.lang.IllegalArgumentException: No config chosen"開く直前で停止します。私は解決策なしでGoogle検索とスタックスレッドを上下に動かしてきました。

ここでリードだと思っていたものを見つけました: OpenGL ES 2.0 Support for Android?

コマンドを使用しますgLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0); が、残念ながら、私はAndroidでOpenGLを初めて使用し、どこに置くべきかわかりません...

どんな助けでも大歓迎です。最新の Android SDK を使用して Eclipse Juno を実行しています。GPU ハードウェアが有効になっている 4.2 Jelly Bean エミュレーターでこれをテストしています。

4

3 に答える 3

50

解決策はsuper.setEGLConfigChooser(8 , 8, 8, 8, 16, 0);、行の直前に MyGLSurfaceView クラス内に配置することでしたsetRenderer(new MyGLRenderer());

于 2013-01-05T00:55:39.287 に答える
6

これは今ではかなり古いものですが、なぜこれを行う必要があるのか​​ 疑問に思っている人がいる場合に備えて....

setEGLConfigChooser(int redSize, int greenSize, int blueSize, int alphaSize, 
                    int depthSize, int stencilSize)

パラメータは、カラー ビットに割り当てるビット数です。

8 ビット = 255 16 ビット = 65535

したがって、以下の構成は基本的にこれを設定しています。

setEGLConfigChooser(8, 8, 8, 8, 16, 0);

r,g,b,a = 0-255,0-255,0-255,0-255

depth = 0-65535

stencil = 0

これで混乱が解消されることを願っています:D

于 2015-10-31T09:19:18.290 に答える
2

Android Studio で EGL セレクターを設定するための私のコードを参照してください。GLSurfaceView のコンストラクターを呼び出した直後に追加します。

コード:

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        GLSurfaceView view = new GLSurfaceView(this);

        //Chose EGL Config Here To Set Element Size For RGB data Alpha,  
        // Depth, Stencil, See The Documentation...
        view.setEGLConfigChooser(8, 8, 8, 8, 16, 0);

        view.setRenderer(new OpenGLRenderer());
        setContentView(view);

        //setContentView(R.layout.activity_main);
    }

    //....additional methods for activity

}
于 2015-01-24T04:55:25.140 に答える