@babylonjs/core 6.14.2 → 6.16.0

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 (1070) hide show
  1. package/Actions/actionManager.js +8 -3
  2. package/Actions/actionManager.js.map +1 -1
  3. package/Behaviors/Cameras/framingBehavior.d.ts +2 -1
  4. package/Behaviors/Cameras/framingBehavior.js +3 -1
  5. package/Behaviors/Cameras/framingBehavior.js.map +1 -1
  6. package/Bones/skeleton.js +1 -0
  7. package/Bones/skeleton.js.map +1 -1
  8. package/Compute/computeEffect.js +1 -1
  9. package/Compute/computeEffect.js.map +1 -1
  10. package/{Materials/Node/nodeMaterialDecorator.d.ts → Decorators/nodeDecorator.d.ts} +6 -7
  11. package/{Materials/Node/nodeMaterialDecorator.js → Decorators/nodeDecorator.js} +3 -3
  12. package/Decorators/nodeDecorator.js.map +1 -0
  13. package/Engines/Processors/shaderCodeNode.js +1 -1
  14. package/Engines/Processors/shaderCodeNode.js.map +1 -1
  15. package/Engines/WebGL/webGL2ShaderProcessors.js +2 -1
  16. package/Engines/WebGL/webGL2ShaderProcessors.js.map +1 -1
  17. package/Engines/WebGPU/webgpuShaderProcessor.js +3 -0
  18. package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
  19. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +11 -10
  20. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  21. package/Engines/WebGPU/webgpuTextureHelper.js +3 -3
  22. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  23. package/Engines/nativeEngine.js +5 -4
  24. package/Engines/nativeEngine.js.map +1 -1
  25. package/Engines/thinEngine.d.ts +2 -0
  26. package/Engines/thinEngine.js +35 -4
  27. package/Engines/thinEngine.js.map +1 -1
  28. package/Engines/webgpuEngine.js +12 -2
  29. package/Engines/webgpuEngine.js.map +1 -1
  30. package/FlowGraph/Blocks/Data/flowGraphBinaryOpBlocks.d.ts +34 -0
  31. package/FlowGraph/Blocks/Data/flowGraphBinaryOpBlocks.js +29 -0
  32. package/FlowGraph/Blocks/Data/flowGraphBinaryOpBlocks.js.map +1 -0
  33. package/FlowGraph/Blocks/Data/index.d.ts +1 -0
  34. package/FlowGraph/Blocks/Data/index.js +2 -0
  35. package/FlowGraph/Blocks/Data/index.js.map +1 -0
  36. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +23 -0
  37. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +51 -0
  38. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -0
  39. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +20 -0
  40. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +29 -0
  41. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -0
  42. package/FlowGraph/Blocks/Event/index.d.ts +2 -0
  43. package/FlowGraph/Blocks/Event/index.js +3 -0
  44. package/FlowGraph/Blocks/Event/index.js.map +1 -0
  45. package/FlowGraph/Blocks/Execution/flowGraphForLoopBlock.d.ts +43 -0
  46. package/FlowGraph/Blocks/Execution/flowGraphForLoopBlock.js +40 -0
  47. package/FlowGraph/Blocks/Execution/flowGraphForLoopBlock.js.map +1 -0
  48. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +18 -0
  49. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +21 -0
  50. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -0
  51. package/FlowGraph/Blocks/Execution/index.d.ts +2 -0
  52. package/FlowGraph/Blocks/Execution/index.js +3 -0
  53. package/FlowGraph/Blocks/Execution/index.js.map +1 -0
  54. package/FlowGraph/Blocks/index.d.ts +3 -0
  55. package/FlowGraph/Blocks/index.js +5 -0
  56. package/FlowGraph/Blocks/index.js.map +1 -0
  57. package/FlowGraph/flowGraph.d.ts +34 -0
  58. package/FlowGraph/flowGraph.js +54 -0
  59. package/FlowGraph/flowGraph.js.map +1 -0
  60. package/FlowGraph/flowGraphBlock.d.ts +33 -0
  61. package/FlowGraph/flowGraphBlock.js +39 -0
  62. package/FlowGraph/flowGraphBlock.js.map +1 -0
  63. package/FlowGraph/flowGraphConnection.d.ts +38 -0
  64. package/FlowGraph/flowGraphConnection.js +40 -0
  65. package/FlowGraph/flowGraphConnection.js.map +1 -0
  66. package/FlowGraph/flowGraphDataConnection.d.ts +15 -0
  67. package/FlowGraph/flowGraphDataConnection.js +30 -0
  68. package/FlowGraph/flowGraphDataConnection.js.map +1 -0
  69. package/FlowGraph/flowGraphEventBlock.d.ts +20 -0
  70. package/FlowGraph/flowGraphEventBlock.js +15 -0
  71. package/FlowGraph/flowGraphEventBlock.js.map +1 -0
  72. package/FlowGraph/flowGraphExecutionBlock.d.ts +24 -0
  73. package/FlowGraph/flowGraphExecutionBlock.js +27 -0
  74. package/FlowGraph/flowGraphExecutionBlock.js.map +1 -0
  75. package/FlowGraph/flowGraphSignalConnection.d.ts +14 -0
  76. package/FlowGraph/flowGraphSignalConnection.js +22 -0
  77. package/FlowGraph/flowGraphSignalConnection.js.map +1 -0
  78. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +7 -0
  79. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +8 -0
  80. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -0
  81. package/FlowGraph/index.d.ts +6 -0
  82. package/FlowGraph/index.js +8 -0
  83. package/FlowGraph/index.js.map +1 -0
  84. package/Gizmos/lightGizmo.d.ts +5 -0
  85. package/Gizmos/lightGizmo.js +21 -7
  86. package/Gizmos/lightGizmo.js.map +1 -1
  87. package/Gizmos/planeRotationGizmo.d.ts +6 -0
  88. package/Gizmos/planeRotationGizmo.js +5 -1
  89. package/Gizmos/planeRotationGizmo.js.map +1 -1
  90. package/Gizmos/rotationGizmo.d.ts +8 -0
  91. package/Gizmos/rotationGizmo.js +15 -0
  92. package/Gizmos/rotationGizmo.js.map +1 -1
  93. package/Layers/layer.js +1 -1
  94. package/Layers/layer.js.map +1 -1
  95. package/Lights/Shadows/cascadedShadowGenerator.d.ts +2 -1
  96. package/Lights/Shadows/cascadedShadowGenerator.js +4 -3
  97. package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
  98. package/Lights/Shadows/shadowGenerator.d.ts +3 -1
  99. package/Lights/Shadows/shadowGenerator.js +4 -2
  100. package/Lights/Shadows/shadowGenerator.js.map +1 -1
  101. package/Lights/directionalLight.d.ts +1 -1
  102. package/Lights/directionalLight.js.map +1 -1
  103. package/Lights/hemisphericLight.d.ts +1 -1
  104. package/Lights/hemisphericLight.js.map +1 -1
  105. package/Lights/light.d.ts +1 -1
  106. package/Lights/light.js.map +1 -1
  107. package/Lights/pointLight.d.ts +1 -1
  108. package/Lights/pointLight.js.map +1 -1
  109. package/Lights/spotLight.d.ts +1 -1
  110. package/Lights/spotLight.js.map +1 -1
  111. package/Loading/sceneLoader.js +2 -0
  112. package/Loading/sceneLoader.js.map +1 -1
  113. package/Materials/Node/Blocks/Dual/currentScreenBlock.js +13 -13
  114. package/Materials/Node/Blocks/Dual/currentScreenBlock.js.map +1 -1
  115. package/Materials/Node/Blocks/Dual/fogBlock.js +6 -6
  116. package/Materials/Node/Blocks/Dual/fogBlock.js.map +1 -1
  117. package/Materials/Node/Blocks/Dual/imageSourceBlock.js +11 -11
  118. package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
  119. package/Materials/Node/Blocks/Dual/lightBlock.js +16 -16
  120. package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
  121. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +27 -27
  122. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  123. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +1 -1
  124. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
  125. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +8 -8
  126. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
  127. package/Materials/Node/Blocks/Dual/textureBlock.js +28 -28
  128. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  129. package/Materials/Node/Blocks/Fragment/TBNBlock.js +3 -5
  130. package/Materials/Node/Blocks/Fragment/TBNBlock.js.map +1 -1
  131. package/Materials/Node/Blocks/Fragment/derivativeBlock.js +2 -2
  132. package/Materials/Node/Blocks/Fragment/derivativeBlock.js.map +1 -1
  133. package/Materials/Node/Blocks/Fragment/discardBlock.js +1 -1
  134. package/Materials/Node/Blocks/Fragment/discardBlock.js.map +1 -1
  135. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js +1 -1
  136. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js.map +1 -1
  137. package/Materials/Node/Blocks/Fragment/fragDepthBlock.js +1 -1
  138. package/Materials/Node/Blocks/Fragment/fragDepthBlock.js.map +1 -1
  139. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +15 -15
  140. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
  141. package/Materials/Node/Blocks/Fragment/frontFacingBlock.js +1 -1
  142. package/Materials/Node/Blocks/Fragment/frontFacingBlock.js.map +1 -1
  143. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js +6 -6
  144. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js.map +1 -1
  145. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js +13 -13
  146. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js.map +1 -1
  147. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +13 -13
  148. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  149. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js +1 -1
  150. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js.map +1 -1
  151. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js +5 -5
  152. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js.map +1 -1
  153. package/Materials/Node/Blocks/Fragment/shadowMapBlock.js +7 -7
  154. package/Materials/Node/Blocks/Fragment/shadowMapBlock.js.map +1 -1
  155. package/Materials/Node/Blocks/Fragment/twirlBlock.js +3 -3
  156. package/Materials/Node/Blocks/Fragment/twirlBlock.js.map +1 -1
  157. package/Materials/Node/Blocks/Input/inputBlock.js +11 -11
  158. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  159. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +6 -6
  160. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  161. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +9 -9
  162. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  163. package/Materials/Node/Blocks/PBR/iridescenceBlock.js +1 -1
  164. package/Materials/Node/Blocks/PBR/iridescenceBlock.js.map +1 -1
  165. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +47 -47
  166. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  167. package/Materials/Node/Blocks/PBR/reflectionBlock.js +9 -9
  168. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  169. package/Materials/Node/Blocks/PBR/refractionBlock.js +14 -14
  170. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  171. package/Materials/Node/Blocks/PBR/sheenBlock.js +4 -4
  172. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  173. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +1 -1
  174. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  175. package/Materials/Node/Blocks/Particle/particleTextureBlock.js +8 -8
  176. package/Materials/Node/Blocks/Particle/particleTextureBlock.js.map +1 -1
  177. package/Materials/Node/Blocks/Teleport/index.d.ts +2 -0
  178. package/Materials/Node/Blocks/Teleport/index.js +3 -0
  179. package/Materials/Node/Blocks/Teleport/index.js.map +1 -0
  180. package/Materials/Node/Blocks/Teleport/teleportInBlock.d.ts +42 -0
  181. package/Materials/Node/Blocks/Teleport/teleportInBlock.js +83 -0
  182. package/Materials/Node/Blocks/Teleport/teleportInBlock.js.map +1 -0
  183. package/Materials/Node/Blocks/Teleport/teleportOutBlock.d.ts +59 -0
  184. package/Materials/Node/Blocks/Teleport/teleportOutBlock.js +122 -0
  185. package/Materials/Node/Blocks/Teleport/teleportOutBlock.js.map +1 -0
  186. package/Materials/Node/Blocks/Vertex/bonesBlock.js +5 -5
  187. package/Materials/Node/Blocks/Vertex/bonesBlock.js.map +1 -1
  188. package/Materials/Node/Blocks/Vertex/instancesBlock.js +11 -11
  189. package/Materials/Node/Blocks/Vertex/instancesBlock.js.map +1 -1
  190. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js +11 -11
  191. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js.map +1 -1
  192. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +39 -39
  193. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
  194. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js +3 -3
  195. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js.map +1 -1
  196. package/Materials/Node/Blocks/addBlock.js +1 -1
  197. package/Materials/Node/Blocks/addBlock.js.map +1 -1
  198. package/Materials/Node/Blocks/arcTan2Block.js +1 -1
  199. package/Materials/Node/Blocks/arcTan2Block.js.map +1 -1
  200. package/Materials/Node/Blocks/clampBlock.js +4 -4
  201. package/Materials/Node/Blocks/clampBlock.js.map +1 -1
  202. package/Materials/Node/Blocks/cloudBlock.js +7 -7
  203. package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
  204. package/Materials/Node/Blocks/colorMergerBlock.js +8 -8
  205. package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
  206. package/Materials/Node/Blocks/colorSplitterBlock.js +5 -5
  207. package/Materials/Node/Blocks/colorSplitterBlock.js.map +1 -1
  208. package/Materials/Node/Blocks/conditionalBlock.js +10 -10
  209. package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
  210. package/Materials/Node/Blocks/crossBlock.js +1 -1
  211. package/Materials/Node/Blocks/crossBlock.js.map +1 -1
  212. package/Materials/Node/Blocks/curveBlock.js +5 -5
  213. package/Materials/Node/Blocks/curveBlock.js.map +1 -1
  214. package/Materials/Node/Blocks/customBlock.js +4 -4
  215. package/Materials/Node/Blocks/customBlock.js.map +1 -1
  216. package/Materials/Node/Blocks/desaturateBlock.js +4 -4
  217. package/Materials/Node/Blocks/desaturateBlock.js.map +1 -1
  218. package/Materials/Node/Blocks/distanceBlock.js +1 -1
  219. package/Materials/Node/Blocks/distanceBlock.js.map +1 -1
  220. package/Materials/Node/Blocks/divideBlock.js +1 -1
  221. package/Materials/Node/Blocks/divideBlock.js.map +1 -1
  222. package/Materials/Node/Blocks/dotBlock.js +1 -1
  223. package/Materials/Node/Blocks/dotBlock.js.map +1 -1
  224. package/Materials/Node/Blocks/elbowBlock.js +1 -1
  225. package/Materials/Node/Blocks/elbowBlock.js.map +1 -1
  226. package/Materials/Node/Blocks/fresnelBlock.js +1 -1
  227. package/Materials/Node/Blocks/fresnelBlock.js.map +1 -1
  228. package/Materials/Node/Blocks/gradientBlock.js +8 -8
  229. package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
  230. package/Materials/Node/Blocks/index.d.ts +1 -0
  231. package/Materials/Node/Blocks/index.js +1 -0
  232. package/Materials/Node/Blocks/index.js.map +1 -1
  233. package/Materials/Node/Blocks/lengthBlock.js +1 -1
  234. package/Materials/Node/Blocks/lengthBlock.js.map +1 -1
  235. package/Materials/Node/Blocks/lerpBlock.js +1 -1
  236. package/Materials/Node/Blocks/lerpBlock.js.map +1 -1
  237. package/Materials/Node/Blocks/matrixBuilderBlock.js +1 -1
  238. package/Materials/Node/Blocks/matrixBuilderBlock.js.map +1 -1
  239. package/Materials/Node/Blocks/matrixDeterminantBlock.js +1 -1
  240. package/Materials/Node/Blocks/matrixDeterminantBlock.js.map +1 -1
  241. package/Materials/Node/Blocks/matrixTransposeBlock.js +1 -1
  242. package/Materials/Node/Blocks/matrixTransposeBlock.js.map +1 -1
  243. package/Materials/Node/Blocks/maxBlock.js +1 -1
  244. package/Materials/Node/Blocks/maxBlock.js.map +1 -1
  245. package/Materials/Node/Blocks/meshAttributeExistsBlock.js +7 -7
  246. package/Materials/Node/Blocks/meshAttributeExistsBlock.js.map +1 -1
  247. package/Materials/Node/Blocks/minBlock.js +1 -1
  248. package/Materials/Node/Blocks/minBlock.js.map +1 -1
  249. package/Materials/Node/Blocks/modBlock.js +1 -1
  250. package/Materials/Node/Blocks/modBlock.js.map +1 -1
  251. package/Materials/Node/Blocks/multiplyBlock.js +1 -1
  252. package/Materials/Node/Blocks/multiplyBlock.js.map +1 -1
  253. package/Materials/Node/Blocks/nLerpBlock.js +1 -1
  254. package/Materials/Node/Blocks/nLerpBlock.js.map +1 -1
  255. package/Materials/Node/Blocks/negateBlock.js +1 -1
  256. package/Materials/Node/Blocks/negateBlock.js.map +1 -1
  257. package/Materials/Node/Blocks/normalBlendBlock.js +6 -6
  258. package/Materials/Node/Blocks/normalBlendBlock.js.map +1 -1
  259. package/Materials/Node/Blocks/normalizeBlock.js +1 -1
  260. package/Materials/Node/Blocks/normalizeBlock.js.map +1 -1
  261. package/Materials/Node/Blocks/oneMinusBlock.js +1 -1
  262. package/Materials/Node/Blocks/oneMinusBlock.js.map +1 -1
  263. package/Materials/Node/Blocks/posterizeBlock.js +1 -1
  264. package/Materials/Node/Blocks/posterizeBlock.js.map +1 -1
  265. package/Materials/Node/Blocks/powBlock.js +1 -1
  266. package/Materials/Node/Blocks/powBlock.js.map +1 -1
  267. package/Materials/Node/Blocks/randomNumberBlock.js +1 -1
  268. package/Materials/Node/Blocks/randomNumberBlock.js.map +1 -1
  269. package/Materials/Node/Blocks/reciprocalBlock.js +2 -2
  270. package/Materials/Node/Blocks/reciprocalBlock.js.map +1 -1
  271. package/Materials/Node/Blocks/reflectBlock.js +1 -1
  272. package/Materials/Node/Blocks/reflectBlock.js.map +1 -1
  273. package/Materials/Node/Blocks/refractBlock.js +1 -1
  274. package/Materials/Node/Blocks/refractBlock.js.map +1 -1
  275. package/Materials/Node/Blocks/remapBlock.js +4 -4
  276. package/Materials/Node/Blocks/remapBlock.js.map +1 -1
  277. package/Materials/Node/Blocks/replaceColorBlock.js +6 -6
  278. package/Materials/Node/Blocks/replaceColorBlock.js.map +1 -1
  279. package/Materials/Node/Blocks/rotate2dBlock.js +1 -1
  280. package/Materials/Node/Blocks/rotate2dBlock.js.map +1 -1
  281. package/Materials/Node/Blocks/scaleBlock.js +1 -1
  282. package/Materials/Node/Blocks/scaleBlock.js.map +1 -1
  283. package/Materials/Node/Blocks/simplexPerlin3DBlock.js +41 -41
  284. package/Materials/Node/Blocks/simplexPerlin3DBlock.js.map +1 -1
  285. package/Materials/Node/Blocks/smoothStepBlock.js +1 -1
  286. package/Materials/Node/Blocks/smoothStepBlock.js.map +1 -1
  287. package/Materials/Node/Blocks/stepBlock.js +1 -1
  288. package/Materials/Node/Blocks/stepBlock.js.map +1 -1
  289. package/Materials/Node/Blocks/subtractBlock.js +1 -1
  290. package/Materials/Node/Blocks/subtractBlock.js.map +1 -1
  291. package/Materials/Node/Blocks/transformBlock.js +13 -14
  292. package/Materials/Node/Blocks/transformBlock.js.map +1 -1
  293. package/Materials/Node/Blocks/triPlanarBlock.js +17 -17
  294. package/Materials/Node/Blocks/triPlanarBlock.js.map +1 -1
  295. package/Materials/Node/Blocks/trigonometryBlock.js +2 -2
  296. package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
  297. package/Materials/Node/Blocks/vectorMergerBlock.js +22 -22
  298. package/Materials/Node/Blocks/vectorMergerBlock.js.map +1 -1
  299. package/Materials/Node/Blocks/vectorSplitterBlock.js +8 -8
  300. package/Materials/Node/Blocks/vectorSplitterBlock.js.map +1 -1
  301. package/Materials/Node/Blocks/viewDirectionBlock.js +1 -1
  302. package/Materials/Node/Blocks/viewDirectionBlock.js.map +1 -1
  303. package/Materials/Node/Blocks/voronoiNoiseBlock.js +5 -5
  304. package/Materials/Node/Blocks/voronoiNoiseBlock.js.map +1 -1
  305. package/Materials/Node/Blocks/waveBlock.js +3 -4
  306. package/Materials/Node/Blocks/waveBlock.js.map +1 -1
  307. package/Materials/Node/Blocks/worleyNoise3DBlock.js +155 -155
  308. package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
  309. package/Materials/Node/index.d.ts +1 -1
  310. package/Materials/Node/index.js +1 -1
  311. package/Materials/Node/index.js.map +1 -1
  312. package/Materials/Node/nodeMaterial.d.ts +1 -0
  313. package/Materials/Node/nodeMaterial.js +50 -15
  314. package/Materials/Node/nodeMaterial.js.map +1 -1
  315. package/Materials/Node/nodeMaterialBlock.d.ts +14 -2
  316. package/Materials/Node/nodeMaterialBlock.js +34 -11
  317. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  318. package/Materials/Node/nodeMaterialBlockConnectionPoint.js +1 -1
  319. package/Materials/Node/nodeMaterialBlockConnectionPoint.js.map +1 -1
  320. package/Materials/Node/nodeMaterialBuildState.js +36 -36
  321. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  322. package/Materials/Node/nodeMaterialBuildStateSharedData.js +4 -4
  323. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  324. package/Materials/Textures/Filtering/hdrFiltering.js +1 -0
  325. package/Materials/Textures/Filtering/hdrFiltering.js.map +1 -1
  326. package/Materials/effect.js +1 -1
  327. package/Materials/effect.js.map +1 -1
  328. package/Materials/effectRenderer.d.ts +4 -0
  329. package/Materials/effectRenderer.js +8 -2
  330. package/Materials/effectRenderer.js.map +1 -1
  331. package/Materials/greasedLinePluginMaterial.d.ts +4 -0
  332. package/Materials/greasedLinePluginMaterial.js +12 -1
  333. package/Materials/greasedLinePluginMaterial.js.map +1 -1
  334. package/Materials/materialPluginManager.js +5 -5
  335. package/Materials/materialPluginManager.js.map +1 -1
  336. package/Materials/meshDebugPluginMaterial.d.ts +4 -15
  337. package/Materials/meshDebugPluginMaterial.js +8 -29
  338. package/Materials/meshDebugPluginMaterial.js.map +1 -1
  339. package/Materials/shadowDepthWrapper.js +5 -5
  340. package/Materials/shadowDepthWrapper.js.map +1 -1
  341. package/Meshes/Builders/boxBuilder.d.ts +31 -0
  342. package/Meshes/Builders/boxBuilder.js +65 -1
  343. package/Meshes/Builders/boxBuilder.js.map +1 -1
  344. package/Meshes/Builders/capsuleBuilder.js +3 -3
  345. package/Meshes/Builders/capsuleBuilder.js.map +1 -1
  346. package/Meshes/Builders/cylinderBuilder.js +2 -2
  347. package/Meshes/Builders/cylinderBuilder.js.map +1 -1
  348. package/Meshes/Builders/groundBuilder.js +2 -2
  349. package/Meshes/Builders/groundBuilder.js.map +1 -1
  350. package/Meshes/Builders/icoSphereBuilder.js +1 -1
  351. package/Meshes/Builders/icoSphereBuilder.js.map +1 -1
  352. package/Meshes/Builders/linesBuilder.d.ts +1 -1
  353. package/Meshes/Builders/linesBuilder.js +1 -1
  354. package/Meshes/Builders/linesBuilder.js.map +1 -1
  355. package/Meshes/Builders/sphereBuilder.js +1 -1
  356. package/Meshes/Builders/sphereBuilder.js.map +1 -1
  357. package/Meshes/Builders/torusBuilder.js +1 -1
  358. package/Meshes/Builders/torusBuilder.js.map +1 -1
  359. package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.d.ts +85 -0
  360. package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.js +210 -0
  361. package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.js.map +1 -0
  362. package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.d.ts +68 -0
  363. package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.js +186 -0
  364. package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.js.map +1 -0
  365. package/Meshes/Node/Blocks/IntFloatConverterBlock.d.ts +35 -0
  366. package/Meshes/Node/Blocks/IntFloatConverterBlock.js +81 -0
  367. package/Meshes/Node/Blocks/IntFloatConverterBlock.js.map +1 -0
  368. package/Meshes/Node/Blocks/Matrices/alignBlock.d.ts +31 -0
  369. package/Meshes/Node/Blocks/Matrices/alignBlock.js +58 -0
  370. package/Meshes/Node/Blocks/Matrices/alignBlock.js.map +1 -0
  371. package/Meshes/Node/Blocks/Matrices/rotationXBlock.d.ts +28 -0
  372. package/Meshes/Node/Blocks/Matrices/rotationXBlock.js +53 -0
  373. package/Meshes/Node/Blocks/Matrices/rotationXBlock.js.map +1 -0
  374. package/Meshes/Node/Blocks/Matrices/rotationYBlock.d.ts +28 -0
  375. package/Meshes/Node/Blocks/Matrices/rotationYBlock.js +53 -0
  376. package/Meshes/Node/Blocks/Matrices/rotationYBlock.js.map +1 -0
  377. package/Meshes/Node/Blocks/Matrices/rotationZBlock.d.ts +28 -0
  378. package/Meshes/Node/Blocks/Matrices/rotationZBlock.js +53 -0
  379. package/Meshes/Node/Blocks/Matrices/rotationZBlock.js.map +1 -0
  380. package/Meshes/Node/Blocks/Matrices/scalingBlock.d.ts +28 -0
  381. package/Meshes/Node/Blocks/Matrices/scalingBlock.js +54 -0
  382. package/Meshes/Node/Blocks/Matrices/scalingBlock.js.map +1 -0
  383. package/Meshes/Node/Blocks/Matrices/translationBlock.d.ts +28 -0
  384. package/Meshes/Node/Blocks/Matrices/translationBlock.js +54 -0
  385. package/Meshes/Node/Blocks/Matrices/translationBlock.js.map +1 -0
  386. package/Meshes/Node/Blocks/Set/setColorsBlock.d.ts +44 -0
  387. package/Meshes/Node/Blocks/Set/setColorsBlock.js +91 -0
  388. package/Meshes/Node/Blocks/Set/setColorsBlock.js.map +1 -0
  389. package/Meshes/Node/Blocks/Set/setMaterialIDBlock.d.ts +36 -0
  390. package/Meshes/Node/Blocks/Set/setMaterialIDBlock.js +84 -0
  391. package/Meshes/Node/Blocks/Set/setMaterialIDBlock.js.map +1 -0
  392. package/Meshes/Node/Blocks/Set/setNormalsBlock.d.ts +44 -0
  393. package/Meshes/Node/Blocks/Set/setNormalsBlock.js +91 -0
  394. package/Meshes/Node/Blocks/Set/setNormalsBlock.js.map +1 -0
  395. package/Meshes/Node/Blocks/Set/setPositionsBlock.d.ts +44 -0
  396. package/Meshes/Node/Blocks/Set/setPositionsBlock.js +82 -0
  397. package/Meshes/Node/Blocks/Set/setPositionsBlock.js.map +1 -0
  398. package/Meshes/Node/Blocks/Set/setTangentsBlock.d.ts +44 -0
  399. package/Meshes/Node/Blocks/Set/setTangentsBlock.js +91 -0
  400. package/Meshes/Node/Blocks/Set/setTangentsBlock.js.map +1 -0
  401. package/Meshes/Node/Blocks/Set/setUVsBlock.d.ts +55 -0
  402. package/Meshes/Node/Blocks/Set/setUVsBlock.js +145 -0
  403. package/Meshes/Node/Blocks/Set/setUVsBlock.js.map +1 -0
  404. package/Meshes/Node/Blocks/Sources/boxBlock.d.ts +68 -0
  405. package/Meshes/Node/Blocks/Sources/boxBlock.js +175 -0
  406. package/Meshes/Node/Blocks/Sources/boxBlock.js.map +1 -0
  407. package/Meshes/Node/Blocks/Sources/capsuleBlock.d.ts +52 -0
  408. package/Meshes/Node/Blocks/Sources/capsuleBlock.js +117 -0
  409. package/Meshes/Node/Blocks/Sources/capsuleBlock.js.map +1 -0
  410. package/Meshes/Node/Blocks/Sources/cylinderBlock.d.ts +64 -0
  411. package/Meshes/Node/Blocks/Sources/cylinderBlock.js +143 -0
  412. package/Meshes/Node/Blocks/Sources/cylinderBlock.js.map +1 -0
  413. package/Meshes/Node/Blocks/Sources/discBlock.d.ts +48 -0
  414. package/Meshes/Node/Blocks/Sources/discBlock.js +104 -0
  415. package/Meshes/Node/Blocks/Sources/discBlock.js.map +1 -0
  416. package/Meshes/Node/Blocks/Sources/gridBlock.d.ts +56 -0
  417. package/Meshes/Node/Blocks/Sources/gridBlock.js +125 -0
  418. package/Meshes/Node/Blocks/Sources/gridBlock.js.map +1 -0
  419. package/Meshes/Node/Blocks/Sources/icoSphereBlock.d.ts +56 -0
  420. package/Meshes/Node/Blocks/Sources/icoSphereBlock.js +120 -0
  421. package/Meshes/Node/Blocks/Sources/icoSphereBlock.js.map +1 -0
  422. package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +38 -0
  423. package/Meshes/Node/Blocks/Sources/meshBlock.js +78 -0
  424. package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -0
  425. package/Meshes/Node/Blocks/Sources/planeBlock.d.ts +48 -0
  426. package/Meshes/Node/Blocks/Sources/planeBlock.js +118 -0
  427. package/Meshes/Node/Blocks/Sources/planeBlock.js.map +1 -0
  428. package/Meshes/Node/Blocks/Sources/sphereBlock.d.ts +64 -0
  429. package/Meshes/Node/Blocks/Sources/sphereBlock.js +136 -0
  430. package/Meshes/Node/Blocks/Sources/sphereBlock.js.map +1 -0
  431. package/Meshes/Node/Blocks/Sources/torusBlock.d.ts +48 -0
  432. package/Meshes/Node/Blocks/Sources/torusBlock.js +104 -0
  433. package/Meshes/Node/Blocks/Sources/torusBlock.js.map +1 -0
  434. package/Meshes/Node/Blocks/Teleport/teleportInBlock.d.ts +37 -0
  435. package/Meshes/Node/Blocks/Teleport/teleportInBlock.js +75 -0
  436. package/Meshes/Node/Blocks/Teleport/teleportInBlock.js.map +1 -0
  437. package/Meshes/Node/Blocks/Teleport/teleportOutBlock.d.ts +50 -0
  438. package/Meshes/Node/Blocks/Teleport/teleportOutBlock.js +105 -0
  439. package/Meshes/Node/Blocks/Teleport/teleportOutBlock.js.map +1 -0
  440. package/Meshes/Node/Blocks/computeNormalsBlock.d.ts +26 -0
  441. package/Meshes/Node/Blocks/computeNormalsBlock.js +49 -0
  442. package/Meshes/Node/Blocks/computeNormalsBlock.js.map +1 -0
  443. package/Meshes/Node/Blocks/conditionBlock.d.ts +72 -0
  444. package/Meshes/Node/Blocks/conditionBlock.js +174 -0
  445. package/Meshes/Node/Blocks/conditionBlock.js.map +1 -0
  446. package/Meshes/Node/Blocks/debugBlock.d.ts +34 -0
  447. package/Meshes/Node/Blocks/debugBlock.js +63 -0
  448. package/Meshes/Node/Blocks/debugBlock.js.map +1 -0
  449. package/Meshes/Node/Blocks/geometryElbowBlock.d.ts +31 -0
  450. package/Meshes/Node/Blocks/geometryElbowBlock.js +53 -0
  451. package/Meshes/Node/Blocks/geometryElbowBlock.js.map +1 -0
  452. package/Meshes/Node/Blocks/geometryInputBlock.d.ts +71 -0
  453. package/Meshes/Node/Blocks/geometryInputBlock.js +218 -0
  454. package/Meshes/Node/Blocks/geometryInputBlock.js.map +1 -0
  455. package/Meshes/Node/Blocks/geometryOutputBlock.d.ts +30 -0
  456. package/Meshes/Node/Blocks/geometryOutputBlock.js +42 -0
  457. package/Meshes/Node/Blocks/geometryOutputBlock.js.map +1 -0
  458. package/Meshes/Node/Blocks/geometryTransformBlock.d.ts +53 -0
  459. package/Meshes/Node/Blocks/geometryTransformBlock.js +134 -0
  460. package/Meshes/Node/Blocks/geometryTransformBlock.js.map +1 -0
  461. package/Meshes/Node/Blocks/geometryTrigonometryBlock.d.ts +77 -0
  462. package/Meshes/Node/Blocks/geometryTrigonometryBlock.js +248 -0
  463. package/Meshes/Node/Blocks/geometryTrigonometryBlock.js.map +1 -0
  464. package/Meshes/Node/Blocks/mapRangeBlock.d.ts +42 -0
  465. package/Meshes/Node/Blocks/mapRangeBlock.js +84 -0
  466. package/Meshes/Node/Blocks/mapRangeBlock.js.map +1 -0
  467. package/Meshes/Node/Blocks/mathBlock.d.ts +58 -0
  468. package/Meshes/Node/Blocks/mathBlock.js +233 -0
  469. package/Meshes/Node/Blocks/mathBlock.js.map +1 -0
  470. package/Meshes/Node/Blocks/mergeGeometryBlock.d.ts +55 -0
  471. package/Meshes/Node/Blocks/mergeGeometryBlock.js +123 -0
  472. package/Meshes/Node/Blocks/mergeGeometryBlock.js.map +1 -0
  473. package/Meshes/Node/Blocks/noiseBlock.d.ts +49 -0
  474. package/Meshes/Node/Blocks/noiseBlock.js +149 -0
  475. package/Meshes/Node/Blocks/noiseBlock.js.map +1 -0
  476. package/Meshes/Node/Blocks/normalizeVectorBlock.d.ts +27 -0
  477. package/Meshes/Node/Blocks/normalizeVectorBlock.js +51 -0
  478. package/Meshes/Node/Blocks/normalizeVectorBlock.js.map +1 -0
  479. package/Meshes/Node/Blocks/randomBlock.d.ts +31 -0
  480. package/Meshes/Node/Blocks/randomBlock.js +99 -0
  481. package/Meshes/Node/Blocks/randomBlock.js.map +1 -0
  482. package/Meshes/Node/Blocks/vectorConverterBlock.d.ts +84 -0
  483. package/Meshes/Node/Blocks/vectorConverterBlock.js +238 -0
  484. package/Meshes/Node/Blocks/vectorConverterBlock.js.map +1 -0
  485. package/Meshes/Node/Enums/nodeGeometryConnectionPointTypes.d.ts +27 -0
  486. package/Meshes/Node/Enums/nodeGeometryConnectionPointTypes.js +29 -0
  487. package/Meshes/Node/Enums/nodeGeometryConnectionPointTypes.js.map +1 -0
  488. package/Meshes/Node/Enums/nodeGeometryContextualSources.d.ts +33 -0
  489. package/Meshes/Node/Enums/nodeGeometryContextualSources.js +35 -0
  490. package/Meshes/Node/Enums/nodeGeometryContextualSources.js.map +1 -0
  491. package/Meshes/Node/Interfaces/nodeGeometryExecutionContext.d.ts +25 -0
  492. package/Meshes/Node/Interfaces/nodeGeometryExecutionContext.js +2 -0
  493. package/Meshes/Node/Interfaces/nodeGeometryExecutionContext.js.map +1 -0
  494. package/Meshes/Node/index.d.ts +49 -0
  495. package/Meshes/Node/index.js +50 -0
  496. package/Meshes/Node/index.js.map +1 -0
  497. package/Meshes/Node/nodeGeometry.d.ts +180 -0
  498. package/Meshes/Node/nodeGeometry.js +529 -0
  499. package/Meshes/Node/nodeGeometry.js.map +1 -0
  500. package/Meshes/Node/nodeGeometryBlock.d.ts +166 -0
  501. package/Meshes/Node/nodeGeometryBlock.js +432 -0
  502. package/Meshes/Node/nodeGeometryBlock.js.map +1 -0
  503. package/Meshes/Node/nodeGeometryBlockConnectionPoint.d.ts +176 -0
  504. package/Meshes/Node/nodeGeometryBlockConnectionPoint.js +305 -0
  505. package/Meshes/Node/nodeGeometryBlockConnectionPoint.js.map +1 -0
  506. package/Meshes/Node/nodeGeometryBuildState.d.ts +57 -0
  507. package/Meshes/Node/nodeGeometryBuildState.js +178 -0
  508. package/Meshes/Node/nodeGeometryBuildState.js.map +1 -0
  509. package/Meshes/index.d.ts +1 -0
  510. package/Meshes/index.js +1 -0
  511. package/Meshes/index.js.map +1 -1
  512. package/Meshes/mesh.vertexData.d.ts +37 -2
  513. package/Meshes/mesh.vertexData.js +425 -95
  514. package/Meshes/mesh.vertexData.js.map +1 -1
  515. package/Meshes/meshUVSpaceRenderer.js +1 -0
  516. package/Meshes/meshUVSpaceRenderer.js.map +1 -1
  517. package/Particles/IGPUParticleSystemPlatform.d.ts +1 -0
  518. package/Particles/IGPUParticleSystemPlatform.js.map +1 -1
  519. package/Particles/computeShaderParticleSystem.d.ts +1 -0
  520. package/Particles/computeShaderParticleSystem.js +5 -0
  521. package/Particles/computeShaderParticleSystem.js.map +1 -1
  522. package/Particles/gpuParticleSystem.js +11 -1
  523. package/Particles/gpuParticleSystem.js.map +1 -1
  524. package/Particles/webgl2ParticleSystem.d.ts +1 -0
  525. package/Particles/webgl2ParticleSystem.js +5 -0
  526. package/Particles/webgl2ParticleSystem.js.map +1 -1
  527. package/Physics/v2/IPhysicsEnginePlugin.d.ts +20 -2
  528. package/Physics/v2/IPhysicsEnginePlugin.js +8 -0
  529. package/Physics/v2/IPhysicsEnginePlugin.js.map +1 -1
  530. package/Physics/v2/Plugins/havokPlugin.d.ts +27 -2
  531. package/Physics/v2/Plugins/havokPlugin.js +98 -11
  532. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  533. package/Physics/v2/physicsAggregate.d.ts +4 -0
  534. package/Physics/v2/physicsAggregate.js +3 -0
  535. package/Physics/v2/physicsAggregate.js.map +1 -1
  536. package/Physics/v2/physicsBody.d.ts +7 -0
  537. package/Physics/v2/physicsBody.js +10 -0
  538. package/Physics/v2/physicsBody.js.map +1 -1
  539. package/Physics/v2/physicsShape.d.ts +3 -0
  540. package/Physics/v2/physicsShape.js +11 -0
  541. package/Physics/v2/physicsShape.js.map +1 -1
  542. package/PostProcesses/RenderPipeline/postProcessRenderEffect.js +6 -4
  543. package/PostProcesses/RenderPipeline/postProcessRenderEffect.js.map +1 -1
  544. package/PostProcesses/blurPostProcess.js +5 -5
  545. package/PostProcesses/blurPostProcess.js.map +1 -1
  546. package/PostProcesses/depthOfFieldBlurPostProcess.js +1 -1
  547. package/PostProcesses/depthOfFieldBlurPostProcess.js.map +1 -1
  548. package/PostProcesses/imageProcessingPostProcess.js +1 -1
  549. package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
  550. package/Rendering/fluidRenderer/fluidRenderer.d.ts +0 -1
  551. package/Rendering/fluidRenderer/fluidRenderer.js +0 -1
  552. package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
  553. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js +16 -8
  554. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js.map +1 -1
  555. package/Shaders/ShadersInclude/backgroundUboDeclaration.js +9 -4
  556. package/Shaders/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  557. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js +8 -4
  558. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js.map +1 -1
  559. package/Shaders/ShadersInclude/bakedVertexAnimation.js +20 -10
  560. package/Shaders/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  561. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js +7 -3
  562. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  563. package/Shaders/ShadersInclude/bayerDitherFunctions.js +9 -1
  564. package/Shaders/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  565. package/Shaders/ShadersInclude/bonesDeclaration.js +13 -6
  566. package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
  567. package/Shaders/ShadersInclude/bonesVertex.js +36 -18
  568. package/Shaders/ShadersInclude/bonesVertex.js.map +1 -1
  569. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js +2 -1
  570. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js.map +1 -1
  571. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js +6 -3
  572. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js.map +1 -1
  573. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js +4 -2
  574. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js.map +1 -1
  575. package/Shaders/ShadersInclude/bumpFragment.js +40 -20
  576. package/Shaders/ShadersInclude/bumpFragment.js.map +1 -1
  577. package/Shaders/ShadersInclude/bumpFragmentFunctions.js +11 -1
  578. package/Shaders/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  579. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js +57 -7
  580. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  581. package/Shaders/ShadersInclude/bumpVertex.js +2 -1
  582. package/Shaders/ShadersInclude/bumpVertex.js.map +1 -1
  583. package/Shaders/ShadersInclude/bumpVertexDeclaration.js +2 -1
  584. package/Shaders/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  585. package/Shaders/ShadersInclude/clipPlaneFragment.js +20 -7
  586. package/Shaders/ShadersInclude/clipPlaneFragment.js.map +1 -1
  587. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js +12 -6
  588. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  589. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js +12 -6
  590. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js.map +1 -1
  591. package/Shaders/ShadersInclude/clipPlaneVertex.js +12 -6
  592. package/Shaders/ShadersInclude/clipPlaneVertex.js.map +1 -1
  593. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js +12 -6
  594. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  595. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js +12 -6
  596. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js.map +1 -1
  597. package/Shaders/ShadersInclude/decalFragment.js +6 -3
  598. package/Shaders/ShadersInclude/decalFragment.js.map +1 -1
  599. package/Shaders/ShadersInclude/decalFragmentDeclaration.js +2 -1
  600. package/Shaders/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  601. package/Shaders/ShadersInclude/decalVertexDeclaration.js +2 -1
  602. package/Shaders/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  603. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +48 -24
  604. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
  605. package/Shaders/ShadersInclude/defaultUboDeclaration.js +5 -2
  606. package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  607. package/Shaders/ShadersInclude/defaultVertexDeclaration.js +22 -11
  608. package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
  609. package/Shaders/ShadersInclude/depthPrePass.js +2 -1
  610. package/Shaders/ShadersInclude/depthPrePass.js.map +1 -1
  611. package/Shaders/ShadersInclude/diffusionProfile.js +1 -1
  612. package/Shaders/ShadersInclude/diffusionProfile.js.map +1 -1
  613. package/Shaders/ShadersInclude/fibonacci.js +4 -1
  614. package/Shaders/ShadersInclude/fibonacci.js.map +1 -1
  615. package/Shaders/ShadersInclude/fogFragment.js +6 -3
  616. package/Shaders/ShadersInclude/fogFragment.js.map +1 -1
  617. package/Shaders/ShadersInclude/fogFragmentDeclaration.js +9 -1
  618. package/Shaders/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  619. package/Shaders/ShadersInclude/fogVertex.js +2 -1
  620. package/Shaders/ShadersInclude/fogVertex.js.map +1 -1
  621. package/Shaders/ShadersInclude/fogVertexDeclaration.js +2 -1
  622. package/Shaders/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  623. package/Shaders/ShadersInclude/fresnelFunction.js +3 -1
  624. package/Shaders/ShadersInclude/fresnelFunction.js.map +1 -1
  625. package/Shaders/ShadersInclude/geometryVertexDeclaration.js +1 -1
  626. package/Shaders/ShadersInclude/geometryVertexDeclaration.js.map +1 -1
  627. package/Shaders/ShadersInclude/harmonicsFunctions.js +20 -2
  628. package/Shaders/ShadersInclude/harmonicsFunctions.js.map +1 -1
  629. package/Shaders/ShadersInclude/hdrFilteringFunctions.js +48 -17
  630. package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  631. package/Shaders/ShadersInclude/helperFunctions.js +98 -28
  632. package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
  633. package/Shaders/ShadersInclude/imageProcessingCompatibility.js +2 -1
  634. package/Shaders/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  635. package/Shaders/ShadersInclude/imageProcessingDeclaration.js +18 -9
  636. package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  637. package/Shaders/ShadersInclude/imageProcessingFunctions.js +71 -28
  638. package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  639. package/Shaders/ShadersInclude/importanceSampling.js +4 -1
  640. package/Shaders/ShadersInclude/importanceSampling.js.map +1 -1
  641. package/Shaders/ShadersInclude/instancesDeclaration.js +14 -7
  642. package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
  643. package/Shaders/ShadersInclude/instancesVertex.js +12 -6
  644. package/Shaders/ShadersInclude/instancesVertex.js.map +1 -1
  645. package/Shaders/ShadersInclude/kernelBlurFragment.js +9 -4
  646. package/Shaders/ShadersInclude/kernelBlurFragment.js.map +1 -1
  647. package/Shaders/ShadersInclude/kernelBlurFragment2.js +8 -4
  648. package/Shaders/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  649. package/Shaders/ShadersInclude/lightFragment.js +186 -93
  650. package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
  651. package/Shaders/ShadersInclude/lightFragmentDeclaration.js +54 -22
  652. package/Shaders/ShadersInclude/lightFragmentDeclaration.js.map +1 -1
  653. package/Shaders/ShadersInclude/lightUboDeclaration.js +51 -20
  654. package/Shaders/ShadersInclude/lightUboDeclaration.js.map +1 -1
  655. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js +18 -9
  656. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  657. package/Shaders/ShadersInclude/lightVxUboDeclaration.js +15 -7
  658. package/Shaders/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  659. package/Shaders/ShadersInclude/lightsFragmentFunctions.js +48 -20
  660. package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  661. package/Shaders/ShadersInclude/logDepthDeclaration.js +2 -1
  662. package/Shaders/ShadersInclude/logDepthDeclaration.js.map +1 -1
  663. package/Shaders/ShadersInclude/logDepthFragment.js +2 -1
  664. package/Shaders/ShadersInclude/logDepthFragment.js.map +1 -1
  665. package/Shaders/ShadersInclude/logDepthVertex.js +2 -1
  666. package/Shaders/ShadersInclude/logDepthVertex.js.map +1 -1
  667. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js +2 -1
  668. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  669. package/Shaders/ShadersInclude/meshFragmentDeclaration.js +2 -1
  670. package/Shaders/ShadersInclude/meshFragmentDeclaration.js.map +1 -1
  671. package/Shaders/ShadersInclude/meshUboDeclaration.js +5 -2
  672. package/Shaders/ShadersInclude/meshUboDeclaration.js.map +1 -1
  673. package/Shaders/ShadersInclude/meshVertexDeclaration.js +2 -1
  674. package/Shaders/ShadersInclude/meshVertexDeclaration.js.map +1 -1
  675. package/Shaders/ShadersInclude/morphTargetsVertex.js +16 -8
  676. package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
  677. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js +8 -4
  678. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  679. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js +2 -1
  680. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  681. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +7 -2
  682. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  683. package/Shaders/ShadersInclude/oitDeclaration.js +5 -2
  684. package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
  685. package/Shaders/ShadersInclude/oitFragment.js +24 -12
  686. package/Shaders/ShadersInclude/oitFragment.js.map +1 -1
  687. package/Shaders/ShadersInclude/packingFunctions.js +4 -1
  688. package/Shaders/ShadersInclude/packingFunctions.js.map +1 -1
  689. package/Shaders/ShadersInclude/pbrBRDFFunctions.js +118 -42
  690. package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  691. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +49 -20
  692. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  693. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +25 -8
  694. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  695. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +26 -11
  696. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  697. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +32 -12
  698. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  699. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +194 -84
  700. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  701. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +12 -6
  702. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  703. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +30 -14
  704. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  705. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js +56 -28
  706. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  707. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +18 -9
  708. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  709. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js +14 -7
  710. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  711. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js +8 -4
  712. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  713. package/Shaders/ShadersInclude/pbrBlockIridescence.js +36 -15
  714. package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  715. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js +8 -4
  716. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  717. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js +8 -4
  718. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  719. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js +10 -5
  720. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  721. package/Shaders/ShadersInclude/pbrBlockReflectance.js +12 -6
  722. package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  723. package/Shaders/ShadersInclude/pbrBlockReflectance0.js +8 -4
  724. package/Shaders/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  725. package/Shaders/ShadersInclude/pbrBlockReflection.js +197 -77
  726. package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
  727. package/Shaders/ShadersInclude/pbrBlockReflectivity.js +79 -36
  728. package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  729. package/Shaders/ShadersInclude/pbrBlockSheen.js +145 -60
  730. package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
  731. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +226 -100
  732. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  733. package/Shaders/ShadersInclude/pbrDebug.js +146 -67
  734. package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
  735. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js +34 -8
  736. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  737. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +53 -22
  738. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  739. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +12 -5
  740. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  741. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +88 -44
  742. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
  743. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +10 -5
  744. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  745. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +30 -15
  746. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  747. package/Shaders/ShadersInclude/pbrHelperFunctions.js +27 -8
  748. package/Shaders/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  749. package/Shaders/ShadersInclude/pbrIBLFunctions.js +9 -4
  750. package/Shaders/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  751. package/Shaders/ShadersInclude/pbrUboDeclaration.js +4 -2
  752. package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  753. package/Shaders/ShadersInclude/pbrVertexDeclaration.js +64 -32
  754. package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
  755. package/Shaders/ShadersInclude/pointCloudVertex.js +2 -1
  756. package/Shaders/ShadersInclude/pointCloudVertex.js.map +1 -1
  757. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js +2 -1
  758. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  759. package/Shaders/ShadersInclude/prePassVertex.js +24 -12
  760. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  761. package/Shaders/ShadersInclude/prePassVertexDeclaration.js +4 -2
  762. package/Shaders/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  763. package/Shaders/ShadersInclude/reflectionFunction.js +52 -17
  764. package/Shaders/ShadersInclude/reflectionFunction.js.map +1 -1
  765. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js +2 -1
  766. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  767. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js +4 -2
  768. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  769. package/Shaders/ShadersInclude/samplerVertexDeclaration.js +2 -1
  770. package/Shaders/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  771. package/Shaders/ShadersInclude/samplerVertexImplementation.js +18 -6
  772. package/Shaders/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  773. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js +6 -3
  774. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js.map +1 -1
  775. package/Shaders/ShadersInclude/sceneUboDeclaration.js +6 -3
  776. package/Shaders/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  777. package/Shaders/ShadersInclude/sceneVertexDeclaration.js +6 -3
  778. package/Shaders/ShadersInclude/sceneVertexDeclaration.js.map +1 -1
  779. package/Shaders/ShadersInclude/screenSpaceRayTrace.js +109 -24
  780. package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  781. package/Shaders/ShadersInclude/shadowMapFragment.js +20 -10
  782. package/Shaders/ShadersInclude/shadowMapFragment.js.map +1 -1
  783. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js +10 -5
  784. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  785. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +2 -1
  786. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  787. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js +2 -1
  788. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js.map +1 -1
  789. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js +8 -4
  790. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  791. package/Shaders/ShadersInclude/shadowMapVertexMetric.js +12 -6
  792. package/Shaders/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  793. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js +6 -3
  794. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  795. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +311 -54
  796. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  797. package/Shaders/ShadersInclude/shadowsVertex.js +14 -7
  798. package/Shaders/ShadersInclude/shadowsVertex.js.map +1 -1
  799. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js +2 -1
  800. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  801. package/Shaders/ShadersInclude/uvAttributeDeclaration.js +2 -1
  802. package/Shaders/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  803. package/Shaders/ShadersInclude/uvVariableDeclaration.js +4 -2
  804. package/Shaders/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  805. package/Shaders/ShadersInclude/vertexColorMixing.js +8 -4
  806. package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
  807. package/Shaders/anaglyph.fragment.js +4 -2
  808. package/Shaders/anaglyph.fragment.js.map +1 -1
  809. package/Shaders/background.fragment.js +133 -62
  810. package/Shaders/background.fragment.js.map +1 -1
  811. package/Shaders/background.vertex.js +63 -30
  812. package/Shaders/background.vertex.js.map +1 -1
  813. package/Shaders/blackAndWhite.fragment.js +5 -2
  814. package/Shaders/blackAndWhite.fragment.js.map +1 -1
  815. package/Shaders/bloomMerge.fragment.js +5 -2
  816. package/Shaders/bloomMerge.fragment.js.map +1 -1
  817. package/Shaders/blur.fragment.js +6 -2
  818. package/Shaders/blur.fragment.js.map +1 -1
  819. package/Shaders/boundingBoxRenderer.fragment.js +4 -2
  820. package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
  821. package/Shaders/boundingBoxRenderer.vertex.js +12 -6
  822. package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
  823. package/Shaders/chromaticAberration.fragment.js +8 -2
  824. package/Shaders/chromaticAberration.fragment.js.map +1 -1
  825. package/Shaders/circleOfConfusion.fragment.js +9 -4
  826. package/Shaders/circleOfConfusion.fragment.js.map +1 -1
  827. package/Shaders/clearQuad.fragment.js +2 -1
  828. package/Shaders/clearQuad.fragment.js.map +1 -1
  829. package/Shaders/clearQuad.vertex.js +11 -4
  830. package/Shaders/clearQuad.vertex.js.map +1 -1
  831. package/Shaders/color.fragment.js +10 -5
  832. package/Shaders/color.fragment.js.map +1 -1
  833. package/Shaders/color.vertex.js +18 -9
  834. package/Shaders/color.vertex.js.map +1 -1
  835. package/Shaders/colorCorrection.fragment.js +10 -2
  836. package/Shaders/colorCorrection.fragment.js.map +1 -1
  837. package/Shaders/convolution.fragment.js +23 -2
  838. package/Shaders/convolution.fragment.js.map +1 -1
  839. package/Shaders/copyTextureToTexture.fragment.js +12 -5
  840. package/Shaders/copyTextureToTexture.fragment.js.map +1 -1
  841. package/Shaders/default.fragment.js +142 -71
  842. package/Shaders/default.fragment.js.map +1 -1
  843. package/Shaders/default.vertex.js +58 -29
  844. package/Shaders/default.vertex.js.map +1 -1
  845. package/Shaders/depth.fragment.js +24 -11
  846. package/Shaders/depth.fragment.js.map +1 -1
  847. package/Shaders/depth.vertex.js +35 -17
  848. package/Shaders/depth.vertex.js.map +1 -1
  849. package/Shaders/depthBoxBlur.fragment.js +6 -2
  850. package/Shaders/depthBoxBlur.fragment.js.map +1 -1
  851. package/Shaders/depthOfField.fragment.js +28 -3
  852. package/Shaders/depthOfField.fragment.js.map +1 -1
  853. package/Shaders/depthOfFieldMerge.fragment.js +17 -8
  854. package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
  855. package/Shaders/displayPass.fragment.js +4 -2
  856. package/Shaders/displayPass.fragment.js.map +1 -1
  857. package/Shaders/extractHighlights.fragment.js +4 -2
  858. package/Shaders/extractHighlights.fragment.js.map +1 -1
  859. package/Shaders/filter.fragment.js +4 -2
  860. package/Shaders/filter.fragment.js.map +1 -1
  861. package/Shaders/fluidRenderingBilateralBlur.fragment.js +4 -1
  862. package/Shaders/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  863. package/Shaders/fluidRenderingParticleDepth.fragment.js +22 -11
  864. package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
  865. package/Shaders/fluidRenderingParticleDepth.vertex.js +10 -5
  866. package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
  867. package/Shaders/fluidRenderingParticleDiffuse.fragment.js +2 -1
  868. package/Shaders/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  869. package/Shaders/fluidRenderingParticleDiffuse.vertex.js +0 -1
  870. package/Shaders/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  871. package/Shaders/fluidRenderingParticleThickness.fragment.js +2 -1
  872. package/Shaders/fluidRenderingParticleThickness.fragment.js.map +1 -1
  873. package/Shaders/fluidRenderingParticleThickness.vertex.js +2 -1
  874. package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
  875. package/Shaders/fluidRenderingRender.fragment.js +76 -35
  876. package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
  877. package/Shaders/fluidRenderingStandardBlur.fragment.js +4 -1
  878. package/Shaders/fluidRenderingStandardBlur.fragment.js.map +1 -1
  879. package/Shaders/fxaa.fragment.js +47 -6
  880. package/Shaders/fxaa.fragment.js.map +1 -1
  881. package/Shaders/fxaa.vertex.js +6 -3
  882. package/Shaders/fxaa.vertex.js.map +1 -1
  883. package/Shaders/geometry.fragment.js +85 -42
  884. package/Shaders/geometry.fragment.js.map +1 -1
  885. package/Shaders/geometry.vertex.js +91 -45
  886. package/Shaders/geometry.vertex.js.map +1 -1
  887. package/Shaders/glowBlurPostProcess.fragment.js +7 -2
  888. package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
  889. package/Shaders/glowMapGeneration.fragment.js +46 -22
  890. package/Shaders/glowMapGeneration.fragment.js.map +1 -1
  891. package/Shaders/glowMapGeneration.vertex.js +41 -20
  892. package/Shaders/glowMapGeneration.vertex.js.map +1 -1
  893. package/Shaders/glowMapMerge.fragment.js +20 -10
  894. package/Shaders/glowMapMerge.fragment.js.map +1 -1
  895. package/Shaders/glowMapMerge.vertex.js +6 -3
  896. package/Shaders/glowMapMerge.vertex.js.map +1 -1
  897. package/Shaders/gpuRenderParticles.fragment.js +16 -8
  898. package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
  899. package/Shaders/gpuRenderParticles.vertex.js +77 -39
  900. package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
  901. package/Shaders/gpuUpdateParticles.fragment.js +2 -1
  902. package/Shaders/gpuUpdateParticles.fragment.js.map +1 -1
  903. package/Shaders/gpuUpdateParticles.vertex.js +206 -100
  904. package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
  905. package/Shaders/grain.fragment.js +5 -2
  906. package/Shaders/grain.fragment.js.map +1 -1
  907. package/Shaders/hdrFiltering.fragment.js +1 -1
  908. package/Shaders/hdrFiltering.fragment.js.map +1 -1
  909. package/Shaders/hdrFiltering.vertex.js +6 -3
  910. package/Shaders/hdrFiltering.vertex.js.map +1 -1
  911. package/Shaders/highlights.fragment.js +4 -2
  912. package/Shaders/highlights.fragment.js.map +1 -1
  913. package/Shaders/imageProcessing.fragment.js +12 -6
  914. package/Shaders/imageProcessing.fragment.js.map +1 -1
  915. package/Shaders/kernelBlur.fragment.js +24 -11
  916. package/Shaders/kernelBlur.fragment.js.map +1 -1
  917. package/Shaders/kernelBlur.vertex.js +10 -5
  918. package/Shaders/kernelBlur.vertex.js.map +1 -1
  919. package/Shaders/layer.fragment.js +13 -6
  920. package/Shaders/layer.fragment.js.map +1 -1
  921. package/Shaders/layer.vertex.js +6 -3
  922. package/Shaders/layer.vertex.js.map +1 -1
  923. package/Shaders/lensFlare.fragment.js +6 -3
  924. package/Shaders/lensFlare.fragment.js.map +1 -1
  925. package/Shaders/lensFlare.vertex.js +6 -3
  926. package/Shaders/lensFlare.vertex.js.map +1 -1
  927. package/Shaders/lensHighlights.fragment.js +14 -5
  928. package/Shaders/lensHighlights.fragment.js.map +1 -1
  929. package/Shaders/line.fragment.js +6 -3
  930. package/Shaders/line.fragment.js.map +1 -1
  931. package/Shaders/line.vertex.js +8 -4
  932. package/Shaders/line.vertex.js.map +1 -1
  933. package/Shaders/meshUVSpaceRenderer.fragment.js +3 -1
  934. package/Shaders/meshUVSpaceRenderer.fragment.js.map +1 -1
  935. package/Shaders/meshUVSpaceRenderer.vertex.js +14 -7
  936. package/Shaders/meshUVSpaceRenderer.vertex.js.map +1 -1
  937. package/Shaders/minmaxRedux.fragment.js +21 -8
  938. package/Shaders/minmaxRedux.fragment.js.map +1 -1
  939. package/Shaders/motionBlur.fragment.js +35 -14
  940. package/Shaders/motionBlur.fragment.js.map +1 -1
  941. package/Shaders/noise.fragment.js +13 -2
  942. package/Shaders/noise.fragment.js.map +1 -1
  943. package/Shaders/oitBackBlend.fragment.js +2 -1
  944. package/Shaders/oitBackBlend.fragment.js.map +1 -1
  945. package/Shaders/oitFinal.fragment.js +4 -1
  946. package/Shaders/oitFinal.fragment.js.map +1 -1
  947. package/Shaders/outline.fragment.js +11 -5
  948. package/Shaders/outline.fragment.js.map +1 -1
  949. package/Shaders/outline.vertex.js +27 -13
  950. package/Shaders/outline.vertex.js.map +1 -1
  951. package/Shaders/particles.fragment.js +18 -9
  952. package/Shaders/particles.fragment.js.map +1 -1
  953. package/Shaders/particles.vertex.js +58 -29
  954. package/Shaders/particles.vertex.js.map +1 -1
  955. package/Shaders/pass.fragment.js +4 -2
  956. package/Shaders/pass.fragment.js.map +1 -1
  957. package/Shaders/passCube.fragment.js +17 -8
  958. package/Shaders/passCube.fragment.js.map +1 -1
  959. package/Shaders/pbr.fragment.js +389 -154
  960. package/Shaders/pbr.fragment.js.map +1 -1
  961. package/Shaders/pbr.vertex.js +70 -35
  962. package/Shaders/pbr.vertex.js.map +1 -1
  963. package/Shaders/postprocess.vertex.js +6 -3
  964. package/Shaders/postprocess.vertex.js.map +1 -1
  965. package/Shaders/procedural.vertex.js +6 -3
  966. package/Shaders/procedural.vertex.js.map +1 -1
  967. package/Shaders/refraction.fragment.js +1 -1
  968. package/Shaders/refraction.fragment.js.map +1 -1
  969. package/Shaders/rgbdDecode.fragment.js +4 -2
  970. package/Shaders/rgbdDecode.fragment.js.map +1 -1
  971. package/Shaders/rgbdEncode.fragment.js +4 -2
  972. package/Shaders/rgbdEncode.fragment.js.map +1 -1
  973. package/Shaders/screenSpaceCurvature.fragment.js +11 -3
  974. package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
  975. package/Shaders/screenSpaceReflection.fragment.js +57 -15
  976. package/Shaders/screenSpaceReflection.fragment.js.map +1 -1
  977. package/Shaders/screenSpaceReflection2.fragment.js +125 -51
  978. package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
  979. package/Shaders/screenSpaceReflection2Blur.fragment.js +7 -1
  980. package/Shaders/screenSpaceReflection2Blur.fragment.js.map +1 -1
  981. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +28 -13
  982. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  983. package/Shaders/shadowMap.fragment.js +14 -6
  984. package/Shaders/shadowMap.fragment.js.map +1 -1
  985. package/Shaders/shadowMap.vertex.js +35 -17
  986. package/Shaders/shadowMap.vertex.js.map +1 -1
  987. package/Shaders/sharpen.fragment.js +8 -2
  988. package/Shaders/sharpen.fragment.js.map +1 -1
  989. package/Shaders/spriteMap.fragment.js +17 -4
  990. package/Shaders/spriteMap.fragment.js.map +1 -1
  991. package/Shaders/spriteMap.vertex.js +2 -1
  992. package/Shaders/spriteMap.vertex.js.map +1 -1
  993. package/Shaders/sprites.fragment.js +17 -7
  994. package/Shaders/sprites.fragment.js.map +1 -1
  995. package/Shaders/sprites.vertex.js +10 -4
  996. package/Shaders/sprites.vertex.js.map +1 -1
  997. package/Shaders/ssao.fragment.js +0 -2
  998. package/Shaders/ssao.fragment.js.map +1 -1
  999. package/Shaders/ssao2.fragment.js +0 -2
  1000. package/Shaders/ssao2.fragment.js.map +1 -1
  1001. package/Shaders/ssaoCombine.fragment.js +8 -4
  1002. package/Shaders/ssaoCombine.fragment.js.map +1 -1
  1003. package/Shaders/standard.fragment.js +101 -25
  1004. package/Shaders/standard.fragment.js.map +1 -1
  1005. package/Shaders/stereoscopicInterlace.fragment.js +14 -6
  1006. package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
  1007. package/Shaders/subSurfaceScattering.fragment.js +58 -12
  1008. package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
  1009. package/Shaders/tonemap.fragment.js +21 -9
  1010. package/Shaders/tonemap.fragment.js.map +1 -1
  1011. package/Shaders/velocity.fragment.js +8 -4
  1012. package/Shaders/velocity.fragment.js.map +1 -1
  1013. package/Shaders/velocity.vertex.js +18 -9
  1014. package/Shaders/velocity.vertex.js.map +1 -1
  1015. package/Shaders/volumetricLightScattering.fragment.js +9 -4
  1016. package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
  1017. package/Shaders/volumetricLightScatteringPass.fragment.js +12 -5
  1018. package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
  1019. package/Shaders/volumetricLightScatteringPass.vertex.js +23 -11
  1020. package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
  1021. package/Shaders/vrDistortionCorrection.fragment.js +6 -2
  1022. package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
  1023. package/Shaders/vrMultiviewToSingleview.fragment.js +4 -2
  1024. package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
  1025. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js +24 -12
  1026. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  1027. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js +7 -3
  1028. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  1029. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js +14 -6
  1030. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js.map +1 -1
  1031. package/ShadersWGSL/ShadersInclude/bonesVertex.js +36 -18
  1032. package/ShadersWGSL/ShadersInclude/bonesVertex.js.map +1 -1
  1033. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js +20 -7
  1034. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js.map +1 -1
  1035. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js +12 -6
  1036. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  1037. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js +12 -6
  1038. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js.map +1 -1
  1039. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js +12 -6
  1040. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  1041. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +14 -7
  1042. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
  1043. package/ShadersWGSL/ShadersInclude/instancesVertex.js +16 -8
  1044. package/ShadersWGSL/ShadersInclude/instancesVertex.js.map +1 -1
  1045. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js +3 -1
  1046. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js.map +1 -1
  1047. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +16 -8
  1048. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
  1049. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js +8 -4
  1050. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  1051. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js +2 -1
  1052. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  1053. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +6 -2
  1054. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  1055. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js +8 -3
  1056. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  1057. package/ShadersWGSL/gpuUpdateParticles.compute.js +229 -90
  1058. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  1059. package/ShadersWGSL/postprocess.vertex.js +9 -4
  1060. package/ShadersWGSL/postprocess.vertex.js.map +1 -1
  1061. package/assetContainer.d.ts +7 -0
  1062. package/assetContainer.js +46 -0
  1063. package/assetContainer.js.map +1 -1
  1064. package/index.d.ts +1 -0
  1065. package/index.js +1 -0
  1066. package/index.js.map +1 -1
  1067. package/package.json +1 -1
  1068. package/scene.js +5 -0
  1069. package/scene.js.map +1 -1
  1070. package/Materials/Node/nodeMaterialDecorator.js.map +0 -1
@@ -1,49 +1,90 @@
1
1
  // Do not edit.
2
2
  import { ShaderStore } from "../Engines/shaderStore.js";
3
3
  const name = "fluidRenderingRenderPixelShader";
4
- const shader = `/* disable_uniformity_analysis */
4
+ const shader = `/* disable_uniformity_analysis */
5
+ #define IOR 1.333
5
6
  #define ETA 1.0/IOR
6
7
  #define F0 0.02
7
- uniform sampler2D textureSampler;
8
- uniform sampler2D diffuseSampler;
9
- uniform vec3 diffuseColor;
8
+ uniform sampler2D textureSampler;uniform sampler2D depthSampler;
9
+ #ifdef FLUIDRENDERING_DIFFUSETEXTURE
10
+ uniform sampler2D diffuseSampler;
11
+ #else
12
+ uniform vec3 diffuseColor;
13
+ #endif
10
14
  #ifdef FLUIDRENDERING_FIXED_THICKNESS
11
- uniform float thickness;
12
- uniform float minimumThickness;
15
+ uniform float thickness;uniform sampler2D bgDepthSampler;
16
+ #else
17
+ uniform float minimumThickness;uniform sampler2D thicknessSampler;
18
+ #endif
13
19
  #ifdef FLUIDRENDERING_ENVIRONMENT
14
- uniform samplerCube reflectionSampler;
20
+ uniform samplerCube reflectionSampler;
21
+ #endif
15
22
  #if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_TEXTURE)
16
- uniform sampler2D debugSampler;
17
- uniform mat4 viewMatrix;
18
- ndc.z=-projectionMatrix[2].z+projectionMatrix[3].z/depth;
19
- ndc.z=projectionMatrix[2].z+projectionMatrix[3].z/depth;
20
- ndc.w=1.0;
21
- vec4 color=texture2D(debugSampler,texCoord);
22
- glFragColor=vec4(color.rgb/vec3(2.0),1.);
23
- glFragColor=vec4(color.rgb,1.);
24
- return;
25
- vec2 depthVel=textureLod(depthSampler,texCoord,0.).rg;
26
- float thickness=texture2D(thicknessSampler,texCoord).x;
27
- float bgDepth=texture2D(bgDepthSampler,texCoord).x;
28
- vec4 backColor=texture2D(textureSampler,texCoord);
29
- if (depth>=cameraFar || depth<=0. || thickness<=minimumThickness) {
30
- if (depth>=cameraFar || depth<=0. || bgDepth<=depthNonLinear) {
31
- glFragColor=backColor;
32
- normal=-normal;
23
+ uniform sampler2D debugSampler;
24
+ #endif
25
+ uniform mat4 viewMatrix;uniform mat4 projectionMatrix;uniform mat4 invProjectionMatrix;uniform vec2 texelSize;uniform vec3 dirLight;uniform float cameraFar;uniform float density;uniform float refractionStrength;uniform float fresnelClamp;uniform float specularPower;varying vec2 vUV;vec3 computeViewPosFromUVDepth(vec2 texCoord,float depth) {vec4 ndc;ndc.xy=texCoord*2.0-1.0;
26
+ #ifdef FLUIDRENDERING_RHS
27
+ ndc.z=-projectionMatrix[2].z+projectionMatrix[3].z/depth;
28
+ #else
29
+ ndc.z=projectionMatrix[2].z+projectionMatrix[3].z/depth;
30
+ #endif
31
+ ndc.w=1.0;vec4 eyePos=invProjectionMatrix*ndc;eyePos.xyz/=eyePos.w;return eyePos.xyz;}
32
+ vec3 getViewPosFromTexCoord(vec2 texCoord) {float depth=textureLod(depthSampler,texCoord,0.).x;return computeViewPosFromUVDepth(texCoord,depth);}
33
+ void main(void) {vec2 texCoord=vUV;
34
+ #if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_TEXTURE)
35
+ vec4 color=texture2D(debugSampler,texCoord);
36
+ #ifdef FLUIDRENDERING_DEBUG_DEPTH
37
+ glFragColor=vec4(color.rgb/vec3(2.0),1.);if (color.r>0.999 && color.g>0.999) {glFragColor=texture2D(textureSampler,texCoord);}
38
+ #else
39
+ glFragColor=vec4(color.rgb,1.);if (color.r<0.001 && color.g<0.001 && color.b<0.001) {glFragColor=texture2D(textureSampler,texCoord);}
40
+ #endif
41
+ return;
42
+ #endif
43
+ vec2 depthVel=textureLod(depthSampler,texCoord,0.).rg;float depth=depthVel.r;
44
+ #ifndef FLUIDRENDERING_FIXED_THICKNESS
45
+ float thickness=texture2D(thicknessSampler,texCoord).x;
46
+ #else
47
+ float bgDepth=texture2D(bgDepthSampler,texCoord).x;float depthNonLinear=projectionMatrix[2].z+projectionMatrix[3].z/depth;depthNonLinear=depthNonLinear*0.5+0.5;
48
+ #endif
49
+ vec4 backColor=texture2D(textureSampler,texCoord);
50
+ #ifndef FLUIDRENDERING_FIXED_THICKNESS
51
+ if (depth>=cameraFar || depth<=0. || thickness<=minimumThickness) {
52
+ #else
53
+ if (depth>=cameraFar || depth<=0. || bgDepth<=depthNonLinear) {
54
+ #endif
55
+ glFragColor=backColor;return;}
56
+ vec3 viewPos=computeViewPosFromUVDepth(texCoord,depth);vec3 ddx=getViewPosFromTexCoord(texCoord+vec2(texelSize.x,0.))-viewPos;vec3 ddy=getViewPosFromTexCoord(texCoord+vec2(0.,texelSize.y))-viewPos;vec3 ddx2=viewPos-getViewPosFromTexCoord(texCoord+vec2(-texelSize.x,0.));if (abs(ddx.z)>abs(ddx2.z)) {ddx=ddx2;}
57
+ vec3 ddy2=viewPos-getViewPosFromTexCoord(texCoord+vec2(0.,-texelSize.y));if (abs(ddy.z)>abs(ddy2.z)) {ddy=ddy2;}
58
+ vec3 normal=normalize(cross(ddy,ddx));
59
+ #ifdef FLUIDRENDERING_RHS
60
+ normal=-normal;
61
+ #endif
33
62
  #ifndef WEBGPU
34
- if(isnan(normal.x) || isnan(normal.y) || isnan(normal.z) || isinf(normal.x) || isinf(normal.y) || isinf(normal.z)) {
63
+ if(isnan(normal.x) || isnan(normal.y) || isnan(normal.z) || isinf(normal.x) || isinf(normal.y) || isinf(normal.z)) {normal=vec3(0.,0.,-1.);}
64
+ #endif
35
65
  #if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_SHOWNORMAL)
36
- glFragColor=vec4(normal*0.5+0.5,1.0);
37
- vec3 rayDir=normalize(viewPos);
38
- vec3 diffuseColor=textureLod(diffuseSampler,texCoord,0.0).rgb;
39
- vec3 lightDir=normalize(vec3(viewMatrix*vec4(-dirLight,0.)));
40
- float diffuse =max(0.0,dot(lightDir,normal))*1.0;
41
- vec3 refractionDir=refract(rayDir,normal,ETA);
42
- vec3 reflectionDir=reflect(rayDir,normal);
43
- vec3 finalColor=refractionColor+specular;
66
+ glFragColor=vec4(normal*0.5+0.5,1.0);return;
67
+ #endif
68
+ vec3 rayDir=normalize(viewPos);
69
+ #ifdef FLUIDRENDERING_DIFFUSETEXTURE
70
+ vec3 diffuseColor=textureLod(diffuseSampler,texCoord,0.0).rgb;
71
+ #endif
72
+ vec3 lightDir=normalize(vec3(viewMatrix*vec4(-dirLight,0.)));vec3 H =normalize(lightDir-rayDir);float specular=pow(max(0.0,dot(H,normal)),specularPower);
73
+ #ifdef FLUIDRENDERING_DEBUG_DIFFUSERENDERING
74
+ float diffuse =max(0.0,dot(lightDir,normal))*1.0;glFragColor=vec4(vec3(0.1) /*ambient*/+vec3(0.42,0.50,1.00)*diffuse+vec3(0,0,0.2)+specular,1.);return;
75
+ #endif
76
+ vec3 refractionDir=refract(rayDir,normal,ETA);vec4 transmitted=textureLod(textureSampler,vec2(texCoord+refractionDir.xy*thickness*refractionStrength),0.0);vec3 transmittance=exp(-density*thickness*(1.0-diffuseColor));
77
+ vec3 refractionColor=transmitted.rgb*transmittance;
78
+ #ifdef FLUIDRENDERING_ENVIRONMENT
79
+ vec3 reflectionDir=reflect(rayDir,normal);vec3 reflectionColor=(textureCube(reflectionSampler,reflectionDir).rgb);float fresnel=clamp(F0+(1.0-F0)*pow(1.0-dot(normal,-rayDir),5.0),0.,fresnelClamp);vec3 finalColor=mix(refractionColor,reflectionColor,fresnel)+specular;
80
+ #else
81
+ vec3 finalColor=refractionColor+specular;
82
+ #endif
44
83
  #ifdef FLUIDRENDERING_VELOCITY
45
- float velocity=depthVel.g;
46
- glFragColor=vec4(finalColor,transmitted.a);
84
+ float velocity=depthVel.g;finalColor=mix(finalColor,vec3(1.0),smoothstep(0.3,1.0,velocity/6.0));
85
+ #endif
86
+ glFragColor=vec4(finalColor,transmitted.a);}
87
+ `;
47
88
  // Sideeffect
48
89
  ShaderStore.ShadersStore[name] = shader;
49
90
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"fluidRenderingRender.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fluidRenderingRender.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Id,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fluidRenderingRenderPixelShader\";\nconst shader = `/* disable_uniformity_analysis */\r#define IOR 1.333\n#define ETA 1.0/IOR\n#define F0 0.02\nuniform sampler2D textureSampler;\runiform sampler2D depthSampler;\r#ifdef FLUIDRENDERING_DIFFUSETEXTURE\nuniform sampler2D diffuseSampler;\r#else\nuniform vec3 diffuseColor;\r#endif\n#ifdef FLUIDRENDERING_FIXED_THICKNESS\nuniform float thickness;\runiform sampler2D bgDepthSampler;\r#else\nuniform float minimumThickness;\runiform sampler2D thicknessSampler;\r#endif\n#ifdef FLUIDRENDERING_ENVIRONMENT\nuniform samplerCube reflectionSampler;\r#endif\n#if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_TEXTURE)\nuniform sampler2D debugSampler;\r#endif\nuniform mat4 viewMatrix;\runiform mat4 projectionMatrix;\runiform mat4 invProjectionMatrix;\runiform vec2 texelSize;\runiform vec3 dirLight;\runiform float cameraFar;\runiform float density;\runiform float refractionStrength;\runiform float fresnelClamp;\runiform float specularPower;\rvarying vec2 vUV;\rvec3 computeViewPosFromUVDepth(vec2 texCoord,float depth) {\rvec4 ndc;\rndc.xy=texCoord*2.0-1.0;\r#ifdef FLUIDRENDERING_RHS\nndc.z=-projectionMatrix[2].z+projectionMatrix[3].z/depth;\r#else\nndc.z=projectionMatrix[2].z+projectionMatrix[3].z/depth;\r#endif\nndc.w=1.0;\rvec4 eyePos=invProjectionMatrix*ndc;\reyePos.xyz/=eyePos.w;\rreturn eyePos.xyz;\r}\rvec3 getViewPosFromTexCoord(vec2 texCoord) {\rfloat depth=textureLod(depthSampler,texCoord,0.).x;\rreturn computeViewPosFromUVDepth(texCoord,depth);\r}\rvoid main(void) {\rvec2 texCoord=vUV;\r#if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_TEXTURE)\nvec4 color=texture2D(debugSampler,texCoord);\r#ifdef FLUIDRENDERING_DEBUG_DEPTH\nglFragColor=vec4(color.rgb/vec3(2.0),1.);\rif (color.r>0.999 && color.g>0.999) {\rglFragColor=texture2D(textureSampler,texCoord);\r}\r#else\nglFragColor=vec4(color.rgb,1.);\rif (color.r<0.001 && color.g<0.001 && color.b<0.001) {\rglFragColor=texture2D(textureSampler,texCoord);\r}\r#endif\nreturn;\r#endif\nvec2 depthVel=textureLod(depthSampler,texCoord,0.).rg;\rfloat depth=depthVel.r;\r#ifndef FLUIDRENDERING_FIXED_THICKNESS\nfloat thickness=texture2D(thicknessSampler,texCoord).x;\r#else\nfloat bgDepth=texture2D(bgDepthSampler,texCoord).x;\rfloat depthNonLinear=projectionMatrix[2].z+projectionMatrix[3].z/depth;\rdepthNonLinear=depthNonLinear*0.5+0.5;\r#endif\nvec4 backColor=texture2D(textureSampler,texCoord);\r#ifndef FLUIDRENDERING_FIXED_THICKNESS\nif (depth>=cameraFar || depth<=0. || thickness<=minimumThickness) {\r#else\nif (depth>=cameraFar || depth<=0. || bgDepth<=depthNonLinear) {\r#endif\nglFragColor=backColor;\rreturn;\r}\rvec3 viewPos=computeViewPosFromUVDepth(texCoord,depth);\rvec3 ddx=getViewPosFromTexCoord(texCoord+vec2(texelSize.x,0.))-viewPos;\rvec3 ddy=getViewPosFromTexCoord(texCoord+vec2(0.,texelSize.y))-viewPos;\rvec3 ddx2=viewPos-getViewPosFromTexCoord(texCoord+vec2(-texelSize.x,0.));\rif (abs(ddx.z)>abs(ddx2.z)) {\rddx=ddx2;\r}\rvec3 ddy2=viewPos-getViewPosFromTexCoord(texCoord+vec2(0.,-texelSize.y));\rif (abs(ddy.z)>abs(ddy2.z)) {\rddy=ddy2;\r}\rvec3 normal=normalize(cross(ddy,ddx));\r#ifdef FLUIDRENDERING_RHS\nnormal=-normal;\r#endif\n#ifndef WEBGPU\nif(isnan(normal.x) || isnan(normal.y) || isnan(normal.z) || isinf(normal.x) || isinf(normal.y) || isinf(normal.z)) {\rnormal=vec3(0.,0.,-1.);\r}\r#endif\n#if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_SHOWNORMAL)\nglFragColor=vec4(normal*0.5+0.5,1.0);\rreturn;\r#endif\nvec3 rayDir=normalize(viewPos); \r#ifdef FLUIDRENDERING_DIFFUSETEXTURE\nvec3 diffuseColor=textureLod(diffuseSampler,texCoord,0.0).rgb;\r#endif\nvec3 lightDir=normalize(vec3(viewMatrix*vec4(-dirLight,0.)));\rvec3 H =normalize(lightDir-rayDir);\rfloat specular=pow(max(0.0,dot(H,normal)),specularPower);\r#ifdef FLUIDRENDERING_DEBUG_DIFFUSERENDERING\nfloat diffuse =max(0.0,dot(lightDir,normal))*1.0;\rglFragColor=vec4(vec3(0.1) /*ambient*/+vec3(0.42,0.50,1.00)*diffuse+vec3(0,0,0.2)+specular,1.);\rreturn;\r#endif\nvec3 refractionDir=refract(rayDir,normal,ETA);\rvec4 transmitted=textureLod(textureSampler,vec2(texCoord+refractionDir.xy*thickness*refractionStrength),0.0);\rvec3 transmittance=exp(-density*thickness*(1.0-diffuseColor)); \rvec3 refractionColor=transmitted.rgb*transmittance;\r#ifdef FLUIDRENDERING_ENVIRONMENT\nvec3 reflectionDir=reflect(rayDir,normal);\rvec3 reflectionColor=(textureCube(reflectionSampler,reflectionDir).rgb);\rfloat fresnel=clamp(F0+(1.0-F0)*pow(1.0-dot(normal,-rayDir),5.0),0.,fresnelClamp);\rvec3 finalColor=mix(refractionColor,reflectionColor,fresnel)+specular;\r#else\nvec3 finalColor=refractionColor+specular;\r#endif\n#ifdef FLUIDRENDERING_VELOCITY\nfloat velocity=depthVel.g;\rfinalColor=mix(finalColor,vec3(1.0),smoothstep(0.3,1.0,velocity/6.0));\r#endif\nglFragColor=vec4(finalColor,transmitted.a);\r}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fluidRenderingRenderPixelShader = { name, shader };\n"]}
1
+ {"version":3,"file":"fluidRenderingRender.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fluidRenderingRender.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmFd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fluidRenderingRenderPixelShader\";\nconst shader = `/* disable_uniformity_analysis */\n#define IOR 1.333\n#define ETA 1.0/IOR\n#define F0 0.02\nuniform sampler2D textureSampler;uniform sampler2D depthSampler;\n#ifdef FLUIDRENDERING_DIFFUSETEXTURE\nuniform sampler2D diffuseSampler;\n#else\nuniform vec3 diffuseColor;\n#endif\n#ifdef FLUIDRENDERING_FIXED_THICKNESS\nuniform float thickness;uniform sampler2D bgDepthSampler;\n#else\nuniform float minimumThickness;uniform sampler2D thicknessSampler;\n#endif\n#ifdef FLUIDRENDERING_ENVIRONMENT\nuniform samplerCube reflectionSampler;\n#endif\n#if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_TEXTURE)\nuniform sampler2D debugSampler;\n#endif\nuniform mat4 viewMatrix;uniform mat4 projectionMatrix;uniform mat4 invProjectionMatrix;uniform vec2 texelSize;uniform vec3 dirLight;uniform float cameraFar;uniform float density;uniform float refractionStrength;uniform float fresnelClamp;uniform float specularPower;varying vec2 vUV;vec3 computeViewPosFromUVDepth(vec2 texCoord,float depth) {vec4 ndc;ndc.xy=texCoord*2.0-1.0;\n#ifdef FLUIDRENDERING_RHS\nndc.z=-projectionMatrix[2].z+projectionMatrix[3].z/depth;\n#else\nndc.z=projectionMatrix[2].z+projectionMatrix[3].z/depth;\n#endif\nndc.w=1.0;vec4 eyePos=invProjectionMatrix*ndc;eyePos.xyz/=eyePos.w;return eyePos.xyz;}\nvec3 getViewPosFromTexCoord(vec2 texCoord) {float depth=textureLod(depthSampler,texCoord,0.).x;return computeViewPosFromUVDepth(texCoord,depth);}\nvoid main(void) {vec2 texCoord=vUV;\n#if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_TEXTURE)\nvec4 color=texture2D(debugSampler,texCoord);\n#ifdef FLUIDRENDERING_DEBUG_DEPTH\nglFragColor=vec4(color.rgb/vec3(2.0),1.);if (color.r>0.999 && color.g>0.999) {glFragColor=texture2D(textureSampler,texCoord);}\n#else\nglFragColor=vec4(color.rgb,1.);if (color.r<0.001 && color.g<0.001 && color.b<0.001) {glFragColor=texture2D(textureSampler,texCoord);}\n#endif\nreturn;\n#endif\nvec2 depthVel=textureLod(depthSampler,texCoord,0.).rg;float depth=depthVel.r;\n#ifndef FLUIDRENDERING_FIXED_THICKNESS\nfloat thickness=texture2D(thicknessSampler,texCoord).x;\n#else\nfloat bgDepth=texture2D(bgDepthSampler,texCoord).x;float depthNonLinear=projectionMatrix[2].z+projectionMatrix[3].z/depth;depthNonLinear=depthNonLinear*0.5+0.5;\n#endif\nvec4 backColor=texture2D(textureSampler,texCoord);\n#ifndef FLUIDRENDERING_FIXED_THICKNESS\nif (depth>=cameraFar || depth<=0. || thickness<=minimumThickness) {\n#else\nif (depth>=cameraFar || depth<=0. || bgDepth<=depthNonLinear) {\n#endif\nglFragColor=backColor;return;}\nvec3 viewPos=computeViewPosFromUVDepth(texCoord,depth);vec3 ddx=getViewPosFromTexCoord(texCoord+vec2(texelSize.x,0.))-viewPos;vec3 ddy=getViewPosFromTexCoord(texCoord+vec2(0.,texelSize.y))-viewPos;vec3 ddx2=viewPos-getViewPosFromTexCoord(texCoord+vec2(-texelSize.x,0.));if (abs(ddx.z)>abs(ddx2.z)) {ddx=ddx2;}\nvec3 ddy2=viewPos-getViewPosFromTexCoord(texCoord+vec2(0.,-texelSize.y));if (abs(ddy.z)>abs(ddy2.z)) {ddy=ddy2;}\nvec3 normal=normalize(cross(ddy,ddx));\n#ifdef FLUIDRENDERING_RHS\nnormal=-normal;\n#endif\n#ifndef WEBGPU\nif(isnan(normal.x) || isnan(normal.y) || isnan(normal.z) || isinf(normal.x) || isinf(normal.y) || isinf(normal.z)) {normal=vec3(0.,0.,-1.);}\n#endif\n#if defined(FLUIDRENDERING_DEBUG) && defined(FLUIDRENDERING_DEBUG_SHOWNORMAL)\nglFragColor=vec4(normal*0.5+0.5,1.0);return;\n#endif\nvec3 rayDir=normalize(viewPos); \n#ifdef FLUIDRENDERING_DIFFUSETEXTURE\nvec3 diffuseColor=textureLod(diffuseSampler,texCoord,0.0).rgb;\n#endif\nvec3 lightDir=normalize(vec3(viewMatrix*vec4(-dirLight,0.)));vec3 H =normalize(lightDir-rayDir);float specular=pow(max(0.0,dot(H,normal)),specularPower);\n#ifdef FLUIDRENDERING_DEBUG_DIFFUSERENDERING\nfloat diffuse =max(0.0,dot(lightDir,normal))*1.0;glFragColor=vec4(vec3(0.1) /*ambient*/+vec3(0.42,0.50,1.00)*diffuse+vec3(0,0,0.2)+specular,1.);return;\n#endif\nvec3 refractionDir=refract(rayDir,normal,ETA);vec4 transmitted=textureLod(textureSampler,vec2(texCoord+refractionDir.xy*thickness*refractionStrength),0.0);vec3 transmittance=exp(-density*thickness*(1.0-diffuseColor)); \nvec3 refractionColor=transmitted.rgb*transmittance;\n#ifdef FLUIDRENDERING_ENVIRONMENT\nvec3 reflectionDir=reflect(rayDir,normal);vec3 reflectionColor=(textureCube(reflectionSampler,reflectionDir).rgb);float fresnel=clamp(F0+(1.0-F0)*pow(1.0-dot(normal,-rayDir),5.0),0.,fresnelClamp);vec3 finalColor=mix(refractionColor,reflectionColor,fresnel)+specular;\n#else\nvec3 finalColor=refractionColor+specular;\n#endif\n#ifdef FLUIDRENDERING_VELOCITY\nfloat velocity=depthVel.g;finalColor=mix(finalColor,vec3(1.0),smoothstep(0.3,1.0,velocity/6.0));\n#endif\nglFragColor=vec4(finalColor,transmitted.a);}\n`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fluidRenderingRenderPixelShader = { name, shader };\n"]}
@@ -1,7 +1,10 @@
1
1
  // Do not edit.
2
2
  import { ShaderStore } from "../Engines/shaderStore.js";
3
3
  const name = "fluidRenderingStandardBlurPixelShader";
4
- const shader = `uniform sampler2D textureSampler;
4
+ const shader = `uniform sampler2D textureSampler;uniform int filterSize;uniform vec2 blurDir;varying vec2 vUV;void main(void) {vec4 s=textureLod(textureSampler,vUV,0.);if (s.r==0.) {glFragColor=vec4(0.,0.,0.,1.);return;}
5
+ float sigma=float(filterSize)/3.0;float twoSigma2=2.0*sigma*sigma;vec4 sum=vec4(0.);float wsum=0.;for (int x=-filterSize; x<=filterSize; ++x) {vec2 coords=vec2(x);vec4 sampl=textureLod(textureSampler,vUV+coords*blurDir,0.);float w=exp(-coords.x*coords.x/twoSigma2);sum+=sampl*w;wsum+=w;}
6
+ sum/=wsum;glFragColor=vec4(sum.rgb,1.);}
7
+ `;
5
8
  // Sideeffect
6
9
  ShaderStore.ShadersStore[name] = shader;
7
10
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"fluidRenderingStandardBlur.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fluidRenderingStandardBlur.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,uCAAuC,CAAC;AACrD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fluidRenderingStandardBlurPixelShader\";\nconst shader = `uniform sampler2D textureSampler;\runiform int filterSize;\runiform vec2 blurDir;\rvarying vec2 vUV;\rvoid main(void) {\rvec4 s=textureLod(textureSampler,vUV,0.);\rif (s.r==0.) {\rglFragColor=vec4(0.,0.,0.,1.);\rreturn;\r}\rfloat sigma=float(filterSize)/3.0;\rfloat twoSigma2=2.0*sigma*sigma;\rvec4 sum=vec4(0.);\rfloat wsum=0.;\rfor (int x=-filterSize; x<=filterSize; ++x) {\rvec2 coords=vec2(x);\rvec4 sampl=textureLod(textureSampler,vUV+coords*blurDir,0.);\rfloat w=exp(-coords.x*coords.x/twoSigma2);\rsum+=sampl*w;\rwsum+=w;\r}\rsum/=wsum;\rglFragColor=vec4(sum.rgb,1.);\r}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fluidRenderingStandardBlurPixelShader = { name, shader };\n"]}
1
+ {"version":3,"file":"fluidRenderingStandardBlur.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fluidRenderingStandardBlur.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,uCAAuC,CAAC;AACrD,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fluidRenderingStandardBlurPixelShader\";\nconst shader = `uniform sampler2D textureSampler;uniform int filterSize;uniform vec2 blurDir;varying vec2 vUV;void main(void) {vec4 s=textureLod(textureSampler,vUV,0.);if (s.r==0.) {glFragColor=vec4(0.,0.,0.,1.);return;}\nfloat sigma=float(filterSize)/3.0;float twoSigma2=2.0*sigma*sigma;vec4 sum=vec4(0.);float wsum=0.;for (int x=-filterSize; x<=filterSize; ++x) {vec2 coords=vec2(x);vec4 sampl=textureLod(textureSampler,vUV+coords*blurDir,0.);float w=exp(-coords.x*coords.x/twoSigma2);sum+=sampl*w;wsum+=w;}\nsum/=wsum;glFragColor=vec4(sum.rgb,1.);}\n`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fluidRenderingStandardBlurPixelShader = { name, shader };\n"]}
@@ -6,12 +6,53 @@ const shader = `#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
6
6
  #else
7
7
  #define TEXTUREFUNC(s,c,b) texture2D(s,c,b)
8
8
  #endif
9
- uniform sampler2D textureSampler;
10
- void main(){
11
- if(range<rangeMaxClamped)
12
- float lumaNW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNW,0.0));
13
- if(range<rangeMaxClamped)
14
- gl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);
9
+ uniform sampler2D textureSampler;uniform vec2 texelSize;varying vec2 vUV;varying vec2 sampleCoordS;varying vec2 sampleCoordE;varying vec2 sampleCoordN;varying vec2 sampleCoordW;varying vec2 sampleCoordNW;varying vec2 sampleCoordSE;varying vec2 sampleCoordNE;varying vec2 sampleCoordSW;const float fxaaQualitySubpix=1.0;const float fxaaQualityEdgeThreshold=0.166;const float fxaaQualityEdgeThresholdMin=0.0833;const vec3 kLumaCoefficients=vec3(0.2126,0.7152,0.0722);
10
+ #define FxaaLuma(rgba) dot(rgba.rgb,kLumaCoefficients)
11
+ void main(){vec2 posM;posM.x=vUV.x;posM.y=vUV.y;vec4 rgbyM=TEXTUREFUNC(textureSampler,vUV,0.0);float lumaM=FxaaLuma(rgbyM);float lumaS=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordS,0.0));float lumaE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordE,0.0));float lumaN=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordN,0.0));float lumaW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordW,0.0));float maxSM=max(lumaS,lumaM);float minSM=min(lumaS,lumaM);float maxESM=max(lumaE,maxSM);float minESM=min(lumaE,minSM);float maxWN=max(lumaN,lumaW);float minWN=min(lumaN,lumaW);float rangeMax=max(maxWN,maxESM);float rangeMin=min(minWN,minESM);float rangeMaxScaled=rangeMax*fxaaQualityEdgeThreshold;float range=rangeMax-rangeMin;float rangeMaxClamped=max(fxaaQualityEdgeThresholdMin,rangeMaxScaled);
12
+ #ifndef MALI
13
+ if(range<rangeMaxClamped)
14
+ {gl_FragColor=rgbyM;return;}
15
+ #endif
16
+ float lumaNW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNW,0.0));float lumaSE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordSE,0.0));float lumaNE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNE,0.0));float lumaSW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordSW,0.0));float lumaNS=lumaN+lumaS;float lumaWE=lumaW+lumaE;float subpixRcpRange=1.0/range;float subpixNSWE=lumaNS+lumaWE;float edgeHorz1=(-2.0*lumaM)+lumaNS;float edgeVert1=(-2.0*lumaM)+lumaWE;float lumaNESE=lumaNE+lumaSE;float lumaNWNE=lumaNW+lumaNE;float edgeHorz2=(-2.0*lumaE)+lumaNESE;float edgeVert2=(-2.0*lumaN)+lumaNWNE;float lumaNWSW=lumaNW+lumaSW;float lumaSWSE=lumaSW+lumaSE;float edgeHorz4=(abs(edgeHorz1)*2.0)+abs(edgeHorz2);float edgeVert4=(abs(edgeVert1)*2.0)+abs(edgeVert2);float edgeHorz3=(-2.0*lumaW)+lumaNWSW;float edgeVert3=(-2.0*lumaS)+lumaSWSE;float edgeHorz=abs(edgeHorz3)+edgeHorz4;float edgeVert=abs(edgeVert3)+edgeVert4;float subpixNWSWNESE=lumaNWSW+lumaNESE;float lengthSign=texelSize.x;bool horzSpan=edgeHorz>=edgeVert;float subpixA=subpixNSWE*2.0+subpixNWSWNESE;if (!horzSpan)
17
+ {lumaN=lumaW;}
18
+ if (!horzSpan)
19
+ {lumaS=lumaE;}
20
+ if (horzSpan)
21
+ {lengthSign=texelSize.y;}
22
+ float subpixB=(subpixA*(1.0/12.0))-lumaM;float gradientN=lumaN-lumaM;float gradientS=lumaS-lumaM;float lumaNN=lumaN+lumaM;float lumaSS=lumaS+lumaM;bool pairN=abs(gradientN)>=abs(gradientS);float gradient=max(abs(gradientN),abs(gradientS));if (pairN)
23
+ {lengthSign=-lengthSign;}
24
+ float subpixC=clamp(abs(subpixB)*subpixRcpRange,0.0,1.0);vec2 posB;posB.x=posM.x;posB.y=posM.y;vec2 offNP;offNP.x=(!horzSpan) ? 0.0 : texelSize.x;offNP.y=(horzSpan) ? 0.0 : texelSize.y;if (!horzSpan)
25
+ {posB.x+=lengthSign*0.5;}
26
+ if (horzSpan)
27
+ {posB.y+=lengthSign*0.5;}
28
+ vec2 posN;posN.x=posB.x-offNP.x*1.5;posN.y=posB.y-offNP.y*1.5;vec2 posP;posP.x=posB.x+offNP.x*1.5;posP.y=posB.y+offNP.y*1.5;float subpixD=((-2.0)*subpixC)+3.0;float lumaEndN=FxaaLuma(TEXTUREFUNC(textureSampler,posN,0.0));float subpixE=subpixC*subpixC;float lumaEndP=FxaaLuma(TEXTUREFUNC(textureSampler,posP,0.0));if (!pairN)
29
+ {lumaNN=lumaSS;}
30
+ float gradientScaled=gradient*1.0/4.0;float lumaMM=lumaM-lumaNN*0.5;float subpixF=subpixD*subpixE;bool lumaMLTZero=lumaMM<0.0;lumaEndN-=lumaNN*0.5;lumaEndP-=lumaNN*0.5;bool doneN=abs(lumaEndN)>=gradientScaled;bool doneP=abs(lumaEndP)>=gradientScaled;if (!doneN)
31
+ {posN.x-=offNP.x*3.0;}
32
+ if (!doneN)
33
+ {posN.y-=offNP.y*3.0;}
34
+ bool doneNP=(!doneN) || (!doneP);if (!doneP)
35
+ {posP.x+=offNP.x*3.0;}
36
+ if (!doneP)
37
+ {posP.y+=offNP.y*3.0;}
38
+ if (doneNP)
39
+ {if (!doneN) lumaEndN=FxaaLuma(TEXTUREFUNC(textureSampler,posN.xy,0.0));if (!doneP) lumaEndP=FxaaLuma(TEXTUREFUNC(textureSampler,posP.xy,0.0));if (!doneN) lumaEndN=lumaEndN-lumaNN*0.5;if (!doneP) lumaEndP=lumaEndP-lumaNN*0.5;doneN=abs(lumaEndN)>=gradientScaled;doneP=abs(lumaEndP)>=gradientScaled;if (!doneN) posN.x-=offNP.x*12.0;if (!doneN) posN.y-=offNP.y*12.0;doneNP=(!doneN) || (!doneP);if (!doneP) posP.x+=offNP.x*12.0;if (!doneP) posP.y+=offNP.y*12.0;}
40
+ float dstN=posM.x-posN.x;float dstP=posP.x-posM.x;if (!horzSpan)
41
+ {dstN=posM.y-posN.y;}
42
+ if (!horzSpan)
43
+ {dstP=posP.y-posM.y;}
44
+ bool goodSpanN=(lumaEndN<0.0) != lumaMLTZero;float spanLength=(dstP+dstN);bool goodSpanP=(lumaEndP<0.0) != lumaMLTZero;float spanLengthRcp=1.0/spanLength;bool directionN=dstN<dstP;float dst=min(dstN,dstP);bool goodSpan=directionN ? goodSpanN : goodSpanP;float subpixG=subpixF*subpixF;float pixelOffset=(dst*(-spanLengthRcp))+0.5;float subpixH=subpixG*fxaaQualitySubpix;float pixelOffsetGood=goodSpan ? pixelOffset : 0.0;float pixelOffsetSubpix=max(pixelOffsetGood,subpixH);if (!horzSpan)
45
+ {posM.x+=pixelOffsetSubpix*lengthSign;}
46
+ if (horzSpan)
47
+ {posM.y+=pixelOffsetSubpix*lengthSign;}
48
+ #ifdef MALI
49
+ if(range<rangeMaxClamped)
50
+ {gl_FragColor=rgbyM;}
51
+ else
52
+ {gl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);}
53
+ #else
54
+ gl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);
55
+ #endif
15
56
  }`;
16
57
  // Sideeffect
17
58
  ShaderStore.ShadersStore[name] = shader;
@@ -1 +1 @@
1
- {"version":3,"file":"fxaa.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fxaa.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,iBAAiB,CAAC;AAC/B,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgNb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaPixelShader\";\nconst shader = `#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define TEXTUREFUNC(s,c,l) texture2DLodEXT(s,c,l)\n#else\n#define TEXTUREFUNC(s,c,b) texture2D(s,c,b)\n#endif\nuniform sampler2D textureSampler;\runiform vec2 texelSize;\rvarying vec2 vUV;\rvarying vec2 sampleCoordS;\rvarying vec2 sampleCoordE;\rvarying vec2 sampleCoordN;\rvarying vec2 sampleCoordW;\rvarying vec2 sampleCoordNW;\rvarying vec2 sampleCoordSE;\rvarying vec2 sampleCoordNE;\rvarying vec2 sampleCoordSW;\rconst float fxaaQualitySubpix=1.0;\rconst float fxaaQualityEdgeThreshold=0.166;\rconst float fxaaQualityEdgeThresholdMin=0.0833;\rconst vec3 kLumaCoefficients=vec3(0.2126,0.7152,0.0722);\r#define FxaaLuma(rgba) dot(rgba.rgb,kLumaCoefficients)\nvoid main(){\rvec2 posM;\rposM.x=vUV.x;\rposM.y=vUV.y;\rvec4 rgbyM=TEXTUREFUNC(textureSampler,vUV,0.0);\rfloat lumaM=FxaaLuma(rgbyM);\rfloat lumaS=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordS,0.0));\rfloat lumaE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordE,0.0));\rfloat lumaN=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordN,0.0));\rfloat lumaW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordW,0.0));\rfloat maxSM=max(lumaS,lumaM);\rfloat minSM=min(lumaS,lumaM);\rfloat maxESM=max(lumaE,maxSM);\rfloat minESM=min(lumaE,minSM);\rfloat maxWN=max(lumaN,lumaW);\rfloat minWN=min(lumaN,lumaW);\rfloat rangeMax=max(maxWN,maxESM);\rfloat rangeMin=min(minWN,minESM);\rfloat rangeMaxScaled=rangeMax*fxaaQualityEdgeThreshold;\rfloat range=rangeMax-rangeMin;\rfloat rangeMaxClamped=max(fxaaQualityEdgeThresholdMin,rangeMaxScaled);\r#ifndef MALI\nif(range<rangeMaxClamped) \r{\rgl_FragColor=rgbyM;\rreturn;\r}\r#endif\nfloat lumaNW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNW,0.0));\rfloat lumaSE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordSE,0.0));\rfloat lumaNE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNE,0.0));\rfloat lumaSW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordSW,0.0));\rfloat lumaNS=lumaN+lumaS;\rfloat lumaWE=lumaW+lumaE;\rfloat subpixRcpRange=1.0/range;\rfloat subpixNSWE=lumaNS+lumaWE;\rfloat edgeHorz1=(-2.0*lumaM)+lumaNS;\rfloat edgeVert1=(-2.0*lumaM)+lumaWE;\rfloat lumaNESE=lumaNE+lumaSE;\rfloat lumaNWNE=lumaNW+lumaNE;\rfloat edgeHorz2=(-2.0*lumaE)+lumaNESE;\rfloat edgeVert2=(-2.0*lumaN)+lumaNWNE;\rfloat lumaNWSW=lumaNW+lumaSW;\rfloat lumaSWSE=lumaSW+lumaSE;\rfloat edgeHorz4=(abs(edgeHorz1)*2.0)+abs(edgeHorz2);\rfloat edgeVert4=(abs(edgeVert1)*2.0)+abs(edgeVert2);\rfloat edgeHorz3=(-2.0*lumaW)+lumaNWSW;\rfloat edgeVert3=(-2.0*lumaS)+lumaSWSE;\rfloat edgeHorz=abs(edgeHorz3)+edgeHorz4;\rfloat edgeVert=abs(edgeVert3)+edgeVert4;\rfloat subpixNWSWNESE=lumaNWSW+lumaNESE;\rfloat lengthSign=texelSize.x;\rbool horzSpan=edgeHorz>=edgeVert;\rfloat subpixA=subpixNSWE*2.0+subpixNWSWNESE;\rif (!horzSpan)\r{\rlumaN=lumaW;\r}\rif (!horzSpan) \r{\rlumaS=lumaE;\r}\rif (horzSpan) \r{\rlengthSign=texelSize.y;\r}\rfloat subpixB=(subpixA*(1.0/12.0))-lumaM;\rfloat gradientN=lumaN-lumaM;\rfloat gradientS=lumaS-lumaM;\rfloat lumaNN=lumaN+lumaM;\rfloat lumaSS=lumaS+lumaM;\rbool pairN=abs(gradientN)>=abs(gradientS);\rfloat gradient=max(abs(gradientN),abs(gradientS));\rif (pairN)\r{\rlengthSign=-lengthSign;\r}\rfloat subpixC=clamp(abs(subpixB)*subpixRcpRange,0.0,1.0);\rvec2 posB;\rposB.x=posM.x;\rposB.y=posM.y;\rvec2 offNP;\roffNP.x=(!horzSpan) ? 0.0 : texelSize.x;\roffNP.y=(horzSpan) ? 0.0 : texelSize.y;\rif (!horzSpan) \r{\rposB.x+=lengthSign*0.5;\r}\rif (horzSpan)\r{\rposB.y+=lengthSign*0.5;\r}\rvec2 posN;\rposN.x=posB.x-offNP.x*1.5;\rposN.y=posB.y-offNP.y*1.5;\rvec2 posP;\rposP.x=posB.x+offNP.x*1.5;\rposP.y=posB.y+offNP.y*1.5;\rfloat subpixD=((-2.0)*subpixC)+3.0;\rfloat lumaEndN=FxaaLuma(TEXTUREFUNC(textureSampler,posN,0.0));\rfloat subpixE=subpixC*subpixC;\rfloat lumaEndP=FxaaLuma(TEXTUREFUNC(textureSampler,posP,0.0));\rif (!pairN) \r{\rlumaNN=lumaSS;\r}\rfloat gradientScaled=gradient*1.0/4.0;\rfloat lumaMM=lumaM-lumaNN*0.5;\rfloat subpixF=subpixD*subpixE;\rbool lumaMLTZero=lumaMM<0.0;\rlumaEndN-=lumaNN*0.5;\rlumaEndP-=lumaNN*0.5;\rbool doneN=abs(lumaEndN)>=gradientScaled;\rbool doneP=abs(lumaEndP)>=gradientScaled;\rif (!doneN) \r{\rposN.x-=offNP.x*3.0;\r}\rif (!doneN) \r{\rposN.y-=offNP.y*3.0;\r}\rbool doneNP=(!doneN) || (!doneP);\rif (!doneP) \r{\rposP.x+=offNP.x*3.0;\r}\rif (!doneP)\r{\rposP.y+=offNP.y*3.0;\r}\rif (doneNP)\r{\rif (!doneN) lumaEndN=FxaaLuma(TEXTUREFUNC(textureSampler,posN.xy,0.0));\rif (!doneP) lumaEndP=FxaaLuma(TEXTUREFUNC(textureSampler,posP.xy,0.0));\rif (!doneN) lumaEndN=lumaEndN-lumaNN*0.5;\rif (!doneP) lumaEndP=lumaEndP-lumaNN*0.5;\rdoneN=abs(lumaEndN)>=gradientScaled;\rdoneP=abs(lumaEndP)>=gradientScaled;\rif (!doneN) posN.x-=offNP.x*12.0;\rif (!doneN) posN.y-=offNP.y*12.0;\rdoneNP=(!doneN) || (!doneP);\rif (!doneP) posP.x+=offNP.x*12.0;\rif (!doneP) posP.y+=offNP.y*12.0;\r}\rfloat dstN=posM.x-posN.x;\rfloat dstP=posP.x-posM.x;\rif (!horzSpan)\r{\rdstN=posM.y-posN.y;\r}\rif (!horzSpan) \r{\rdstP=posP.y-posM.y;\r}\rbool goodSpanN=(lumaEndN<0.0) != lumaMLTZero;\rfloat spanLength=(dstP+dstN);\rbool goodSpanP=(lumaEndP<0.0) != lumaMLTZero;\rfloat spanLengthRcp=1.0/spanLength;\rbool directionN=dstN<dstP;\rfloat dst=min(dstN,dstP);\rbool goodSpan=directionN ? goodSpanN : goodSpanP;\rfloat subpixG=subpixF*subpixF;\rfloat pixelOffset=(dst*(-spanLengthRcp))+0.5;\rfloat subpixH=subpixG*fxaaQualitySubpix;\rfloat pixelOffsetGood=goodSpan ? pixelOffset : 0.0;\rfloat pixelOffsetSubpix=max(pixelOffsetGood,subpixH);\rif (!horzSpan)\r{\rposM.x+=pixelOffsetSubpix*lengthSign;\r}\rif (horzSpan)\r{\rposM.y+=pixelOffsetSubpix*lengthSign;\r}\r#ifdef MALI\nif(range<rangeMaxClamped) \r{\rgl_FragColor=rgbyM;\r}\relse\r{\rgl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);\r}\r#else\ngl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);\r#endif\n}`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fxaaPixelShader = { name, shader };\n"]}
1
+ {"version":3,"file":"fxaa.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fxaa.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,iBAAiB,CAAC;AAC/B,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoDb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaPixelShader\";\nconst shader = `#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define TEXTUREFUNC(s,c,l) texture2DLodEXT(s,c,l)\n#else\n#define TEXTUREFUNC(s,c,b) texture2D(s,c,b)\n#endif\nuniform sampler2D textureSampler;uniform vec2 texelSize;varying vec2 vUV;varying vec2 sampleCoordS;varying vec2 sampleCoordE;varying vec2 sampleCoordN;varying vec2 sampleCoordW;varying vec2 sampleCoordNW;varying vec2 sampleCoordSE;varying vec2 sampleCoordNE;varying vec2 sampleCoordSW;const float fxaaQualitySubpix=1.0;const float fxaaQualityEdgeThreshold=0.166;const float fxaaQualityEdgeThresholdMin=0.0833;const vec3 kLumaCoefficients=vec3(0.2126,0.7152,0.0722);\n#define FxaaLuma(rgba) dot(rgba.rgb,kLumaCoefficients)\nvoid main(){vec2 posM;posM.x=vUV.x;posM.y=vUV.y;vec4 rgbyM=TEXTUREFUNC(textureSampler,vUV,0.0);float lumaM=FxaaLuma(rgbyM);float lumaS=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordS,0.0));float lumaE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordE,0.0));float lumaN=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordN,0.0));float lumaW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordW,0.0));float maxSM=max(lumaS,lumaM);float minSM=min(lumaS,lumaM);float maxESM=max(lumaE,maxSM);float minESM=min(lumaE,minSM);float maxWN=max(lumaN,lumaW);float minWN=min(lumaN,lumaW);float rangeMax=max(maxWN,maxESM);float rangeMin=min(minWN,minESM);float rangeMaxScaled=rangeMax*fxaaQualityEdgeThreshold;float range=rangeMax-rangeMin;float rangeMaxClamped=max(fxaaQualityEdgeThresholdMin,rangeMaxScaled);\n#ifndef MALI\nif(range<rangeMaxClamped) \n{gl_FragColor=rgbyM;return;}\n#endif\nfloat lumaNW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNW,0.0));float lumaSE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordSE,0.0));float lumaNE=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordNE,0.0));float lumaSW=FxaaLuma(TEXTUREFUNC(textureSampler,sampleCoordSW,0.0));float lumaNS=lumaN+lumaS;float lumaWE=lumaW+lumaE;float subpixRcpRange=1.0/range;float subpixNSWE=lumaNS+lumaWE;float edgeHorz1=(-2.0*lumaM)+lumaNS;float edgeVert1=(-2.0*lumaM)+lumaWE;float lumaNESE=lumaNE+lumaSE;float lumaNWNE=lumaNW+lumaNE;float edgeHorz2=(-2.0*lumaE)+lumaNESE;float edgeVert2=(-2.0*lumaN)+lumaNWNE;float lumaNWSW=lumaNW+lumaSW;float lumaSWSE=lumaSW+lumaSE;float edgeHorz4=(abs(edgeHorz1)*2.0)+abs(edgeHorz2);float edgeVert4=(abs(edgeVert1)*2.0)+abs(edgeVert2);float edgeHorz3=(-2.0*lumaW)+lumaNWSW;float edgeVert3=(-2.0*lumaS)+lumaSWSE;float edgeHorz=abs(edgeHorz3)+edgeHorz4;float edgeVert=abs(edgeVert3)+edgeVert4;float subpixNWSWNESE=lumaNWSW+lumaNESE;float lengthSign=texelSize.x;bool horzSpan=edgeHorz>=edgeVert;float subpixA=subpixNSWE*2.0+subpixNWSWNESE;if (!horzSpan)\n{lumaN=lumaW;}\nif (!horzSpan) \n{lumaS=lumaE;}\nif (horzSpan) \n{lengthSign=texelSize.y;}\nfloat subpixB=(subpixA*(1.0/12.0))-lumaM;float gradientN=lumaN-lumaM;float gradientS=lumaS-lumaM;float lumaNN=lumaN+lumaM;float lumaSS=lumaS+lumaM;bool pairN=abs(gradientN)>=abs(gradientS);float gradient=max(abs(gradientN),abs(gradientS));if (pairN)\n{lengthSign=-lengthSign;}\nfloat subpixC=clamp(abs(subpixB)*subpixRcpRange,0.0,1.0);vec2 posB;posB.x=posM.x;posB.y=posM.y;vec2 offNP;offNP.x=(!horzSpan) ? 0.0 : texelSize.x;offNP.y=(horzSpan) ? 0.0 : texelSize.y;if (!horzSpan) \n{posB.x+=lengthSign*0.5;}\nif (horzSpan)\n{posB.y+=lengthSign*0.5;}\nvec2 posN;posN.x=posB.x-offNP.x*1.5;posN.y=posB.y-offNP.y*1.5;vec2 posP;posP.x=posB.x+offNP.x*1.5;posP.y=posB.y+offNP.y*1.5;float subpixD=((-2.0)*subpixC)+3.0;float lumaEndN=FxaaLuma(TEXTUREFUNC(textureSampler,posN,0.0));float subpixE=subpixC*subpixC;float lumaEndP=FxaaLuma(TEXTUREFUNC(textureSampler,posP,0.0));if (!pairN) \n{lumaNN=lumaSS;}\nfloat gradientScaled=gradient*1.0/4.0;float lumaMM=lumaM-lumaNN*0.5;float subpixF=subpixD*subpixE;bool lumaMLTZero=lumaMM<0.0;lumaEndN-=lumaNN*0.5;lumaEndP-=lumaNN*0.5;bool doneN=abs(lumaEndN)>=gradientScaled;bool doneP=abs(lumaEndP)>=gradientScaled;if (!doneN) \n{posN.x-=offNP.x*3.0;}\nif (!doneN) \n{posN.y-=offNP.y*3.0;}\nbool doneNP=(!doneN) || (!doneP);if (!doneP) \n{posP.x+=offNP.x*3.0;}\nif (!doneP)\n{posP.y+=offNP.y*3.0;}\nif (doneNP)\n{if (!doneN) lumaEndN=FxaaLuma(TEXTUREFUNC(textureSampler,posN.xy,0.0));if (!doneP) lumaEndP=FxaaLuma(TEXTUREFUNC(textureSampler,posP.xy,0.0));if (!doneN) lumaEndN=lumaEndN-lumaNN*0.5;if (!doneP) lumaEndP=lumaEndP-lumaNN*0.5;doneN=abs(lumaEndN)>=gradientScaled;doneP=abs(lumaEndP)>=gradientScaled;if (!doneN) posN.x-=offNP.x*12.0;if (!doneN) posN.y-=offNP.y*12.0;doneNP=(!doneN) || (!doneP);if (!doneP) posP.x+=offNP.x*12.0;if (!doneP) posP.y+=offNP.y*12.0;}\nfloat dstN=posM.x-posN.x;float dstP=posP.x-posM.x;if (!horzSpan)\n{dstN=posM.y-posN.y;}\nif (!horzSpan) \n{dstP=posP.y-posM.y;}\nbool goodSpanN=(lumaEndN<0.0) != lumaMLTZero;float spanLength=(dstP+dstN);bool goodSpanP=(lumaEndP<0.0) != lumaMLTZero;float spanLengthRcp=1.0/spanLength;bool directionN=dstN<dstP;float dst=min(dstN,dstP);bool goodSpan=directionN ? goodSpanN : goodSpanP;float subpixG=subpixF*subpixF;float pixelOffset=(dst*(-spanLengthRcp))+0.5;float subpixH=subpixG*fxaaQualitySubpix;float pixelOffsetGood=goodSpan ? pixelOffset : 0.0;float pixelOffsetSubpix=max(pixelOffsetGood,subpixH);if (!horzSpan)\n{posM.x+=pixelOffsetSubpix*lengthSign;}\nif (horzSpan)\n{posM.y+=pixelOffsetSubpix*lengthSign;}\n#ifdef MALI\nif(range<rangeMaxClamped) \n{gl_FragColor=rgbyM;}\nelse\n{gl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);}\n#else\ngl_FragColor=TEXTUREFUNC(textureSampler,posM,0.0);\n#endif\n}`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fxaaPixelShader = { name, shader };\n"]}
@@ -1,9 +1,12 @@
1
1
  // Do not edit.
2
2
  import { ShaderStore } from "../Engines/shaderStore.js";
3
3
  const name = "fxaaVertexShader";
4
- const shader = `attribute vec2 position;
5
- void main(void) {
6
- vUV=(position*madd+madd);
4
+ const shader = `attribute vec2 position;uniform vec2 texelSize;varying vec2 vUV;varying vec2 sampleCoordS;varying vec2 sampleCoordE;varying vec2 sampleCoordN;varying vec2 sampleCoordW;varying vec2 sampleCoordNW;varying vec2 sampleCoordSE;varying vec2 sampleCoordNE;varying vec2 sampleCoordSW;const vec2 madd=vec2(0.5,0.5);
5
+ #define CUSTOM_VERTEX_DEFINITIONS
6
+ void main(void) {
7
+ #define CUSTOM_VERTEX_MAIN_BEGIN
8
+ vUV=(position*madd+madd);sampleCoordS=vUV+vec2( 0.0,1.0)*texelSize;sampleCoordE=vUV+vec2( 1.0,0.0)*texelSize;sampleCoordN=vUV+vec2( 0.0,-1.0)*texelSize;sampleCoordW=vUV+vec2(-1.0,0.0)*texelSize;sampleCoordNW=vUV+vec2(-1.0,-1.0)*texelSize;sampleCoordSE=vUV+vec2( 1.0,1.0)*texelSize;sampleCoordNE=vUV+vec2( 1.0,-1.0)*texelSize;sampleCoordSW=vUV+vec2(-1.0,1.0)*texelSize;gl_Position=vec4(position,0.0,1.0);
9
+ #define CUSTOM_VERTEX_MAIN_END
7
10
  }`;
8
11
  // Sideeffect
9
12
  ShaderStore.ShadersStore[name] = shader;
@@ -1 +1 @@
1
- {"version":3,"file":"fxaa.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fxaa.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAChC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;EA0Bb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaVertexShader\";\nconst shader = `attribute vec2 position;\runiform vec2 texelSize;\rvarying vec2 vUV;\rvarying vec2 sampleCoordS;\rvarying vec2 sampleCoordE;\rvarying vec2 sampleCoordN;\rvarying vec2 sampleCoordW;\rvarying vec2 sampleCoordNW;\rvarying vec2 sampleCoordSE;\rvarying vec2 sampleCoordNE;\rvarying vec2 sampleCoordSW;\rconst vec2 madd=vec2(0.5,0.5);\r#define CUSTOM_VERTEX_DEFINITIONS\nvoid main(void) {\r#define CUSTOM_VERTEX_MAIN_BEGIN\nvUV=(position*madd+madd);\rsampleCoordS=vUV+vec2( 0.0,1.0)*texelSize;\rsampleCoordE=vUV+vec2( 1.0,0.0)*texelSize;\rsampleCoordN=vUV+vec2( 0.0,-1.0)*texelSize;\rsampleCoordW=vUV+vec2(-1.0,0.0)*texelSize;\rsampleCoordNW=vUV+vec2(-1.0,-1.0)*texelSize;\rsampleCoordSE=vUV+vec2( 1.0,1.0)*texelSize;\rsampleCoordNE=vUV+vec2( 1.0,-1.0)*texelSize;\rsampleCoordSW=vUV+vec2(-1.0,1.0)*texelSize;\rgl_Position=vec4(position,0.0,1.0);\r#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fxaaVertexShader = { name, shader };\n"]}
1
+ {"version":3,"file":"fxaa.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/fxaa.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAChC,MAAM,MAAM,GAAG;;;;;;EAMb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaVertexShader\";\nconst shader = `attribute vec2 position;uniform vec2 texelSize;varying vec2 vUV;varying vec2 sampleCoordS;varying vec2 sampleCoordE;varying vec2 sampleCoordN;varying vec2 sampleCoordW;varying vec2 sampleCoordNW;varying vec2 sampleCoordSE;varying vec2 sampleCoordNE;varying vec2 sampleCoordSW;const vec2 madd=vec2(0.5,0.5);\n#define CUSTOM_VERTEX_DEFINITIONS\nvoid main(void) {\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvUV=(position*madd+madd);sampleCoordS=vUV+vec2( 0.0,1.0)*texelSize;sampleCoordE=vUV+vec2( 1.0,0.0)*texelSize;sampleCoordN=vUV+vec2( 0.0,-1.0)*texelSize;sampleCoordW=vUV+vec2(-1.0,0.0)*texelSize;sampleCoordNW=vUV+vec2(-1.0,-1.0)*texelSize;sampleCoordSE=vUV+vec2( 1.0,1.0)*texelSize;sampleCoordNE=vUV+vec2( 1.0,-1.0)*texelSize;sampleCoordSW=vUV+vec2(-1.0,1.0)*texelSize;gl_Position=vec4(position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const fxaaVertexShader = { name, shader };\n"]}
@@ -12,83 +12,126 @@ const shader = `#extension GL_EXT_draw_buffers : require
12
12
  #if defined(BUMP) || !defined(NORMAL)
13
13
  #extension GL_OES_standard_derivatives : enable
14
14
  #endif
15
- precision highp float;
16
- varying mat4 vWorldView;
17
- varying vec3 vNormalV;
18
- varying vec4 vViewPos;
19
- varying vec3 vPositionW;
15
+ precision highp float;
16
+ #ifdef BUMP
17
+ varying mat4 vWorldView;varying vec3 vNormalW;
18
+ #else
19
+ varying vec3 vNormalV;
20
+ #endif
21
+ varying vec4 vViewPos;
22
+ #if defined(POSITION) || defined(BUMP)
23
+ varying vec3 vPositionW;
24
+ #endif
20
25
  #ifdef VELOCITY
21
- varying vec4 vCurrentPosition;
26
+ varying vec4 vCurrentPosition;varying vec4 vPreviousPosition;
27
+ #endif
22
28
  #ifdef NEED_UV
23
- varying vec2 vUV;
29
+ varying vec2 vUV;
30
+ #endif
24
31
  #ifdef BUMP
25
- uniform vec3 vBumpInfos;
32
+ uniform vec3 vBumpInfos;uniform vec2 vTangentSpaceParams;
33
+ #endif
26
34
  #if defined(REFLECTIVITY)
27
35
  #if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)
28
- uniform sampler2D reflectivitySampler;
36
+ uniform sampler2D reflectivitySampler;varying vec2 vReflectivityUV;
37
+ #endif
29
38
  #ifdef ALBEDOTEXTURE
30
- varying vec2 vAlbedoUV;
39
+ varying vec2 vAlbedoUV;uniform sampler2D albedoSampler;
40
+ #endif
31
41
  #ifdef REFLECTIVITYCOLOR
32
- uniform vec3 reflectivityColor;
42
+ uniform vec3 reflectivityColor;
43
+ #endif
33
44
  #ifdef ALBEDOCOLOR
34
- uniform vec3 albedoColor;
45
+ uniform vec3 albedoColor;
46
+ #endif
35
47
  #ifdef METALLIC
36
- uniform float metallic;
48
+ uniform float metallic;
49
+ #endif
37
50
  #if defined(ROUGHNESS) || defined(GLOSSINESS)
38
- uniform float glossiness;
51
+ uniform float glossiness;
52
+ #endif
39
53
  #endif
40
54
  #if defined(ALPHATEST) && defined(NEED_UV)
41
- uniform sampler2D diffuseSampler;
55
+ uniform sampler2D diffuseSampler;
56
+ #endif
42
57
  #include<clipPlaneFragmentDeclaration>
43
58
  #include<mrtFragmentDeclaration>[RENDER_TARGET_COUNT]
44
59
  #include<bumpFragmentMainFunctions>
45
60
  #include<bumpFragmentFunctions>
46
61
  #include<helperFunctions>
47
- void main() {
62
+ void main() {
63
+ #include<clipPlaneFragment>
48
64
  #ifdef ALPHATEST
49
- if (texture2D(diffuseSampler,vUV).a<0.4)
50
- vec3 normalOutput;
51
- vec3 normalW=normalize(vNormalW);
52
- normalOutput=normalize(vec3(vWorldView*vec4(normalW,0.0)));
53
- normalOutput=normalize(vNormalV);
65
+ if (texture2D(diffuseSampler,vUV).a<0.4)
66
+ discard;
67
+ #endif
68
+ vec3 normalOutput;
69
+ #ifdef BUMP
70
+ vec3 normalW=normalize(vNormalW);
71
+ #include<bumpFragment>
72
+ normalOutput=normalize(vec3(vWorldView*vec4(normalW,0.0)));
73
+ #else
74
+ normalOutput=normalize(vNormalV);
75
+ #endif
54
76
  #ifdef PREPASS
55
77
  #ifdef PREPASS_DEPTH
56
- gl_FragData[DEPTH_INDEX]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);
78
+ gl_FragData[DEPTH_INDEX]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);
79
+ #endif
57
80
  #ifdef PREPASS_NORMAL
58
- gl_FragData[NORMAL_INDEX]=vec4(normalOutput,1.0);
81
+ gl_FragData[NORMAL_INDEX]=vec4(normalOutput,1.0);
82
+ #endif
59
83
  #else
60
- gl_FragData[0]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);
84
+ gl_FragData[0]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);gl_FragData[1]=vec4(normalOutput,1.0);
85
+ #endif
61
86
  #ifdef POSITION
62
- gl_FragData[POSITION_INDEX]=vec4(vPositionW,1.0);
87
+ gl_FragData[POSITION_INDEX]=vec4(vPositionW,1.0);
88
+ #endif
63
89
  #ifdef VELOCITY
64
- vec2 a=(vCurrentPosition.xy/vCurrentPosition.w)*0.5+0.5;
90
+ vec2 a=(vCurrentPosition.xy/vCurrentPosition.w)*0.5+0.5;vec2 b=(vPreviousPosition.xy/vPreviousPosition.w)*0.5+0.5;vec2 velocity=abs(a-b);velocity=vec2(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;gl_FragData[VELOCITY_INDEX]=vec4(velocity,0.0,1.0);
91
+ #endif
65
92
  #ifdef REFLECTIVITY
66
- vec4 reflectivity=vec4(0.0,0.0,0.0,1.0);
67
- float metal=1.0;
68
- metal*=texture2D(reflectivitySampler,vReflectivityUV).b;
93
+ vec4 reflectivity=vec4(0.0,0.0,0.0,1.0);
94
+ #ifdef METALLICWORKFLOW
95
+ float metal=1.0;float roughness=1.0;
96
+ #ifdef ORMTEXTURE
97
+ metal*=texture2D(reflectivitySampler,vReflectivityUV).b;roughness*=texture2D(reflectivitySampler,vReflectivityUV).g;
98
+ #endif
69
99
  #ifdef METALLIC
70
- metal*=metallic;
100
+ metal*=metallic;
101
+ #endif
71
102
  #ifdef ROUGHNESS
72
- roughness*=(1.0-glossiness);
73
- reflectivity.a-=roughness;
74
- color=texture2D(albedoSampler,vAlbedoUV).rgb;
75
- color=toLinearSpace(color);
103
+ roughness*=(1.0-glossiness);
104
+ #endif
105
+ reflectivity.a-=roughness;vec3 color=vec3(1.0);
106
+ #ifdef ALBEDOTEXTURE
107
+ color=texture2D(albedoSampler,vAlbedoUV).rgb;
108
+ #ifdef GAMMAALBEDO
109
+ color=toLinearSpace(color);
110
+ #endif
76
111
  #endif
77
112
  #ifdef ALBEDOCOLOR
78
- color*=albedoColor.xyz;
79
- reflectivity.rgb=mix(vec3(0.04),color,metal);
113
+ color*=albedoColor.xyz;
114
+ #endif
115
+ reflectivity.rgb=mix(vec3(0.04),color,metal);
116
+ #else
80
117
  #if defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)
81
- reflectivity=texture2D(reflectivitySampler,vReflectivityUV);
82
- reflectivity.rgb=toLinearSpace(reflectivity.rgb);
118
+ reflectivity=texture2D(reflectivitySampler,vReflectivityUV);
119
+ #ifdef GAMMAREFLECTIVITYTEXTURE
120
+ reflectivity.rgb=toLinearSpace(reflectivity.rgb);
121
+ #endif
83
122
  #else
84
123
  #ifdef REFLECTIVITYCOLOR
85
- reflectivity.rgb=toLinearSpace(reflectivityColor.xyz);
124
+ reflectivity.rgb=toLinearSpace(reflectivityColor.xyz);reflectivity.a=1.0;
125
+ #endif
86
126
  #endif
87
127
  #ifdef GLOSSINESSS
88
- reflectivity.a*=glossiness;
128
+ reflectivity.a*=glossiness;
129
+ #endif
130
+ #endif
131
+ gl_FragData[REFLECTIVITY_INDEX]=reflectivity;
89
132
  #endif
90
- gl_FragData[REFLECTIVITY_INDEX]=reflectivity;
91
- }
133
+ }
134
+ `;
92
135
  // Sideeffect
93
136
  ShaderStore.ShadersStore[name] = shader;
94
137
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/geometry.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,yCAAyC,CAAC;AACjD,OAAO,4CAA4C,CAAC;AACpD,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,+BAA+B,CAAC;AAEvC,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyId,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/mrtFragmentDeclaration\";\nimport \"./ShadersInclude/bumpFragmentMainFunctions\";\nimport \"./ShadersInclude/bumpFragmentFunctions\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragment\";\nimport \"./ShadersInclude/bumpFragment\";\n\nconst name = \"geometryPixelShader\";\nconst shader = `#extension GL_EXT_draw_buffers : require\n#if defined(BUMP) || !defined(NORMAL)\n#extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\r#ifdef BUMP\nvarying mat4 vWorldView;\rvarying vec3 vNormalW;\r#else\nvarying vec3 vNormalV;\r#endif\nvarying vec4 vViewPos;\r#if defined(POSITION) || defined(BUMP)\nvarying vec3 vPositionW;\r#endif\n#ifdef VELOCITY\nvarying vec4 vCurrentPosition;\rvarying vec4 vPreviousPosition;\r#endif\n#ifdef NEED_UV\nvarying vec2 vUV;\r#endif\n#ifdef BUMP\nuniform vec3 vBumpInfos;\runiform vec2 vTangentSpaceParams;\r#endif\n#if defined(REFLECTIVITY)\n#if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nuniform sampler2D reflectivitySampler;\rvarying vec2 vReflectivityUV;\r#endif\n#ifdef ALBEDOTEXTURE\nvarying vec2 vAlbedoUV;\runiform sampler2D albedoSampler;\r#endif\n#ifdef REFLECTIVITYCOLOR\nuniform vec3 reflectivityColor;\r#endif\n#ifdef ALBEDOCOLOR\nuniform vec3 albedoColor;\r#endif\n#ifdef METALLIC\nuniform float metallic;\r#endif\n#if defined(ROUGHNESS) || defined(GLOSSINESS)\nuniform float glossiness;\r#endif\n#endif\n#if defined(ALPHATEST) && defined(NEED_UV)\nuniform sampler2D diffuseSampler;\r#endif\n#include<clipPlaneFragmentDeclaration>\n#include<mrtFragmentDeclaration>[RENDER_TARGET_COUNT]\n#include<bumpFragmentMainFunctions>\n#include<bumpFragmentFunctions>\n#include<helperFunctions>\nvoid main() {\r#include<clipPlaneFragment>\n#ifdef ALPHATEST\nif (texture2D(diffuseSampler,vUV).a<0.4)\rdiscard;\r#endif\nvec3 normalOutput;\r#ifdef BUMP\nvec3 normalW=normalize(vNormalW);\r#include<bumpFragment>\nnormalOutput=normalize(vec3(vWorldView*vec4(normalW,0.0)));\r#else\nnormalOutput=normalize(vNormalV);\r#endif\n#ifdef PREPASS\n#ifdef PREPASS_DEPTH\ngl_FragData[DEPTH_INDEX]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\r#endif\n#ifdef PREPASS_NORMAL\ngl_FragData[NORMAL_INDEX]=vec4(normalOutput,1.0);\r#endif\n#else\ngl_FragData[0]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\rgl_FragData[1]=vec4(normalOutput,1.0);\r#endif\n#ifdef POSITION\ngl_FragData[POSITION_INDEX]=vec4(vPositionW,1.0);\r#endif\n#ifdef VELOCITY\nvec2 a=(vCurrentPosition.xy/vCurrentPosition.w)*0.5+0.5;\rvec2 b=(vPreviousPosition.xy/vPreviousPosition.w)*0.5+0.5;\rvec2 velocity=abs(a-b);\rvelocity=vec2(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;\rgl_FragData[VELOCITY_INDEX]=vec4(velocity,0.0,1.0);\r#endif\n#ifdef REFLECTIVITY\nvec4 reflectivity=vec4(0.0,0.0,0.0,1.0);\r#ifdef METALLICWORKFLOW\nfloat metal=1.0;\rfloat roughness=1.0;\r#ifdef ORMTEXTURE\nmetal*=texture2D(reflectivitySampler,vReflectivityUV).b;\rroughness*=texture2D(reflectivitySampler,vReflectivityUV).g;\r#endif\n#ifdef METALLIC\nmetal*=metallic;\r#endif\n#ifdef ROUGHNESS\nroughness*=(1.0-glossiness); \r#endif\nreflectivity.a-=roughness;\rvec3 color=vec3(1.0);\r#ifdef ALBEDOTEXTURE\ncolor=texture2D(albedoSampler,vAlbedoUV).rgb;\r#ifdef GAMMAALBEDO\ncolor=toLinearSpace(color);\r#endif\n#endif\n#ifdef ALBEDOCOLOR\ncolor*=albedoColor.xyz;\r#endif\nreflectivity.rgb=mix(vec3(0.04),color,metal);\r#else\n#if defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nreflectivity=texture2D(reflectivitySampler,vReflectivityUV);\r#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity.rgb=toLinearSpace(reflectivity.rgb);\r#endif\n#else \n#ifdef REFLECTIVITYCOLOR\nreflectivity.rgb=toLinearSpace(reflectivityColor.xyz);\rreflectivity.a=1.0;\r#endif\n#endif\n#ifdef GLOSSINESSS\nreflectivity.a*=glossiness; \r#endif\n#endif\ngl_FragData[REFLECTIVITY_INDEX]=reflectivity;\r#endif\n}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const geometryPixelShader = { name, shader };\n"]}
1
+ {"version":3,"file":"geometry.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/Shaders/geometry.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,yCAAyC,CAAC;AACjD,OAAO,4CAA4C,CAAC;AACpD,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,+BAA+B,CAAC;AAEvC,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Hd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/mrtFragmentDeclaration\";\nimport \"./ShadersInclude/bumpFragmentMainFunctions\";\nimport \"./ShadersInclude/bumpFragmentFunctions\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragment\";\nimport \"./ShadersInclude/bumpFragment\";\n\nconst name = \"geometryPixelShader\";\nconst shader = `#extension GL_EXT_draw_buffers : require\n#if defined(BUMP) || !defined(NORMAL)\n#extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#ifdef BUMP\nvarying mat4 vWorldView;varying vec3 vNormalW;\n#else\nvarying vec3 vNormalV;\n#endif\nvarying vec4 vViewPos;\n#if defined(POSITION) || defined(BUMP)\nvarying vec3 vPositionW;\n#endif\n#ifdef VELOCITY\nvarying vec4 vCurrentPosition;varying vec4 vPreviousPosition;\n#endif\n#ifdef NEED_UV\nvarying vec2 vUV;\n#endif\n#ifdef BUMP\nuniform vec3 vBumpInfos;uniform vec2 vTangentSpaceParams;\n#endif\n#if defined(REFLECTIVITY)\n#if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nuniform sampler2D reflectivitySampler;varying vec2 vReflectivityUV;\n#endif\n#ifdef ALBEDOTEXTURE\nvarying vec2 vAlbedoUV;uniform sampler2D albedoSampler;\n#endif\n#ifdef REFLECTIVITYCOLOR\nuniform vec3 reflectivityColor;\n#endif\n#ifdef ALBEDOCOLOR\nuniform vec3 albedoColor;\n#endif\n#ifdef METALLIC\nuniform float metallic;\n#endif\n#if defined(ROUGHNESS) || defined(GLOSSINESS)\nuniform float glossiness;\n#endif\n#endif\n#if defined(ALPHATEST) && defined(NEED_UV)\nuniform sampler2D diffuseSampler;\n#endif\n#include<clipPlaneFragmentDeclaration>\n#include<mrtFragmentDeclaration>[RENDER_TARGET_COUNT]\n#include<bumpFragmentMainFunctions>\n#include<bumpFragmentFunctions>\n#include<helperFunctions>\nvoid main() {\n#include<clipPlaneFragment>\n#ifdef ALPHATEST\nif (texture2D(diffuseSampler,vUV).a<0.4)\ndiscard;\n#endif\nvec3 normalOutput;\n#ifdef BUMP\nvec3 normalW=normalize(vNormalW);\n#include<bumpFragment>\nnormalOutput=normalize(vec3(vWorldView*vec4(normalW,0.0)));\n#else\nnormalOutput=normalize(vNormalV);\n#endif\n#ifdef PREPASS\n#ifdef PREPASS_DEPTH\ngl_FragData[DEPTH_INDEX]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\n#endif\n#ifdef PREPASS_NORMAL\ngl_FragData[NORMAL_INDEX]=vec4(normalOutput,1.0);\n#endif\n#else\ngl_FragData[0]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);gl_FragData[1]=vec4(normalOutput,1.0);\n#endif\n#ifdef POSITION\ngl_FragData[POSITION_INDEX]=vec4(vPositionW,1.0);\n#endif\n#ifdef VELOCITY\nvec2 a=(vCurrentPosition.xy/vCurrentPosition.w)*0.5+0.5;vec2 b=(vPreviousPosition.xy/vPreviousPosition.w)*0.5+0.5;vec2 velocity=abs(a-b);velocity=vec2(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;gl_FragData[VELOCITY_INDEX]=vec4(velocity,0.0,1.0);\n#endif\n#ifdef REFLECTIVITY\nvec4 reflectivity=vec4(0.0,0.0,0.0,1.0);\n#ifdef METALLICWORKFLOW\nfloat metal=1.0;float roughness=1.0;\n#ifdef ORMTEXTURE\nmetal*=texture2D(reflectivitySampler,vReflectivityUV).b;roughness*=texture2D(reflectivitySampler,vReflectivityUV).g;\n#endif\n#ifdef METALLIC\nmetal*=metallic;\n#endif\n#ifdef ROUGHNESS\nroughness*=(1.0-glossiness); \n#endif\nreflectivity.a-=roughness;vec3 color=vec3(1.0);\n#ifdef ALBEDOTEXTURE\ncolor=texture2D(albedoSampler,vAlbedoUV).rgb;\n#ifdef GAMMAALBEDO\ncolor=toLinearSpace(color);\n#endif\n#endif\n#ifdef ALBEDOCOLOR\ncolor*=albedoColor.xyz;\n#endif\nreflectivity.rgb=mix(vec3(0.04),color,metal);\n#else\n#if defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nreflectivity=texture2D(reflectivitySampler,vReflectivityUV);\n#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity.rgb=toLinearSpace(reflectivity.rgb);\n#endif\n#else \n#ifdef REFLECTIVITYCOLOR\nreflectivity.rgb=toLinearSpace(reflectivityColor.xyz);reflectivity.a=1.0;\n#endif\n#endif\n#ifdef GLOSSINESSS\nreflectivity.a*=glossiness; \n#endif\n#endif\ngl_FragData[REFLECTIVITY_INDEX]=reflectivity;\n#endif\n}\n`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const geometryPixelShader = { name, shader };\n"]}