Android OpenGL演示“未选择配置”

我对谷歌的Android OpenGL演示有一个真正的问题。 我在Eclipse中设置它但无法执行它。 它构建没有问题,但在它打开之前停在"java.lang.IllegalArgumentException: No config chosen" 。 我一直在谷歌搜索和堆栈线程上下,没有解决方案。

我确实find了我认为的领先优势: OpenGL ES 2.0支持Android?

它使用命令gLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0); 但是,唉,我是Android上的新手OpenGL,不知道把它放在哪里……

任何帮助将不胜感激。 我正在使用最新的android sdk运行Eclipse Juno。 我正在使用启用GPU硬件的4.2 Jelly Bean模拟器上测试它。

解决方案就是放置super.setEGLConfigChooser(8 , 8, 8, 8, 16, 0);setRenderer(new MyGLRenderer());之前的MyGLSurfaceView类中setRenderer(new MyGLRenderer()); 线。

现在已经很老了,但万一人们还在想为什么要这样做……

 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

请参阅我的代码,了解如何使用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 }