Android的OpenGL的演示“没有配置选择”(Android OpenGL demo “No

2019-07-17 20:50发布

我在与谷歌的一个现实问题的OpenGL演示为Android 。 我把它在Eclipse中,但不能让它执行。 它建立,没有任何问题,但随后在停止"java.lang.IllegalArgumentException: No config chosen"打开右侧前。 我一直在向上和向下的谷歌搜索和堆栈线程无解。

我发现了我认为是一个领先的位置: Android的OpenGL ES 2.0的支持?

它使用一个命令gLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0); 但很可惜,我是新来的OpenGL Android和不知道在哪里把它...

任何帮助将不胜感激。 我运行Eclipse朱诺了最新的Android SDK。 我在4.2果冻豆仿真器GPU硬件启用测试此。

Answer 1:

该解决方案只是放置super.setEGLConfigChooser(8 , 8, 8, 8, 16, 0); 在之前的MyGLSurfaceView类直接在setRenderer(new MyGLRenderer()); 线。



Answer 2:

现在,这是很老,但以防万一人还在想为什么需要做....

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



Answer 3:

见我的代码,用于设置EGL选择器与Android工作室。 它添加你叫你的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

}


文章来源: Android OpenGL demo “No config chosen”