我正在尝试将VertexArray与Android NDK一起用于已编译好的项目并使用其他Open GL ES调用。 出于这个问题的目的,让我们单独讨论一下'glGenVertexArrays'。
我在gl2ext.h中找到了以下定义:
GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
它定义在GL_GLEXT_PROTOTYPES定义的后面。所以我定义并使用它。它编译得很好,但我得到链接错误:未定义的引用,所以它似乎从lib文件中丢失...
那么,我尝试在gl2ext.h中使用下面的typedef:
typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
像这样:
PFNGLGENVERTEXARRAYSOESPROC glGenVertexArrays;
glGenVertexArrays = (PFNGLGENVERTEXARRAYSOESPROC) eglGetProcAddress("glGenVertexArraysOES");
和......没有,返回NULL。
我也尝试“glGenVertexArrays”......没有,仍然返回NULL
任何想法将不胜感激。谢谢。
答案 0 :(得分:1)
您正在尝试可能支持也可能不支持的OpenGL ES Extensions。
http://www.khronos.org/opengles/documentation/opengles1_0/html/glIntro.html
仅仅因为它在标准标题中并不意味着Android或任何特定实现实际上具有该API。