changed line 27 -29 to
#ifdef GL_ES
precision highp float;
#endif
I just wanted to touch base on this
#ifdef GL_ESthis is a test to see if you are running
GL_ES , Which is a version of OpenGL/ES for Embeded Systems such as Phones, tablets, Web Browsers
It says If GL_ES is detected, then set the Precision to highp
Since iStripper is run on the desktop,
it probably is not used.
And the Default header is used in it's place.
It's better to place your Definition as Part of the Header in the shader.
and Not worry about
#ifdef GL_ESsince the Shader is not being run on multiple devices, that may or may not be using the embedded version of Open GL /ES
Also, per the standard
GLSL uses all highp, it ignores any lowp, mediump, highp qualifiers.
Precision qualifiersNote: Precision qualifiers in GLSL are supported for compatibility with OpenGL ES. They use the same syntax as ES's qualifiers,
but they have no functional effects. Do not use them unless you want your shaders to be ES compatible.There are three precision qualifiers: highp, mediump, and lowp. They have no semantic meaning or functional effect. They can apply to any floating-point type (vector or matrix), or any integer type.
Edit:it probably makes no difference to keep it in the shader, it would be ignored, because we are not using OpenGL/ES
#ifdef GL_ES
precision highp float;
#endif