Open nylki opened 6 years ago
With Safari enabling WebGL2 by default on new versions, this becomes more relevant.
How hard would it be to implement this and @evanw would you be open to a PR?
The number of syntax changes with version 300 es
isn't huge.
Most changes are:
ivec4
, ivec3
, ivec2
which are always flat
when passed from vertex shader -> fragment shaderflat
and smooth
keywords. smooth
is defaultvarying
-> in
or out
gl_FragColor
is now just the out
variable in a fragment shadersampler2DArray
, sampler3DArray
data typestexture2D
-> texture
and has several different type definitionsIdeally, it would be possible to output both GLSL ES 300 shaders and GLSL ES 100 shaders, so long as WebGL2-only features aren't used (such as sampler2DArray
)
Now that Safari with WebGL2 enabled by default has shipped, is there any interest to support this in glslx @evanw ?
No I don't have any interest in this right now, sorry. I'm not using this library at the moment and I also have no need for WebGL2 features myself.
Thank you for taking the time to respond, I somehow thought Figma would use this library 😅
Figma does use it, we just don’t use WebGL2 since Figma needs to work everywhere and we could do without it.
Any update on this? Nowadays many bigger libraries have GLSL1 deprecated
@evanw Any updates on this? I like this library and would contribute, but it uses a custom programming language I have no experience with.
At the moment only glsl
version 100
appears to compile correctly. webgl2 uses glsl withversion 300 es
, which does not compile with glslx.Here is a fragment shader example: