pbrFragmentDeclaration.fx 2.8 KB

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