UniformsLib.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. import { Color } from '../../math/Color.js';
  2. import { Vector2 } from '../../math/Vector2.js';
  3. import { Matrix3 } from '../../math/Matrix3.js';
  4. /**
  5. * Uniforms library for shared webgl shaders
  6. */
  7. var UniformsLib = {
  8. common: {
  9. diffuse: { value: new Color( 0xeeeeee ) },
  10. opacity: { value: 1.0 },
  11. map: { value: null },
  12. uvTransform: { value: new Matrix3() },
  13. alphaMap: { value: null },
  14. },
  15. specularmap: {
  16. specularMap: { value: null },
  17. },
  18. envmap: {
  19. envMap: { value: null },
  20. flipEnvMap: { value: - 1 },
  21. reflectivity: { value: 1.0 },
  22. refractionRatio: { value: 0.98 },
  23. maxMipLevel: { value: 0 }
  24. },
  25. aomap: {
  26. aoMap: { value: null },
  27. aoMapIntensity: { value: 1 }
  28. },
  29. lightmap: {
  30. lightMap: { value: null },
  31. lightMapIntensity: { value: 1 }
  32. },
  33. emissivemap: {
  34. emissiveMap: { value: null }
  35. },
  36. bumpmap: {
  37. bumpMap: { value: null },
  38. bumpScale: { value: 1 }
  39. },
  40. normalmap: {
  41. normalMap: { value: null },
  42. normalScale: { value: new Vector2( 1, 1 ) }
  43. },
  44. displacementmap: {
  45. displacementMap: { value: null },
  46. displacementScale: { value: 1 },
  47. displacementBias: { value: 0 }
  48. },
  49. roughnessmap: {
  50. roughnessMap: { value: null }
  51. },
  52. metalnessmap: {
  53. metalnessMap: { value: null }
  54. },
  55. gradientmap: {
  56. gradientMap: { value: null }
  57. },
  58. fog: {
  59. fogDensity: { value: 0.00025 },
  60. fogNear: { value: 1 },
  61. fogFar: { value: 2000 },
  62. fogColor: { value: new Color( 0xffffff ) }
  63. },
  64. lights: {
  65. ambientLightColor: { value: [] },
  66. directionalLights: { value: [], properties: {
  67. direction: {},
  68. color: {},
  69. shadow: {},
  70. shadowBias: {},
  71. shadowRadius: {},
  72. shadowMapSize: {}
  73. } },
  74. directionalShadowMap: { value: [] },
  75. directionalShadowMatrix: { value: [] },
  76. spotLights: { value: [], properties: {
  77. color: {},
  78. position: {},
  79. direction: {},
  80. distance: {},
  81. coneCos: {},
  82. penumbraCos: {},
  83. decay: {},
  84. shadow: {},
  85. shadowBias: {},
  86. shadowRadius: {},
  87. shadowMapSize: {}
  88. } },
  89. spotShadowMap: { value: [] },
  90. spotShadowMatrix: { value: [] },
  91. pointLights: { value: [], properties: {
  92. color: {},
  93. position: {},
  94. decay: {},
  95. distance: {},
  96. shadow: {},
  97. shadowBias: {},
  98. shadowRadius: {},
  99. shadowMapSize: {},
  100. shadowCameraNear: {},
  101. shadowCameraFar: {}
  102. } },
  103. pointShadowMap: { value: [] },
  104. pointShadowMatrix: { value: [] },
  105. hemisphereLights: { value: [], properties: {
  106. direction: {},
  107. skyColor: {},
  108. groundColor: {}
  109. } },
  110. // TODO (abelnation): RectAreaLight BRDF data needs to be moved from example to main src
  111. rectAreaLights: { value: [], properties: {
  112. color: {},
  113. position: {},
  114. width: {},
  115. height: {}
  116. } }
  117. },
  118. points: {
  119. diffuse: { value: new Color( 0xeeeeee ) },
  120. opacity: { value: 1.0 },
  121. size: { value: 1.0 },
  122. scale: { value: 1.0 },
  123. map: { value: null },
  124. uvTransform: { value: new Matrix3() }
  125. },
  126. sprite: {
  127. diffuse: { value: new Color( 0xeeeeee ) },
  128. opacity: { value: 1.0 },
  129. center: { value: new Vector2( 0.5, 0.5 ) },
  130. rotation: { value: 0.0 },
  131. map: { value: null },
  132. uvTransform: { value: new Matrix3() }
  133. }
  134. };
  135. export { UniformsLib };
粤ICP备19079148号