@luma.gl/shadertools 9.1.9 → 9.2.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/dist/dist.dev.js +1614 -3716
  2. package/dist/dist.min.js +278 -484
  3. package/dist/index.cjs +366 -804
  4. package/dist/index.cjs.map +4 -4
  5. package/dist/index.d.ts +0 -6
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +0 -10
  8. package/dist/index.js.map +1 -1
  9. package/dist/lib/shader-assembly/assemble-shaders.d.ts +6 -4
  10. package/dist/lib/shader-assembly/assemble-shaders.d.ts.map +1 -1
  11. package/dist/lib/shader-assembly/assemble-shaders.js +14 -9
  12. package/dist/lib/shader-assembly/assemble-shaders.js.map +1 -1
  13. package/dist/lib/shader-assembly/platform-info.d.ts +1 -1
  14. package/dist/lib/shader-assembly/platform-info.d.ts.map +1 -1
  15. package/dist/lib/shader-module/shader-module.d.ts +1 -1
  16. package/dist/lib/shader-module/shader-module.d.ts.map +1 -1
  17. package/dist/lib/wgsl/get-shader-layout-wgsl.d.ts.map +1 -1
  18. package/dist/lib/wgsl/get-shader-layout-wgsl.js +3 -1
  19. package/dist/lib/wgsl/get-shader-layout-wgsl.js.map +1 -1
  20. package/dist/modules/engine/project/project.d.ts.map +1 -1
  21. package/dist/modules/engine/project/project.js +4 -2
  22. package/dist/modules/engine/project/project.js.map +1 -1
  23. package/dist/modules/lighting/gouraud-material/gouraud-material.js +1 -1
  24. package/dist/modules/lighting/gouraud-material/gouraud-material.js.map +1 -1
  25. package/dist/modules/lighting/lights/{lighting-uniforms-glsl.d.ts → lighting-glsl.d.ts} +1 -1
  26. package/dist/modules/lighting/lights/lighting-glsl.d.ts.map +1 -0
  27. package/dist/modules/lighting/lights/{lighting-uniforms-glsl.js → lighting-glsl.js} +1 -1
  28. package/dist/modules/lighting/lights/lighting-glsl.js.map +1 -0
  29. package/dist/modules/lighting/lights/{lighting-uniforms-wgsl.d.ts → lighting-wgsl.d.ts} +1 -1
  30. package/dist/modules/lighting/lights/lighting-wgsl.d.ts.map +1 -0
  31. package/dist/modules/lighting/lights/{lighting-uniforms-wgsl.js → lighting-wgsl.js} +1 -1
  32. package/dist/modules/lighting/lights/lighting-wgsl.js.map +1 -0
  33. package/dist/modules/lighting/lights/lighting.d.ts +1 -3
  34. package/dist/modules/lighting/lights/lighting.d.ts.map +1 -1
  35. package/dist/modules/lighting/lights/lighting.js +4 -4
  36. package/dist/modules/lighting/lights/lighting.js.map +1 -1
  37. package/dist/modules/lighting/no-material/dirlight.d.ts.map +1 -1
  38. package/dist/modules/lighting/no-material/dirlight.js +1 -2
  39. package/dist/modules/lighting/no-material/dirlight.js.map +1 -1
  40. package/dist/modules/lighting/pbr-material/{pbr-fragment-glsl.d.ts → pbr-material-glsl.d.ts} +2 -1
  41. package/dist/modules/lighting/pbr-material/pbr-material-glsl.d.ts.map +1 -0
  42. package/dist/modules/lighting/pbr-material/{pbr-fragment-glsl.js → pbr-material-glsl.js} +36 -1
  43. package/dist/modules/lighting/pbr-material/pbr-material-glsl.js.map +1 -0
  44. package/dist/modules/lighting/pbr-material/pbr-material-wgsl.d.ts +3 -0
  45. package/dist/modules/lighting/pbr-material/pbr-material-wgsl.d.ts.map +1 -0
  46. package/dist/modules/lighting/pbr-material/pbr-material-wgsl.js +487 -0
  47. package/dist/modules/lighting/pbr-material/pbr-material-wgsl.js.map +1 -0
  48. package/dist/modules/lighting/pbr-material/pbr-material.d.ts +11 -4
  49. package/dist/modules/lighting/pbr-material/pbr-material.d.ts.map +1 -1
  50. package/dist/modules/lighting/pbr-material/pbr-material.js +12 -12
  51. package/dist/modules/lighting/pbr-material/pbr-material.js.map +1 -1
  52. package/dist/modules/lighting/pbr-material/pbr-projection.d.ts.map +1 -1
  53. package/dist/modules/lighting/pbr-material/pbr-projection.js.map +1 -1
  54. package/dist/modules/lighting/phong-material/phong-material.js +1 -1
  55. package/dist/modules/lighting/phong-material/phong-material.js.map +1 -1
  56. package/dist/modules/lighting/phong-material/phong-shaders-glsl.d.ts +1 -1
  57. package/dist/modules/lighting/phong-material/phong-shaders-glsl.d.ts.map +1 -1
  58. package/dist/modules/lighting/phong-material/phong-shaders-glsl.js +2 -0
  59. package/dist/modules/lighting/phong-material/phong-shaders-glsl.js.map +1 -1
  60. package/dist/modules/math/random/random.d.ts +1 -0
  61. package/dist/modules/math/random/random.d.ts.map +1 -1
  62. package/dist/modules/math/random/random.js +7 -0
  63. package/dist/modules/math/random/random.js.map +1 -1
  64. package/package.json +3 -3
  65. package/src/index.ts +0 -17
  66. package/src/lib/shader-assembly/assemble-shaders.ts +12 -11
  67. package/src/lib/shader-assembly/platform-info.ts +1 -1
  68. package/src/lib/shader-module/shader-module.ts +1 -1
  69. package/src/lib/wgsl/get-shader-layout-wgsl.ts +7 -5
  70. package/src/modules/engine/project/project.ts +8 -5
  71. package/src/modules/lighting/gouraud-material/gouraud-material.ts +1 -1
  72. package/src/modules/lighting/lights/lighting.ts +4 -4
  73. package/src/modules/lighting/no-material/dirlight.ts +2 -3
  74. package/src/modules/lighting/pbr-material/{pbr-fragment-glsl.ts → pbr-material-glsl.ts} +36 -1
  75. package/src/modules/lighting/pbr-material/pbr-material-wgsl.ts +490 -0
  76. package/src/modules/lighting/pbr-material/pbr-material.ts +12 -12
  77. package/src/modules/lighting/pbr-material/pbr-projection.ts +0 -2
  78. package/src/modules/lighting/phong-material/phong-material.ts +1 -1
  79. package/src/modules/lighting/phong-material/phong-shaders-glsl.ts +2 -0
  80. package/src/modules/math/random/random.ts +8 -0
  81. package/dist/modules/lighting/lights/lighting-uniforms-glsl.d.ts.map +0 -1
  82. package/dist/modules/lighting/lights/lighting-uniforms-glsl.js.map +0 -1
  83. package/dist/modules/lighting/lights/lighting-uniforms-wgsl.d.ts.map +0 -1
  84. package/dist/modules/lighting/lights/lighting-uniforms-wgsl.js.map +0 -1
  85. package/dist/modules/lighting/pbr-material/pbr-fragment-glsl.d.ts.map +0 -1
  86. package/dist/modules/lighting/pbr-material/pbr-fragment-glsl.js.map +0 -1
  87. package/dist/modules/lighting/pbr-material/pbr-uniforms-glsl.d.ts +0 -2
  88. package/dist/modules/lighting/pbr-material/pbr-uniforms-glsl.d.ts.map +0 -1
  89. package/dist/modules/lighting/pbr-material/pbr-uniforms-glsl.js +0 -67
  90. package/dist/modules/lighting/pbr-material/pbr-uniforms-glsl.js.map +0 -1
  91. package/dist/modules/lighting/pbr-material/pbr-vertex-glsl.d.ts +0 -2
  92. package/dist/modules/lighting/pbr-material/pbr-vertex-glsl.d.ts.map +0 -1
  93. package/dist/modules/lighting/pbr-material/pbr-vertex-glsl.js +0 -39
  94. package/dist/modules/lighting/pbr-material/pbr-vertex-glsl.js.map +0 -1
  95. package/dist/modules/module-injectors.d.ts +0 -3
  96. package/dist/modules/module-injectors.d.ts.map +0 -1
  97. package/dist/modules/module-injectors.js +0 -31
  98. package/dist/modules/module-injectors.js.map +0 -1
  99. package/dist/modules-webgl1/geometry/geometry.d.ts +0 -9
  100. package/dist/modules-webgl1/geometry/geometry.d.ts.map +0 -1
  101. package/dist/modules-webgl1/geometry/geometry.js +0 -39
  102. package/dist/modules-webgl1/geometry/geometry.js.map +0 -1
  103. package/dist/modules-webgl1/lighting/dirlight/dirlight.d.ts +0 -10
  104. package/dist/modules-webgl1/lighting/dirlight/dirlight.d.ts.map +0 -1
  105. package/dist/modules-webgl1/lighting/dirlight/dirlight.js +0 -38
  106. package/dist/modules-webgl1/lighting/dirlight/dirlight.js.map +0 -1
  107. package/dist/modules-webgl1/lighting/lights/lights-glsl.d.ts +0 -2
  108. package/dist/modules-webgl1/lighting/lights/lights-glsl.d.ts.map +0 -1
  109. package/dist/modules-webgl1/lighting/lights/lights-glsl.js +0 -40
  110. package/dist/modules-webgl1/lighting/lights/lights-glsl.js.map +0 -1
  111. package/dist/modules-webgl1/lighting/lights/lights.d.ts +0 -38
  112. package/dist/modules-webgl1/lighting/lights/lights.d.ts.map +0 -1
  113. package/dist/modules-webgl1/lighting/lights/lights.js +0 -93
  114. package/dist/modules-webgl1/lighting/lights/lights.js.map +0 -1
  115. package/dist/modules-webgl1/lighting/pbr/pbr-fragment-glsl.d.ts +0 -2
  116. package/dist/modules-webgl1/lighting/pbr/pbr-fragment-glsl.d.ts.map +0 -1
  117. package/dist/modules-webgl1/lighting/pbr/pbr-fragment-glsl.js +0 -393
  118. package/dist/modules-webgl1/lighting/pbr/pbr-fragment-glsl.js.map +0 -1
  119. package/dist/modules-webgl1/lighting/pbr/pbr-vertex-glsl.d.ts +0 -2
  120. package/dist/modules-webgl1/lighting/pbr/pbr-vertex-glsl.d.ts.map +0 -1
  121. package/dist/modules-webgl1/lighting/pbr/pbr-vertex-glsl.js +0 -43
  122. package/dist/modules-webgl1/lighting/pbr/pbr-vertex-glsl.js.map +0 -1
  123. package/dist/modules-webgl1/lighting/pbr/pbr.d.ts +0 -23
  124. package/dist/modules-webgl1/lighting/pbr/pbr.d.ts.map +0 -1
  125. package/dist/modules-webgl1/lighting/pbr/pbr.js +0 -21
  126. package/dist/modules-webgl1/lighting/pbr/pbr.js.map +0 -1
  127. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting-glsl.d.ts +0 -2
  128. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting-glsl.d.ts.map +0 -1
  129. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting-glsl.js +0 -79
  130. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting-glsl.js.map +0 -1
  131. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting.d.ts +0 -45
  132. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting.d.ts.map +0 -1
  133. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting.js +0 -44
  134. package/dist/modules-webgl1/lighting/phong-lighting/phong-lighting.js.map +0 -1
  135. package/dist/modules-webgl1/math/fp64/fp64-arithmetic-glsl.d.ts +0 -2
  136. package/dist/modules-webgl1/math/fp64/fp64-arithmetic-glsl.d.ts.map +0 -1
  137. package/dist/modules-webgl1/math/fp64/fp64-arithmetic-glsl.js +0 -171
  138. package/dist/modules-webgl1/math/fp64/fp64-arithmetic-glsl.js.map +0 -1
  139. package/dist/modules-webgl1/math/fp64/fp64-functions-glsl.d.ts +0 -2
  140. package/dist/modules-webgl1/math/fp64/fp64-functions-glsl.d.ts.map +0 -1
  141. package/dist/modules-webgl1/math/fp64/fp64-functions-glsl.js +0 -675
  142. package/dist/modules-webgl1/math/fp64/fp64-functions-glsl.js.map +0 -1
  143. package/dist/modules-webgl1/math/fp64/fp64.d.ts +0 -35
  144. package/dist/modules-webgl1/math/fp64/fp64.d.ts.map +0 -1
  145. package/dist/modules-webgl1/math/fp64/fp64.js +0 -38
  146. package/dist/modules-webgl1/math/fp64/fp64.js.map +0 -1
  147. package/dist/modules-webgl1/project/project.d.ts +0 -20
  148. package/dist/modules-webgl1/project/project.d.ts.map +0 -1
  149. package/dist/modules-webgl1/project/project.js +0 -114
  150. package/dist/modules-webgl1/project/project.js.map +0 -1
  151. package/src/modules/lighting/pbr-material/pbr-uniforms-glsl.ts +0 -67
  152. package/src/modules/lighting/pbr-material/pbr-vertex-glsl.ts +0 -39
  153. package/src/modules/module-injectors.ts +0 -32
  154. package/src/modules-webgl1/geometry/geometry.ts +0 -41
  155. package/src/modules-webgl1/lighting/dirlight/dirlight.ts +0 -50
  156. package/src/modules-webgl1/lighting/lights/lights-glsl.ts +0 -40
  157. package/src/modules-webgl1/lighting/lights/lights.ts +0 -143
  158. package/src/modules-webgl1/lighting/pbr/README.md +0 -12
  159. package/src/modules-webgl1/lighting/pbr/pbr-fragment-glsl.ts +0 -396
  160. package/src/modules-webgl1/lighting/pbr/pbr-vertex-glsl.ts +0 -43
  161. package/src/modules-webgl1/lighting/pbr/pbr.ts +0 -23
  162. package/src/modules-webgl1/lighting/phong-lighting/phong-lighting-glsl.ts +0 -79
  163. package/src/modules-webgl1/lighting/phong-lighting/phong-lighting.ts +0 -64
  164. package/src/modules-webgl1/math/fp64/fp64-arithmetic-glsl.ts +0 -171
  165. package/src/modules-webgl1/math/fp64/fp64-functions-glsl.ts +0 -675
  166. package/src/modules-webgl1/math/fp64/fp64.ts +0 -44
  167. package/src/modules-webgl1/project/README.md +0 -52
  168. package/src/modules-webgl1/project/project.ts +0 -135
  169. /package/src/modules/lighting/lights/{lighting-uniforms-glsl.ts → lighting-glsl.ts} +0 -0
  170. /package/src/modules/lighting/lights/{lighting-uniforms-wgsl.ts → lighting-wgsl.ts} +0 -0
package/dist/index.d.ts CHANGED
@@ -42,10 +42,4 @@ export { phongMaterial } from "./modules/lighting/phong-material/phong-material.
42
42
  export type { PBRMaterialBindings, PBRMaterialProps, PBRMaterialUniforms } from "./modules/lighting/pbr-material/pbr-material.js";
43
43
  export type { PBRProjectionProps } from "./modules/lighting/pbr-material/pbr-projection.js";
44
44
  export { pbrMaterial } from "./modules/lighting/pbr-material/pbr-material.js";
45
- export { geometry as geometry1 } from "./modules-webgl1/geometry/geometry.js";
46
- export { project as project1 } from "./modules-webgl1/project/project.js";
47
- export { lights as lights1 } from "./modules-webgl1/lighting/lights/lights.js";
48
- export { dirlight as dirlight1 } from "./modules-webgl1/lighting/dirlight/dirlight.js";
49
- export { gouraudLighting, phongLighting } from "./modules-webgl1/lighting/phong-lighting/phong-lighting.js";
50
- export { pbr } from "./modules-webgl1/lighting/pbr/pbr.js";
51
45
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,YAAY,EAAC,YAAY,EAAC,+CAA4C;AAItE,YAAY,EAAC,YAAY,EAAC,6CAA0C;AACpE,YAAY,EAAC,UAAU,EAAC,2CAAwC;AAChE,YAAY,EAAC,YAAY,EAAC,qCAAkC;AAE5D,OAAO,EAAC,sBAAsB,EAAE,uBAAuB,EAAC,6CAA0C;AAClG,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAC1E,OAAO,EAAC,2BAA2B,EAAC,0DAAuD;AAC3F,OAAO,EAAC,6BAA6B,EAAC,6CAA0C;AAEhF,OAAO,EAAC,qBAAqB,EAAC,kDAA+C;AAE7E,OAAO,EAAC,cAAc,IAAI,eAAe,EAAC,0DAAuD;AACjG,OAAO,EAAC,kBAAkB,IAAI,mBAAmB,EAAC,0DAAuD;AAGzG,OAAO,EAAC,eAAe,EAAC,kCAA+B;AACvD,YAAY,EAAC,UAAU,EAAC,8CAA2C;AACnE,YAAY,EAAC,eAAe,EAAC,mDAAgD;AAK7E,OAAO,EAAC,aAAa,EAAC,4CAAyC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACd,yCAAsC;AAGvC,YAAY,EAAC,uBAAuB,EAAC,kDAA+C;AACpF,OAAO,EAAC,uBAAuB,EAAC,kDAA+C;AAC/E,OAAO,EAAC,UAAU,EAAC,mDAAgD;AAGnE,OAAO,EAAC,UAAU,EAAC,2CAAwC;AAC3D,OAAO,EAAC,sBAAsB,EAAC,kDAA+C;AAC9E,OAAO,EAAC,cAAc,EAAC,mDAAgD;AAGvE,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAG1E,OAAO,EAAC,WAAW,EAAE,aAAa,EAAC,0CAAuC;AAC1E,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAC,0CAAuC;AAGpF,OAAO,EAAC,MAAM,EAAC,wCAAqC;AAEpD,OAAO,EAAC,IAAI,EAAC,oCAAiC;AAC9C,OAAO,EAAC,IAAI,EAAE,cAAc,EAAC,oCAAiC;AAO9D,YAAY,EAAC,YAAY,EAAE,eAAe,EAAC,4CAAyC;AACpF,OAAO,EAAC,OAAO,EAAC,4CAAyC;AAGzD,YAAY,EAAC,aAAa,EAAE,gBAAgB,EAAC,8CAA2C;AACxF,OAAO,EAAC,QAAQ,EAAC,8CAA2C;AAC5D,OAAO,EAAC,QAAQ,EAAC,mDAAgD;AACjE,YAAY,EAAC,oBAAoB,EAAC,gEAA6D;AAC/F,OAAO,EAAC,eAAe,EAAC,gEAA6D;AACrF,YAAY,EAAC,kBAAkB,EAAC,4DAAyD;AACzF,OAAO,EAAC,aAAa,EAAC,4DAAyD;AAC/E,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACpB,wDAAqD;AACtD,YAAY,EAAC,kBAAkB,EAAC,0DAAuD;AAEvF,OAAO,EAAC,WAAW,EAAC,wDAAqD;AAQzE,OAAO,EAAC,QAAQ,IAAI,SAAS,EAAC,8CAA2C;AACzE,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,4CAAyC;AAErE,OAAO,EAAC,MAAM,IAAI,OAAO,EAAC,mDAAgD;AAC1E,OAAO,EAAC,QAAQ,IAAI,SAAS,EAAC,uDAAoD;AAClF,OAAO,EACL,eAAe,EACf,aAAa,EACd,mEAAgE;AACjE,OAAO,EAAC,GAAG,EAAC,6CAA0C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,YAAY,EAAC,YAAY,EAAC,+CAA4C;AAItE,YAAY,EAAC,YAAY,EAAC,6CAA0C;AACpE,YAAY,EAAC,UAAU,EAAC,2CAAwC;AAChE,YAAY,EAAC,YAAY,EAAC,qCAAkC;AAE5D,OAAO,EAAC,sBAAsB,EAAE,uBAAuB,EAAC,6CAA0C;AAClG,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAC1E,OAAO,EAAC,2BAA2B,EAAC,0DAAuD;AAC3F,OAAO,EAAC,6BAA6B,EAAC,6CAA0C;AAEhF,OAAO,EAAC,qBAAqB,EAAC,kDAA+C;AAE7E,OAAO,EAAC,cAAc,IAAI,eAAe,EAAC,0DAAuD;AACjG,OAAO,EAAC,kBAAkB,IAAI,mBAAmB,EAAC,0DAAuD;AAGzG,OAAO,EAAC,eAAe,EAAC,kCAA+B;AACvD,YAAY,EAAC,UAAU,EAAC,8CAA2C;AACnE,YAAY,EAAC,eAAe,EAAC,mDAAgD;AAK7E,OAAO,EAAC,aAAa,EAAC,4CAAyC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACd,yCAAsC;AAGvC,YAAY,EAAC,uBAAuB,EAAC,kDAA+C;AACpF,OAAO,EAAC,uBAAuB,EAAC,kDAA+C;AAC/E,OAAO,EAAC,UAAU,EAAC,mDAAgD;AAGnE,OAAO,EAAC,UAAU,EAAC,2CAAwC;AAC3D,OAAO,EAAC,sBAAsB,EAAC,kDAA+C;AAC9E,OAAO,EAAC,cAAc,EAAC,mDAAgD;AAGvE,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAG1E,OAAO,EAAC,WAAW,EAAE,aAAa,EAAC,0CAAuC;AAC1E,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAC,0CAAuC;AAGpF,OAAO,EAAC,MAAM,EAAC,wCAAqC;AAEpD,OAAO,EAAC,IAAI,EAAC,oCAAiC;AAC9C,OAAO,EAAC,IAAI,EAAE,cAAc,EAAC,oCAAiC;AAO9D,YAAY,EAAC,YAAY,EAAE,eAAe,EAAC,4CAAyC;AACpF,OAAO,EAAC,OAAO,EAAC,4CAAyC;AAGzD,YAAY,EAAC,aAAa,EAAE,gBAAgB,EAAC,8CAA2C;AACxF,OAAO,EAAC,QAAQ,EAAC,8CAA2C;AAC5D,OAAO,EAAC,QAAQ,EAAC,mDAAgD;AACjE,YAAY,EAAC,oBAAoB,EAAC,gEAA6D;AAC/F,OAAO,EAAC,eAAe,EAAC,gEAA6D;AACrF,YAAY,EAAC,kBAAkB,EAAC,4DAAyD;AACzF,OAAO,EAAC,aAAa,EAAC,4DAAyD;AAC/E,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACpB,wDAAqD;AACtD,YAAY,EAAC,kBAAkB,EAAC,0DAAuD;AAEvF,OAAO,EAAC,WAAW,EAAC,wDAAqD"}
package/dist/index.js CHANGED
@@ -35,14 +35,4 @@ export { dirlight } from "./modules/lighting/no-material/dirlight.js";
35
35
  export { gouraudMaterial } from "./modules/lighting/gouraud-material/gouraud-material.js";
36
36
  export { phongMaterial } from "./modules/lighting/phong-material/phong-material.js";
37
37
  export { pbrMaterial } from "./modules/lighting/pbr-material/pbr-material.js";
38
- // DEPRECATED - v8 legacy shader modules (non-uniform buffer)
39
- // math libraries
40
- // export {fp64, fp64arithmetic} from './modules-webgl1/math/fp64/fp64';
41
- // projection and lighting
42
- export { geometry as geometry1 } from "./modules-webgl1/geometry/geometry.js";
43
- export { project as project1 } from "./modules-webgl1/project/project.js";
44
- export { lights as lights1 } from "./modules-webgl1/lighting/lights/lights.js";
45
- export { dirlight as dirlight1 } from "./modules-webgl1/lighting/dirlight/dirlight.js";
46
- export { gouraudLighting, phongLighting } from "./modules-webgl1/lighting/phong-lighting/phong-lighting.js";
47
- export { pbr } from "./modules-webgl1/lighting/pbr/pbr.js";
48
38
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAgBpC,OAAO,EAAC,sBAAsB,EAAE,uBAAuB,EAAC,6CAA0C;AAClG,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAC1E,OAAO,EAAC,2BAA2B,EAAC,0DAAuD;AAC3F,OAAO,EAAC,6BAA6B,EAAC,6CAA0C;AAEhF,OAAO,EAAC,qBAAqB,EAAC,kDAA+C;AAE7E,OAAO,EAAC,cAAc,IAAI,eAAe,EAAC,0DAAuD;AACjG,OAAO,EAAC,kBAAkB,IAAI,mBAAmB,EAAC,0DAAuD;AAEzG,kBAAkB;AAClB,OAAO,EAAC,eAAe,EAAC,kCAA+B;AAIvD,iBAAiB;AAEjB,8BAA8B;AAC9B,OAAO,EAAC,aAAa,EAAC,4CAAyC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACd,yCAAsC;AAIvC,OAAO,EAAC,uBAAuB,EAAC,kDAA+C;AAC/E,OAAO,EAAC,UAAU,EAAC,mDAAgD;AAEnE,uDAAuD;AACvD,OAAO,EAAC,UAAU,EAAC,2CAAwC;AAC3D,OAAO,EAAC,sBAAsB,EAAC,kDAA+C;AAC9E,OAAO,EAAC,cAAc,EAAC,mDAAgD;AAEvE,oBAAoB;AACpB,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAE1E,aAAa;AACb,OAAO,EAAC,WAAW,EAAE,aAAa,EAAC,0CAAuC;AAC1E,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAC,0CAAuC;AAEpF,iBAAiB;AACjB,OAAO,EAAC,MAAM,EAAC,wCAAqC;AAEpD,OAAO,EAAC,IAAI,EAAC,oCAAiC;AAC9C,OAAO,EAAC,IAAI,EAAE,cAAc,EAAC,oCAAiC;AAQ9D,OAAO,EAAC,OAAO,EAAC,4CAAyC;AAIzD,OAAO,EAAC,QAAQ,EAAC,8CAA2C;AAC5D,OAAO,EAAC,QAAQ,EAAC,mDAAgD;AAEjE,OAAO,EAAC,eAAe,EAAC,gEAA6D;AAErF,OAAO,EAAC,aAAa,EAAC,4DAAyD;AAQ/E,OAAO,EAAC,WAAW,EAAC,wDAAqD;AAEzE,6DAA6D;AAE7D,iBAAiB;AACjB,wEAAwE;AAExE,0BAA0B;AAC1B,OAAO,EAAC,QAAQ,IAAI,SAAS,EAAC,8CAA2C;AACzE,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,4CAAyC;AAErE,OAAO,EAAC,MAAM,IAAI,OAAO,EAAC,mDAAgD;AAC1E,OAAO,EAAC,QAAQ,IAAI,SAAS,EAAC,uDAAoD;AAClF,OAAO,EACL,eAAe,EACf,aAAa,EACd,mEAAgE;AACjE,OAAO,EAAC,GAAG,EAAC,6CAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAgBpC,OAAO,EAAC,sBAAsB,EAAE,uBAAuB,EAAC,6CAA0C;AAClG,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAC1E,OAAO,EAAC,2BAA2B,EAAC,0DAAuD;AAC3F,OAAO,EAAC,6BAA6B,EAAC,6CAA0C;AAEhF,OAAO,EAAC,qBAAqB,EAAC,kDAA+C;AAE7E,OAAO,EAAC,cAAc,IAAI,eAAe,EAAC,0DAAuD;AACjG,OAAO,EAAC,kBAAkB,IAAI,mBAAmB,EAAC,0DAAuD;AAEzG,kBAAkB;AAClB,OAAO,EAAC,eAAe,EAAC,kCAA+B;AAIvD,iBAAiB;AAEjB,8BAA8B;AAC9B,OAAO,EAAC,aAAa,EAAC,4CAAyC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACd,yCAAsC;AAIvC,OAAO,EAAC,uBAAuB,EAAC,kDAA+C;AAC/E,OAAO,EAAC,UAAU,EAAC,mDAAgD;AAEnE,uDAAuD;AACvD,OAAO,EAAC,UAAU,EAAC,2CAAwC;AAC3D,OAAO,EAAC,sBAAsB,EAAC,kDAA+C;AAC9E,OAAO,EAAC,cAAc,EAAC,mDAAgD;AAEvE,oBAAoB;AACpB,OAAO,EAAC,uBAAuB,EAAC,6CAA0C;AAE1E,aAAa;AACb,OAAO,EAAC,WAAW,EAAE,aAAa,EAAC,0CAAuC;AAC1E,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAC,0CAAuC;AAEpF,iBAAiB;AACjB,OAAO,EAAC,MAAM,EAAC,wCAAqC;AAEpD,OAAO,EAAC,IAAI,EAAC,oCAAiC;AAC9C,OAAO,EAAC,IAAI,EAAE,cAAc,EAAC,oCAAiC;AAQ9D,OAAO,EAAC,OAAO,EAAC,4CAAyC;AAIzD,OAAO,EAAC,QAAQ,EAAC,8CAA2C;AAC5D,OAAO,EAAC,QAAQ,EAAC,mDAAgD;AAEjE,OAAO,EAAC,eAAe,EAAC,gEAA6D;AAErF,OAAO,EAAC,aAAa,EAAC,4DAAyD;AAQ/E,OAAO,EAAC,WAAW,EAAC,wDAAqD"}
@@ -2,8 +2,6 @@ import { PlatformInfo } from "./platform-info.js";
2
2
  import type { ShaderInjection } from "./shader-injections.js";
3
3
  import type { ShaderModule } from "../shader-module/shader-module.js";
4
4
  import { ShaderHook } from "./shader-hooks.js";
5
- /** Define map */
6
- export type ShaderDefine = string | number | boolean;
7
5
  /**
8
6
  * Options for `ShaderAssembler.assembleShaders()`
9
7
  */
@@ -24,7 +22,9 @@ export type AssembleShaderOptions = {
24
22
  /** Modules to be injected */
25
23
  modules?: ShaderModule[];
26
24
  /** Defines to be injected */
27
- defines?: Record<string, ShaderDefine>;
25
+ defines?: Record<string, boolean>;
26
+ /** GLSL only: Overrides to be injected. In WGSL these are supplied during Pipeline creation time */
27
+ constants?: Record<string, number>;
28
28
  /** Hook functions */
29
29
  hookFunctions?: (ShaderHook | string)[];
30
30
  /** Code injections */
@@ -43,7 +43,9 @@ type AssembleStageOptions = {
43
43
  /** Modules to be injected */
44
44
  modules: any[];
45
45
  /** Defines to be injected */
46
- defines?: Record<string, ShaderDefine>;
46
+ defines?: Record<string, boolean>;
47
+ /** GLSL only: Overrides to be injected. In WGSL these are supplied during Pipeline creation time */
48
+ constants?: Record<string, number>;
47
49
  /** Hook functions */
48
50
  hookFunctions?: (ShaderHook | string)[];
49
51
  /** Code injections */
@@ -1 +1 @@
1
- {"version":3,"file":"assemble-shaders.d.ts","sourceRoot":"","sources":["../../../src/lib/shader-assembly/assemble-shaders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assemble-shaders.d.ts","sourceRoot":"","sources":["../../../src/lib/shader-assembly/assemble-shaders.ts"],"names":[],"mappings":"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"}
@@ -161,7 +161,7 @@ export function assembleShaderWGSL(platformInfo, options) {
161
161
  * @returns
162
162
  */
163
163
  function assembleShaderGLSL(platformInfo, options) {
164
- const { id, source, stage, language = 'glsl', modules, defines = {}, hookFunctions = [], inject = {}, prologue = true, log } = options;
164
+ const { source, stage, language = 'glsl', modules, defines = {}, hookFunctions = [], inject = {}, prologue = true, log } = options;
165
165
  assert(typeof source === 'string', 'shader source must be a string');
166
166
  const sourceVersion = language === 'glsl' ? getShaderInfo(source).version : -1;
167
167
  const targetVersion = platformInfo.shaderLanguageVersion;
@@ -188,7 +188,6 @@ function assembleShaderGLSL(platformInfo, options) {
188
188
  ${sourceVersionDirective}
189
189
 
190
190
  // ----- PROLOGUE -------------------------
191
- ${getShaderNameDefine({ id, source, stage })}
192
191
  ${`#define SHADER_TYPE_${stage.toUpperCase()}`}
193
192
 
194
193
  ${getPlatformShaderDefines(platformInfo)}
@@ -288,18 +287,24 @@ export function assembleGetUniforms(modules) {
288
287
  };
289
288
  }
290
289
  /**
290
+ * NOTE: Removed as id injection defeated caching of shaders
291
+ *
291
292
  * Generate "glslify-compatible" SHADER_NAME defines
292
293
  * These are understood by the GLSL error parsing function
293
294
  * If id is provided and no SHADER_NAME constant is present in source, create one
294
- */
295
- function getShaderNameDefine(options) {
296
- const { id, source, stage } = options;
297
- const injectShaderName = id && source.indexOf('SHADER_NAME') === -1;
298
- return injectShaderName
299
- ? `
295
+ unction getShaderNameDefine(options: {
296
+ id?: string;
297
+ source: string;
298
+ stage: 'vertex' | 'fragment';
299
+ }): string {
300
+ const {id, source, stage} = options;
301
+ const injectShaderName = id && source.indexOf('SHADER_NAME') === -1;
302
+ return injectShaderName
303
+ ? `
300
304
  #define SHADER_NAME ${id}_${stage}`
301
- : '';
305
+ : '';
302
306
  }
307
+ */
303
308
  /** Generates application defines from an object of key value pairs */
304
309
  function getApplicationDefines(defines = {}) {
305
310
  let sourceText = '';
@@ -1 +1 @@
1
- {"version":3,"file":"assemble-shaders.js","sourceRoot":"","sources":["../../../src/lib/shader-assembly/assemble-shaders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assemble-shaders.js","sourceRoot":"","sources":["../../../src/lib/shader-assembly/assemble-shaders.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  export type PlatformInfo = {
7
7
  /** Current Web GPU API backend */
8
- type: 'webgl' | 'webgpu' | 'unknown';
8
+ type: 'webgl' | 'webgpu' | 'null' | 'unknown';
9
9
  /** Which shader language is supported */
10
10
  shaderLanguage: 'glsl' | 'wgsl';
11
11
  /** Which shader language version is preferred */
@@ -1 +1 @@
1
- {"version":3,"file":"platform-info.d.ts","sourceRoot":"","sources":["../../../src/lib/shader-assembly/platform-info.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,kCAAkC;IAClC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IACrC,yCAAyC;IACzC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,iDAAiD;IACjD,qBAAqB,EAAE,GAAG,GAAG,GAAG,CAAC;IACjC,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,4CAA4C;IAC5C,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACvB,CAAC"}
1
+ {"version":3,"file":"platform-info.d.ts","sourceRoot":"","sources":["../../../src/lib/shader-assembly/platform-info.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,kCAAkC;IAClC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IAC9C,yCAAyC;IACzC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,iDAAiD;IACjD,qBAAqB,EAAE,GAAG,GAAG,GAAG,CAAC;IACjC,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,4CAA4C;IAC5C,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACvB,CAAC"}
@@ -47,7 +47,7 @@ export type ShaderModule<PropsT extends Record<string, any> = Record<string, any
47
47
  defaultUniforms?: Required<UniformsT>;
48
48
  /** Function that maps props to uniforms & bindings */
49
49
  getUniforms?: (props: Partial<PropsT>, prevUniforms?: UniformsT) => Partial<UniformsT & BindingsT>;
50
- defines?: Record<string, string | number>;
50
+ defines?: Record<string, boolean>;
51
51
  /** Injections */
52
52
  inject?: Record<string, string | {
53
53
  injection: string;
@@ -1 +1 @@
1
- {"version":3,"file":"shader-module.d.ts","sourceRoot":"","sources":["../../../src/lib/shader-module/shader-module.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,aAAa,EAAC,uBAAoB;AAC1C,OAAO,EACL,QAAQ,EACR,aAAa,EAGd,iCAA8B;AAC/B,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAC,kCAA+B;AACvE,OAAO,EAAC,eAAe,EAAsB,gDAA6C;AAM1F,KAAK,OAAO,GAAG,OAAO,CAAC;AAEvB,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,GAAG,QAAQ,CAAC;AAGb,KAAK,WAAW,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,GAAG,KAAK,GAAG,CAAC;CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACvF,KAAK,WAAW,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,GAAG,CAAC,GAAG,KAAK;CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACvF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AACtE,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAEtE;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,CACtB,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxD,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,EACrE,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,IAC9D;IACF,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,IAAI,EAAE,MAAM,CAAC;IAEb,gBAAgB;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8BAA8B;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,uGAAuG;IACvG,YAAY,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,WAAW,CAAC,CAAC;IACjD,6BAA6B;IAC7B,eAAe,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEtC,sDAAsD;IACtD,WAAW,CAAC,EAAE,CACZ,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EACtB,YAAY,CAAC,EAAE,SAAS,KACrB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAEpC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC1C,iBAAiB;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;IACrE,YAAY,CAAC,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACxC,2CAA2C;IAC3C,YAAY,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAEzC,4EAA4E;IAC5E,QAAQ,CAAC,EAAE;QACT,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC/C,kBAAkB,EAAE,uBAAuB,EAAE,CAAC;QAE9C,oBAAoB,EAAE;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACxC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;SAC3C,CAAC;KACH,CAAC;CACH,CAAC;AAEF,8DAA8D;AAC9D,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAIF,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAErE;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CA2CjE;AAED,uCAAuC;AACvC,wBAAgB,uBAAuB,CACrC,aAAa,SAAS,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,EAEzF,MAAM,EAAE,aAAa,EACrB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,EAC9B,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAAC,CAYxC;AAwBD,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,GAAG,GACP,IAAI,CAUN"}
1
+ {"version":3,"file":"shader-module.d.ts","sourceRoot":"","sources":["../../../src/lib/shader-module/shader-module.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-shader-layout-wgsl.d.ts","sourceRoot":"","sources":["../../../src/lib/wgsl/get-shader-layout-wgsl.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,YAAY,EAAM,MAAM,eAAe,CAAC;AAGrE;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAmEpE"}
1
+ {"version":3,"file":"get-shader-layout-wgsl.d.ts","sourceRoot":"","sources":["../../../src/lib/wgsl/get-shader-layout-wgsl.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,YAAY,EAAM,MAAM,eAAe,CAAC;AAGrE;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAoEpE"}
@@ -20,6 +20,7 @@ export function getShaderLayoutFromWGSL(source) {
20
20
  }
21
21
  for (const uniform of parsedWGSL.uniforms) {
22
22
  const members = [];
23
+ // @ts-expect-error
23
24
  for (const attribute of uniform.type?.members || []) {
24
25
  members.push({
25
26
  name: attribute.name,
@@ -70,7 +71,8 @@ export function getShaderLayoutFromWGSL(source) {
70
71
  }
71
72
  /** Get a valid shader attribute type string from a wgsl-reflect type */
72
73
  function getType(type) {
73
- return type.format ? `${type.name}<${type.format.name}>` : type.name;
74
+ // @ts-expect-error WgslReflect type checks needed
75
+ return type?.format ? `${type.name}<${type.format.name}>` : type.name;
74
76
  }
75
77
  function parseWGSL(source) {
76
78
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"get-shader-layout-wgsl.js","sourceRoot":"","sources":["../../../src/lib/wgsl/get-shader-layout-wgsl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-shader-layout-wgsl.js","sourceRoot":"","sources":["../../../src/lib/wgsl/get-shader-layout-wgsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAoC,GAAG,EAAC,MAAM,eAAe,CAAC;AACrE,OAAO,EAAW,WAAW,EAAC,MAAM,cAAc,CAAC;AAEnD;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc;IACpD,MAAM,YAAY,GAAiB,EAAC,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAC,CAAC;IAElE,IAAI,UAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,mBAAmB;QACnB,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,OAAO;YACzB,0DAA0D;YAC1D,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,OAAO;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC1C,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,OAAO;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;IAEpD,uBAAuB;IACvB,MAAM,cAAc,GAAG,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,mBAAmB;IACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAEvC,gCAAgC;QAChC,IAAI,aAAa,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAEzC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC3B,IAAI,EAAE,aAAa,CAAC,IAAI;gBACxB,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;gBACxC,IAAI;aACL,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,wEAAwE;AACxE,SAAS,OAAO,CAAC,IAAqB;IACpC,kDAAkD;IAClD,OAAO,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,SAAS,SAAS,CAAC,MAAc;IAC/B,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,MAAM,KAAK,CAAC;QACd,CAAC;QACD,IAAI,OAAO,GAAG,kBAAkB,CAAC;QACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC;YAChD,OAAO,IAAI,KAAK,KAAK,CAAC,OAAO,GAAG,CAAC;QACnC,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;YAC9C,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../../src/modules/engine/project/project.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,eAAe,CAAC;AAE/C,OAAO,KAAK,EAAC,YAAY,EAAE,aAAa,EAAC,MAAM,eAAe,CAAC;AAI/D;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IAC/C,gBAAgB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;CACxD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IAC/C,gBAAgB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACrD,oBAAoB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;CACxD,CAAC;AASF,iBAAS,WAAW,CAClB,IAAI,GAAE,eAAwC,EAC9C,YAAY,GAAE,kBAAuB,GACpC,kBAAkB,CAuBpB;AAmFD;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;CAY+C,CAAC"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../../src/modules/engine/project/project.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,eAAe,CAAC;AAE/C,OAAO,KAAK,EAAC,YAAY,EAAE,aAAa,EAAC,MAAM,eAAe,CAAC;AAI/D;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IAC/C,gBAAgB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;CACxD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IAC/C,gBAAgB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACrD,oBAAoB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;CACxD,CAAC;AASF,iBAAS,WAAW,CAClB,IAAI,GAAE,eAAwC,EAC9C,YAAY,GAAE,kBAAuB,GACpC,kBAAkB,CA0BpB;AAmFD;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;CAY+C,CAAC"}
@@ -24,8 +24,10 @@ function getUniforms(opts = DEFAULT_MODULE_OPTIONS, prevUniforms = {}) {
24
24
  uniforms.cameraPositionWorld = opts.cameraPositionWorld;
25
25
  }
26
26
  // COMPOSITE UNIFORMS
27
- if (opts.projectionMatrix !== undefined || opts.viewMatrix !== undefined) {
28
- uniforms.viewProjectionMatrix = new Matrix4(uniforms.projectionMatrix).multiplyRight(uniforms.viewMatrix);
27
+ if (opts.projectionMatrix !== undefined) {
28
+ if (opts.viewMatrix !== undefined) {
29
+ uniforms.viewProjectionMatrix = new Matrix4(uniforms.projectionMatrix).multiplyRight(opts.viewMatrix);
30
+ }
29
31
  }
30
32
  return uniforms;
31
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../../src/modules/engine/project/project.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,OAAO,EAAU,MAAM,eAAe,CAAC;AAI/C,MAAM,eAAe,GAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAuBlG,MAAM,sBAAsB,GAAiC;IAC3D,UAAU,EAAE,eAAe;IAC3B,gBAAgB,EAAE,eAAe;IACjC,oBAAoB,EAAE,eAAe;IACrC,mBAAmB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAC/B,CAAC;AAEF,SAAS,WAAW,CAClB,OAAwB,sBAAsB,EAC9C,eAAmC,EAAE;IAErC,yDAAyD;IACzD,oCAAoC;IACpC,qDAAqD;IAErD,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACxC,CAAC;IACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACxC,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACpD,CAAC;IACD,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC3C,QAAQ,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAC1D,CAAC;IACD,qBAAqB;IACrB,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACzE,QAAQ,CAAC,oBAAoB,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,aAAa,CAClF,QAAQ,CAAC,UAAU,CACpB,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,EAAE,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDrB,CAAC;AAEF;;;GAGG;AACH,MAAM,EAAE,GAAG,UAAU,CAAC;;;;;;;;;;;CAWrB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,YAAY;IAClB,0DAA0D;IAC1D,YAAY,EAAE;QACZ,UAAU,EAAE,aAAa;QACzB,gBAAgB,EAAE,aAAa;QAC/B,oBAAoB,EAAE,aAAa;QACnC,mBAAmB,EAAE,WAAW;KACjC;IACD,WAAW;IACX,EAAE;IACF,EAAE;CACkE,CAAC"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../../src/modules/engine/project/project.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,OAAO,EAAU,MAAM,eAAe,CAAC;AAI/C,MAAM,eAAe,GAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAuBlG,MAAM,sBAAsB,GAAiC;IAC3D,UAAU,EAAE,eAAe;IAC3B,gBAAgB,EAAE,eAAe;IACjC,oBAAoB,EAAE,eAAe;IACrC,mBAAmB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAC/B,CAAC;AAEF,SAAS,WAAW,CAClB,OAAwB,sBAAsB,EAC9C,eAAmC,EAAE;IAErC,yDAAyD;IACzD,oCAAoC;IACpC,qDAAqD;IAErD,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACxC,CAAC;IACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACxC,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACpD,CAAC;IACD,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC3C,QAAQ,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAC1D,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,QAAQ,CAAC,oBAAoB,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,aAAa,CAClF,IAAI,CAAC,UAAU,CAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,EAAE,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDrB,CAAC;AAEF;;;GAGG;AACH,MAAM,EAAE,GAAG,UAAU,CAAC;;;;;;;;;;;CAWrB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,YAAY;IAClB,0DAA0D;IAC1D,YAAY,EAAE;QACZ,UAAU,EAAE,aAAa;QACzB,gBAAgB,EAAE,aAAa;QAC/B,oBAAoB,EAAE,aAAa;QACnC,mBAAmB,EAAE,WAAW;KACjC;IACD,WAAW;IACX,EAAE;IACF,EAAE;CACkE,CAAC"}
@@ -13,7 +13,7 @@ export const gouraudMaterial = {
13
13
  fs: PHONG_VS.replace('phongMaterial', 'gouraudMaterial'),
14
14
  source: PHONG_WGSL.replaceAll('phongMaterial', 'gouraudMaterial'),
15
15
  defines: {
16
- LIGHTING_VERTEX: 1
16
+ LIGHTING_VERTEX: true
17
17
  },
18
18
  dependencies: [lighting],
19
19
  uniformTypes: {
@@ -1 +1 @@
1
- {"version":3,"file":"gouraud-material.js","sourceRoot":"","sources":["../../../../src/modules/lighting/gouraud-material/gouraud-material.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,QAAQ,EAAC,8BAA2B;AAC5C,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAC,gDAA6C;AACxE,OAAO,EAAC,UAAU,EAAC,gDAA6C;AAUhE,yIAAyI;AACzI,MAAM,CAAC,MAAM,eAAe,GAAuC;IACjE,KAAK,EAAE,EAA0B;IAEjC,IAAI,EAAE,iBAAiB;IACvB,oDAAoD;IACpD,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;IACxD,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;IACxD,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,eAAe,EAAE,iBAAiB,CAAC;IACjE,OAAO,EAAE;QACP,eAAe,EAAE,CAAC;KACnB;IACD,YAAY,EAAE,CAAC,QAAQ,CAAC;IACxB,YAAY,EAAE;QACZ,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,WAAW;KAC3B;IACD,eAAe,EAAE;QACf,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAClC;IAED,WAAW,CAAC,KAA2B;QACrC,MAAM,QAAQ,GAAG,EAAC,GAAG,KAAK,EAAC,CAAC;QAC5B,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3B,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAiB,CAAC;QACpF,CAAC;QACD,OAAO,EAAC,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,QAAQ,EAAC,CAAC;IAC3D,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"gouraud-material.js","sourceRoot":"","sources":["../../../../src/modules/lighting/gouraud-material/gouraud-material.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,QAAQ,EAAC,8BAA2B;AAC5C,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAC,gDAA6C;AACxE,OAAO,EAAC,UAAU,EAAC,gDAA6C;AAUhE,yIAAyI;AACzI,MAAM,CAAC,MAAM,eAAe,GAAuC;IACjE,KAAK,EAAE,EAA0B;IAEjC,IAAI,EAAE,iBAAiB;IACvB,oDAAoD;IACpD,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;IACxD,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC;IACxD,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,eAAe,EAAE,iBAAiB,CAAC;IACjE,OAAO,EAAE;QACP,eAAe,EAAE,IAAI;KACtB;IACD,YAAY,EAAE,CAAC,QAAQ,CAAC;IACxB,YAAY,EAAE;QACZ,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,WAAW;KAC3B;IACD,eAAe,EAAE;QACf,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAClC;IAED,WAAW,CAAC,KAA2B;QACrC,MAAM,QAAQ,GAAG,EAAC,GAAG,KAAK,EAAC,CAAC;QAC5B,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3B,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAiB,CAAC;QACpF,CAAC;QACD,OAAO,EAAC,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,QAAQ,EAAC,CAAC;IAC3D,CAAC;CACF,CAAC"}
@@ -1,2 +1,2 @@
1
1
  export declare const lightingUniformsGLSL = "precision highp int;\n\n// #if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation; // 2nd order x:Constant-y:Linear-z:Exponential\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform lightingUniforms {\n int enabled;\n int lightType;\n\n int directionalLightCount;\n int pointLightCount;\n\n vec3 ambientColor;\n\n vec3 lightColor0;\n vec3 lightPosition0;\n vec3 lightDirection0;\n vec3 lightAttenuation0;\n\n vec3 lightColor1;\n vec3 lightPosition1;\n vec3 lightDirection1;\n vec3 lightAttenuation1;\n\n vec3 lightColor2;\n vec3 lightPosition2;\n vec3 lightDirection2;\n vec3 lightAttenuation2;\n} lighting;\n\nPointLight lighting_getPointLight(int index) {\n switch (index) {\n case 0:\n return PointLight(lighting.lightColor0, lighting.lightPosition0, lighting.lightAttenuation0);\n case 1:\n return PointLight(lighting.lightColor1, lighting.lightPosition1, lighting.lightAttenuation1);\n case 2:\n default: \n return PointLight(lighting.lightColor2, lighting.lightPosition2, lighting.lightAttenuation2);\n }\n}\n\nDirectionalLight lighting_getDirectionalLight(int index) {\n switch (index) {\n case 0:\n return DirectionalLight(lighting.lightColor0, lighting.lightDirection0);\n case 1:\n return DirectionalLight(lighting.lightColor1, lighting.lightDirection1);\n case 2:\n default: \n return DirectionalLight(lighting.lightColor2, lighting.lightDirection2);\n }\n} \n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n// #endif\n";
2
- //# sourceMappingURL=lighting-uniforms-glsl.d.ts.map
2
+ //# sourceMappingURL=lighting-glsl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lighting-glsl.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting-glsl.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,g3DA2EhC,CAAC"}
@@ -77,4 +77,4 @@ float getPointLightAttenuation(PointLight pointLight, float distance) {
77
77
 
78
78
  // #endif
79
79
  `;
80
- //# sourceMappingURL=lighting-uniforms-glsl.js.map
80
+ //# sourceMappingURL=lighting-glsl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lighting-glsl.js","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting-glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2E9C,CAAC"}
@@ -1,2 +1,2 @@
1
1
  export declare const lightingUniformsWGSL = "// #if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\nstruct AmbientLight {\n color: vec3<f32>,\n};\n\nstruct PointLight {\n color: vec3<f32>,\n position: vec3<f32>,\n attenuation: vec3<f32>, // 2nd order x:Constant-y:Linear-z:Exponential\n};\n\nstruct DirectionalLight {\n color: vec3<f32>,\n direction: vec3<f32>,\n};\n\nstruct lightingUniforms {\n enabled: i32,\n pointLightCount: i32,\n directionalLightCount: i32,\n\n ambientColor: vec3<f32>,\n\n // TODO - support multiple lights by uncommenting arrays below\n lightType: i32,\n lightColor: vec3<f32>,\n lightDirection: vec3<f32>,\n lightPosition: vec3<f32>,\n lightAttenuation: vec3<f32>,\n\n // AmbientLight ambientLight;\n // PointLight pointLight[MAX_LIGHTS];\n // DirectionalLight directionalLight[MAX_LIGHTS];\n};\n\n// Binding 0:1 is reserved for lighting (Note: could go into separate bind group as it is stable across draw calls)\n@binding(1) @group(0) var<uniform> lighting : lightingUniforms;\n\nfn lighting_getPointLight(index: i32) -> PointLight {\n return PointLight(lighting.lightColor, lighting.lightPosition, lighting.lightAttenuation);\n}\n\nfn lighting_getDirectionalLight(index: i32) -> DirectionalLight {\n return DirectionalLight(lighting.lightColor, lighting.lightDirection);\n} \n\nfn getPointLightAttenuation(pointLight: PointLight, distance: f32) -> f32 {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n";
2
- //# sourceMappingURL=lighting-uniforms-wgsl.d.ts.map
2
+ //# sourceMappingURL=lighting-wgsl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lighting-wgsl.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting-wgsl.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,gjDAoDhC,CAAC"}
@@ -54,4 +54,4 @@ fn getPointLightAttenuation(pointLight: PointLight, distance: f32) -> f32 {
54
54
  + pointLight.attenuation.z * distance * distance;
55
55
  }
56
56
  `;
57
- //# sourceMappingURL=lighting-uniforms-wgsl.js.map
57
+ //# sourceMappingURL=lighting-wgsl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lighting-wgsl.js","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting-wgsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoD9C,CAAC"}
@@ -58,9 +58,7 @@ export declare const lighting: {
58
58
  readonly props: LightingProps;
59
59
  readonly uniforms: LightingUniforms;
60
60
  readonly name: "lighting";
61
- readonly defines: {
62
- readonly MAX_LIGHTS: 3;
63
- };
61
+ readonly defines: {};
64
62
  readonly uniformTypes: {
65
63
  readonly enabled: "i32";
66
64
  readonly lightType: "i32";
@@ -1 +1 @@
1
- {"version":3,"file":"lighting.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAQhD,mCAAmC;AAEnC,oBAAY,UAAU;IACpB,KAAK,IAAI;IACT,WAAW,IAAI;CAChB;AAED,4BAA4B;AAE5B,MAAM,MAAM,KAAK,GAAG,YAAY,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,kBAAkB;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;CAC3C,CAAC;AAEF,gCAAgC;AAChC,eAAO,MAAM,QAAQ;oBACN,aAAa;uBACV,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DoC,CAAC;AAEvE,iBAAS,WAAW,CAClB,KAAK,CAAC,EAAE,aAAa,EACrB,YAAY,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAC3C,gBAAgB,CAoClB"}
1
+ {"version":3,"file":"lighting.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAQhD,mCAAmC;AAEnC,oBAAY,UAAU;IACpB,KAAK,IAAI;IACT,WAAW,IAAI;CAChB;AAED,4BAA4B;AAE5B,MAAM,MAAM,KAAK,GAAG,YAAY,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,kBAAkB;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxC,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;CAC3C,CAAC;AAEF,gCAAgC;AAChC,eAAO,MAAM,QAAQ;oBACN,aAAa;uBACV,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DoC,CAAC;AAEvE,iBAAS,WAAW,CAClB,KAAK,CAAC,EAAE,aAAa,EACrB,YAAY,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAC3C,gBAAgB,CAoClB"}
@@ -2,10 +2,10 @@
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
4
  import { log } from '@luma.gl/core';
5
- import { lightingUniformsGLSL } from "./lighting-uniforms-glsl.js";
6
- import { lightingUniformsWGSL } from "./lighting-uniforms-wgsl.js";
5
+ import { lightingUniformsGLSL } from "./lighting-glsl.js";
6
+ import { lightingUniformsWGSL } from "./lighting-wgsl.js";
7
7
  /** Max number of supported lights (in addition to ambient light */
8
- const MAX_LIGHTS = 3;
8
+ const MAX_LIGHTS = 5;
9
9
  /** Whether to divide */
10
10
  const COLOR_FACTOR = 255.0;
11
11
  /** Shader type field for lights */
@@ -21,7 +21,7 @@ export const lighting = {
21
21
  uniforms: {},
22
22
  name: 'lighting',
23
23
  defines: {
24
- MAX_LIGHTS
24
+ // MAX_LIGHTS
25
25
  },
26
26
  uniformTypes: {
27
27
  enabled: 'i32',
@@ -1 +1 @@
1
- {"version":3,"file":"lighting.js","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,OAAO,EAAC,oBAAoB,EAAC,oCAAiC;AAC9D,OAAO,EAAC,oBAAoB,EAAC,oCAAiC;AAG9D,mEAAmE;AACnE,MAAM,UAAU,GAAG,CAAC,CAAC;AAErB,wBAAwB;AACxB,MAAM,YAAY,GAAG,KAAK,CAAC;AAE3B,mCAAmC;AACnC,qCAAqC;AACrC,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,6CAAS,CAAA;IACT,yDAAe,CAAA;AACjB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AA0DD,gCAAgC;AAChC,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK,EAAE,EAAmB;IAC1B,QAAQ,EAAE,EAAsB;IAEhC,IAAI,EAAE,UAAU;IAEhB,OAAO,EAAE;QACP,UAAU;KACX;IAED,YAAY,EAAE;QACZ,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,KAAK;QAEhB,qBAAqB,EAAE,KAAK;QAC5B,eAAe,EAAE,KAAK;QAEtB,iBAAiB,EAAE,WAAW;QAE9B,8DAA8D;QAC9D,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,WAAW;QAC3B,iDAAiD;QACjD,eAAe,EAAE,WAAW;QAC5B,iBAAiB,EAAE,WAAW;QAE9B,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,WAAW;QAC3B,eAAe,EAAE,WAAW;QAC5B,iBAAiB,EAAE,WAAW;QAC9B,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,WAAW;QAC3B,eAAe,EAAE,WAAW;QAC5B,iBAAiB,EAAE,WAAW;KAC/B;IAED,eAAe,EAAE;QACf,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,UAAU,CAAC,KAAK;QAE3B,qBAAqB,EAAE,CAAC;QACxB,eAAe,EAAE,CAAC;QAElB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QAClC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtB,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,iDAAiD;QACjD,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1B,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAE5B,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtB,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1B,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5B,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtB,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1B,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;KAC7B;IACD,MAAM,EAAE,oBAAoB;IAC5B,EAAE,EAAE,oBAAoB;IACxB,EAAE,EAAE,oBAAoB;IAExB,WAAW;CACyD,CAAC;AAEvE,SAAS,WAAW,CAClB,KAAqB,EACrB,eAA0C,EAAE;IAE5C,8BAA8B;IAC9B,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,EAAC,GAAG,KAAK,EAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAEnC,cAAc;IACd,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAC,GAAG,QAAQ,CAAC,eAAe,EAAC,CAAC;IACvC,CAAC;IACD,uEAAuE;IACvE,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,KAAK,GAAG,EAAC,GAAG,KAAK,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAC,CAAC;IAC5E,CAAC;IAED,4BAA4B;IAC5B,MAAM,EAAC,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAC,GAAG,KAAK,IAAI,EAAE,CAAC;IACnE,MAAM,SAAS,GACb,YAAY;QACZ,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;QACvC,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEtD,8CAA8C;IAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,EAAC,GAAG,QAAQ,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG;QACf,GAAG,QAAQ,CAAC,eAAe;QAC3B,GAAG,YAAY;QACf,GAAG,sBAAsB,CAAC,EAAC,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAC,CAAC;KAC1E,CAAC;IAEF,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAChC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB,CAAC,EAC9B,YAAY,EACZ,WAAW,GAAG,EAAE,EAChB,iBAAiB,GAAG,EAAE,EACR;IACd,MAAM,mBAAmB,GAA8B,EAAE,CAAC;IAE1D,mBAAmB,CAAC,iBAAiB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAEnE,IAAI,YAAY,GAAc,CAAC,CAAC;IAEhC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,mBAAmB,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC;QAEjD,MAAM,CAAC,GAAG,YAAyB,CAAC;QACpC,mBAAmB,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QACjE,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC;QAC/D,mBAAmB,CAAC,mBAAmB,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClF,YAAY,EAAE,CAAC;IACjB,CAAC;IAED,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;QACjD,mBAAmB,CAAC,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC;QAEvD,MAAM,CAAC,GAAG,YAAyB,CAAC;QACpC,mBAAmB,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACvE,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,SAAS,CAAC;QACvE,YAAY,EAAE,CAAC;IACjB,CAAC;IAED,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,mBAAmB,CAAC,qBAAqB,GAAG,iBAAiB,CAAC,MAAM,CAAC;IACrE,mBAAmB,CAAC,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC;IAEzD,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAe;IACxC,MAAM,YAAY,GAAkB,EAAC,WAAW,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAC,CAAC;IAC7E,KAAK,MAAM,KAAK,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC;QACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,SAAS;gBACZ,qCAAqC;gBACrC,2CAA2C;gBAC3C,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;gBAClC,MAAM;YACR,KAAK,aAAa;gBAChB,YAAY,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC5C,MAAM;YACR,KAAK,OAAO;gBACV,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtC,MAAM;YACR,QAAQ;YACR,2BAA2B;YAC3B,4BAA4B;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,uEAAuE;AACvE,SAAS,YAAY,CACnB,WAAiE,EAAE;IAEnE,MAAM,EAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,GAAG,GAAG,EAAC,GAAG,QAAQ,CAAC;IACtD,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,YAAY,CAAiB,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"lighting.js","sourceRoot":"","sources":["../../../../src/modules/lighting/lights/lighting.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dirlight.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/no-material/dirlight.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAGhD,MAAM,MAAM,aAAa,GAAG;IAC1B,cAAc,CAAC,EAAE,YAAY,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAG7C,eAAO,MAAM,WAAW,guBA0BvB,CAAC;AAwBF;;GAEG;AACH,eAAO,MAAM,QAAQ;oBACN,aAAa;uBACV,gBAAgB;;;;;;;;;;;;;CAqBgC,CAAC;AAEnE,iBAAS,WAAW,CAAC,IAAI,GAAE,aAAwC,GAAG,gBAAgB,CAOrF"}
1
+ {"version":3,"file":"dirlight.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/no-material/dirlight.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAGhD,MAAM,MAAM,aAAa,GAAG;IAC1B,cAAc,CAAC,EAAE,YAAY,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAG7C,eAAO,MAAM,WAAW,guBA0BvB,CAAC;AAwBF;;GAEG;AACH,eAAO,MAAM,QAAQ;oBACN,aAAa;uBACV,gBAAgB;;;;;;;;;;;;;CAqBgC,CAAC;AAEnE,iBAAS,WAAW,CAAC,IAAI,GAAE,aAAwC,GAAG,gBAAgB,CAMrF"}
@@ -77,8 +77,7 @@ export const dirlight = {
77
77
  function getUniforms(opts = dirlight.defaultUniforms) {
78
78
  const uniforms = {};
79
79
  if (opts.lightDirection) {
80
- // eslint-disable-next-line camelcase
81
- uniforms.dirlight_uLightDirection = opts.lightDirection;
80
+ uniforms.lightDirection = opts.lightDirection;
82
81
  }
83
82
  return uniforms;
84
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dirlight.js","sourceRoot":"","sources":["../../../../src/modules/lighting/no-material/dirlight.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAWpC,OAAO;AACP,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BrC,CAAC;AAEF,MAAM,OAAO,GAAG,UAAU,CAAC;;;;;;CAM1B,CAAC;AAEF,MAAM,OAAO,GAAG,UAAU,CAAC;;;;;;;;;;;;CAY1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK,EAAE,EAAmB;IAC1B,QAAQ,EAAE,EAAsB;IAEhC,IAAI,EAAE,UAAU;IAChB,YAAY,EAAE,EAAE;IAChB,MAAM,EAAE,WAAW;IACnB,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,OAAO;IAEX,oBAAoB;IACpB,MAAM;IACN,gCAAgC;IAChC,wBAAwB;IACxB,MAAM;IACN,KAAK;IACL,YAAY,EAAE;QACZ,cAAc,EAAE,WAAW;KAC5B;IACD,eAAe,EAAE;QACf,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;KAC1B;IACD,WAAW;CACqD,CAAC;AAEnE,SAAS,WAAW,CAAC,OAAsB,QAAQ,CAAC,eAAe;IACjE,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,qCAAqC;QACrC,QAAQ,CAAC,wBAAwB,GAAG,IAAI,CAAC,cAAc,CAAC;IAC1D,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"dirlight.js","sourceRoot":"","sources":["../../../../src/modules/lighting/no-material/dirlight.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAWpC,OAAO;AACP,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BrC,CAAC;AAEF,MAAM,OAAO,GAAG,UAAU,CAAC;;;;;;CAM1B,CAAC;AAEF,MAAM,OAAO,GAAG,UAAU,CAAC;;;;;;;;;;;;CAY1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK,EAAE,EAAmB;IAC1B,QAAQ,EAAE,EAAsB;IAEhC,IAAI,EAAE,UAAU;IAChB,YAAY,EAAE,EAAE;IAChB,MAAM,EAAE,WAAW;IACnB,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,OAAO;IAEX,oBAAoB;IACpB,MAAM;IACN,gCAAgC;IAChC,wBAAwB;IACxB,MAAM;IACN,KAAK;IACL,YAAY,EAAE;QACZ,cAAc,EAAE,WAAW;KAC5B;IACD,eAAe,EAAE;QACf,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;KAC1B;IACD,WAAW;CACqD,CAAC;AAEnE,SAAS,WAAW,CAAC,OAAsB,QAAQ,CAAC,eAAe;IACjE,MAAM,QAAQ,GAAqB,EAAE,CAAC;IACtC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IAChD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,2 +1,3 @@
1
+ export declare const vs = "out vec3 pbr_vPosition;\nout vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nout mat3 pbr_vTBN;\n# else\nout vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = pbrProjection.modelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(pbrProjection.normalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(pbrProjection.modelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else // HAS_TANGENTS != 1\n pbr_vNormal = normalize(vec3(pbrProjection.modelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n";
1
2
  export declare const fs = "precision highp float;\n\nuniform pbrMaterialUniforms {\n // Material is unlit\n bool unlit;\n\n // Base color map\n bool baseColorMapEnabled;\n vec4 baseColorFactor;\n\n bool normalMapEnabled; \n float normalScale; // #ifdef HAS_NORMALMAP\n\n bool emissiveMapEnabled;\n vec3 emissiveFactor; // #ifdef HAS_EMISSIVEMAP\n\n vec2 metallicRoughnessValues;\n bool metallicRoughnessMapEnabled;\n\n bool occlusionMapEnabled;\n float occlusionStrength; // #ifdef HAS_OCCLUSIONMAP\n \n bool alphaCutoffEnabled;\n float alphaCutoff; // #ifdef ALPHA_CUTOFF\n \n // IBL\n bool IBLenabled;\n vec2 scaleIBLAmbient; // #ifdef USE_IBL\n \n // debugging flags used for shader output of intermediate PBR variables\n // #ifdef PBR_DEBUG\n vec4 scaleDiffBaseMR;\n vec4 scaleFGDSpec;\n // #endif\n} pbrMaterial;\n\n// Samplers\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D pbr_baseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D pbr_normalSampler;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D pbr_emissiveSampler;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D pbr_metallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D pbr_occlusionSampler;\n#endif\n#ifdef USE_IBL\nuniform samplerCube pbr_diffuseEnvSampler;\nuniform samplerCube pbr_specularEnvSampler;\nuniform sampler2D pbr_brdfLUT;\n#endif\n\n// Inputs from vertex shader\n\nin vec3 pbr_vPosition;\nin vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nin mat3 pbr_vTBN;\n#else\nin vec3 pbr_vNormal;\n#endif\n#endif\n\n// Encapsulate the various inputs used by the various functions in the shading equation\n// We store values in this struct to simplify the integration of alternative implementations\n// of the shading terms, outlined in the Readme.MD Appendix.\nstruct PBRInfo {\n float NdotL; // cos angle between normal and light direction\n float NdotV; // cos angle between normal and view direction\n float NdotH; // cos angle between normal and half vector\n float LdotH; // cos angle between light direction and half vector\n float VdotH; // cos angle between view direction and half vector\n float perceptualRoughness; // roughness value, as authored by the model creator (input to shader)\n float metalness; // metallic value at the surface\n vec3 reflectance0; // full reflectance color (normal incidence angle)\n vec3 reflectance90; // reflectance color at grazing angle\n float alphaRoughness; // roughness mapped to a more linear change in the roughness (proposed by [2])\n vec3 diffuseColor; // color contribution from diffuse lighting\n vec3 specularColor; // color contribution from specular lighting\n vec3 n; // normal at surface point\n vec3 v; // vector from surface point to camera\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else // SRGB_FAST_APPROXIMATION\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif //SRGB_FAST_APPROXIMATION\n return vec4(linOut,srgbIn.w);;\n#else //MANUAL_SRGB\n return srgbIn;\n#endif //MANUAL_SRGB\n}\n\n// Find the normal for this fragment, pulling either from a predefined normal map\n// or from the interpolated mesh normal and tangent attributes.\nvec3 getNormal()\n{\n // Retrieve the tangent space matrix\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else // HAS_TANGENTS\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture(pbr_normalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(pbrMaterial.normalScale, pbrMaterial.normalScale, 1.0)));\n#else\n // The tbn matrix is linearly interpolated, so we need to re-normalize\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n// Calculation of the lighting contribution from an optional Image Based Light source.\n// Precomputed Environment Maps are required uniform inputs and are computed as outlined in [1].\n// See our README.md on Environment Maps [3] for additional discussion.\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInfo, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0; // resolution of 512x512\n float lod = (pbrInfo.perceptualRoughness * mipCount);\n // retrieve a scale and bias to F0. See [1], Figure 3\n vec3 brdf = SRGBtoLINEAR(texture(pbr_brdfLUT,\n vec2(pbrInfo.NdotV, 1.0 - pbrInfo.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(texture(pbr_diffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(texture(pbr_specularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(texture(pbr_specularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInfo.diffuseColor;\n vec3 specular = specularLight * (pbrInfo.specularColor * brdf.x + brdf.y);\n\n // For presentation, this allows us to disable IBL terms\n diffuse *= pbrMaterial.scaleIBLAmbient.x;\n specular *= pbrMaterial.scaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n// Basic Lambertian diffuse\n// Implementation from Lambert's Photometria https://archive.org/details/lambertsphotome00lambgoog\n// See also [1], Equation 1\nvec3 diffuse(PBRInfo pbrInfo)\n{\n return pbrInfo.diffuseColor / M_PI;\n}\n\n// The following equation models the Fresnel reflectance term of the spec equation (aka F())\n// Implementation of fresnel from [4], Equation 15\nvec3 specularReflection(PBRInfo pbrInfo)\n{\n return pbrInfo.reflectance0 +\n (pbrInfo.reflectance90 - pbrInfo.reflectance0) *\n pow(clamp(1.0 - pbrInfo.VdotH, 0.0, 1.0), 5.0);\n}\n\n// This calculates the specular geometric attenuation (aka G()),\n// where rougher material will reflect less light back to the viewer.\n// This implementation is based on [1] Equation 4, and we adopt their modifications to\n// alphaRoughness as input as originally proposed in [2].\nfloat geometricOcclusion(PBRInfo pbrInfo)\n{\n float NdotL = pbrInfo.NdotL;\n float NdotV = pbrInfo.NdotV;\n float r = pbrInfo.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n// The following equation(s) model the distribution of microfacet normals across\n// the area being drawn (aka D())\n// Implementation from \"Average Irregularity Representation of a Roughened Surface\n// for Ray Reflection\" by T. S. Trowbridge, and K. P. Reitz\n// Follows the distribution function recommended in the SIGGRAPH 2013 course notes\n// from EPIC Games [1], Equation 3.\nfloat microfacetDistribution(PBRInfo pbrInfo)\n{\n float roughnessSq = pbrInfo.alphaRoughness * pbrInfo.alphaRoughness;\n float f = (pbrInfo.NdotH * roughnessSq - pbrInfo.NdotH) * pbrInfo.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInfo) {\n pbrInfo.NdotL = 1.0;\n pbrInfo.NdotH = 0.0;\n pbrInfo.LdotH = 0.0;\n pbrInfo.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInfo, vec3 lightDirection) {\n vec3 n = pbrInfo.n;\n vec3 v = pbrInfo.v;\n vec3 l = normalize(lightDirection); // Vector from surface point to light\n vec3 h = normalize(l+v); // Half vector between both l and v\n\n pbrInfo.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInfo.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInfo.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInfo.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInfo, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInfo, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInfo, vec3 lightColor) {\n // Calculate the shading terms for the microfacet specular shading model\n vec3 F = specularReflection(pbrInfo);\n float G = geometricOcclusion(pbrInfo);\n float D = microfacetDistribution(pbrInfo);\n\n // Calculation of analytical lighting contribution\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInfo);\n vec3 specContrib = F * G * D / (4.0 * pbrInfo.NdotL * pbrInfo.NdotV);\n // Obtain final intensity as reflectance (BRDF) scaled by the energy of the light (cosine law)\n return pbrInfo.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n // The albedo may be defined from a base texture or a flat color\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture(pbr_baseColorSampler, pbr_vUV)) * pbrMaterial.baseColorFactor;\n#else\n vec4 baseColor = pbrMaterial.baseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < pbrMaterial.alphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbrMaterial.unlit){\n color.rgb = baseColor.rgb;\n }\n else{\n // Metallic and Roughness material properties are packed together\n // In glTF, these factors can be specified by fixed scalar values\n // or from a metallic-roughness map\n float perceptualRoughness = pbrMaterial.metallicRoughnessValues.y;\n float metallic = pbrMaterial.metallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n // Roughness is stored in the 'g' channel, metallic is stored in the 'b' channel.\n // This layout intentionally reserves the 'r' channel for (optional) occlusion map data\n vec4 mrSample = texture(pbr_metallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n // Roughness is authored as perceptual roughness; as is convention,\n // convert to material roughness by squaring the perceptual roughness [2].\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n\n // Compute reflectance.\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n // For typical incident reflectance range (between 4% to 100%) set the grazing\n // reflectance to 100% for typical fresnel effect.\n // For very low reflectance range on highly diffuse objects (below 4%),\n // incrementally reduce grazing reflecance to 0%.\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal(); // normal at surface point\n vec3 v = normalize(pbrProjection.camera - pbr_vPosition); // Vector from surface point to camera\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInfo = PBRInfo(\n 0.0, // NdotL\n NdotV,\n 0.0, // NdotH\n 0.0, // LdotH\n 0.0, // VdotH\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n\n#ifdef USE_LIGHTS\n // Apply ambient light\n PBRInfo_setAmbientLight(pbrInfo);\n color += calculateFinalColor(pbrInfo, lighting.ambientColor);\n\n // Apply directional light\n for(int i = 0; i < lighting.directionalLightCount; i++) {\n if (i < lighting.directionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInfo, lighting_getDirectionalLight(i).direction);\n color += calculateFinalColor(pbrInfo, lighting_getDirectionalLight(i).color);\n }\n }\n\n // Apply point light\n for(int i = 0; i < lighting.pointLightCount; i++) {\n if (i < lighting.pointLightCount) {\n PBRInfo_setPointLight(pbrInfo, lighting_getPointLight(i));\n float attenuation = getPointLightAttenuation(lighting_getPointLight(i), distance(lighting_getPointLight(i).position, pbr_vPosition));\n color += calculateFinalColor(pbrInfo, lighting_getPointLight(i).color / attenuation);\n }\n }\n#endif\n\n // Calculate lighting contribution from image based lighting source (IBL)\n#ifdef USE_IBL\n if (pbrMaterial.IBLenabled) {\n color += getIBLContribution(pbrInfo, n, reflection);\n }\n#endif\n\n // Apply optional PBR terms for additional (optional) shading\n#ifdef HAS_OCCLUSIONMAP\n if (pbrMaterial.occlusionMapEnabled) {\n float ao = texture(pbr_occlusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, pbrMaterial.occlusionStrength);\n }\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n if (pbrMaterial.emissiveMapEnabled) {\n vec3 emissive = SRGBtoLINEAR(texture(pbr_emissiveSampler, pbr_vUV)).rgb * pbrMaterial.emissiveFactor;\n color += emissive;\n }\n#endif\n\n // This section uses mix to override final color for reference app visualization\n // of various parameters in the lighting equation.\n#ifdef PBR_DEBUG\n // TODO: Figure out how to debug multiple lights\n\n // color = mix(color, F, pbr_scaleFGDSpec.x);\n // color = mix(color, vec3(G), pbr_scaleFGDSpec.y);\n // color = mix(color, vec3(D), pbr_scaleFGDSpec.z);\n // color = mix(color, specContrib, pbr_scaleFGDSpec.w);\n\n // color = mix(color, diffuseContrib, pbr_scaleDiffBaseMR.x);\n color = mix(color, baseColor.rgb, pbrMaterial.scaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), pbrMaterial.scaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), pbrMaterial.scaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n";
2
- //# sourceMappingURL=pbr-fragment-glsl.d.ts.map
3
+ //# sourceMappingURL=pbr-material-glsl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbr-material-glsl.d.ts","sourceRoot":"","sources":["../../../../src/modules/lighting/pbr-material/pbr-material-glsl.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,EAAE,m3BAkCd,CAAC;AAEF,eAAO,MAAM,EAAE,wwcAkZd,CAAC"}
@@ -6,6 +6,41 @@
6
6
  // This fragment shader defines a reference implementation for Physically Based Shading of
7
7
  // a microfacet surface material defined by a glTF model.
8
8
  // TODO - better do the checks outside of shader
9
+ export const vs = /* glsl */ `\
10
+ out vec3 pbr_vPosition;
11
+ out vec2 pbr_vUV;
12
+
13
+ #ifdef HAS_NORMALS
14
+ # ifdef HAS_TANGENTS
15
+ out mat3 pbr_vTBN;
16
+ # else
17
+ out vec3 pbr_vNormal;
18
+ # endif
19
+ #endif
20
+
21
+ void pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)
22
+ {
23
+ vec4 pos = pbrProjection.modelMatrix * position;
24
+ pbr_vPosition = vec3(pos.xyz) / pos.w;
25
+
26
+ #ifdef HAS_NORMALS
27
+ #ifdef HAS_TANGENTS
28
+ vec3 normalW = normalize(vec3(pbrProjection.normalMatrix * vec4(normal.xyz, 0.0)));
29
+ vec3 tangentW = normalize(vec3(pbrProjection.modelMatrix * vec4(tangent.xyz, 0.0)));
30
+ vec3 bitangentW = cross(normalW, tangentW) * tangent.w;
31
+ pbr_vTBN = mat3(tangentW, bitangentW, normalW);
32
+ #else // HAS_TANGENTS != 1
33
+ pbr_vNormal = normalize(vec3(pbrProjection.modelMatrix * vec4(normal.xyz, 0.0)));
34
+ #endif
35
+ #endif
36
+
37
+ #ifdef HAS_UV
38
+ pbr_vUV = uv;
39
+ #else
40
+ pbr_vUV = vec2(0.,0.);
41
+ #endif
42
+ }
43
+ `;
9
44
  export const fs = /* glsl */ `\
10
45
  precision highp float;
11
46
 
@@ -409,4 +444,4 @@ vec4 pbr_filterColor(vec4 colorUnused)
409
444
  return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);
410
445
  }
411
446
  `;
412
- //# sourceMappingURL=pbr-fragment-glsl.js.map
447
+ //# sourceMappingURL=pbr-material-glsl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbr-material-glsl.js","sourceRoot":"","sources":["../../../../src/modules/lighting/pbr-material/pbr-material-glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,eAAe;AACf,yEAAyE;AACzE,0FAA0F;AAC1F,yDAAyD;AAEzD,gDAAgD;AAEhD,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC5B,CAAC;AAEF,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkZ5B,CAAC"}