5

使用 NDK 编写 OpenGL ES 2.0 程序。我面临错误Called unimplemented OpenGL ES API

我的程序没有任何 OpenGL ES 1.x 调用。还启用了模拟器 GPU 支持。生成文件如下

/*Android.mk*/

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := NDKTestApp
LOCAL_SRC_FILES := firstTriangle.cpp
LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv2
LOCAL_STATIC_LIBRARIES := android_native_app_glue 

include $(BUILD_SHARED_LIBRARY)

$(call import-module,android/native_app_glue)

我没有在任何地方链接版本 1.x 库,但在日志中我仍然可以看到

loaded .../libGLESv1_CM_emulation.so
loaded .../libGLESv2_emulation.so

所以我认为问题是在版本 1 库中搜索函数,它不会很明显地在那里找到,错误也是如此。

那么如何停止与版本 1 库的链接,例如强制避免加载它?

上下文是使用创建的

const EGLint context_attribs[] = {
        EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE
};
.
.
.
context = eglCreateContext(display, config, NULL, context_attribs);
4

0 回答 0