Android EGLConfig 没有属性
Android EGLConfig has no properties
我在 Android 上使用 eglChooseConfig 获取 EGLConfig 对象,如下所示:
...
int[] configSpec = new int[]
{
EGL10.EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
EGL10.EGL_NONE
};
if (!lEgl.eglChooseConfig(lDisplay, configSpec, configs, configs.length, num_config))
{
...
eglChooseConfig returns 19 个 EGLConfig 对象。
我想从这些对象中获取属性,例如颜色深度。
问题是 EGLConfig class 没有 getter 也没有 public 成员。
参见 EGLConfig documentation。
有人知道如何从 EGLConfig 对象获取颜色深度等属性吗?
我自己找到了解决方案。我不得不像这样使用 eglGetConfigAttrib:
int[] lValue = new int[1];
lEgl.eglGetConfigAttrib(lDisplay, configs[0], EGL10.EGL_ALPHA_SIZE , lValue);
Log.v("eglresult", "EGL_ALPHA_SIZE: " + lValue[0]);
我在 Android 上使用 eglChooseConfig 获取 EGLConfig 对象,如下所示:
...
int[] configSpec = new int[]
{
EGL10.EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
EGL10.EGL_NONE
};
if (!lEgl.eglChooseConfig(lDisplay, configSpec, configs, configs.length, num_config))
{
...
eglChooseConfig returns 19 个 EGLConfig 对象。
我想从这些对象中获取属性,例如颜色深度。
问题是 EGLConfig class 没有 getter 也没有 public 成员。 参见 EGLConfig documentation。
有人知道如何从 EGLConfig 对象获取颜色深度等属性吗?
我自己找到了解决方案。我不得不像这样使用 eglGetConfigAttrib:
int[] lValue = new int[1];
lEgl.eglGetConfigAttrib(lDisplay, configs[0], EGL10.EGL_ALPHA_SIZE , lValue);
Log.v("eglresult", "EGL_ALPHA_SIZE: " + lValue[0]);