0

According to those slides by nvidia (slide 24), there seems to be some kind of include directives in recent opengl / glsl.

According to the wiki, this does not seem true : "[...]. The most notable omission is #include."

So, who is right here ? If I should do this by myself or not is not the question, I just want precisions about what NVidia seemed to claim during this presentation.

Nicol Bolas
  • 449,505
  • 63
  • 781
  • 982
cmourglia
  • 2,423
  • 1
  • 17
  • 33
  • OpenGL itself is already old, i would not count on this features. Vulkan is much clearer here. – Felix K. Sep 14 '16 at 22:03
  • @FelixK.: ... huh? I'm not sure how that addresses what the OP said. Further, OpenGL is plenty clear on this matter. It's not OpenGL's fault that NVIDIA is misrepresenting things. – Nicol Bolas Sep 14 '16 at 22:05
  • 4
    @FelixK.: If you want to evangelize Vulkan, this is not the right place to do it. – Dietrich Epp Sep 14 '16 at 22:05

1 Answers1

4

This is a misrepresentation from NVIDIA about what's going on. For some reason, NVIDIA has decided to present extension-only functionality right alongside core functionality, without any statements about what parts are extension-only.

What this slide is referring to is ARB_shading_language_include, an OpenGL extension that has not be incorporated into any version of OpenGL. Indeed, if this database is accurate, then the only implementations of OpenGL that expose this extension are written by NVIDIA.

So if you use this feature, you're tying yourself to NVIDIA's hardware.

Nicol Bolas
  • 449,505
  • 63
  • 781
  • 982
  • I'm not sure how this is a misrepresentation -- *everything* in the presentation slide deck is an extension and not in core. They're very up-front about it. – Chris Dodd Sep 15 '16 at 02:43
  • @ChrisDodd: Here's a partial list of things that were core OpenGL functionality at the time those slides were made: texture storage, debug output, separate shader objects, explicit attribute/uniform/sampler/UBO/SSBO bindings, compute shaders, sampler objects, etc, and that was *just the first half* of the slides. Oh yes, there are companion extensions that expose those features too. But they exist in core OpenGL versions, not *just* as an extension. Unlike, for example, ARB_shading_language_include. So yes, it's a misrepresentation. – Nicol Bolas Sep 15 '16 at 03:50