C++ 如何在本机活动中创建OpenGL ES 2上下文?

C++ 如何在本机活动中创建OpenGL ES 2上下文?,c++,opengl-es,android-ndk,egl,C++,Opengl Es,Android Ndk,Egl,就我个人而言,我找不到任何好的OpenGLES2纯Android NDK示例。包含的本机活动示例项目构建了一个ES 1上下文。是否有任何示例程序演示纯C++中的ES 2上下文的创建?< p>创建OpenGL ES 2上下文应该与创建OpenGL ES 1大致相同。基于NDK中的“本机活动”示例,您只需将其添加到传递给eglChooseConfig的属性列表中: const EGLint attribs[] = { EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_B

就我个人而言,我找不到任何好的OpenGLES2纯Android NDK示例。包含的
本机活动
示例项目构建了一个ES 1上下文。是否有任何示例程序演示纯C++中的ES 2上下文的创建?

< p>创建OpenGL ES 2上下文应该与创建OpenGL ES 1大致相同。基于NDK中的“本机活动”示例,您只需将其添加到传递给
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);

具有讽刺意味的是,我在Raspberry Pi上的OpenGL ES 2教程中找到了解决方案。不过,谢谢你的明确回答。这确实是答案。