#167 EXT_direct_state_access detection is incorrect

Future
open
API (59)
1
2015-08-11
2011-07-21
Anonymous
No

The detection for EXT_direct_state_access requires entry points that depend on other extensions to be present. For example, it requires functions such as glGetNamedProgramLocalParameterIivEXT and the others added to NV_gpu_program4 to be supported. These functions are actually added to the NV_gpu_program4 extension and therefore are not expected to be present unless the implementation supports both EXT_direct_state_access and NV_gpu_program4. This causes detection to fail on AMD hardware which supports EXT_direct_state_access but not NV_gpu_program4. The following functions should not be part of the EXT_direct_state access detection mechanism:

glNamedProgramStringEXT
glNamedProgramLocalParameter4dEXT
glNamedProgramLocalParameter4dvEXT
glNamedProgramLocalParameter4fEXT
glNamedProgramLocalParameter4fvEXT
glGetNamedProgramLocalParameterdvEXT
glGetNamedProgramLocalParameterfvEXT
glGetNamedProgramivEXT
glGetNamedProgramStringEXT
glNamedProgramLocalParameters4fvEXT
glNamedProgramLocalParameterI4iEXT
glNamedProgramLocalParameterI4ivEXT
glNamedProgramLocalParametersI4ivEXT
glNamedProgramLocalParameterI4uiEXT
glNamedProgramLocalParameterI4uivEXT
glNamedProgramLocalParametersI4uivEXT
glGetNamedProgramLocalParameterIivEXT
glGetNamedProgramLocalParameterIuivEXT

These interactions are clearly documented at the end of the EXT_direct_state_access extension.

Discussion

  • Nigel Stewart

    Nigel Stewart - 2011-08-02

    Confirming this issue.

     
  • Anonymous - 2012-10-19

    Confirming. This problem still exists.

     
  • Michael Marcin

    Michael Marcin - 2013-04-26

    There were a few more functions related to double support as well.

     
  • Nigel Stewart

    Nigel Stewart - 2013-04-26

    Agreed, the intention is to make DSA work for AMD (at least) in the next release.

     
  • Nigel Stewart

    Nigel Stewart - 2013-04-26
    • assigned_to: Nigel Stewart
    • Group: --> 1.9.1
    • Priority: 8 --> 1
     
  • Nigel Stewart

    Nigel Stewart - 2013-07-22
    • Group: 1.9.1 --> 1.9.2
     
  • Nigel Stewart

    Nigel Stewart - 2013-07-22

    Bumping this to "1.9.2" category for GLEW 1.10.1 purposes.

     
  • Nigel Stewart

    Nigel Stewart - 2013-08-23
    • Group: 10.10.1 --> 1.10.2
     
  • Anonymous - 2014-02-18

    Just debuged down the reason why I got "no" DSA with glew and found that this entry points are missing in Catalyst 13.11beta9.5:

    glDisableClientStateiEXT
    glEnableClientStateiEXT
    glGetDoublei_vEXT
    glGetFloati_vEXT
    glGetNamedProgramLocalParameterIivEXT
    glGetNamedProgramLocalParameterIuivEXT
    glGetPointeri_vEXT
    glNamedProgramLocalParameterI4iEXT
    glNamedProgramLocalParameterI4ivEXT
    glNamedProgramLocalParameterI4uiEXT
    glNamedProgramLocalParameterI4uivEXT
    glNamedProgramLocalParametersI4ivEXT
    glNamedProgramLocalParametersI4uivEXT
    glNamedRenderbufferStorageMultisampleCoverageEXT

    I understand the ones that depend on NV extensions. But apperently AMD also does exclude the new naming of functions that exist two times with an old and a new naming. e.g. glDisableClientStateIndexedEXT and glDisableClientStateiEXT

     
  • Nigel Stewart

    Nigel Stewart - 2014-08-12
    • Group: 1.10.2 --> 1.11.2
     
  • Nigel Stewart

    Nigel Stewart - 2015-08-11
    • Group: 1.12.1 --> Future
     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks