In webGL1 it was possible to test the availability of a GLSL extension from a fragment shader using (for instance) #ifdef GL_EXT_shader_texture_lod
.
It seems to no longer be working in webGL2 (=GLSL-ES3.0): Extensions are not the same, but for instance #ifdef GL_EXT_color_buffer_float
seems false despite https://webglreport.com/?v=2 tells that the extension is there.
Or what am I doing wrong ?
GLSL-ES3(webGL2): how to test extensions from fragment shader?
475 views Asked by Fabrice NEYRET At
1
There are 1 answers
Related Questions in GLSL
- Svg containers not positioning properly
- How do I create a teardrop in HTML?
- Get current rotation in degrees of group in snap.svg
- Add Specific width and height for a svg image
- SVG data image not working as a background-image in a pseudo element
- Scala.js: Selecting and manipulating generated SVG
- selecting and using textPath elements in Chrome
- HaxeFlixel, icon turns into a Black square
- Can this kind of SVG be simplified?
- SVG progressive line drawing animation
Related Questions in FRAGMENT-SHADER
- Svg containers not positioning properly
- How do I create a teardrop in HTML?
- Get current rotation in degrees of group in snap.svg
- Add Specific width and height for a svg image
- SVG data image not working as a background-image in a pseudo element
- Scala.js: Selecting and manipulating generated SVG
- selecting and using textPath elements in Chrome
- HaxeFlixel, icon turns into a Black square
- Can this kind of SVG be simplified?
- SVG progressive line drawing animation
Related Questions in GLSLES
- Svg containers not positioning properly
- How do I create a teardrop in HTML?
- Get current rotation in degrees of group in snap.svg
- Add Specific width and height for a svg image
- SVG data image not working as a background-image in a pseudo element
- Scala.js: Selecting and manipulating generated SVG
- selecting and using textPath elements in Chrome
- HaxeFlixel, icon turns into a Black square
- Can this kind of SVG be simplified?
- SVG progressive line drawing animation
Related Questions in WEBGL2
- Svg containers not positioning properly
- How do I create a teardrop in HTML?
- Get current rotation in degrees of group in snap.svg
- Add Specific width and height for a svg image
- SVG data image not working as a background-image in a pseudo element
- Scala.js: Selecting and manipulating generated SVG
- selecting and using textPath elements in Chrome
- HaxeFlixel, icon turns into a Black square
- Can this kind of SVG be simplified?
- SVG progressive line drawing animation
Related Questions in WEBGL-EXTENSIONS
- Svg containers not positioning properly
- How do I create a teardrop in HTML?
- Get current rotation in degrees of group in snap.svg
- Add Specific width and height for a svg image
- SVG data image not working as a background-image in a pseudo element
- Scala.js: Selecting and manipulating generated SVG
- selecting and using textPath elements in Chrome
- HaxeFlixel, icon turns into a Black square
- Can this kind of SVG be simplified?
- SVG progressive line drawing animation
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
It's up to the extension whether or not it adds a flag to GLSL
EXT_shader_texture_lod
is specifically an extension that effects GLSL. It's spec says it adds that macroEXT_color_buffer_float
is not an extension that affects GLSL. It's spec does not mention any GLSL macros. No change from WebGL1Those flags though are mostly nonsense in WebGL anyway. You can trivially do your own string manipulation
Or a thousand other ways to manipulate shader strings.
Here's another
etc...
Also since there never was a
GL_EXT_color_buffer_float
even in OpenGL there isn't much point in calling the macroGL_EXT_color_buffer_float
. In fact it would arguably be a bad idea because it would end up looking like an official specified macro even though it's not. Best to chose your own name that doesn't start withGL_
.Also consider that using
#ifdef
might not even be a good idea since you can just use string manipulation. For example