Chen Chen
Chen Chen

Reputation: 37

Why OpenGL library exports extended symbols?

I'm going to develop a wrapper of OpenGL library in linux, libGL.so.1, installed from NVIDIA driver. I found there are about 3000 symbols which OpenGL library exports:

$ nm -D /usr/lib/x86_64-linux-gnu/libGL.so.1
...
0000000000047400 T glBeginConditionalRender
0000000000047420 T glBeginConditionalRenderNV
0000000000047440 T glBeginConditionalRenderNVX
0000000000047460 T glBeginFragmentShaderATI
0000000000047480 T glBeginOcclusionQueryNV
00000000000474a0 T glBeginPerfMonitorAMD
00000000000474c0 T glBeginPerfQueryINTEL
...

And most of them are extended symbols. It's not clear to me how to use these extended symbols.

In general, how to use these extension symbols? Directly calling or indrectly using such as via GetProcAddress()?

If these extended symbols will not be called directly, I don't need to wrap them.

I think this situation will also be suitable for those extended symbols of glX.

Upvotes: 0

Views: 43

Answers (0)

Related Questions