Opened 6 years ago

Closed 6 years ago

#221 closed feature request (Fixed)

Cannot use GLSL shaders in XQuartz

Reported by: tom@… Owned by: gstaplin@…
Priority: Nice to Have Milestone: 2.3.3
Component: xserver Version: 2.3.1 (xserver-1.4.2-apple17)
Keywords: Cc:

Description

glxinfo shows that the following extensions are supported:

GL_ARB_shader_objects
GL_ARB_vertex_shader
GL_ARB_fragment_shader

but it is not possible to get the function pointers of the shader functions.

e.g.: glXGetProcAddress((const GLubyte*)"glCreateProgramObjectARB") returns NULL

(same for glCreateShaderObjectARB, glShaderSourceARB, glCompileShaderARB, glAttachObjectARB, glLinkProgramARB, etc.)

This is using both XQuartz 2.3.1 and 2.3.2_rc4.

Change History (4)

comment:1 Changed 6 years ago by jeremyhu@…

  • Milestone set to OpenGL.framework DRI
  • Owner changed from jeremyhu@… to gstaplin@…
  • Version set to 2.3.1 (xserver-1.4)

comment:2 Changed 6 years ago by gstaplin@…

This is a bug in the old libGL. It's only able to provide function pointers for the known glapi. In this case the symbol should come from the Mac OpenGL framework, and not the glapi code in the X11 libGL. I can work around it, if needed in the old libGL. In the new libGL (available as part of the 2.4.0 alphas) it has been resolved by using dlsym(). In addition the new libGL should have the glCreateProgramObjectARB and related ARB extensions builtin.

comment:3 Changed 6 years ago by jeremyhu@…

Tom, can you try 2.4.0_alpha2: http://xquartz.macosforge.org/downloads

comment:4 Changed 6 years ago by jeremyhu@…

  • Milestone changed from OpenGL.framework DRI to 2.3.3
  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.