I'm having a real problem with the Google's OpenGL demo for Android. I set it up in Eclipse but can't get it to execute. It builds with no problems, but then stops at "java.lang.IllegalArgumentException: No config chosen"
right before it opens. I've been up and down Google searches and Stack threads with no solution.
I did find what I thought was a lead here: OpenGL ES 2.0 Support for Android?
It uses a command gLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0);
but alas, I'm new to OpenGL on android and don't know where to put it...
Any help would be greatly appreciated. I'm running Eclipse Juno with the latest android sdk. I'm testing this on a 4.2 Jelly Bean emulator with GPU hardware enabled.
The solution was just to place super.setEGLConfigChooser(8 , 8, 8, 8, 16, 0);
inside the MyGLSurfaceView class right before the setRenderer(new MyGLRenderer());
line.
This is quite old now, but just in case people are still wondering why this needs to be done....
setEGLConfigChooser(int redSize, int greenSize, int blueSize, int alphaSize,
int depthSize, int stencilSize)
The parameters are the number of bits you assign to the color bits
8 bits = 255
16 bits = 65535
So the below configuration is basically setting this:
setEGLConfigChooser(8, 8, 8, 8, 16, 0);
r,g,b,a = 0-255,0-255,0-255,0-255
depth = 0-65535
stencil = 0
Hope this clears up any confusion :D
See my code for setting EGL chooser with Android Studio. Add it right after you call the constructor for your GLSurfaceView:
Code:
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
}