19 lines
585 B
Plaintext
19 lines
585 B
Plaintext
precision mediump float;
|
|
|
|
varying vec2 TexCoord;
|
|
|
|
uniform sampler2D uText;
|
|
uniform vec4 uColor;
|
|
//uniform float uOutlineWidth; // Убрано дефолтное значение
|
|
|
|
void main() {
|
|
float dist = texture2D(uText, TexCoord).r;
|
|
|
|
float uOutlineWidth = 0.7;
|
|
|
|
float outline = smoothstep(0.5 - uOutlineWidth, 0.5 + uOutlineWidth, dist);
|
|
float text = smoothstep(0.5, 0.6, dist); // 0.5 + 0.1 вычислено заранее
|
|
float glow = exp(-pow(dist - 0.5, 2.0) / 0.02);
|
|
|
|
gl_FragColor = vec4(uColor.rgb * (text + glow * 0.6), uColor.a * outline);
|
|
} |