\r
import java.io.InputStream;\r
\r
+import javax.microedition.khronos.egl.EGL;\r
import javax.microedition.khronos.egl.EGL10;\r
import javax.microedition.khronos.egl.EGLConfig;\r
import javax.microedition.khronos.egl.EGLContext;\r
Gdx.gl10 = gl10;\r
Gdx.gl11 = gl11;\r
Gdx.gl20 = gl20;\r
+ \r
+ Gdx.app.log("AndroidGraphics", "OGL renderer: " + gl.glGetString(GL10.GL_RENDERER));\r
+ Gdx.app.log("AndroidGraphics", "OGL vendor: " + gl.glGetString(GL10.GL_VENDOR));\r
+ Gdx.app.log("AndroidGraphics", "OGL version: " + gl.glGetString(GL10.GL_VERSION));\r
+ Gdx.app.log("AndroidGraphics", "OGL extensions: " + gl.glGetString(GL10.GL_EXTENSIONS));\r
}\r
\r
@Override\r
public void onSurfaceCreated(javax.microedition.khronos.opengles.GL10 gl,\r
EGLConfig config) {\r
setupGL(gl);\r
-\r
+ logConfig(config);\r
updatePpi();\r
\r
Mesh.invalidateAllMeshes();\r
}\r
}\r
}\r
+ \r
+ private void logConfig(EGLConfig config) {\r
+ EGL10 egl = (EGL10)EGLContext.getEGL(); \r
+ EGLDisplay display = egl.eglGetDisplay(EGL10.EGL_DEFAULT_DISPLAY);\r
+ int r = getAttrib(egl, display, config, EGL10.EGL_RED_SIZE, 0);\r
+ int g = getAttrib(egl, display, config, EGL10.EGL_GREEN_SIZE, 0);\r
+ int b = getAttrib(egl, display, config, EGL10.EGL_BLUE_SIZE, 0);\r
+ int a = getAttrib(egl, display, config, EGL10.EGL_ALPHA_SIZE, 0);\r
+ int d = getAttrib(egl, display, config, EGL10.EGL_DEPTH_SIZE, 0);\r
+ int s = getAttrib(egl, display, config, EGL10.EGL_STENCIL_SIZE, 0);\r
+ \r
+ Gdx.app.log("AndroidGraphics", "framebuffer: (" + r + ", " + g + ", " + b + ", " + a + ")");\r
+ Gdx.app.log("AndroidGraphics", "depthbuffer: (" + d + ")");\r
+ Gdx.app.log("AndroidGraphics", "stencilbuffer: (" + s + ")");\r
+ }\r
+ \r
+ int[] value = new int[1];\r
+ private int getAttrib(EGL10 egl, EGLDisplay display, EGLConfig config, int attrib, int defValue ) {\r
+ if (egl.eglGetConfigAttrib(display, config, attrib, value)) {\r
+ return value[0];\r
+ }\r
+ return defValue;\r
+ }\r
\r
Object synch = new Object();\r
\r