Opengl es 如何在程序中使用libGLESv2.so

Opengl es 如何在程序中使用libGLESv2.so,opengl-es,dynamic-linking,glx,Opengl Es,Dynamic Linking,Glx,我习惯于在大多数Linux发行版上使用libGL.so链接。mesa的实施或NVIDIA的实施。然而,我真的想把自己限制在OpenGLES2.X功能上,所以我尝试链接并使用libGLESv2.so。但是,我发现libGLESv2.so动态部分中没有glX函数: nm --dynamic /usr/lib64/nvidia/libGLESv2.so | grep glX 同时尝试链接agains libGLESv2.so会导致对glX函数的未定义引用 这就引出了我的问题。在对libGLESv2.

我习惯于在大多数Linux发行版上使用libGL.so链接。mesa的实施或NVIDIA的实施。然而,我真的想把自己限制在OpenGLES2.X功能上,所以我尝试链接并使用libGLESv2.so。但是,我发现libGLESv2.so动态部分中没有glX函数:

nm --dynamic /usr/lib64/nvidia/libGLESv2.so | grep glX
同时尝试链接agains libGLESv2.so会导致对glX函数的未定义引用


这就引出了我的问题。在对libGLESv2.so进行动态链接时,“GetProcAddress”的正确方法是什么?另外,如何在没有glX的情况下构建适当的上下文?

我不确定这对您来说有多容易理解,以及与您的应用程序有多相关,但在pi3d中,我们使用libEGL.so(或windows上ANGLE的libEGL.dll)获取绘图上下文

在此处可以找到并加载动态库

这就是创建曲面并将其附加到GLESv2函数的地方