mirror of
https://gitlab.com/skysthelimit.dev/selenite.git
synced 2025-06-16 02:22:07 -05:00
36 lines
869 B
GLSL
36 lines
869 B
GLSL
#ifdef GL_ES
|
|
#define LOWP lowp
|
|
#define MED mediump
|
|
#define HIGH highp
|
|
precision mediump float;
|
|
#else
|
|
#define MED
|
|
#define LOWP
|
|
#define HIGH
|
|
#endif
|
|
|
|
#if defined(diffuseTextureFlag) && defined(blendedFlag)
|
|
#define blendedTextureFlag
|
|
varying MED vec2 v_texCoords0;
|
|
uniform sampler2D u_diffuseTexture;
|
|
uniform float u_alphaTest;
|
|
#endif
|
|
|
|
#ifdef PackedDepthFlag
|
|
varying HIGH float v_depth;
|
|
#endif //PackedDepthFlag
|
|
|
|
void main() {
|
|
#ifdef blendedTextureFlag
|
|
if (texture2D(u_diffuseTexture, v_texCoords0).a < u_alphaTest)
|
|
discard;
|
|
#endif // blendedTextureFlag
|
|
|
|
#ifdef PackedDepthFlag
|
|
HIGH float depth = v_depth;
|
|
const HIGH vec4 bias = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);
|
|
HIGH vec4 color = vec4(depth, fract(depth * 255.0), fract(depth * 65025.0), fract(depth * 16581375.0));
|
|
gl_FragColor = color - (color.yzww * bias);
|
|
#endif //PackedDepthFlag
|
|
}
|