fire.glsl 441 B

123456789101112131415161718192021222324252627282930
  1. void main()
  2. {
  3. float4 c0 = Sample();
  4. float red = 0.0;
  5. float green = 0.0;
  6. float blue = 0.0;
  7. red = c0.r;
  8. if (c0.r > 0.0 && c0.g > c0.r)
  9. green = (c0.g - (c0.g - c0.r)) / 3.0;
  10. if (c0.b > 0.0 && c0.r < 0.25)
  11. {
  12. red = c0.b;
  13. green = c0.b / 3.0;
  14. }
  15. if (c0.g > 0.0 && c0.r < 0.25)
  16. {
  17. red = c0.g;
  18. green = c0.g / 3.0;
  19. }
  20. if (((c0.r + c0.g + c0.b) / 3.0) > 0.9)
  21. green = c0.r / 3.0;
  22. SetOutput(float4(red, green, blue, 1.0));
  23. }