Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

30 рядки
713 B

  1. #version 450 core
  2. #pragma include ./shared.glsl
  3. #pragma include ../misc/glow.glsl
  4. #pragma include ../misc/global.glsl
  5. const float GLOW_ALPHA = 0.20;
  6. const GlowArgs GLOW_ARGS = {
  7. /* step0 */ 0.100,
  8. /* step1 */ 1.900,
  9. /* pulseSize0 */ 0.050,
  10. /* pulseSize1 */ 0.200,
  11. /* pulseTime */ 2.000,
  12. };
  13. in FragmentData fragmentData;
  14. uniform vec4 uGlowColor;
  15. uniform sampler2D uTexture;
  16. out vec4 outColor;
  17. void main() {
  18. float alpha = glow(GLOW_ARGS, fragmentData.texCoords - vec2(0.5), uGlobal.time);
  19. vec4 glow = vec4(uGlowColor.rgb, uGlowColor.a * alpha * GLOW_ALPHA);
  20. vec4 tex = texture(uTexture, fragmentData.texCoords);
  21. outColor = tex * tex.a + glow * (1.0 - tex.a);
  22. }