worldFragment.fs 914 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #version 430
  2. layout (location = 0) out vec3 worldPosition;
  3. layout (location = 1) out vec3 worldNormal;
  4. layout (location = 2) out vec4 worldColor;
  5. layout (binding = 0) uniform sampler2D samp;
  6. uniform bool useTexture;
  7. uniform bool useColor;
  8. uniform bool useMixColor;
  9. uniform vec4 mixColor;
  10. uniform bool useNormals;
  11. in vec3 varPosition;
  12. in vec2 varTextureCoord;
  13. in vec4 varColor;
  14. in vec3 varNormal;
  15. void main(void)
  16. {
  17. vec4 color = vec4(0, 0, 0, 1);
  18. if(useTexture)
  19. {
  20. color = texture(samp, varTextureCoord);
  21. if(useColor)
  22. {
  23. if(useMixColor)
  24. {
  25. color = (color + mixColor) * 0.5;
  26. }
  27. else
  28. {
  29. color = vec4(varColor.xyz, color.w);
  30. }
  31. }
  32. }
  33. else
  34. {
  35. color = varColor;
  36. }
  37. worldPosition = varPosition;
  38. worldNormal = varNormal;
  39. worldColor = color;
  40. }