Reputation: 5936
If I run glGetString(GL_EXTENSIONS)
in my NDK code (C/C++), I get a list of 38 supported extensions. But if I access OpenGL ES 3.2 in Java and run GLES32.glGetString(GLES32.GL_EXTENSIONS)
, I get a list of 74 supported extensions.
I assume the problem is that my NDK application links the libGLESv3.so library, which doesn't provide any features beyond OpenGL ES 3.0. It would be nice if there was a libGLESv32.so library, but I can't find one.
Is there any way to access those extra extensions in an NDK application?
Upvotes: 0
Views: 1052
Reputation: 5936
It looks like glGetString(GL_EXTENSIONS)
doesn't return the full list of extensions.
To get the full list, you need to call glGetIntegerv
with GL_NUM_EXTENSIONS
. Then you can iterate through the extensions by calling glGetStringi
with GL_EXTENSIONS
.
Upvotes: 0
Reputation: 12219
There is no such thing as a GLESv32.so library (in principle there shouldn't even be a GLESv3.so); OpenGLES 3.x is designed to be backwards compatible with OpenGL ES 2.x, so all applications should link with GLESv2.so even for GLESv3 functionality.
Upvotes: -1