2013-01-05 7 views
22

GoogleのOpenGL demo for Androidに問題があります。私はEclipseで設定しましたが、実行することはできません。問題なく構築されますが、開く直前に"java.lang.IllegalArgumentException: No config chosen"で停止します。私はGoogleの検索とスタックのスレッドを解決していない。Android OpenGLのデモ "No config selected"

私はここにリードだと思ったものを見つけた:OpenGL ES 2.0 Support for Android?

それはコマンドgLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0); を使用していますが、残念ながら、私はAndroid上でOpenGLのために新たなんだとそれをどこに置くかわからない...

ご協力いただければ幸いです。私はEclipse Junoを最新のAndroid SDKで実行しています。私はGPUハードウェアを有効にした4.2のゼリービーンエミュレータでこれをテストしています。

+0

可能重複します(http://のstackoverflow。 com/questions/13717470/opengl-es-2-0-support-for-android) –

答えて

49

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

+3

これを理解してくれてありがとう、確かにほとんどすべてのアンドロイドサンプルアプリがそんなに骨抜きにされているのかわかりません。はじめてSDKを学ぼうとする人には本当に傷つきます。 – thamster

+2

「スーパー」は省略できます。 – trungly

+0

最後に私は解決策を見つけました、ありがとうございました。なぜこれをやらなければならないのか知っていますか?なぜコードにはまだ入っていないのですか? – simtaxman

1

Androidスタジオで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 

} 
5

これは今かなり古いですが、これが行われる必要がある理由念の人々はまだ

....不思議に思っています
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 

・ホープ:[?Android向けのOpenGL ES 2.0のサポート] Dの

関連する問題