pbrUboDeclaration.fx 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. layout(std140, column_major) uniform;
  2. // layout(set = 0, binding = 0) uniform Harmonics
  3. // {
  4. // uniform vec3 vSphericalL00;
  5. // uniform vec3 vSphericalL1_1;
  6. // uniform vec3 vSphericalL10;
  7. // uniform vec3 vSphericalL11;
  8. // uniform vec3 vSphericalL2_2;
  9. // uniform vec3 vSphericalL2_1;
  10. // uniform vec3 vSphericalL20;
  11. // uniform vec3 vSphericalL21;
  12. // uniform vec3 vSphericalL22;
  13. // uniform vec3 vSphericalX;
  14. // uniform vec3 vSphericalY;
  15. // uniform vec3 vSphericalZ;
  16. // uniform vec3 vSphericalXX_ZZ;
  17. // uniform vec3 vSphericalYY_ZZ;
  18. // uniform vec3 vSphericalZZ;
  19. // uniform vec3 vSphericalXY;
  20. // uniform vec3 vSphericalYZ;
  21. // uniform vec3 vSphericalZX;
  22. // }
  23. #ifdef WEBGPU
  24. layout(set = 0, binding = 0)
  25. #endif
  26. uniform Scene {
  27. mat4 viewProjection;
  28. #ifdef MULTIVIEW
  29. mat4 viewProjectionR;
  30. #endif
  31. mat4 view;
  32. };
  33. #ifdef WEBGPU
  34. layout(set = 1, binding = 0)
  35. #endif
  36. uniform Material
  37. {
  38. uniform vec2 vAlbedoInfos;
  39. uniform vec4 vAmbientInfos;
  40. uniform vec2 vOpacityInfos;
  41. uniform vec2 vEmissiveInfos;
  42. uniform vec2 vLightmapInfos;
  43. uniform vec3 vReflectivityInfos;
  44. uniform vec2 vMicroSurfaceSamplerInfos;
  45. uniform vec2 vReflectionInfos;
  46. uniform vec3 vReflectionPosition;
  47. uniform vec3 vReflectionSize;
  48. uniform vec3 vBumpInfos;
  49. uniform mat4 albedoMatrix;
  50. uniform mat4 ambientMatrix;
  51. uniform mat4 opacityMatrix;
  52. uniform mat4 emissiveMatrix;
  53. uniform mat4 lightmapMatrix;
  54. uniform mat4 reflectivityMatrix;
  55. uniform mat4 microSurfaceSamplerMatrix;
  56. uniform mat4 bumpMatrix;
  57. uniform vec2 vTangentSpaceParams;
  58. uniform mat4 reflectionMatrix;
  59. uniform vec3 vReflectionColor;
  60. uniform vec4 vAlbedoColor;
  61. uniform vec4 vLightingIntensity;
  62. uniform vec3 vReflectionMicrosurfaceInfos;
  63. uniform float pointSize;
  64. uniform vec4 vReflectivityColor;
  65. uniform vec3 vEmissiveColor;
  66. uniform vec4 vEyePosition;
  67. uniform vec3 vAmbientColor;
  68. uniform vec2 vDebugMode;
  69. uniform vec2 vClearCoatParams;
  70. uniform vec4 vClearCoatRefractionParams;
  71. uniform vec2 vClearCoatInfos;
  72. uniform mat4 clearCoatMatrix;
  73. uniform vec2 vClearCoatBumpInfos;
  74. uniform vec2 vClearCoatTangentSpaceParams;
  75. uniform mat4 clearCoatBumpMatrix;
  76. uniform vec4 vClearCoatTintParams;
  77. uniform float clearCoatColorAtDistance;
  78. uniform vec2 vClearCoatTintInfos;
  79. uniform mat4 clearCoatTintMatrix;
  80. uniform vec3 vAnisotropy;
  81. uniform vec2 vAnisotropyInfos;
  82. uniform mat4 anisotropyMatrix;
  83. uniform vec4 vSheenColor;
  84. uniform vec2 vSheenInfos;
  85. uniform mat4 sheenMatrix;
  86. uniform vec3 vRefractionMicrosurfaceInfos;
  87. uniform vec4 vRefractionInfos;
  88. uniform mat4 refractionMatrix;
  89. uniform vec2 vThicknessInfos;
  90. uniform mat4 thicknessMatrix;
  91. uniform vec2 vThicknessParam;
  92. uniform vec3 vDiffusionDistance;
  93. uniform vec4 vTintColor;
  94. uniform vec3 vSubSurfaceIntensity;
  95. uniform vec3 vSphericalL00;
  96. uniform vec3 vSphericalL1_1;
  97. uniform vec3 vSphericalL10;
  98. uniform vec3 vSphericalL11;
  99. uniform vec3 vSphericalL2_2;
  100. uniform vec3 vSphericalL2_1;
  101. uniform vec3 vSphericalL20;
  102. uniform vec3 vSphericalL21;
  103. uniform vec3 vSphericalL22;
  104. uniform vec3 vSphericalX;
  105. uniform vec3 vSphericalY;
  106. uniform vec3 vSphericalZ;
  107. uniform vec3 vSphericalXX_ZZ;
  108. uniform vec3 vSphericalYY_ZZ;
  109. uniform vec3 vSphericalZZ;
  110. uniform vec3 vSphericalXY;
  111. uniform vec3 vSphericalYZ;
  112. uniform vec3 vSphericalZX;
  113. };
  114. #ifdef WEBGPU
  115. layout(set = 2, binding = 0)
  116. #endif
  117. uniform Mesh {
  118. mat4 world;
  119. float visibility;
  120. };