pbrFragmentDeclaration.fx 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. uniform vec3 vReflectionColor;
  2. uniform vec4 vAlbedoColor;
  3. // CUSTOM CONTROLS
  4. uniform vec4 vLightingIntensity;
  5. uniform vec4 vReflectivityColor;
  6. uniform vec4 vMetallicReflectanceFactors;
  7. uniform vec3 vEmissiveColor;
  8. uniform float visibility;
  9. // Samplers
  10. #ifdef ALBEDO
  11. uniform vec2 vAlbedoInfos;
  12. #endif
  13. #ifdef AMBIENT
  14. uniform vec4 vAmbientInfos;
  15. #endif
  16. #ifdef BUMP
  17. uniform vec3 vBumpInfos;
  18. uniform vec2 vTangentSpaceParams;
  19. #endif
  20. #ifdef OPACITY
  21. uniform vec2 vOpacityInfos;
  22. #endif
  23. #ifdef EMISSIVE
  24. uniform vec2 vEmissiveInfos;
  25. #endif
  26. #ifdef LIGHTMAP
  27. uniform vec2 vLightmapInfos;
  28. #endif
  29. #ifdef REFLECTIVITY
  30. uniform vec3 vReflectivityInfos;
  31. #endif
  32. #ifdef MICROSURFACEMAP
  33. uniform vec2 vMicroSurfaceSamplerInfos;
  34. #endif
  35. // Refraction Reflection
  36. #if defined(REFLECTIONMAP_SPHERICAL) || defined(REFLECTIONMAP_PROJECTION) || defined(SS_REFRACTION)
  37. uniform mat4 view;
  38. #endif
  39. // Reflection
  40. #ifdef REFLECTION
  41. uniform vec2 vReflectionInfos;
  42. #ifdef REALTIME_FILTERING
  43. uniform vec2 vReflectionFilteringInfo;
  44. #endif
  45. uniform mat4 reflectionMatrix;
  46. uniform vec3 vReflectionMicrosurfaceInfos;
  47. #if defined(USE_LOCAL_REFLECTIONMAP_CUBIC) && defined(REFLECTIONMAP_CUBIC)
  48. uniform vec3 vReflectionPosition;
  49. uniform vec3 vReflectionSize;
  50. #endif
  51. #endif
  52. // Clear Coat
  53. #ifdef CLEARCOAT
  54. uniform vec2 vClearCoatParams;
  55. uniform vec4 vClearCoatRefractionParams;
  56. #ifdef CLEARCOAT_TEXTURE
  57. uniform vec2 vClearCoatInfos;
  58. uniform mat4 clearCoatMatrix;
  59. #endif
  60. #ifdef CLEARCOAT_BUMP
  61. uniform vec2 vClearCoatBumpInfos;
  62. uniform vec2 vClearCoatTangentSpaceParams;
  63. uniform mat4 clearCoatBumpMatrix;
  64. #endif
  65. #ifdef CLEARCOAT_TINT
  66. uniform vec4 vClearCoatTintParams;
  67. uniform float clearCoatColorAtDistance;
  68. #ifdef CLEARCOAT_TINT_TEXTURE
  69. uniform vec2 vClearCoatTintInfos;
  70. uniform mat4 clearCoatTintMatrix;
  71. #endif
  72. #endif
  73. #endif
  74. // Anisotropy
  75. #ifdef ANISOTROPIC
  76. uniform vec3 vAnisotropy;
  77. #ifdef ANISOTROPIC_TEXTURE
  78. uniform vec2 vAnisotropyInfos;
  79. uniform mat4 anisotropyMatrix;
  80. #endif
  81. #endif
  82. // Sheen
  83. #ifdef SHEEN
  84. uniform vec4 vSheenColor;
  85. #ifdef SHEEN_ROUGHNESS
  86. uniform float vSheenRoughness;
  87. #endif
  88. #ifdef SHEEN_TEXTURE
  89. uniform vec2 vSheenInfos;
  90. uniform mat4 sheenMatrix;
  91. #endif
  92. #endif
  93. // SubSurface
  94. #ifdef SUBSURFACE
  95. #ifdef SS_REFRACTION
  96. uniform vec3 vRefractionMicrosurfaceInfos;
  97. uniform vec4 vRefractionInfos;
  98. uniform mat4 refractionMatrix;
  99. #ifdef REALTIME_FILTERING
  100. uniform vec2 vRefractionFilteringInfo;
  101. #endif
  102. #endif
  103. #ifdef SS_THICKNESSANDMASK_TEXTURE
  104. uniform vec2 vThicknessInfos;
  105. uniform mat4 thicknessMatrix;
  106. #endif
  107. uniform vec2 vThicknessParam;
  108. uniform vec3 vDiffusionDistance;
  109. uniform vec4 vTintColor;
  110. uniform vec3 vSubSurfaceIntensity;
  111. #ifdef SS_SCATTERING
  112. uniform float scatteringDiffusionProfile;
  113. #endif
  114. #endif