spv.glsl.register.autoassign.frag 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #version 450
  2. uniform layout(binding=0) sampler g_sSamp1;
  3. uniform sampler g_sSamp2;
  4. uniform layout(binding=2) sampler g_sSamp3[2];
  5. uniform sampler g_sSamp4[3];
  6. uniform sampler g_sSamp5;
  7. uniform sampler g_sSamp_unused1;
  8. uniform sampler g_sSamp_unused2;
  9. uniform layout(binding=1) texture1D g_tTex1;
  10. uniform texture1D g_tTex2;
  11. uniform layout(binding=3) texture1D g_tTex3[2];
  12. uniform texture1D g_tTex4[3];
  13. uniform texture1D g_tTex5;
  14. uniform layout(binding=0) texture1D g_tTex_unused1;
  15. uniform layout(binding=2) texture1D g_tTex_unused2;
  16. uniform texture1D g_tTex_unused3;
  17. struct MyStruct_t {
  18. int a;
  19. float b;
  20. vec3 c;
  21. };
  22. uniform layout(binding=4) myblock {
  23. MyStruct_t mystruct;
  24. vec4 myvec4_a;
  25. vec4 myvec4_b;
  26. ivec4 myint4_a;
  27. };
  28. vec4 Func1()
  29. {
  30. return
  31. texture(sampler1D(g_tTex1, g_sSamp1), 0.1) +
  32. texture(sampler1D(g_tTex2, g_sSamp2), 0.2) +
  33. texture(sampler1D(g_tTex3[0], g_sSamp3[0]), 0.3) +
  34. texture(sampler1D(g_tTex3[1], g_sSamp3[1]), 0.3) +
  35. texture(sampler1D(g_tTex4[1], g_sSamp4[1]), 0.4) +
  36. texture(sampler1D(g_tTex4[2], g_sSamp4[2]), 0.4) +
  37. texture(sampler1D(g_tTex5, g_sSamp5), 0.5) +
  38. mystruct.c[1];
  39. }
  40. vec4 Func2()
  41. {
  42. return
  43. texture(sampler1D(g_tTex1, g_sSamp1), 0.1) +
  44. texture(sampler1D(g_tTex3[1], g_sSamp3[1]), 0.3);
  45. }
  46. // Not called from entry point:
  47. vec4 Func2_unused()
  48. {
  49. return
  50. texture(sampler1D(g_tTex_unused1, g_sSamp_unused1), 1.1) +
  51. texture(sampler1D(g_tTex_unused2, g_sSamp_unused2), 1.2);
  52. }
  53. out vec4 FragColor;
  54. void main()
  55. {
  56. FragColor = Func1() + Func2();
  57. }