10

在我的一生中,我找不到任何适用于 OpenGL ES 2 的纯 Android NDK 示例。包含的native-activity示例项目构建了一个 ES 1 上下文。是否有任何示例程序演示了在纯 C++ 中创建 ES 2 上下文?

4

1 回答 1

9

创建 OpenGL ES 2 上下文应该与创建 OpenGL ES 1 大致相同。基于 NDK 中的“native-activity”示例,您只需将其添加到传递给的属性列表中eglChooseConfig

const EGLint attribs[] =
{
    EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
    ...
    EGL_NONE
};

这应该确保您的配置与 ES2 兼容。

然后将此属性列表传递给eglCreateContext

EGLint AttribList[] = 
{
    EGL_CONTEXT_CLIENT_VERSION, 2,
    EGL_NONE
};

用这样的电话:

context = eglCreateContext(display, config, NULL, AttribList);
于 2012-07-13T23:13:41.777 回答