@babylonjs/core 7.53.3 → 7.54.1

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 (1260) hide show
  1. package/AudioV2/abstractAudio/abstractAudioBus.d.ts +2 -3
  2. package/AudioV2/abstractAudio/abstractAudioBus.js.map +1 -1
  3. package/AudioV2/abstractAudio/abstractSound.d.ts +2 -3
  4. package/AudioV2/abstractAudio/abstractSound.js.map +1 -1
  5. package/AudioV2/abstractAudio/audioEngineV2.d.ts +11 -1
  6. package/AudioV2/abstractAudio/audioEngineV2.js +14 -1
  7. package/AudioV2/abstractAudio/audioEngineV2.js.map +1 -1
  8. package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.d.ts +1 -1
  9. package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.js.map +1 -1
  10. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.d.ts +4 -2
  11. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.js +13 -13
  12. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.js.map +1 -1
  13. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.d.ts +5 -2
  14. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.js +11 -9
  15. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.js.map +1 -1
  16. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.d.ts +5 -2
  17. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.js +11 -9
  18. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.js.map +1 -1
  19. package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.d.ts +1 -1
  20. package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.js +2 -2
  21. package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.js.map +1 -1
  22. package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.d.ts +3 -3
  23. package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.js +9 -9
  24. package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.js.map +1 -1
  25. package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.d.ts +2 -2
  26. package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.js +11 -11
  27. package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.js.map +1 -1
  28. package/AudioV2/webAudio/subProperties/spatialWebAudioListener.js +11 -10
  29. package/AudioV2/webAudio/subProperties/spatialWebAudioListener.js.map +1 -1
  30. package/AudioV2/webAudio/webAudioBus.d.ts +6 -6
  31. package/AudioV2/webAudio/webAudioBus.js +27 -8
  32. package/AudioV2/webAudio/webAudioBus.js.map +1 -1
  33. package/AudioV2/webAudio/webAudioEngine.d.ts +19 -7
  34. package/AudioV2/webAudio/webAudioEngine.js +43 -29
  35. package/AudioV2/webAudio/webAudioEngine.js.map +1 -1
  36. package/AudioV2/webAudio/webAudioMainBus.d.ts +3 -5
  37. package/AudioV2/webAudio/webAudioMainBus.js +11 -12
  38. package/AudioV2/webAudio/webAudioMainBus.js.map +1 -1
  39. package/AudioV2/webAudio/webAudioMainOut.d.ts +4 -1
  40. package/AudioV2/webAudio/webAudioMainOut.js +6 -4
  41. package/AudioV2/webAudio/webAudioMainOut.js.map +1 -1
  42. package/AudioV2/webAudio/webAudioNode.d.ts +2 -2
  43. package/AudioV2/webAudio/webAudioNode.js.map +1 -1
  44. package/AudioV2/webAudio/webAudioStaticSound.d.ts +7 -7
  45. package/AudioV2/webAudio/webAudioStaticSound.js +29 -29
  46. package/AudioV2/webAudio/webAudioStaticSound.js.map +1 -1
  47. package/AudioV2/webAudio/webAudioStreamingSound.d.ts +6 -6
  48. package/AudioV2/webAudio/webAudioStreamingSound.js +27 -27
  49. package/AudioV2/webAudio/webAudioStreamingSound.js.map +1 -1
  50. package/AudioV2/webAudio/webAudioUnmuteUI.d.ts +15 -0
  51. package/AudioV2/webAudio/webAudioUnmuteUI.js +46 -0
  52. package/AudioV2/webAudio/webAudioUnmuteUI.js.map +1 -0
  53. package/Behaviors/Meshes/pointerDragBehavior.js +10 -0
  54. package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
  55. package/Cameras/Inputs/BaseCameraPointersInput.d.ts +4 -1
  56. package/Cameras/Inputs/BaseCameraPointersInput.js +10 -7
  57. package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
  58. package/DeviceInput/webDeviceInputSystem.js +21 -3
  59. package/DeviceInput/webDeviceInputSystem.js.map +1 -1
  60. package/Engines/abstractEngine.js +5 -11
  61. package/Engines/abstractEngine.js.map +1 -1
  62. package/Engines/thinEngine.d.ts +2 -1
  63. package/Engines/thinEngine.js +10 -2
  64. package/Engines/thinEngine.js.map +1 -1
  65. package/Engines/webgpuEngine.d.ts +2 -1
  66. package/Engines/webgpuEngine.js +3 -2
  67. package/Engines/webgpuEngine.js.map +1 -1
  68. package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.js +3 -0
  69. package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.js.map +1 -1
  70. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +6 -0
  71. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
  72. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.d.ts +16 -1
  73. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js +33 -1
  74. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js.map +1 -1
  75. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +6 -6
  76. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +31 -4
  77. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
  78. package/FlowGraph/flowGraphCoordinator.d.ts +21 -1
  79. package/FlowGraph/flowGraphCoordinator.js +51 -2
  80. package/FlowGraph/flowGraphCoordinator.js.map +1 -1
  81. package/FlowGraph/flowGraphParser.js +3 -0
  82. package/FlowGraph/flowGraphParser.js.map +1 -1
  83. package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.js +4 -4
  84. package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.js.map +1 -1
  85. package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.js +4 -4
  86. package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.js.map +1 -1
  87. package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.js +2 -2
  88. package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.js.map +1 -1
  89. package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.js +4 -4
  90. package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.js.map +1 -1
  91. package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.js +25 -15
  92. package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.js.map +1 -1
  93. package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js +6 -6
  94. package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js.map +1 -1
  95. package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js +4 -2
  96. package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js.map +1 -1
  97. package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js +2 -0
  98. package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js.map +1 -1
  99. package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.js +2 -0
  100. package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.js.map +1 -1
  101. package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js +4 -2
  102. package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js.map +1 -1
  103. package/FrameGraph/Node/Blocks/Textures/clearBlock.js +4 -4
  104. package/FrameGraph/Node/Blocks/Textures/clearBlock.js.map +1 -1
  105. package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js +4 -4
  106. package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js.map +1 -1
  107. package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js +2 -2
  108. package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js.map +1 -1
  109. package/FrameGraph/Node/Blocks/{Rendering/cullObjectsBlock.d.ts → cullObjectsBlock.d.ts} +3 -3
  110. package/FrameGraph/Node/Blocks/{Rendering/cullObjectsBlock.js → cullObjectsBlock.js} +4 -4
  111. package/FrameGraph/Node/Blocks/cullObjectsBlock.js.map +1 -0
  112. package/FrameGraph/Node/Blocks/executeBlock.js +1 -2
  113. package/FrameGraph/Node/Blocks/executeBlock.js.map +1 -1
  114. package/FrameGraph/Node/Blocks/index.d.ts +1 -1
  115. package/FrameGraph/Node/Blocks/index.js +1 -1
  116. package/FrameGraph/Node/Blocks/index.js.map +1 -1
  117. package/FrameGraph/Node/Blocks/resourceContainerBlock.js +16 -16
  118. package/FrameGraph/Node/Blocks/resourceContainerBlock.js.map +1 -1
  119. package/FrameGraph/Node/nodeRenderGraphBlock.d.ts +1 -1
  120. package/FrameGraph/Node/nodeRenderGraphBlock.js +5 -4
  121. package/FrameGraph/Node/nodeRenderGraphBlock.js.map +1 -1
  122. package/FrameGraph/Tasks/Layers/baseLayerTask.js +4 -4
  123. package/FrameGraph/Tasks/Layers/baseLayerTask.js.map +1 -1
  124. package/FrameGraph/Tasks/Misc/cullObjectsTask.js.map +1 -0
  125. package/FrameGraph/Tasks/PostProcesses/bloomTask.js +2 -2
  126. package/FrameGraph/Tasks/PostProcesses/bloomTask.js.map +1 -1
  127. package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js +2 -2
  128. package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js.map +1 -1
  129. package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.js +4 -4
  130. package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.js.map +1 -1
  131. package/FrameGraph/index.d.ts +1 -1
  132. package/FrameGraph/index.js +1 -1
  133. package/FrameGraph/index.js.map +1 -1
  134. package/Gizmos/gizmo.js +25 -17
  135. package/Gizmos/gizmo.js.map +1 -1
  136. package/Loading/Plugins/babylonFileLoader.js +4 -0
  137. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  138. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +4 -3
  139. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  140. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +26 -17
  141. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  142. package/Materials/Node/Blocks/Fragment/shadowMapBlock.js +8 -0
  143. package/Materials/Node/Blocks/Fragment/shadowMapBlock.js.map +1 -1
  144. package/Materials/Node/Blocks/Input/inputBlock.js +1 -1
  145. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  146. package/Materials/Node/nodeMaterial.d.ts +2 -0
  147. package/Materials/Node/nodeMaterial.js +6 -1
  148. package/Materials/Node/nodeMaterial.js.map +1 -1
  149. package/Materials/Node/nodeMaterialBlock.js +11 -2
  150. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  151. package/Materials/Node/nodeMaterialBuildState.js +41 -13
  152. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  153. package/Materials/Node/nodeMaterialBuildStateSharedData.d.ts +11 -1
  154. package/Materials/Node/nodeMaterialBuildStateSharedData.js +11 -1
  155. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  156. package/Materials/PBR/pbrBaseMaterial.js +1 -1
  157. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  158. package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +1 -0
  159. package/Materials/PBR/pbrSubSurfaceConfiguration.js +3 -0
  160. package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
  161. package/Materials/material.js +1 -1
  162. package/Materials/material.js.map +1 -1
  163. package/Meshes/Node/Blocks/conditionBlock.d.ts +4 -0
  164. package/Meshes/Node/Blocks/conditionBlock.js +19 -8
  165. package/Meshes/Node/Blocks/conditionBlock.js.map +1 -1
  166. package/Misc/decorators.js +2 -2
  167. package/Misc/decorators.js.map +1 -1
  168. package/Misc/sceneSerializer.js +2 -0
  169. package/Misc/sceneSerializer.js.map +1 -1
  170. package/Physics/v2/Plugins/havokPlugin.js +1 -0
  171. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  172. package/PostProcesses/subSurfaceScatteringPostProcess.d.ts +3 -0
  173. package/PostProcesses/subSurfaceScatteringPostProcess.js +16 -1
  174. package/PostProcesses/subSurfaceScatteringPostProcess.js.map +1 -1
  175. package/Rendering/subSurfaceConfiguration.js +5 -1
  176. package/Rendering/subSurfaceConfiguration.js.map +1 -1
  177. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js +3 -1
  178. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js.map +1 -1
  179. package/Shaders/ShadersInclude/backgroundUboDeclaration.js +3 -1
  180. package/Shaders/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  181. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js +3 -1
  182. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js.map +1 -1
  183. package/Shaders/ShadersInclude/bakedVertexAnimation.js +3 -1
  184. package/Shaders/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  185. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js +3 -1
  186. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  187. package/Shaders/ShadersInclude/bayerDitherFunctions.js +3 -1
  188. package/Shaders/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  189. package/Shaders/ShadersInclude/bonesDeclaration.js +3 -1
  190. package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
  191. package/Shaders/ShadersInclude/bonesVertex.js +3 -1
  192. package/Shaders/ShadersInclude/bonesVertex.js.map +1 -1
  193. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js +3 -1
  194. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js.map +1 -1
  195. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js +3 -1
  196. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js.map +1 -1
  197. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js +3 -1
  198. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js.map +1 -1
  199. package/Shaders/ShadersInclude/bumpFragment.js +3 -1
  200. package/Shaders/ShadersInclude/bumpFragment.js.map +1 -1
  201. package/Shaders/ShadersInclude/bumpFragmentFunctions.js +3 -1
  202. package/Shaders/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  203. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js +3 -1
  204. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  205. package/Shaders/ShadersInclude/bumpVertex.js +3 -1
  206. package/Shaders/ShadersInclude/bumpVertex.js.map +1 -1
  207. package/Shaders/ShadersInclude/bumpVertexDeclaration.js +3 -1
  208. package/Shaders/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  209. package/Shaders/ShadersInclude/clipPlaneFragment.js +3 -1
  210. package/Shaders/ShadersInclude/clipPlaneFragment.js.map +1 -1
  211. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js +3 -1
  212. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  213. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js +3 -1
  214. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js.map +1 -1
  215. package/Shaders/ShadersInclude/clipPlaneVertex.js +3 -1
  216. package/Shaders/ShadersInclude/clipPlaneVertex.js.map +1 -1
  217. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js +3 -1
  218. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  219. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js +3 -1
  220. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js.map +1 -1
  221. package/Shaders/ShadersInclude/decalFragment.js +3 -1
  222. package/Shaders/ShadersInclude/decalFragment.js.map +1 -1
  223. package/Shaders/ShadersInclude/decalFragmentDeclaration.js +3 -1
  224. package/Shaders/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  225. package/Shaders/ShadersInclude/decalVertexDeclaration.js +3 -1
  226. package/Shaders/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  227. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +3 -1
  228. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
  229. package/Shaders/ShadersInclude/defaultUboDeclaration.js +3 -1
  230. package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  231. package/Shaders/ShadersInclude/defaultVertexDeclaration.js +3 -1
  232. package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
  233. package/Shaders/ShadersInclude/depthPrePass.js +3 -1
  234. package/Shaders/ShadersInclude/depthPrePass.js.map +1 -1
  235. package/Shaders/ShadersInclude/diffusionProfile.js +3 -1
  236. package/Shaders/ShadersInclude/diffusionProfile.js.map +1 -1
  237. package/Shaders/ShadersInclude/fibonacci.js +3 -2
  238. package/Shaders/ShadersInclude/fibonacci.js.map +1 -1
  239. package/Shaders/ShadersInclude/fogFragment.js +3 -1
  240. package/Shaders/ShadersInclude/fogFragment.js.map +1 -1
  241. package/Shaders/ShadersInclude/fogFragmentDeclaration.js +3 -1
  242. package/Shaders/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  243. package/Shaders/ShadersInclude/fogVertex.js +3 -1
  244. package/Shaders/ShadersInclude/fogVertex.js.map +1 -1
  245. package/Shaders/ShadersInclude/fogVertexDeclaration.js +3 -1
  246. package/Shaders/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  247. package/Shaders/ShadersInclude/fresnelFunction.js +3 -1
  248. package/Shaders/ShadersInclude/fresnelFunction.js.map +1 -1
  249. package/Shaders/ShadersInclude/gaussianSplatting.js +3 -1
  250. package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
  251. package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.js +3 -1
  252. package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
  253. package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.js +3 -1
  254. package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.js.map +1 -1
  255. package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js +3 -1
  256. package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
  257. package/Shaders/ShadersInclude/geometryUboDeclaration.js +3 -1
  258. package/Shaders/ShadersInclude/geometryUboDeclaration.js.map +1 -1
  259. package/Shaders/ShadersInclude/geometryVertexDeclaration.js +3 -1
  260. package/Shaders/ShadersInclude/geometryVertexDeclaration.js.map +1 -1
  261. package/Shaders/ShadersInclude/harmonicsFunctions.js +3 -1
  262. package/Shaders/ShadersInclude/harmonicsFunctions.js.map +1 -1
  263. package/Shaders/ShadersInclude/hdrFilteringFunctions.js +3 -1
  264. package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  265. package/Shaders/ShadersInclude/helperFunctions.js +3 -1
  266. package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
  267. package/Shaders/ShadersInclude/imageProcessingCompatibility.js +3 -1
  268. package/Shaders/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  269. package/Shaders/ShadersInclude/imageProcessingDeclaration.js +3 -1
  270. package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  271. package/Shaders/ShadersInclude/imageProcessingFunctions.js +3 -1
  272. package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  273. package/Shaders/ShadersInclude/importanceSampling.js +3 -1
  274. package/Shaders/ShadersInclude/importanceSampling.js.map +1 -1
  275. package/Shaders/ShadersInclude/instancesDeclaration.js +3 -1
  276. package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
  277. package/Shaders/ShadersInclude/instancesVertex.js +3 -1
  278. package/Shaders/ShadersInclude/instancesVertex.js.map +1 -1
  279. package/Shaders/ShadersInclude/intersectionFunctions.js +3 -1
  280. package/Shaders/ShadersInclude/intersectionFunctions.js.map +1 -1
  281. package/Shaders/ShadersInclude/kernelBlurFragment.js +3 -1
  282. package/Shaders/ShadersInclude/kernelBlurFragment.js.map +1 -1
  283. package/Shaders/ShadersInclude/kernelBlurFragment2.js +3 -1
  284. package/Shaders/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  285. package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js +3 -1
  286. package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
  287. package/Shaders/ShadersInclude/kernelBlurVertex.js +3 -1
  288. package/Shaders/ShadersInclude/kernelBlurVertex.js.map +1 -1
  289. package/Shaders/ShadersInclude/lightFragment.js +3 -1
  290. package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
  291. package/Shaders/ShadersInclude/lightFragmentDeclaration.js +3 -1
  292. package/Shaders/ShadersInclude/lightFragmentDeclaration.js.map +1 -1
  293. package/Shaders/ShadersInclude/lightUboDeclaration.js +3 -1
  294. package/Shaders/ShadersInclude/lightUboDeclaration.js.map +1 -1
  295. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js +3 -1
  296. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  297. package/Shaders/ShadersInclude/lightVxUboDeclaration.js +3 -1
  298. package/Shaders/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  299. package/Shaders/ShadersInclude/lightsFragmentFunctions.js +3 -1
  300. package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  301. package/Shaders/ShadersInclude/lineUboDeclaration.js +3 -1
  302. package/Shaders/ShadersInclude/lineUboDeclaration.js.map +1 -1
  303. package/Shaders/ShadersInclude/lineVertexDeclaration.js +3 -1
  304. package/Shaders/ShadersInclude/lineVertexDeclaration.js.map +1 -1
  305. package/Shaders/ShadersInclude/logDepthDeclaration.js +3 -1
  306. package/Shaders/ShadersInclude/logDepthDeclaration.js.map +1 -1
  307. package/Shaders/ShadersInclude/logDepthFragment.js +3 -1
  308. package/Shaders/ShadersInclude/logDepthFragment.js.map +1 -1
  309. package/Shaders/ShadersInclude/logDepthVertex.js +3 -1
  310. package/Shaders/ShadersInclude/logDepthVertex.js.map +1 -1
  311. package/Shaders/ShadersInclude/ltcHelperFunctions.js +3 -1
  312. package/Shaders/ShadersInclude/ltcHelperFunctions.js.map +1 -1
  313. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js +3 -1
  314. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  315. package/Shaders/ShadersInclude/meshFragmentDeclaration.js +3 -1
  316. package/Shaders/ShadersInclude/meshFragmentDeclaration.js.map +1 -1
  317. package/Shaders/ShadersInclude/meshUboDeclaration.js +3 -1
  318. package/Shaders/ShadersInclude/meshUboDeclaration.js.map +1 -1
  319. package/Shaders/ShadersInclude/meshVertexDeclaration.js +3 -1
  320. package/Shaders/ShadersInclude/meshVertexDeclaration.js.map +1 -1
  321. package/Shaders/ShadersInclude/morphTargetsVertex.js +3 -1
  322. package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
  323. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js +3 -1
  324. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  325. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js +3 -1
  326. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  327. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -1
  328. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  329. package/Shaders/ShadersInclude/mrtFragmentDeclaration.js +3 -1
  330. package/Shaders/ShadersInclude/mrtFragmentDeclaration.js.map +1 -1
  331. package/Shaders/ShadersInclude/oitDeclaration.js +3 -1
  332. package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
  333. package/Shaders/ShadersInclude/oitFragment.js +3 -1
  334. package/Shaders/ShadersInclude/oitFragment.js.map +1 -1
  335. package/Shaders/ShadersInclude/packingFunctions.js +3 -1
  336. package/Shaders/ShadersInclude/packingFunctions.js.map +1 -1
  337. package/Shaders/ShadersInclude/pbrBRDFFunctions.js +3 -1
  338. package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  339. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -1
  340. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  341. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +3 -1
  342. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  343. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +3 -1
  344. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  345. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +3 -1
  346. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  347. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +3 -1
  348. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  349. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +3 -1
  350. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  351. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +3 -1
  352. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  353. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js +5 -2
  354. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  355. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +3 -1
  356. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  357. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js +3 -1
  358. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  359. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js +3 -1
  360. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  361. package/Shaders/ShadersInclude/pbrBlockIridescence.js +3 -1
  362. package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  363. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js +3 -1
  364. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  365. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js +3 -1
  366. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  367. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js +3 -1
  368. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  369. package/Shaders/ShadersInclude/pbrBlockPrePass.js +3 -1
  370. package/Shaders/ShadersInclude/pbrBlockPrePass.js.map +1 -1
  371. package/Shaders/ShadersInclude/pbrBlockReflectance.js +3 -1
  372. package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  373. package/Shaders/ShadersInclude/pbrBlockReflectance0.js +3 -1
  374. package/Shaders/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  375. package/Shaders/ShadersInclude/pbrBlockReflection.js +4 -2
  376. package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
  377. package/Shaders/ShadersInclude/pbrBlockReflectivity.js +3 -1
  378. package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  379. package/Shaders/ShadersInclude/pbrBlockSheen.js +3 -1
  380. package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
  381. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +3 -1
  382. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  383. package/Shaders/ShadersInclude/pbrDebug.js +3 -1
  384. package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
  385. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js +3 -1
  386. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  387. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +3 -1
  388. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  389. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +3 -1
  390. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  391. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +3 -1
  392. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
  393. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +3 -1
  394. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  395. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +3 -1
  396. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  397. package/Shaders/ShadersInclude/pbrHelperFunctions.js +3 -1
  398. package/Shaders/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  399. package/Shaders/ShadersInclude/pbrIBLFunctions.js +3 -1
  400. package/Shaders/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  401. package/Shaders/ShadersInclude/pbrUboDeclaration.js +3 -1
  402. package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  403. package/Shaders/ShadersInclude/pbrVertexDeclaration.js +3 -1
  404. package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
  405. package/Shaders/ShadersInclude/pointCloudVertex.js +3 -1
  406. package/Shaders/ShadersInclude/pointCloudVertex.js.map +1 -1
  407. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js +3 -1
  408. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  409. package/Shaders/ShadersInclude/prePassDeclaration.js +3 -1
  410. package/Shaders/ShadersInclude/prePassDeclaration.js.map +1 -1
  411. package/Shaders/ShadersInclude/prePassVertex.js +3 -1
  412. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  413. package/Shaders/ShadersInclude/prePassVertexDeclaration.js +3 -1
  414. package/Shaders/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  415. package/Shaders/ShadersInclude/reflectionFunction.js +3 -1
  416. package/Shaders/ShadersInclude/reflectionFunction.js.map +1 -1
  417. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js +3 -1
  418. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  419. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js +3 -1
  420. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  421. package/Shaders/ShadersInclude/samplerVertexDeclaration.js +3 -1
  422. package/Shaders/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  423. package/Shaders/ShadersInclude/samplerVertexImplementation.js +3 -1
  424. package/Shaders/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  425. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js +3 -1
  426. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js.map +1 -1
  427. package/Shaders/ShadersInclude/sceneUboDeclaration.js +3 -1
  428. package/Shaders/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  429. package/Shaders/ShadersInclude/sceneVertexDeclaration.js +3 -1
  430. package/Shaders/ShadersInclude/sceneVertexDeclaration.js.map +1 -1
  431. package/Shaders/ShadersInclude/screenSpaceRayTrace.js +3 -1
  432. package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  433. package/Shaders/ShadersInclude/shadowMapFragment.js +3 -1
  434. package/Shaders/ShadersInclude/shadowMapFragment.js.map +1 -1
  435. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js +3 -1
  436. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  437. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +3 -1
  438. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  439. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js +3 -1
  440. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js.map +1 -1
  441. package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js +3 -1
  442. package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js.map +1 -1
  443. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js +3 -1
  444. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  445. package/Shaders/ShadersInclude/shadowMapVertexMetric.js +3 -1
  446. package/Shaders/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  447. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js +3 -1
  448. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  449. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +3 -1
  450. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  451. package/Shaders/ShadersInclude/shadowsVertex.js +3 -1
  452. package/Shaders/ShadersInclude/shadowsVertex.js.map +1 -1
  453. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js +3 -1
  454. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  455. package/Shaders/ShadersInclude/uvAttributeDeclaration.js +3 -1
  456. package/Shaders/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  457. package/Shaders/ShadersInclude/uvVariableDeclaration.js +3 -1
  458. package/Shaders/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  459. package/Shaders/ShadersInclude/vertexColorMixing.js +3 -1
  460. package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
  461. package/Shaders/anaglyph.fragment.js +3 -1
  462. package/Shaders/anaglyph.fragment.js.map +1 -1
  463. package/Shaders/background.fragment.js +3 -1
  464. package/Shaders/background.fragment.js.map +1 -1
  465. package/Shaders/background.vertex.js +3 -1
  466. package/Shaders/background.vertex.js.map +1 -1
  467. package/Shaders/bilateralBlur.fragment.js +3 -1
  468. package/Shaders/bilateralBlur.fragment.js.map +1 -1
  469. package/Shaders/bilateralBlurQuality.fragment.js +3 -1
  470. package/Shaders/bilateralBlurQuality.fragment.js.map +1 -1
  471. package/Shaders/blackAndWhite.fragment.js +3 -1
  472. package/Shaders/blackAndWhite.fragment.js.map +1 -1
  473. package/Shaders/bloomMerge.fragment.js +3 -1
  474. package/Shaders/bloomMerge.fragment.js.map +1 -1
  475. package/Shaders/boundingBoxRenderer.fragment.js +3 -1
  476. package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
  477. package/Shaders/boundingBoxRenderer.vertex.js +3 -1
  478. package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
  479. package/Shaders/chromaticAberration.fragment.js +3 -1
  480. package/Shaders/chromaticAberration.fragment.js.map +1 -1
  481. package/Shaders/circleOfConfusion.fragment.js +3 -1
  482. package/Shaders/circleOfConfusion.fragment.js.map +1 -1
  483. package/Shaders/color.fragment.js +3 -1
  484. package/Shaders/color.fragment.js.map +1 -1
  485. package/Shaders/color.vertex.js +3 -1
  486. package/Shaders/color.vertex.js.map +1 -1
  487. package/Shaders/colorCorrection.fragment.js +3 -1
  488. package/Shaders/colorCorrection.fragment.js.map +1 -1
  489. package/Shaders/convolution.fragment.js +3 -1
  490. package/Shaders/convolution.fragment.js.map +1 -1
  491. package/Shaders/copyTexture3DLayerToTexture.fragment.js +3 -1
  492. package/Shaders/copyTexture3DLayerToTexture.fragment.js.map +1 -1
  493. package/Shaders/copyTextureToTexture.fragment.js +3 -1
  494. package/Shaders/copyTextureToTexture.fragment.js.map +1 -1
  495. package/Shaders/default.fragment.js +3 -1
  496. package/Shaders/default.fragment.js.map +1 -1
  497. package/Shaders/default.vertex.js +3 -1
  498. package/Shaders/default.vertex.js.map +1 -1
  499. package/Shaders/depth.fragment.js +3 -1
  500. package/Shaders/depth.fragment.js.map +1 -1
  501. package/Shaders/depth.vertex.js +3 -1
  502. package/Shaders/depth.vertex.js.map +1 -1
  503. package/Shaders/depthBoxBlur.fragment.js +3 -1
  504. package/Shaders/depthBoxBlur.fragment.js.map +1 -1
  505. package/Shaders/depthOfField.fragment.js +3 -1
  506. package/Shaders/depthOfField.fragment.js.map +1 -1
  507. package/Shaders/depthOfFieldMerge.fragment.js +3 -1
  508. package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
  509. package/Shaders/displayPass.fragment.js +3 -1
  510. package/Shaders/displayPass.fragment.js.map +1 -1
  511. package/Shaders/equirectangularPanorama.fragment.js +3 -1
  512. package/Shaders/equirectangularPanorama.fragment.js.map +1 -1
  513. package/Shaders/extractHighlights.fragment.js +3 -1
  514. package/Shaders/extractHighlights.fragment.js.map +1 -1
  515. package/Shaders/filter.fragment.js +3 -1
  516. package/Shaders/filter.fragment.js.map +1 -1
  517. package/Shaders/fluidRenderingBilateralBlur.fragment.js +3 -1
  518. package/Shaders/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  519. package/Shaders/fluidRenderingParticleDepth.fragment.js +3 -1
  520. package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
  521. package/Shaders/fluidRenderingParticleDepth.vertex.js +3 -1
  522. package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
  523. package/Shaders/fluidRenderingParticleDiffuse.fragment.js +3 -1
  524. package/Shaders/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  525. package/Shaders/fluidRenderingParticleDiffuse.vertex.js +3 -1
  526. package/Shaders/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  527. package/Shaders/fluidRenderingParticleThickness.fragment.js +3 -1
  528. package/Shaders/fluidRenderingParticleThickness.fragment.js.map +1 -1
  529. package/Shaders/fluidRenderingParticleThickness.vertex.js +3 -1
  530. package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
  531. package/Shaders/fluidRenderingRender.fragment.js +3 -1
  532. package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
  533. package/Shaders/fluidRenderingStandardBlur.fragment.js +3 -1
  534. package/Shaders/fluidRenderingStandardBlur.fragment.js.map +1 -1
  535. package/Shaders/fxaa.fragment.js +3 -1
  536. package/Shaders/fxaa.fragment.js.map +1 -1
  537. package/Shaders/fxaa.vertex.js +3 -1
  538. package/Shaders/fxaa.vertex.js.map +1 -1
  539. package/Shaders/gaussianSplatting.fragment.js +3 -1
  540. package/Shaders/gaussianSplatting.fragment.js.map +1 -1
  541. package/Shaders/gaussianSplatting.vertex.js +3 -1
  542. package/Shaders/gaussianSplatting.vertex.js.map +1 -1
  543. package/Shaders/geometry.fragment.js +3 -1
  544. package/Shaders/geometry.fragment.js.map +1 -1
  545. package/Shaders/geometry.vertex.js +3 -1
  546. package/Shaders/geometry.vertex.js.map +1 -1
  547. package/Shaders/glowBlurPostProcess.fragment.js +3 -1
  548. package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
  549. package/Shaders/glowMapGeneration.fragment.js +3 -1
  550. package/Shaders/glowMapGeneration.fragment.js.map +1 -1
  551. package/Shaders/glowMapGeneration.vertex.js +3 -1
  552. package/Shaders/glowMapGeneration.vertex.js.map +1 -1
  553. package/Shaders/glowMapMerge.fragment.js +3 -1
  554. package/Shaders/glowMapMerge.fragment.js.map +1 -1
  555. package/Shaders/glowMapMerge.vertex.js +3 -1
  556. package/Shaders/glowMapMerge.vertex.js.map +1 -1
  557. package/Shaders/gpuRenderParticles.fragment.js +3 -1
  558. package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
  559. package/Shaders/gpuRenderParticles.vertex.js +3 -1
  560. package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
  561. package/Shaders/gpuTransform.fragment.js +3 -1
  562. package/Shaders/gpuTransform.fragment.js.map +1 -1
  563. package/Shaders/gpuTransform.vertex.js +3 -1
  564. package/Shaders/gpuTransform.vertex.js.map +1 -1
  565. package/Shaders/gpuUpdateParticles.fragment.js +3 -1
  566. package/Shaders/gpuUpdateParticles.fragment.js.map +1 -1
  567. package/Shaders/gpuUpdateParticles.vertex.js +3 -1
  568. package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
  569. package/Shaders/grain.fragment.js +3 -1
  570. package/Shaders/grain.fragment.js.map +1 -1
  571. package/Shaders/greasedLine.fragment.js +3 -1
  572. package/Shaders/greasedLine.fragment.js.map +1 -1
  573. package/Shaders/greasedLine.vertex.js +3 -1
  574. package/Shaders/greasedLine.vertex.js.map +1 -1
  575. package/Shaders/hdrFiltering.fragment.js +3 -1
  576. package/Shaders/hdrFiltering.fragment.js.map +1 -1
  577. package/Shaders/hdrFiltering.vertex.js +3 -1
  578. package/Shaders/hdrFiltering.vertex.js.map +1 -1
  579. package/Shaders/hdrIrradianceFiltering.fragment.js +3 -1
  580. package/Shaders/hdrIrradianceFiltering.fragment.js.map +1 -1
  581. package/Shaders/hdrIrradianceFiltering.vertex.js +3 -1
  582. package/Shaders/hdrIrradianceFiltering.vertex.js.map +1 -1
  583. package/Shaders/highlights.fragment.js +3 -1
  584. package/Shaders/highlights.fragment.js.map +1 -1
  585. package/Shaders/iblCdfDebug.fragment.js +3 -1
  586. package/Shaders/iblCdfDebug.fragment.js.map +1 -1
  587. package/Shaders/iblCdfx.fragment.js +3 -1
  588. package/Shaders/iblCdfx.fragment.js.map +1 -1
  589. package/Shaders/iblCdfy.fragment.js +3 -1
  590. package/Shaders/iblCdfy.fragment.js.map +1 -1
  591. package/Shaders/iblCombineVoxelGrids.fragment.js +3 -1
  592. package/Shaders/iblCombineVoxelGrids.fragment.js.map +1 -1
  593. package/Shaders/iblGenerateVoxelMip.fragment.js +3 -1
  594. package/Shaders/iblGenerateVoxelMip.fragment.js.map +1 -1
  595. package/Shaders/iblIcdf.fragment.js +3 -1
  596. package/Shaders/iblIcdf.fragment.js.map +1 -1
  597. package/Shaders/iblScaledLuminance.fragment.js +3 -1
  598. package/Shaders/iblScaledLuminance.fragment.js.map +1 -1
  599. package/Shaders/iblShadowAccumulation.fragment.js +3 -1
  600. package/Shaders/iblShadowAccumulation.fragment.js.map +1 -1
  601. package/Shaders/iblShadowDebug.fragment.js +3 -1
  602. package/Shaders/iblShadowDebug.fragment.js.map +1 -1
  603. package/Shaders/iblShadowGBufferDebug.fragment.js +3 -1
  604. package/Shaders/iblShadowGBufferDebug.fragment.js.map +1 -1
  605. package/Shaders/iblShadowSpatialBlur.fragment.js +3 -1
  606. package/Shaders/iblShadowSpatialBlur.fragment.js.map +1 -1
  607. package/Shaders/iblShadowVoxelTracing.fragment.js +3 -1
  608. package/Shaders/iblShadowVoxelTracing.fragment.js.map +1 -1
  609. package/Shaders/iblShadowsCombine.fragment.js +3 -1
  610. package/Shaders/iblShadowsCombine.fragment.js.map +1 -1
  611. package/Shaders/iblVoxelGrid.fragment.js +3 -1
  612. package/Shaders/iblVoxelGrid.fragment.js.map +1 -1
  613. package/Shaders/iblVoxelGrid.vertex.js +3 -1
  614. package/Shaders/iblVoxelGrid.vertex.js.map +1 -1
  615. package/Shaders/iblVoxelGrid2dArrayDebug.fragment.js +3 -1
  616. package/Shaders/iblVoxelGrid2dArrayDebug.fragment.js.map +1 -1
  617. package/Shaders/iblVoxelGrid3dDebug.fragment.js +3 -1
  618. package/Shaders/iblVoxelGrid3dDebug.fragment.js.map +1 -1
  619. package/Shaders/iblVoxelSlabDebug.fragment.js +3 -1
  620. package/Shaders/iblVoxelSlabDebug.fragment.js.map +1 -1
  621. package/Shaders/iblVoxelSlabDebug.vertex.js +3 -1
  622. package/Shaders/iblVoxelSlabDebug.vertex.js.map +1 -1
  623. package/Shaders/imageProcessing.fragment.js +4 -2
  624. package/Shaders/imageProcessing.fragment.js.map +1 -1
  625. package/Shaders/kernelBlur.fragment.js +3 -1
  626. package/Shaders/kernelBlur.fragment.js.map +1 -1
  627. package/Shaders/kernelBlur.vertex.js +3 -1
  628. package/Shaders/kernelBlur.vertex.js.map +1 -1
  629. package/Shaders/layer.fragment.js +3 -1
  630. package/Shaders/layer.fragment.js.map +1 -1
  631. package/Shaders/layer.vertex.js +3 -1
  632. package/Shaders/layer.vertex.js.map +1 -1
  633. package/Shaders/lensFlare.fragment.js +3 -1
  634. package/Shaders/lensFlare.fragment.js.map +1 -1
  635. package/Shaders/lensFlare.vertex.js +3 -1
  636. package/Shaders/lensFlare.vertex.js.map +1 -1
  637. package/Shaders/lensHighlights.fragment.js +3 -1
  638. package/Shaders/lensHighlights.fragment.js.map +1 -1
  639. package/Shaders/line.fragment.js +3 -1
  640. package/Shaders/line.fragment.js.map +1 -1
  641. package/Shaders/line.vertex.js +3 -1
  642. package/Shaders/line.vertex.js.map +1 -1
  643. package/Shaders/lod.fragment.js +3 -1
  644. package/Shaders/lod.fragment.js.map +1 -1
  645. package/Shaders/lodCube.fragment.js +3 -1
  646. package/Shaders/lodCube.fragment.js.map +1 -1
  647. package/Shaders/meshUVSpaceRenderer.fragment.js +3 -1
  648. package/Shaders/meshUVSpaceRenderer.fragment.js.map +1 -1
  649. package/Shaders/meshUVSpaceRenderer.vertex.js +3 -1
  650. package/Shaders/meshUVSpaceRenderer.vertex.js.map +1 -1
  651. package/Shaders/meshUVSpaceRendererFinaliser.fragment.js +3 -1
  652. package/Shaders/meshUVSpaceRendererFinaliser.fragment.js.map +1 -1
  653. package/Shaders/meshUVSpaceRendererFinaliser.vertex.js +3 -1
  654. package/Shaders/meshUVSpaceRendererFinaliser.vertex.js.map +1 -1
  655. package/Shaders/meshUVSpaceRendererMasker.fragment.js +3 -1
  656. package/Shaders/meshUVSpaceRendererMasker.fragment.js.map +1 -1
  657. package/Shaders/meshUVSpaceRendererMasker.vertex.js +3 -1
  658. package/Shaders/meshUVSpaceRendererMasker.vertex.js.map +1 -1
  659. package/Shaders/minmaxRedux.fragment.js +3 -1
  660. package/Shaders/minmaxRedux.fragment.js.map +1 -1
  661. package/Shaders/motionBlur.fragment.js +4 -2
  662. package/Shaders/motionBlur.fragment.js.map +1 -1
  663. package/Shaders/noise.fragment.js +3 -1
  664. package/Shaders/noise.fragment.js.map +1 -1
  665. package/Shaders/oitBackBlend.fragment.js +3 -1
  666. package/Shaders/oitBackBlend.fragment.js.map +1 -1
  667. package/Shaders/oitFinal.fragment.js +3 -1
  668. package/Shaders/oitFinal.fragment.js.map +1 -1
  669. package/Shaders/outline.fragment.js +3 -1
  670. package/Shaders/outline.fragment.js.map +1 -1
  671. package/Shaders/outline.vertex.js +3 -1
  672. package/Shaders/outline.vertex.js.map +1 -1
  673. package/Shaders/particles.fragment.js +3 -1
  674. package/Shaders/particles.fragment.js.map +1 -1
  675. package/Shaders/particles.vertex.js +3 -1
  676. package/Shaders/particles.vertex.js.map +1 -1
  677. package/Shaders/pass.fragment.js +3 -1
  678. package/Shaders/pass.fragment.js.map +1 -1
  679. package/Shaders/passCube.fragment.js +3 -1
  680. package/Shaders/passCube.fragment.js.map +1 -1
  681. package/Shaders/pbr.fragment.js +6 -1
  682. package/Shaders/pbr.fragment.js.map +1 -1
  683. package/Shaders/pbr.vertex.js +3 -1
  684. package/Shaders/pbr.vertex.js.map +1 -1
  685. package/Shaders/picking.fragment.js +3 -1
  686. package/Shaders/picking.fragment.js.map +1 -1
  687. package/Shaders/picking.vertex.js +3 -1
  688. package/Shaders/picking.vertex.js.map +1 -1
  689. package/Shaders/postprocess.vertex.js +3 -1
  690. package/Shaders/postprocess.vertex.js.map +1 -1
  691. package/Shaders/procedural.vertex.js +3 -1
  692. package/Shaders/procedural.vertex.js.map +1 -1
  693. package/Shaders/refraction.fragment.js +3 -1
  694. package/Shaders/refraction.fragment.js.map +1 -1
  695. package/Shaders/rgbdDecode.fragment.js +3 -1
  696. package/Shaders/rgbdDecode.fragment.js.map +1 -1
  697. package/Shaders/rgbdEncode.fragment.js +3 -1
  698. package/Shaders/rgbdEncode.fragment.js.map +1 -1
  699. package/Shaders/rsmFullGlobalIllumination.fragment.js +3 -1
  700. package/Shaders/rsmFullGlobalIllumination.fragment.js.map +1 -1
  701. package/Shaders/rsmGlobalIllumination.fragment.js +3 -1
  702. package/Shaders/rsmGlobalIllumination.fragment.js.map +1 -1
  703. package/Shaders/screenSpaceCurvature.fragment.js +3 -1
  704. package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
  705. package/Shaders/screenSpaceReflection.fragment.js +3 -1
  706. package/Shaders/screenSpaceReflection.fragment.js.map +1 -1
  707. package/Shaders/screenSpaceReflection2.fragment.js +4 -2
  708. package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
  709. package/Shaders/screenSpaceReflection2Blur.fragment.js +3 -1
  710. package/Shaders/screenSpaceReflection2Blur.fragment.js.map +1 -1
  711. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +3 -1
  712. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  713. package/Shaders/shadowMap.fragment.js +3 -1
  714. package/Shaders/shadowMap.fragment.js.map +1 -1
  715. package/Shaders/shadowMap.vertex.js +3 -1
  716. package/Shaders/shadowMap.vertex.js.map +1 -1
  717. package/Shaders/sharpen.fragment.js +3 -1
  718. package/Shaders/sharpen.fragment.js.map +1 -1
  719. package/Shaders/spriteMap.fragment.js +3 -1
  720. package/Shaders/spriteMap.fragment.js.map +1 -1
  721. package/Shaders/spriteMap.vertex.js +3 -1
  722. package/Shaders/spriteMap.vertex.js.map +1 -1
  723. package/Shaders/sprites.fragment.js +3 -1
  724. package/Shaders/sprites.fragment.js.map +1 -1
  725. package/Shaders/sprites.vertex.js +3 -1
  726. package/Shaders/sprites.vertex.js.map +1 -1
  727. package/Shaders/ssao.fragment.js +3 -1
  728. package/Shaders/ssao.fragment.js.map +1 -1
  729. package/Shaders/ssao2.fragment.js +3 -1
  730. package/Shaders/ssao2.fragment.js.map +1 -1
  731. package/Shaders/ssaoCombine.fragment.js +3 -1
  732. package/Shaders/ssaoCombine.fragment.js.map +1 -1
  733. package/Shaders/standard.fragment.js +3 -1
  734. package/Shaders/standard.fragment.js.map +1 -1
  735. package/Shaders/stereoscopicInterlace.fragment.js +3 -1
  736. package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
  737. package/Shaders/subSurfaceScattering.fragment.d.ts +1 -1
  738. package/Shaders/subSurfaceScattering.fragment.js +8 -6
  739. package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
  740. package/Shaders/taa.fragment.js +3 -1
  741. package/Shaders/taa.fragment.js.map +1 -1
  742. package/Shaders/tonemap.fragment.js +3 -1
  743. package/Shaders/tonemap.fragment.js.map +1 -1
  744. package/Shaders/velocity.fragment.js +3 -1
  745. package/Shaders/velocity.fragment.js.map +1 -1
  746. package/Shaders/velocity.vertex.js +3 -1
  747. package/Shaders/velocity.vertex.js.map +1 -1
  748. package/Shaders/volumetricLightScattering.fragment.js +3 -1
  749. package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
  750. package/Shaders/volumetricLightScatteringPass.fragment.js +3 -1
  751. package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
  752. package/Shaders/volumetricLightScatteringPass.vertex.js +3 -1
  753. package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
  754. package/Shaders/vrDistortionCorrection.fragment.js +3 -1
  755. package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
  756. package/Shaders/vrMultiviewToSingleview.fragment.js +3 -1
  757. package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
  758. package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.js +3 -1
  759. package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  760. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js +3 -1
  761. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  762. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js +3 -1
  763. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  764. package/ShadersWGSL/ShadersInclude/bayerDitherFunctions.js +3 -1
  765. package/ShadersWGSL/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  766. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js +3 -1
  767. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js.map +1 -1
  768. package/ShadersWGSL/ShadersInclude/bonesVertex.js +3 -1
  769. package/ShadersWGSL/ShadersInclude/bonesVertex.js.map +1 -1
  770. package/ShadersWGSL/ShadersInclude/bumpFragment.js +3 -1
  771. package/ShadersWGSL/ShadersInclude/bumpFragment.js.map +1 -1
  772. package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.js +3 -1
  773. package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  774. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js +3 -1
  775. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  776. package/ShadersWGSL/ShadersInclude/bumpVertex.js +3 -1
  777. package/ShadersWGSL/ShadersInclude/bumpVertex.js.map +1 -1
  778. package/ShadersWGSL/ShadersInclude/bumpVertexDeclaration.js +3 -1
  779. package/ShadersWGSL/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  780. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js +3 -1
  781. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js.map +1 -1
  782. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js +3 -1
  783. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  784. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js +3 -1
  785. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js.map +1 -1
  786. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js +3 -1
  787. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  788. package/ShadersWGSL/ShadersInclude/decalFragment.js +3 -1
  789. package/ShadersWGSL/ShadersInclude/decalFragment.js.map +1 -1
  790. package/ShadersWGSL/ShadersInclude/decalFragmentDeclaration.js +3 -1
  791. package/ShadersWGSL/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  792. package/ShadersWGSL/ShadersInclude/decalVertexDeclaration.js +3 -1
  793. package/ShadersWGSL/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  794. package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.js +3 -1
  795. package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  796. package/ShadersWGSL/ShadersInclude/depthPrePass.js +3 -1
  797. package/ShadersWGSL/ShadersInclude/depthPrePass.js.map +1 -1
  798. package/ShadersWGSL/ShadersInclude/diffusionProfile.d.ts +5 -0
  799. package/ShadersWGSL/ShadersInclude/diffusionProfile.js +12 -0
  800. package/ShadersWGSL/ShadersInclude/diffusionProfile.js.map +1 -0
  801. package/ShadersWGSL/ShadersInclude/fibonacci.d.ts +5 -0
  802. package/ShadersWGSL/ShadersInclude/fibonacci.js +17 -0
  803. package/ShadersWGSL/ShadersInclude/fibonacci.js.map +1 -0
  804. package/ShadersWGSL/ShadersInclude/fogFragment.js +3 -1
  805. package/ShadersWGSL/ShadersInclude/fogFragment.js.map +1 -1
  806. package/ShadersWGSL/ShadersInclude/fogFragmentDeclaration.js +3 -1
  807. package/ShadersWGSL/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  808. package/ShadersWGSL/ShadersInclude/fogVertex.js +3 -1
  809. package/ShadersWGSL/ShadersInclude/fogVertex.js.map +1 -1
  810. package/ShadersWGSL/ShadersInclude/fogVertexDeclaration.js +3 -1
  811. package/ShadersWGSL/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  812. package/ShadersWGSL/ShadersInclude/fresnelFunction.js +3 -1
  813. package/ShadersWGSL/ShadersInclude/fresnelFunction.js.map +1 -1
  814. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +3 -1
  815. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
  816. package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js +3 -1
  817. package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
  818. package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.js +3 -1
  819. package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.js.map +1 -1
  820. package/ShadersWGSL/ShadersInclude/gaussianSplattingVertexDeclaration.js +3 -1
  821. package/ShadersWGSL/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
  822. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js +3 -1
  823. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js.map +1 -1
  824. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js +3 -1
  825. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  826. package/ShadersWGSL/ShadersInclude/helperFunctions.js +3 -1
  827. package/ShadersWGSL/ShadersInclude/helperFunctions.js.map +1 -1
  828. package/ShadersWGSL/ShadersInclude/imageProcessingCompatibility.js +3 -1
  829. package/ShadersWGSL/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  830. package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js +3 -1
  831. package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  832. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js +3 -1
  833. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  834. package/ShadersWGSL/ShadersInclude/importanceSampling.js +3 -1
  835. package/ShadersWGSL/ShadersInclude/importanceSampling.js.map +1 -1
  836. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +3 -1
  837. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
  838. package/ShadersWGSL/ShadersInclude/instancesVertex.js +3 -1
  839. package/ShadersWGSL/ShadersInclude/instancesVertex.js.map +1 -1
  840. package/ShadersWGSL/ShadersInclude/intersectionFunctions.js +3 -1
  841. package/ShadersWGSL/ShadersInclude/intersectionFunctions.js.map +1 -1
  842. package/ShadersWGSL/ShadersInclude/kernelBlurFragment.js +3 -1
  843. package/ShadersWGSL/ShadersInclude/kernelBlurFragment.js.map +1 -1
  844. package/ShadersWGSL/ShadersInclude/kernelBlurFragment2.js +3 -1
  845. package/ShadersWGSL/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  846. package/ShadersWGSL/ShadersInclude/kernelBlurVaryingDeclaration.js +3 -1
  847. package/ShadersWGSL/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
  848. package/ShadersWGSL/ShadersInclude/kernelBlurVertex.js +3 -1
  849. package/ShadersWGSL/ShadersInclude/kernelBlurVertex.js.map +1 -1
  850. package/ShadersWGSL/ShadersInclude/lightFragment.js +3 -1
  851. package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
  852. package/ShadersWGSL/ShadersInclude/lightUboDeclaration.js +3 -1
  853. package/ShadersWGSL/ShadersInclude/lightUboDeclaration.js.map +1 -1
  854. package/ShadersWGSL/ShadersInclude/lightVxFragmentDeclaration.js +3 -1
  855. package/ShadersWGSL/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  856. package/ShadersWGSL/ShadersInclude/lightVxUboDeclaration.js +3 -1
  857. package/ShadersWGSL/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  858. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +3 -1
  859. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  860. package/ShadersWGSL/ShadersInclude/logDepthDeclaration.js +3 -1
  861. package/ShadersWGSL/ShadersInclude/logDepthDeclaration.js.map +1 -1
  862. package/ShadersWGSL/ShadersInclude/logDepthFragment.js +3 -1
  863. package/ShadersWGSL/ShadersInclude/logDepthFragment.js.map +1 -1
  864. package/ShadersWGSL/ShadersInclude/logDepthVertex.js +3 -1
  865. package/ShadersWGSL/ShadersInclude/logDepthVertex.js.map +1 -1
  866. package/ShadersWGSL/ShadersInclude/ltcHelperFunctions.js +3 -1
  867. package/ShadersWGSL/ShadersInclude/ltcHelperFunctions.js.map +1 -1
  868. package/ShadersWGSL/ShadersInclude/mainUVVaryingDeclaration.js +3 -1
  869. package/ShadersWGSL/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  870. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js +3 -1
  871. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js.map +1 -1
  872. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +3 -1
  873. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
  874. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js +3 -1
  875. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  876. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js +3 -1
  877. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  878. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -1
  879. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  880. package/ShadersWGSL/ShadersInclude/oitDeclaration.js +3 -1
  881. package/ShadersWGSL/ShadersInclude/oitDeclaration.js.map +1 -1
  882. package/ShadersWGSL/ShadersInclude/oitFragment.js +3 -1
  883. package/ShadersWGSL/ShadersInclude/oitFragment.js.map +1 -1
  884. package/ShadersWGSL/ShadersInclude/packingFunctions.js +3 -1
  885. package/ShadersWGSL/ShadersInclude/packingFunctions.js.map +1 -1
  886. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js +3 -1
  887. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  888. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -1
  889. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  890. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js +3 -1
  891. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  892. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js +3 -1
  893. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  894. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js +3 -1
  895. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  896. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js +3 -1
  897. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  898. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js +3 -1
  899. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  900. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js +3 -1
  901. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  902. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js +5 -2
  903. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  904. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +3 -1
  905. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  906. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js +3 -1
  907. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  908. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js +3 -1
  909. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  910. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js +3 -1
  911. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  912. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js +3 -1
  913. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  914. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js +3 -1
  915. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  916. package/ShadersWGSL/ShadersInclude/pbrBlockNormalGeometric.js +3 -1
  917. package/ShadersWGSL/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  918. package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js +3 -1
  919. package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js.map +1 -1
  920. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js +3 -1
  921. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  922. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js +3 -1
  923. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  924. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js +3 -1
  925. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js.map +1 -1
  926. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js +3 -1
  927. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  928. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js +3 -1
  929. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js.map +1 -1
  930. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js +3 -1
  931. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  932. package/ShadersWGSL/ShadersInclude/pbrDebug.js +3 -1
  933. package/ShadersWGSL/ShadersInclude/pbrDebug.js.map +1 -1
  934. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js +3 -1
  935. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  936. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +3 -1
  937. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  938. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js +3 -1
  939. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  940. package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.js +3 -1
  941. package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  942. package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.js +3 -1
  943. package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  944. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js +3 -1
  945. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  946. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js +3 -1
  947. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  948. package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.js +3 -1
  949. package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  950. package/ShadersWGSL/ShadersInclude/pointCloudVertex.js +3 -1
  951. package/ShadersWGSL/ShadersInclude/pointCloudVertex.js.map +1 -1
  952. package/ShadersWGSL/ShadersInclude/pointCloudVertexDeclaration.js +3 -1
  953. package/ShadersWGSL/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  954. package/ShadersWGSL/ShadersInclude/prePassDeclaration.js +3 -1
  955. package/ShadersWGSL/ShadersInclude/prePassDeclaration.js.map +1 -1
  956. package/ShadersWGSL/ShadersInclude/prePassVertex.js +3 -1
  957. package/ShadersWGSL/ShadersInclude/prePassVertex.js.map +1 -1
  958. package/ShadersWGSL/ShadersInclude/prePassVertexDeclaration.js +3 -1
  959. package/ShadersWGSL/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  960. package/ShadersWGSL/ShadersInclude/reflectionFunction.js +3 -1
  961. package/ShadersWGSL/ShadersInclude/reflectionFunction.js.map +1 -1
  962. package/ShadersWGSL/ShadersInclude/samplerFragmentAlternateDeclaration.js +3 -1
  963. package/ShadersWGSL/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  964. package/ShadersWGSL/ShadersInclude/samplerFragmentDeclaration.js +3 -1
  965. package/ShadersWGSL/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  966. package/ShadersWGSL/ShadersInclude/samplerVertexDeclaration.js +3 -1
  967. package/ShadersWGSL/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  968. package/ShadersWGSL/ShadersInclude/samplerVertexImplementation.js +3 -1
  969. package/ShadersWGSL/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  970. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js +3 -1
  971. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  972. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js +3 -1
  973. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  974. package/ShadersWGSL/ShadersInclude/shadowMapFragment.js +3 -1
  975. package/ShadersWGSL/ShadersInclude/shadowMapFragment.js.map +1 -1
  976. package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.js +3 -1
  977. package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  978. package/ShadersWGSL/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +3 -1
  979. package/ShadersWGSL/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  980. package/ShadersWGSL/ShadersInclude/shadowMapVertexExtraDeclaration.js +3 -1
  981. package/ShadersWGSL/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  982. package/ShadersWGSL/ShadersInclude/shadowMapVertexMetric.js +3 -1
  983. package/ShadersWGSL/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  984. package/ShadersWGSL/ShadersInclude/shadowMapVertexNormalBias.js +3 -1
  985. package/ShadersWGSL/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  986. package/ShadersWGSL/ShadersInclude/shadowsFragmentFunctions.js +3 -1
  987. package/ShadersWGSL/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  988. package/ShadersWGSL/ShadersInclude/shadowsVertex.js +3 -1
  989. package/ShadersWGSL/ShadersInclude/shadowsVertex.js.map +1 -1
  990. package/ShadersWGSL/ShadersInclude/subSurfaceScatteringFunctions.js +3 -1
  991. package/ShadersWGSL/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  992. package/ShadersWGSL/ShadersInclude/uvAttributeDeclaration.js +3 -1
  993. package/ShadersWGSL/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  994. package/ShadersWGSL/ShadersInclude/uvVariableDeclaration.js +3 -1
  995. package/ShadersWGSL/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  996. package/ShadersWGSL/ShadersInclude/vertexColorMixing.js +3 -1
  997. package/ShadersWGSL/ShadersInclude/vertexColorMixing.js.map +1 -1
  998. package/ShadersWGSL/anaglyph.fragment.js +3 -1
  999. package/ShadersWGSL/anaglyph.fragment.js.map +1 -1
  1000. package/ShadersWGSL/background.fragment.js +3 -1
  1001. package/ShadersWGSL/background.fragment.js.map +1 -1
  1002. package/ShadersWGSL/background.vertex.js +3 -1
  1003. package/ShadersWGSL/background.vertex.js.map +1 -1
  1004. package/ShadersWGSL/bilateralBlur.fragment.js +3 -1
  1005. package/ShadersWGSL/bilateralBlur.fragment.js.map +1 -1
  1006. package/ShadersWGSL/bilateralBlurQuality.fragment.js +3 -1
  1007. package/ShadersWGSL/bilateralBlurQuality.fragment.js.map +1 -1
  1008. package/ShadersWGSL/blackAndWhite.fragment.js +3 -1
  1009. package/ShadersWGSL/blackAndWhite.fragment.js.map +1 -1
  1010. package/ShadersWGSL/bloomMerge.fragment.js +3 -1
  1011. package/ShadersWGSL/bloomMerge.fragment.js.map +1 -1
  1012. package/ShadersWGSL/boundingBoxRenderer.fragment.js +3 -1
  1013. package/ShadersWGSL/boundingBoxRenderer.fragment.js.map +1 -1
  1014. package/ShadersWGSL/boundingBoxRenderer.vertex.js +3 -1
  1015. package/ShadersWGSL/boundingBoxRenderer.vertex.js.map +1 -1
  1016. package/ShadersWGSL/boundingInfo.compute.js +3 -1
  1017. package/ShadersWGSL/boundingInfo.compute.js.map +1 -1
  1018. package/ShadersWGSL/chromaticAberration.fragment.js +3 -1
  1019. package/ShadersWGSL/chromaticAberration.fragment.js.map +1 -1
  1020. package/ShadersWGSL/circleOfConfusion.fragment.js +3 -1
  1021. package/ShadersWGSL/circleOfConfusion.fragment.js.map +1 -1
  1022. package/ShadersWGSL/clearQuad.fragment.js +3 -1
  1023. package/ShadersWGSL/clearQuad.fragment.js.map +1 -1
  1024. package/ShadersWGSL/clearQuad.vertex.js +3 -1
  1025. package/ShadersWGSL/clearQuad.vertex.js.map +1 -1
  1026. package/ShadersWGSL/color.fragment.js +3 -1
  1027. package/ShadersWGSL/color.fragment.js.map +1 -1
  1028. package/ShadersWGSL/color.vertex.js +3 -1
  1029. package/ShadersWGSL/color.vertex.js.map +1 -1
  1030. package/ShadersWGSL/colorCorrection.fragment.js +3 -1
  1031. package/ShadersWGSL/colorCorrection.fragment.js.map +1 -1
  1032. package/ShadersWGSL/convolution.fragment.js +3 -1
  1033. package/ShadersWGSL/convolution.fragment.js.map +1 -1
  1034. package/ShadersWGSL/copyTexture3DLayerToTexture.fragment.js +3 -1
  1035. package/ShadersWGSL/copyTexture3DLayerToTexture.fragment.js.map +1 -1
  1036. package/ShadersWGSL/copyTextureToTexture.fragment.js +3 -1
  1037. package/ShadersWGSL/copyTextureToTexture.fragment.js.map +1 -1
  1038. package/ShadersWGSL/default.fragment.js +3 -1
  1039. package/ShadersWGSL/default.fragment.js.map +1 -1
  1040. package/ShadersWGSL/default.vertex.js +3 -1
  1041. package/ShadersWGSL/default.vertex.js.map +1 -1
  1042. package/ShadersWGSL/depth.fragment.js +3 -1
  1043. package/ShadersWGSL/depth.fragment.js.map +1 -1
  1044. package/ShadersWGSL/depth.vertex.js +3 -1
  1045. package/ShadersWGSL/depth.vertex.js.map +1 -1
  1046. package/ShadersWGSL/depthBoxBlur.fragment.js +3 -1
  1047. package/ShadersWGSL/depthBoxBlur.fragment.js.map +1 -1
  1048. package/ShadersWGSL/depthOfFieldMerge.fragment.js +3 -1
  1049. package/ShadersWGSL/depthOfFieldMerge.fragment.js.map +1 -1
  1050. package/ShadersWGSL/displayPass.fragment.js +3 -1
  1051. package/ShadersWGSL/displayPass.fragment.js.map +1 -1
  1052. package/ShadersWGSL/extractHighlights.fragment.js +3 -1
  1053. package/ShadersWGSL/extractHighlights.fragment.js.map +1 -1
  1054. package/ShadersWGSL/filter.fragment.js +3 -1
  1055. package/ShadersWGSL/filter.fragment.js.map +1 -1
  1056. package/ShadersWGSL/fluidRenderingBilateralBlur.fragment.js +3 -1
  1057. package/ShadersWGSL/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  1058. package/ShadersWGSL/fluidRenderingParticleDepth.fragment.js +3 -1
  1059. package/ShadersWGSL/fluidRenderingParticleDepth.fragment.js.map +1 -1
  1060. package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js +3 -1
  1061. package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js.map +1 -1
  1062. package/ShadersWGSL/fluidRenderingParticleDiffuse.fragment.js +3 -1
  1063. package/ShadersWGSL/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  1064. package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js +3 -1
  1065. package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  1066. package/ShadersWGSL/fluidRenderingParticleThickness.fragment.js +3 -1
  1067. package/ShadersWGSL/fluidRenderingParticleThickness.fragment.js.map +1 -1
  1068. package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js +3 -1
  1069. package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js.map +1 -1
  1070. package/ShadersWGSL/fluidRenderingRender.fragment.js +3 -1
  1071. package/ShadersWGSL/fluidRenderingRender.fragment.js.map +1 -1
  1072. package/ShadersWGSL/fluidRenderingStandardBlur.fragment.js +3 -1
  1073. package/ShadersWGSL/fluidRenderingStandardBlur.fragment.js.map +1 -1
  1074. package/ShadersWGSL/fxaa.fragment.js +3 -1
  1075. package/ShadersWGSL/fxaa.fragment.js.map +1 -1
  1076. package/ShadersWGSL/fxaa.vertex.js +3 -1
  1077. package/ShadersWGSL/fxaa.vertex.js.map +1 -1
  1078. package/ShadersWGSL/gaussianSplatting.fragment.js +3 -1
  1079. package/ShadersWGSL/gaussianSplatting.fragment.js.map +1 -1
  1080. package/ShadersWGSL/gaussianSplatting.vertex.js +3 -1
  1081. package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
  1082. package/ShadersWGSL/geometry.fragment.js +3 -1
  1083. package/ShadersWGSL/geometry.fragment.js.map +1 -1
  1084. package/ShadersWGSL/geometry.vertex.js +3 -1
  1085. package/ShadersWGSL/geometry.vertex.js.map +1 -1
  1086. package/ShadersWGSL/glowBlurPostProcess.fragment.js +3 -1
  1087. package/ShadersWGSL/glowBlurPostProcess.fragment.js.map +1 -1
  1088. package/ShadersWGSL/glowMapGeneration.fragment.js +3 -1
  1089. package/ShadersWGSL/glowMapGeneration.fragment.js.map +1 -1
  1090. package/ShadersWGSL/glowMapGeneration.vertex.js +3 -1
  1091. package/ShadersWGSL/glowMapGeneration.vertex.js.map +1 -1
  1092. package/ShadersWGSL/glowMapMerge.fragment.js +3 -1
  1093. package/ShadersWGSL/glowMapMerge.fragment.js.map +1 -1
  1094. package/ShadersWGSL/glowMapMerge.vertex.js +3 -1
  1095. package/ShadersWGSL/glowMapMerge.vertex.js.map +1 -1
  1096. package/ShadersWGSL/gpuUpdateParticles.compute.js +3 -1
  1097. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  1098. package/ShadersWGSL/grain.fragment.js +3 -1
  1099. package/ShadersWGSL/grain.fragment.js.map +1 -1
  1100. package/ShadersWGSL/greasedLine.fragment.js +3 -1
  1101. package/ShadersWGSL/greasedLine.fragment.js.map +1 -1
  1102. package/ShadersWGSL/greasedLine.vertex.js +3 -1
  1103. package/ShadersWGSL/greasedLine.vertex.js.map +1 -1
  1104. package/ShadersWGSL/hdrFiltering.fragment.js +3 -1
  1105. package/ShadersWGSL/hdrFiltering.fragment.js.map +1 -1
  1106. package/ShadersWGSL/hdrFiltering.vertex.js +3 -1
  1107. package/ShadersWGSL/hdrFiltering.vertex.js.map +1 -1
  1108. package/ShadersWGSL/hdrIrradianceFiltering.fragment.js +3 -1
  1109. package/ShadersWGSL/hdrIrradianceFiltering.fragment.js.map +1 -1
  1110. package/ShadersWGSL/hdrIrradianceFiltering.vertex.js +3 -1
  1111. package/ShadersWGSL/hdrIrradianceFiltering.vertex.js.map +1 -1
  1112. package/ShadersWGSL/highlights.fragment.js +3 -1
  1113. package/ShadersWGSL/highlights.fragment.js.map +1 -1
  1114. package/ShadersWGSL/iblCdfDebug.fragment.js +3 -1
  1115. package/ShadersWGSL/iblCdfDebug.fragment.js.map +1 -1
  1116. package/ShadersWGSL/iblCdfx.fragment.js +3 -1
  1117. package/ShadersWGSL/iblCdfx.fragment.js.map +1 -1
  1118. package/ShadersWGSL/iblCdfy.fragment.js +3 -1
  1119. package/ShadersWGSL/iblCdfy.fragment.js.map +1 -1
  1120. package/ShadersWGSL/iblCombineVoxelGrids.fragment.js +3 -1
  1121. package/ShadersWGSL/iblCombineVoxelGrids.fragment.js.map +1 -1
  1122. package/ShadersWGSL/iblGenerateVoxelMip.fragment.js +3 -1
  1123. package/ShadersWGSL/iblGenerateVoxelMip.fragment.js.map +1 -1
  1124. package/ShadersWGSL/iblIcdf.fragment.js +3 -1
  1125. package/ShadersWGSL/iblIcdf.fragment.js.map +1 -1
  1126. package/ShadersWGSL/iblScaledLuminance.fragment.js +3 -1
  1127. package/ShadersWGSL/iblScaledLuminance.fragment.js.map +1 -1
  1128. package/ShadersWGSL/iblShadowAccumulation.fragment.js +3 -1
  1129. package/ShadersWGSL/iblShadowAccumulation.fragment.js.map +1 -1
  1130. package/ShadersWGSL/iblShadowDebug.fragment.js +3 -1
  1131. package/ShadersWGSL/iblShadowDebug.fragment.js.map +1 -1
  1132. package/ShadersWGSL/iblShadowGBufferDebug.fragment.js +3 -1
  1133. package/ShadersWGSL/iblShadowGBufferDebug.fragment.js.map +1 -1
  1134. package/ShadersWGSL/iblShadowSpatialBlur.fragment.js +3 -1
  1135. package/ShadersWGSL/iblShadowSpatialBlur.fragment.js.map +1 -1
  1136. package/ShadersWGSL/iblShadowVoxelTracing.fragment.js +3 -1
  1137. package/ShadersWGSL/iblShadowVoxelTracing.fragment.js.map +1 -1
  1138. package/ShadersWGSL/iblShadowsCombine.fragment.js +3 -1
  1139. package/ShadersWGSL/iblShadowsCombine.fragment.js.map +1 -1
  1140. package/ShadersWGSL/iblVoxelGrid.fragment.js +3 -1
  1141. package/ShadersWGSL/iblVoxelGrid.fragment.js.map +1 -1
  1142. package/ShadersWGSL/iblVoxelGrid.vertex.js +3 -1
  1143. package/ShadersWGSL/iblVoxelGrid.vertex.js.map +1 -1
  1144. package/ShadersWGSL/iblVoxelGrid2dArrayDebug.fragment.js +3 -1
  1145. package/ShadersWGSL/iblVoxelGrid2dArrayDebug.fragment.js.map +1 -1
  1146. package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js +3 -1
  1147. package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js.map +1 -1
  1148. package/ShadersWGSL/iblVoxelSlabDebug.fragment.js +3 -1
  1149. package/ShadersWGSL/iblVoxelSlabDebug.fragment.js.map +1 -1
  1150. package/ShadersWGSL/iblVoxelSlabDebug.vertex.js +3 -1
  1151. package/ShadersWGSL/iblVoxelSlabDebug.vertex.js.map +1 -1
  1152. package/ShadersWGSL/imageProcessing.fragment.js +4 -2
  1153. package/ShadersWGSL/imageProcessing.fragment.js.map +1 -1
  1154. package/ShadersWGSL/kernelBlur.fragment.js +3 -1
  1155. package/ShadersWGSL/kernelBlur.fragment.js.map +1 -1
  1156. package/ShadersWGSL/kernelBlur.vertex.js +3 -1
  1157. package/ShadersWGSL/kernelBlur.vertex.js.map +1 -1
  1158. package/ShadersWGSL/layer.fragment.js +3 -1
  1159. package/ShadersWGSL/layer.fragment.js.map +1 -1
  1160. package/ShadersWGSL/layer.vertex.js +3 -1
  1161. package/ShadersWGSL/layer.vertex.js.map +1 -1
  1162. package/ShadersWGSL/lensFlare.fragment.js +3 -1
  1163. package/ShadersWGSL/lensFlare.fragment.js.map +1 -1
  1164. package/ShadersWGSL/lensFlare.vertex.js +3 -1
  1165. package/ShadersWGSL/lensFlare.vertex.js.map +1 -1
  1166. package/ShadersWGSL/line.fragment.js +3 -1
  1167. package/ShadersWGSL/line.fragment.js.map +1 -1
  1168. package/ShadersWGSL/line.vertex.js +3 -1
  1169. package/ShadersWGSL/line.vertex.js.map +1 -1
  1170. package/ShadersWGSL/lod.fragment.js +3 -1
  1171. package/ShadersWGSL/lod.fragment.js.map +1 -1
  1172. package/ShadersWGSL/lodCube.fragment.js +3 -1
  1173. package/ShadersWGSL/lodCube.fragment.js.map +1 -1
  1174. package/ShadersWGSL/meshUVSpaceRenderer.fragment.js +3 -1
  1175. package/ShadersWGSL/meshUVSpaceRenderer.fragment.js.map +1 -1
  1176. package/ShadersWGSL/meshUVSpaceRenderer.vertex.js +3 -1
  1177. package/ShadersWGSL/meshUVSpaceRenderer.vertex.js.map +1 -1
  1178. package/ShadersWGSL/meshUVSpaceRendererFinaliser.fragment.js +3 -1
  1179. package/ShadersWGSL/meshUVSpaceRendererFinaliser.fragment.js.map +1 -1
  1180. package/ShadersWGSL/meshUVSpaceRendererFinaliser.vertex.js +3 -1
  1181. package/ShadersWGSL/meshUVSpaceRendererFinaliser.vertex.js.map +1 -1
  1182. package/ShadersWGSL/meshUVSpaceRendererMasker.fragment.js +3 -1
  1183. package/ShadersWGSL/meshUVSpaceRendererMasker.fragment.js.map +1 -1
  1184. package/ShadersWGSL/meshUVSpaceRendererMasker.vertex.js +3 -1
  1185. package/ShadersWGSL/meshUVSpaceRendererMasker.vertex.js.map +1 -1
  1186. package/ShadersWGSL/motionBlur.fragment.js +4 -2
  1187. package/ShadersWGSL/motionBlur.fragment.js.map +1 -1
  1188. package/ShadersWGSL/oitBackBlend.fragment.js +3 -1
  1189. package/ShadersWGSL/oitBackBlend.fragment.js.map +1 -1
  1190. package/ShadersWGSL/oitFinal.fragment.js +3 -1
  1191. package/ShadersWGSL/oitFinal.fragment.js.map +1 -1
  1192. package/ShadersWGSL/outline.fragment.js +3 -1
  1193. package/ShadersWGSL/outline.fragment.js.map +1 -1
  1194. package/ShadersWGSL/outline.vertex.js +3 -1
  1195. package/ShadersWGSL/outline.vertex.js.map +1 -1
  1196. package/ShadersWGSL/particles.fragment.js +3 -1
  1197. package/ShadersWGSL/particles.fragment.js.map +1 -1
  1198. package/ShadersWGSL/particles.vertex.js +3 -1
  1199. package/ShadersWGSL/particles.vertex.js.map +1 -1
  1200. package/ShadersWGSL/pass.fragment.js +3 -1
  1201. package/ShadersWGSL/pass.fragment.js.map +1 -1
  1202. package/ShadersWGSL/passCube.fragment.js +3 -1
  1203. package/ShadersWGSL/passCube.fragment.js.map +1 -1
  1204. package/ShadersWGSL/pbr.fragment.js +6 -1
  1205. package/ShadersWGSL/pbr.fragment.js.map +1 -1
  1206. package/ShadersWGSL/pbr.vertex.js +3 -1
  1207. package/ShadersWGSL/pbr.vertex.js.map +1 -1
  1208. package/ShadersWGSL/picking.fragment.js +3 -1
  1209. package/ShadersWGSL/picking.fragment.js.map +1 -1
  1210. package/ShadersWGSL/picking.vertex.js +3 -1
  1211. package/ShadersWGSL/picking.vertex.js.map +1 -1
  1212. package/ShadersWGSL/postprocess.vertex.js +3 -1
  1213. package/ShadersWGSL/postprocess.vertex.js.map +1 -1
  1214. package/ShadersWGSL/procedural.vertex.js +3 -1
  1215. package/ShadersWGSL/procedural.vertex.js.map +1 -1
  1216. package/ShadersWGSL/rgbdDecode.fragment.js +3 -1
  1217. package/ShadersWGSL/rgbdDecode.fragment.js.map +1 -1
  1218. package/ShadersWGSL/rgbdEncode.fragment.js +3 -1
  1219. package/ShadersWGSL/rgbdEncode.fragment.js.map +1 -1
  1220. package/ShadersWGSL/rsmFullGlobalIllumination.fragment.js +3 -1
  1221. package/ShadersWGSL/rsmFullGlobalIllumination.fragment.js.map +1 -1
  1222. package/ShadersWGSL/rsmGlobalIllumination.fragment.js +3 -1
  1223. package/ShadersWGSL/rsmGlobalIllumination.fragment.js.map +1 -1
  1224. package/ShadersWGSL/screenSpaceReflection2.fragment.js +4 -2
  1225. package/ShadersWGSL/screenSpaceReflection2.fragment.js.map +1 -1
  1226. package/ShadersWGSL/screenSpaceReflection2Blur.fragment.js +3 -1
  1227. package/ShadersWGSL/screenSpaceReflection2Blur.fragment.js.map +1 -1
  1228. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js +3 -1
  1229. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  1230. package/ShadersWGSL/shadowMap.fragment.js +3 -1
  1231. package/ShadersWGSL/shadowMap.fragment.js.map +1 -1
  1232. package/ShadersWGSL/shadowMap.vertex.js +3 -1
  1233. package/ShadersWGSL/shadowMap.vertex.js.map +1 -1
  1234. package/ShadersWGSL/sharpen.fragment.js +3 -1
  1235. package/ShadersWGSL/sharpen.fragment.js.map +1 -1
  1236. package/ShadersWGSL/sprites.fragment.js +3 -1
  1237. package/ShadersWGSL/sprites.fragment.js.map +1 -1
  1238. package/ShadersWGSL/sprites.vertex.js +3 -1
  1239. package/ShadersWGSL/sprites.vertex.js.map +1 -1
  1240. package/ShadersWGSL/ssao2.fragment.js +3 -1
  1241. package/ShadersWGSL/ssao2.fragment.js.map +1 -1
  1242. package/ShadersWGSL/ssaoCombine.fragment.js +3 -1
  1243. package/ShadersWGSL/ssaoCombine.fragment.js.map +1 -1
  1244. package/ShadersWGSL/subSurfaceScattering.fragment.d.ts +9 -0
  1245. package/ShadersWGSL/subSurfaceScattering.fragment.js +77 -0
  1246. package/ShadersWGSL/subSurfaceScattering.fragment.js.map +1 -0
  1247. package/ShadersWGSL/taa.fragment.js +3 -1
  1248. package/ShadersWGSL/taa.fragment.js.map +1 -1
  1249. package/ShadersWGSL/tonemap.fragment.js +3 -1
  1250. package/ShadersWGSL/tonemap.fragment.js.map +1 -1
  1251. package/ShadersWGSL/vrDistortionCorrection.fragment.js +3 -1
  1252. package/ShadersWGSL/vrDistortionCorrection.fragment.js.map +1 -1
  1253. package/package.json +1 -1
  1254. package/scene.d.ts +9 -2
  1255. package/scene.js +9 -2
  1256. package/scene.js.map +1 -1
  1257. package/FrameGraph/Node/Blocks/Rendering/cullObjectsBlock.js.map +0 -1
  1258. package/FrameGraph/Tasks/Rendering/cullObjectsTask.js.map +0 -1
  1259. /package/FrameGraph/Tasks/{Rendering → Misc}/cullObjectsTask.d.ts +0 -0
  1260. /package/FrameGraph/Tasks/{Rendering → Misc}/cullObjectsTask.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"fxaa.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsDb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaPixelShader\";\nconst shader = `varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform texelSize: vec2f;varying sampleCoordS: vec2f;varying sampleCoordE: vec2f;varying sampleCoordN: vec2f;varying sampleCoordW: vec2f;varying sampleCoordNW: vec2f;varying sampleCoordSE: vec2f;varying sampleCoordNE: vec2f;varying sampleCoordSW: vec2f;const fxaaQualitySubpix: f32=1.0;const fxaaQualityEdgeThreshold: f32=0.166;const fxaaQualityEdgeThresholdMin: f32=0.0833;const kLumaCoefficients: vec3f= vec3f(0.2126,0.7152,0.0722);fn FxaaLuma(rgba: vec4f)->f32 {return dot(rgba.rgb,kLumaCoefficients);} \n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {var posM: vec2f;posM.x=input.vUV.x;posM.y=input.vUV.y;var rgbyM: vec4f=textureSampleLevel(textureSampler,textureSamplerSampler,input.vUV,0.0);var lumaM: f32=FxaaLuma(rgbyM);var lumaS: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordS,0.0));var lumaE: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordE,0.0));var lumaN: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordN,0.0));var lumaW: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordW,0.0));var maxSM: f32=max(lumaS,lumaM);var minSM: f32=min(lumaS,lumaM);var maxESM: f32=max(lumaE,maxSM);var minESM: f32=min(lumaE,minSM);var maxWN: f32=max(lumaN,lumaW);var minWN: f32=min(lumaN,lumaW);var rangeMax: f32=max(maxWN,maxESM);var rangeMin: f32=min(minWN,minESM);var rangeMaxScaled: f32=rangeMax*fxaaQualityEdgeThreshold;var range: f32=rangeMax-rangeMin;var rangeMaxClamped: f32=max(fxaaQualityEdgeThresholdMin,rangeMaxScaled);\n#ifndef MALI\nif(range<rangeMaxClamped) \n{fragmentOutputs.color=rgbyM;return fragmentOutputs;}\n#endif\nvar lumaNW: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordNW,0.0));var lumaSE: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordSE,0.0));var lumaNE: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordNE,0.0));var lumaSW: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordSW,0.0));var lumaNS: f32=lumaN+lumaS;var lumaWE: f32=lumaW+lumaE;var subpixRcpRange: f32=1.0/range;var subpixNSWE: f32=lumaNS+lumaWE;var edgeHorz1: f32=(-2.0*lumaM)+lumaNS;var edgeVert1: f32=(-2.0*lumaM)+lumaWE;var lumaNESE: f32=lumaNE+lumaSE;var lumaNWNE: f32=lumaNW+lumaNE;var edgeHorz2: f32=(-2.0*lumaE)+lumaNESE;var edgeVert2: f32=(-2.0*lumaN)+lumaNWNE;var lumaNWSW: f32=lumaNW+lumaSW;var lumaSWSE: f32=lumaSW+lumaSE;var edgeHorz4: f32=(abs(edgeHorz1)*2.0)+abs(edgeHorz2);var edgeVert4: f32=(abs(edgeVert1)*2.0)+abs(edgeVert2);var edgeHorz3: f32=(-2.0*lumaW)+lumaNWSW;var edgeVert3: f32=(-2.0*lumaS)+lumaSWSE;var edgeHorz: f32=abs(edgeHorz3)+edgeHorz4;var edgeVert: f32=abs(edgeVert3)+edgeVert4;var subpixNWSWNESE: f32=lumaNWSW+lumaNESE;var lengthSign: f32=uniforms.texelSize.x;var horzSpan: bool=edgeHorz>=edgeVert;var subpixA: f32=subpixNSWE*2.0+subpixNWSWNESE;if (!horzSpan)\n{lumaN=lumaW;}\nif (!horzSpan) \n{lumaS=lumaE;}\nif (horzSpan) \n{lengthSign=uniforms.texelSize.y;}\nvar subpixB: f32=(subpixA*(1.0/12.0))-lumaM;var gradientN: f32=lumaN-lumaM;var gradientS: f32=lumaS-lumaM;var lumaNN: f32=lumaN+lumaM;var lumaSS: f32=lumaS+lumaM;var pairN: bool=abs(gradientN)>=abs(gradientS);var gradient: f32=max(abs(gradientN),abs(gradientS));if (pairN)\n{lengthSign=-lengthSign;}\nvar subpixC: f32=clamp(abs(subpixB)*subpixRcpRange,0.0,1.0);var posB: vec2f;posB.x=posM.x;posB.y=posM.y;var offNP: vec2f;offNP.x=select(uniforms.texelSize.x,0.0,(!horzSpan));offNP.y=select(uniforms.texelSize.y,0.0,(horzSpan));if (!horzSpan) \n{posB.x+=lengthSign*0.5;}\nif (horzSpan)\n{posB.y+=lengthSign*0.5;}\nvar posN: vec2f;posN.x=posB.x-offNP.x*1.5;posN.y=posB.y-offNP.y*1.5;var posP: vec2f;posP.x=posB.x+offNP.x*1.5;posP.y=posB.y+offNP.y*1.5;var subpixD: f32=((-2.0)*subpixC)+3.0;var lumaEndN: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,posN,0.0));var subpixE: f32=subpixC*subpixC;var lumaEndP: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,posP,0.0));if (!pairN) \n{lumaNN=lumaSS;}\nvar gradientScaled: f32=gradient*1.0/4.0;var lumaMM: f32=lumaM-lumaNN*0.5;var subpixF: f32=subpixD*subpixE;var lumaMLTZero: bool=lumaMM<0.0;lumaEndN-=lumaNN*0.5;lumaEndP-=lumaNN*0.5;var doneN: bool=abs(lumaEndN)>=gradientScaled;var doneP: bool=abs(lumaEndP)>=gradientScaled;if (!doneN) \n{posN.x-=offNP.x*3.0;}\nif (!doneN) \n{posN.y-=offNP.y*3.0;}\nvar doneNP: bool=(!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(textureSampleLevel(textureSampler,textureSamplerSampler,posN.xy,0.0));}\nif (!doneP) {lumaEndP=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,posP.xy,0.0));}\nif (!doneN) {lumaEndN=lumaEndN-lumaNN*0.5;}\nif (!doneP) {lumaEndP=lumaEndP-lumaNN*0.5;}\ndoneN=abs(lumaEndN)>=gradientScaled;doneP=abs(lumaEndP)>=gradientScaled;if (!doneN) {posN.x-=offNP.x*12.0;}\nif (!doneN) {posN.y-=offNP.y*12.0;}\ndoneNP=(!doneN) || (!doneP);if (!doneP) {posP.x+=offNP.x*12.0;}\nif (!doneP) {posP.y+=offNP.y*12.0;}}\nvar dstN: f32=posM.x-posN.x;var dstP: f32=posP.x-posM.x;if (!horzSpan)\n{dstN=posM.y-posN.y;}\nif (!horzSpan) \n{dstP=posP.y-posM.y;}\nvar goodSpanN: bool=(lumaEndN<0.0) != lumaMLTZero;var spanLength: f32=(dstP+dstN);var goodSpanP: bool=(lumaEndP<0.0) != lumaMLTZero;var spanLengthRcp: f32=1.0/spanLength;var directionN: bool=dstN<dstP;var dst: f32=min(dstN,dstP);var goodSpan: bool=select(goodSpanP,goodSpanN,directionN);var subpixG: f32=subpixF*subpixF;var pixelOffset: f32=(dst*(-spanLengthRcp))+0.5;var subpixH: f32=subpixG*fxaaQualitySubpix;var pixelOffsetGood: f32=select(0.0,pixelOffset,goodSpan);var pixelOffsetSubpix: f32=max(pixelOffsetGood,subpixH);if (!horzSpan)\n{posM.x+=pixelOffsetSubpix*lengthSign;}\nif (horzSpan)\n{posM.y+=pixelOffsetSubpix*lengthSign;}\n#ifdef MALI\nif(range<rangeMaxClamped) \n{fragmentOutputs.color=rgbyM;}\nelse\n{fragmentOutputs.color=textureSampleLevel(textureSampler,textureSamplerSampler,posM,0.0);}\n#else\nfragmentOutputs.color=textureSampleLevel(textureSampler,textureSamplerSampler,posM,0.0);\n#endif\n}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const fxaaPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"fxaa.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsDb,CAAC;AACH,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaPixelShader\";\nconst shader = `varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform texelSize: vec2f;varying sampleCoordS: vec2f;varying sampleCoordE: vec2f;varying sampleCoordN: vec2f;varying sampleCoordW: vec2f;varying sampleCoordNW: vec2f;varying sampleCoordSE: vec2f;varying sampleCoordNE: vec2f;varying sampleCoordSW: vec2f;const fxaaQualitySubpix: f32=1.0;const fxaaQualityEdgeThreshold: f32=0.166;const fxaaQualityEdgeThresholdMin: f32=0.0833;const kLumaCoefficients: vec3f= vec3f(0.2126,0.7152,0.0722);fn FxaaLuma(rgba: vec4f)->f32 {return dot(rgba.rgb,kLumaCoefficients);} \n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {var posM: vec2f;posM.x=input.vUV.x;posM.y=input.vUV.y;var rgbyM: vec4f=textureSampleLevel(textureSampler,textureSamplerSampler,input.vUV,0.0);var lumaM: f32=FxaaLuma(rgbyM);var lumaS: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordS,0.0));var lumaE: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordE,0.0));var lumaN: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordN,0.0));var lumaW: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordW,0.0));var maxSM: f32=max(lumaS,lumaM);var minSM: f32=min(lumaS,lumaM);var maxESM: f32=max(lumaE,maxSM);var minESM: f32=min(lumaE,minSM);var maxWN: f32=max(lumaN,lumaW);var minWN: f32=min(lumaN,lumaW);var rangeMax: f32=max(maxWN,maxESM);var rangeMin: f32=min(minWN,minESM);var rangeMaxScaled: f32=rangeMax*fxaaQualityEdgeThreshold;var range: f32=rangeMax-rangeMin;var rangeMaxClamped: f32=max(fxaaQualityEdgeThresholdMin,rangeMaxScaled);\n#ifndef MALI\nif(range<rangeMaxClamped) \n{fragmentOutputs.color=rgbyM;return fragmentOutputs;}\n#endif\nvar lumaNW: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordNW,0.0));var lumaSE: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordSE,0.0));var lumaNE: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordNE,0.0));var lumaSW: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,input.sampleCoordSW,0.0));var lumaNS: f32=lumaN+lumaS;var lumaWE: f32=lumaW+lumaE;var subpixRcpRange: f32=1.0/range;var subpixNSWE: f32=lumaNS+lumaWE;var edgeHorz1: f32=(-2.0*lumaM)+lumaNS;var edgeVert1: f32=(-2.0*lumaM)+lumaWE;var lumaNESE: f32=lumaNE+lumaSE;var lumaNWNE: f32=lumaNW+lumaNE;var edgeHorz2: f32=(-2.0*lumaE)+lumaNESE;var edgeVert2: f32=(-2.0*lumaN)+lumaNWNE;var lumaNWSW: f32=lumaNW+lumaSW;var lumaSWSE: f32=lumaSW+lumaSE;var edgeHorz4: f32=(abs(edgeHorz1)*2.0)+abs(edgeHorz2);var edgeVert4: f32=(abs(edgeVert1)*2.0)+abs(edgeVert2);var edgeHorz3: f32=(-2.0*lumaW)+lumaNWSW;var edgeVert3: f32=(-2.0*lumaS)+lumaSWSE;var edgeHorz: f32=abs(edgeHorz3)+edgeHorz4;var edgeVert: f32=abs(edgeVert3)+edgeVert4;var subpixNWSWNESE: f32=lumaNWSW+lumaNESE;var lengthSign: f32=uniforms.texelSize.x;var horzSpan: bool=edgeHorz>=edgeVert;var subpixA: f32=subpixNSWE*2.0+subpixNWSWNESE;if (!horzSpan)\n{lumaN=lumaW;}\nif (!horzSpan) \n{lumaS=lumaE;}\nif (horzSpan) \n{lengthSign=uniforms.texelSize.y;}\nvar subpixB: f32=(subpixA*(1.0/12.0))-lumaM;var gradientN: f32=lumaN-lumaM;var gradientS: f32=lumaS-lumaM;var lumaNN: f32=lumaN+lumaM;var lumaSS: f32=lumaS+lumaM;var pairN: bool=abs(gradientN)>=abs(gradientS);var gradient: f32=max(abs(gradientN),abs(gradientS));if (pairN)\n{lengthSign=-lengthSign;}\nvar subpixC: f32=clamp(abs(subpixB)*subpixRcpRange,0.0,1.0);var posB: vec2f;posB.x=posM.x;posB.y=posM.y;var offNP: vec2f;offNP.x=select(uniforms.texelSize.x,0.0,(!horzSpan));offNP.y=select(uniforms.texelSize.y,0.0,(horzSpan));if (!horzSpan) \n{posB.x+=lengthSign*0.5;}\nif (horzSpan)\n{posB.y+=lengthSign*0.5;}\nvar posN: vec2f;posN.x=posB.x-offNP.x*1.5;posN.y=posB.y-offNP.y*1.5;var posP: vec2f;posP.x=posB.x+offNP.x*1.5;posP.y=posB.y+offNP.y*1.5;var subpixD: f32=((-2.0)*subpixC)+3.0;var lumaEndN: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,posN,0.0));var subpixE: f32=subpixC*subpixC;var lumaEndP: f32=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,posP,0.0));if (!pairN) \n{lumaNN=lumaSS;}\nvar gradientScaled: f32=gradient*1.0/4.0;var lumaMM: f32=lumaM-lumaNN*0.5;var subpixF: f32=subpixD*subpixE;var lumaMLTZero: bool=lumaMM<0.0;lumaEndN-=lumaNN*0.5;lumaEndP-=lumaNN*0.5;var doneN: bool=abs(lumaEndN)>=gradientScaled;var doneP: bool=abs(lumaEndP)>=gradientScaled;if (!doneN) \n{posN.x-=offNP.x*3.0;}\nif (!doneN) \n{posN.y-=offNP.y*3.0;}\nvar doneNP: bool=(!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(textureSampleLevel(textureSampler,textureSamplerSampler,posN.xy,0.0));}\nif (!doneP) {lumaEndP=FxaaLuma(textureSampleLevel(textureSampler,textureSamplerSampler,posP.xy,0.0));}\nif (!doneN) {lumaEndN=lumaEndN-lumaNN*0.5;}\nif (!doneP) {lumaEndP=lumaEndP-lumaNN*0.5;}\ndoneN=abs(lumaEndN)>=gradientScaled;doneP=abs(lumaEndP)>=gradientScaled;if (!doneN) {posN.x-=offNP.x*12.0;}\nif (!doneN) {posN.y-=offNP.y*12.0;}\ndoneNP=(!doneN) || (!doneP);if (!doneP) {posP.x+=offNP.x*12.0;}\nif (!doneP) {posP.y+=offNP.y*12.0;}}\nvar dstN: f32=posM.x-posN.x;var dstP: f32=posP.x-posM.x;if (!horzSpan)\n{dstN=posM.y-posN.y;}\nif (!horzSpan) \n{dstP=posP.y-posM.y;}\nvar goodSpanN: bool=(lumaEndN<0.0) != lumaMLTZero;var spanLength: f32=(dstP+dstN);var goodSpanP: bool=(lumaEndP<0.0) != lumaMLTZero;var spanLengthRcp: f32=1.0/spanLength;var directionN: bool=dstN<dstP;var dst: f32=min(dstN,dstP);var goodSpan: bool=select(goodSpanP,goodSpanN,directionN);var subpixG: f32=subpixF*subpixF;var pixelOffset: f32=(dst*(-spanLengthRcp))+0.5;var subpixH: f32=subpixG*fxaaQualitySubpix;var pixelOffsetGood: f32=select(0.0,pixelOffset,goodSpan);var pixelOffsetSubpix: f32=max(pixelOffsetGood,subpixH);if (!horzSpan)\n{posM.x+=pixelOffsetSubpix*lengthSign;}\nif (horzSpan)\n{posM.y+=pixelOffsetSubpix*lengthSign;}\n#ifdef MALI\nif(range<rangeMaxClamped) \n{fragmentOutputs.color=rgbyM;}\nelse\n{fragmentOutputs.color=textureSampleLevel(textureSampler,textureSamplerSampler,posM,0.0);}\n#else\nfragmentOutputs.color=textureSampleLevel(textureSampler,textureSamplerSampler,posM,0.0);\n#endif\n}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const fxaaPixelShaderWGSL = { name, shader };\n"]}
@@ -10,7 +10,9 @@ vertexOutputs.vUV=(input.position*madd+madd);vertexOutputs.sampleCoordS=vertexOu
10
10
  #define CUSTOM_VERTEX_MAIN_END
11
11
  }`;
12
12
  // Sideeffect
13
- ShaderStore.ShadersStoreWGSL[name] = shader;
13
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
14
+ ShaderStore.ShadersStoreWGSL[name] = shader;
15
+ }
14
16
  /** @internal */
15
17
  export const fxaaVertexShaderWGSL = { name, shader };
16
18
  //# sourceMappingURL=fxaa.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fxaa.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/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;;;;;;;EAOb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaVertexShader\";\nconst shader = `attribute position: vec2f;uniform texelSize: vec2f;varying vUV: vec2f;varying sampleCoordS: vec2f;varying sampleCoordE: vec2f;varying sampleCoordN: vec2f;varying sampleCoordW: vec2f;varying sampleCoordNW: vec2f;varying sampleCoordSE: vec2f;varying sampleCoordNE: vec2f;varying sampleCoordSW: vec2f;const madd: vec2f= vec2f(0.5,0.5);\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvertexOutputs.vUV=(input.position*madd+madd);vertexOutputs.sampleCoordS=vertexOutputs.vUV+ vec2f( 0.0,1.0)*uniforms.texelSize;vertexOutputs.sampleCoordE=vertexOutputs.vUV+ vec2f( 1.0,0.0)*uniforms.texelSize;vertexOutputs.sampleCoordN=vertexOutputs.vUV+ vec2f( 0.0,-1.0)*uniforms.texelSize;vertexOutputs.sampleCoordW=vertexOutputs.vUV+ vec2f(-1.0,0.0)*uniforms.texelSize;vertexOutputs.sampleCoordNW=vertexOutputs.vUV+ vec2f(-1.0,-1.0)*uniforms.texelSize;vertexOutputs.sampleCoordSE=vertexOutputs.vUV+ vec2f( 1.0,1.0)*uniforms.texelSize;vertexOutputs.sampleCoordNE=vertexOutputs.vUV+ vec2f( 1.0,-1.0)*uniforms.texelSize;vertexOutputs.sampleCoordSW=vertexOutputs.vUV+ vec2f(-1.0,1.0)*uniforms.texelSize;vertexOutputs.position=vec4f(input.position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const fxaaVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"fxaa.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/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;;;;;;;EAOb,CAAC;AACH,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"fxaaVertexShader\";\nconst shader = `attribute position: vec2f;uniform texelSize: vec2f;varying vUV: vec2f;varying sampleCoordS: vec2f;varying sampleCoordE: vec2f;varying sampleCoordN: vec2f;varying sampleCoordW: vec2f;varying sampleCoordNW: vec2f;varying sampleCoordSE: vec2f;varying sampleCoordNE: vec2f;varying sampleCoordSW: vec2f;const madd: vec2f= vec2f(0.5,0.5);\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvertexOutputs.vUV=(input.position*madd+madd);vertexOutputs.sampleCoordS=vertexOutputs.vUV+ vec2f( 0.0,1.0)*uniforms.texelSize;vertexOutputs.sampleCoordE=vertexOutputs.vUV+ vec2f( 1.0,0.0)*uniforms.texelSize;vertexOutputs.sampleCoordN=vertexOutputs.vUV+ vec2f( 0.0,-1.0)*uniforms.texelSize;vertexOutputs.sampleCoordW=vertexOutputs.vUV+ vec2f(-1.0,0.0)*uniforms.texelSize;vertexOutputs.sampleCoordNW=vertexOutputs.vUV+ vec2f(-1.0,-1.0)*uniforms.texelSize;vertexOutputs.sampleCoordSE=vertexOutputs.vUV+ vec2f( 1.0,1.0)*uniforms.texelSize;vertexOutputs.sampleCoordNE=vertexOutputs.vUV+ vec2f( 1.0,-1.0)*uniforms.texelSize;vertexOutputs.sampleCoordSW=vertexOutputs.vUV+ vec2f(-1.0,1.0)*uniforms.texelSize;vertexOutputs.position=vec4f(input.position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const fxaaVertexShaderWGSL = { name, shader };\n"]}
@@ -17,7 +17,9 @@ fn main(input: FragmentInputs)->FragmentOutputs {
17
17
  fragmentOutputs.color=gaussianColor(input.vColor,input.vPosition);}
18
18
  `;
19
19
  // Sideeffect
20
- ShaderStore.ShadersStoreWGSL[name] = shader;
20
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
21
+ ShaderStore.ShadersStoreWGSL[name] = shader;
22
+ }
21
23
  /** @internal */
22
24
  export const gaussianSplattingPixelShaderWGSL = { name, shader };
23
25
  //# sourceMappingURL=gaussianSplatting.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gaussianSplatting.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/gaussianSplatting.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yCAAyC,CAAC;AACjD,OAAO,uDAAuD,CAAC;AAC/D,OAAO,oCAAoC,CAAC;AAE5C,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;CASd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/logDepthDeclaration\";\nimport \"./ShadersInclude/fogFragmentDeclaration\";\nimport \"./ShadersInclude/gaussianSplattingFragmentDeclaration\";\nimport \"./ShadersInclude/clipPlaneFragment\";\n\nconst name = \"gaussianSplattingPixelShader\";\nconst shader = `#include<clipPlaneFragmentDeclaration>\n#include<logDepthDeclaration>\n#include<fogFragmentDeclaration>\nvarying vColor: vec4f;varying vPosition: vec2f;\n#include<gaussianSplattingFragmentDeclaration>\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#include<clipPlaneFragment>\nfragmentOutputs.color=gaussianColor(input.vColor,input.vPosition);}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const gaussianSplattingPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"gaussianSplatting.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/gaussianSplatting.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,sCAAsC,CAAC;AAC9C,OAAO,yCAAyC,CAAC;AACjD,OAAO,uDAAuD,CAAC;AAC/D,OAAO,oCAAoC,CAAC;AAE5C,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;CASd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/logDepthDeclaration\";\nimport \"./ShadersInclude/fogFragmentDeclaration\";\nimport \"./ShadersInclude/gaussianSplattingFragmentDeclaration\";\nimport \"./ShadersInclude/clipPlaneFragment\";\n\nconst name = \"gaussianSplattingPixelShader\";\nconst shader = `#include<clipPlaneFragmentDeclaration>\n#include<logDepthDeclaration>\n#include<fogFragmentDeclaration>\nvarying vColor: vec4f;varying vPosition: vec2f;\n#include<gaussianSplattingFragmentDeclaration>\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#include<clipPlaneFragment>\nfragmentOutputs.color=gaussianColor(input.vColor,input.vPosition);}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const gaussianSplattingPixelShaderWGSL = { name, shader };\n"]}
@@ -41,7 +41,9 @@ vertexOutputs.position=gaussianSplatting(input.position,worldPos.xyz,vec2f(1.0,1
41
41
  }
42
42
  `;
43
43
  // Sideeffect
44
- ShaderStore.ShadersStoreWGSL[name] = shader;
44
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
45
+ ShaderStore.ShadersStoreWGSL[name] = shader;
46
+ }
45
47
  /** @internal */
46
48
  export const gaussianSplattingVertexShaderWGSL = { name, shader };
47
49
  //# sourceMappingURL=gaussianSplatting.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gaussianSplatting.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/gaussianSplatting.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,sCAAsC,CAAC;AAC9C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,6CAA6C,CAAC;AACrD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,4BAA4B,CAAC;AACpC,OAAO,iCAAiC,CAAC;AAEzC,MAAM,IAAI,GAAG,+BAA+B,CAAC;AAC7C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Bd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/sceneUboDeclaration\";\nimport \"./ShadersInclude/meshUboDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/fogVertexDeclaration\";\nimport \"./ShadersInclude/logDepthDeclaration\";\nimport \"./ShadersInclude/gaussianSplatting\";\nimport \"./ShadersInclude/clipPlaneVertex\";\nimport \"./ShadersInclude/fogVertex\";\nimport \"./ShadersInclude/logDepthVertex\";\n\nconst name = \"gaussianSplattingVertexShader\";\nconst shader = `#include<sceneUboDeclaration>\n#include<meshUboDeclaration>\n#include<clipPlaneVertexDeclaration>\n#include<fogVertexDeclaration>\n#include<logDepthDeclaration>\nattribute splatIndex: f32;attribute position: vec2f;uniform invViewport: vec2f;uniform dataTextureSize: vec2f;uniform focal: vec2f;var covariancesATexture: texture_2d<f32>;var covariancesBTexture: texture_2d<f32>;var centersTexture: texture_2d<f32>;var colorsTexture: texture_2d<f32>;\n#if SH_DEGREE>0\nvar shTexture0: texture_2d<u32>;\n#endif\n#if SH_DEGREE>1\nvar shTexture1: texture_2d<u32>;\n#endif\n#if SH_DEGREE>2\nvar shTexture2: texture_2d<u32>;\n#endif\nvarying vColor: vec4f;varying vPosition: vec2f;\n#include<gaussianSplatting>\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {var splat: Splat=readSplat(input.splatIndex,uniforms.dataTextureSize);var covA: vec3f=splat.covA.xyz;var covB: vec3f=vec3f(splat.covA.w,splat.covB.xy);let worldPos: vec4f=mesh.world*vec4f(splat.center.xyz,1.0);vertexOutputs.vPosition=input.position;\n#if SH_DEGREE>0\nlet dir: vec3f=normalize(worldPos.xyz-scene.vEyePosition.xyz);vertexOutputs.vColor=vec4f(computeSH(splat,splat.color.xyz,dir),1.0);\n#else\nvertexOutputs.vColor=splat.color;\n#endif\nvertexOutputs.position=gaussianSplatting(input.position,worldPos.xyz,vec2f(1.0,1.0),covA,covB,mesh.world,scene.view,scene.projection,uniforms.focal,uniforms.invViewport);\n#include<clipPlaneVertex>\n#include<fogVertex>\n#include<logDepthVertex>\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const gaussianSplattingVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"gaussianSplatting.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/gaussianSplatting.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,sCAAsC,CAAC;AAC9C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,6CAA6C,CAAC;AACrD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,4BAA4B,CAAC;AACpC,OAAO,iCAAiC,CAAC;AAEzC,MAAM,IAAI,GAAG,+BAA+B,CAAC;AAC7C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Bd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/sceneUboDeclaration\";\nimport \"./ShadersInclude/meshUboDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/fogVertexDeclaration\";\nimport \"./ShadersInclude/logDepthDeclaration\";\nimport \"./ShadersInclude/gaussianSplatting\";\nimport \"./ShadersInclude/clipPlaneVertex\";\nimport \"./ShadersInclude/fogVertex\";\nimport \"./ShadersInclude/logDepthVertex\";\n\nconst name = \"gaussianSplattingVertexShader\";\nconst shader = `#include<sceneUboDeclaration>\n#include<meshUboDeclaration>\n#include<clipPlaneVertexDeclaration>\n#include<fogVertexDeclaration>\n#include<logDepthDeclaration>\nattribute splatIndex: f32;attribute position: vec2f;uniform invViewport: vec2f;uniform dataTextureSize: vec2f;uniform focal: vec2f;var covariancesATexture: texture_2d<f32>;var covariancesBTexture: texture_2d<f32>;var centersTexture: texture_2d<f32>;var colorsTexture: texture_2d<f32>;\n#if SH_DEGREE>0\nvar shTexture0: texture_2d<u32>;\n#endif\n#if SH_DEGREE>1\nvar shTexture1: texture_2d<u32>;\n#endif\n#if SH_DEGREE>2\nvar shTexture2: texture_2d<u32>;\n#endif\nvarying vColor: vec4f;varying vPosition: vec2f;\n#include<gaussianSplatting>\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {var splat: Splat=readSplat(input.splatIndex,uniforms.dataTextureSize);var covA: vec3f=splat.covA.xyz;var covB: vec3f=vec3f(splat.covA.w,splat.covB.xy);let worldPos: vec4f=mesh.world*vec4f(splat.center.xyz,1.0);vertexOutputs.vPosition=input.position;\n#if SH_DEGREE>0\nlet dir: vec3f=normalize(worldPos.xyz-scene.vEyePosition.xyz);vertexOutputs.vColor=vec4f(computeSH(splat,splat.color.xyz,dir),1.0);\n#else\nvertexOutputs.vColor=splat.color;\n#endif\nvertexOutputs.position=gaussianSplatting(input.position,worldPos.xyz,vec2f(1.0,1.0),covA,covB,mesh.world,scene.view,scene.projection,uniforms.focal,uniforms.invViewport);\n#include<clipPlaneVertex>\n#include<fogVertex>\n#include<logDepthVertex>\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const gaussianSplattingVertexShaderWGSL = { name, shader };\n"]}
@@ -163,7 +163,9 @@ fragmentOutputs.fragData7=fragData[7];
163
163
  }
164
164
  `;
165
165
  // Sideeffect
166
- ShaderStore.ShadersStoreWGSL[name] = shader;
166
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
167
+ ShaderStore.ShadersStoreWGSL[name] = shader;
168
+ }
167
169
  /** @internal */
168
170
  export const geometryPixelShaderWGSL = { name, shader };
169
171
  //# sourceMappingURL=geometry.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/geometry.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Jd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/bumpFragmentMainFunctions\";\nimport \"./ShadersInclude/bumpFragmentFunctions\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragment\";\nimport \"./ShadersInclude/bumpFragment\";\n\nconst name = \"geometryPixelShader\";\nconst shader = `#ifdef BUMP\nvarying vWorldView0: vec4f;varying vWorldView1: vec4f;varying vWorldView2: vec4f;varying vWorldView3: vec4f;varying vNormalW: vec3f;\n#else\nvarying vNormalV: vec3f;\n#endif\nvarying vViewPos: vec4f;\n#if defined(POSITION) || defined(BUMP)\nvarying vPositionW: vec3f;\n#endif\n#if defined(VELOCITY) || defined(VELOCITY_LINEAR)\nvarying vCurrentPosition: vec4f;varying vPreviousPosition: vec4f;\n#endif\n#ifdef NEED_UV\nvarying vUV: vec2f;\n#endif\n#ifdef BUMP\nuniform vBumpInfos: vec3f;uniform vTangentSpaceParams: vec2f;\n#endif\n#if defined(REFLECTIVITY)\n#if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nvar reflectivitySamplerSampler: sampler;var reflectivitySampler: texture_2d<f32>;varying vReflectivityUV: vec2f;\n#endif\n#ifdef ALBEDOTEXTURE\nvarying vAlbedoUV: vec2f;var albedoSamplerSampler: sampler;var albedoSampler: texture_2d<f32>;\n#endif\n#ifdef REFLECTIVITYCOLOR\nuniform reflectivityColor: vec3f;\n#endif\n#ifdef ALBEDOCOLOR\nuniform albedoColor: vec3f;\n#endif\n#ifdef METALLIC\nuniform metallic: f32;\n#endif\n#if defined(ROUGHNESS) || defined(GLOSSINESS)\nuniform glossiness: f32;\n#endif\n#endif\n#if defined(ALPHATEST) && defined(NEED_UV)\nvar diffuseSamplerSampler: sampler;var diffuseSampler: texture_2d<f32>;\n#endif\n#include<clipPlaneFragmentDeclaration>\n#include<bumpFragmentMainFunctions>\n#include<bumpFragmentFunctions>\n#include<helperFunctions>\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#include<clipPlaneFragment>\n#ifdef ALPHATEST\nif (textureSample(diffuseSampler,diffuseSamplerSampler,input.vUV).a<0.4) {discard;}\n#endif\nvar normalOutput: vec3f;\n#ifdef BUMP\nvar normalW: vec3f=normalize(input.vNormalW);\n#include<bumpFragment>\n#ifdef NORMAL_WORLDSPACE\nnormalOutput=normalW;\n#else\nnormalOutput=normalize( (mat4x4f(input.vWorldView0,input.vWorldView1,input.vWorldView2,input.vWorldView3)* vec4f(normalW,0.0)).xyz);\n#endif\n#else\nnormalOutput=normalize(input.vNormalV);\n#endif\n#ifdef ENCODE_NORMAL\nnormalOutput=normalOutput*0.5+0.5;\n#endif\nvar fragData: array<vec4<f32>,SCENE_MRT_COUNT>;\n#ifdef DEPTH\nfragData[DEPTH_INDEX]=vec4f(input.vViewPos.z/input.vViewPos.w,0.0,0.0,1.0);\n#endif\n#ifdef NORMAL\nfragData[NORMAL_INDEX]=vec4f(normalOutput,1.0);\n#endif\n#ifdef SCREENSPACE_DEPTH\nfragData[SCREENSPACE_DEPTH_INDEX]=vec4f(fragmentInputs.position.z,0.0,0.0,1.0);\n#endif\n#ifdef POSITION\nfragData[POSITION_INDEX]= vec4f(input.vPositionW,1.0);\n#endif\n#ifdef VELOCITY\nvar a: vec2f=(input.vCurrentPosition.xy/input.vCurrentPosition.w)*0.5+0.5;var b: vec2f=(input.vPreviousPosition.xy/input.vPreviousPosition.w)*0.5+0.5;var velocity: vec2f=abs(a-b);velocity= vec2f(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;fragData[VELOCITY_INDEX]= vec4f(velocity,0.0,1.0);\n#endif\n#ifdef VELOCITY_LINEAR\nvar velocity : vec2f=vec2f(0.5)*((input.vPreviousPosition.xy /\ninput.vPreviousPosition.w) -\n(input.vCurrentPosition.xy /\ninput.vCurrentPosition.w));fragData[VELOCITY_LINEAR_INDEX]=vec4f(velocity,0.0,1.0);\n#endif\n#ifdef REFLECTIVITY\nvar reflectivity: vec4f= vec4f(0.0,0.0,0.0,1.0);\n#ifdef METALLICWORKFLOW\nvar metal: f32=1.0;var roughness: f32=1.0;\n#ifdef ORMTEXTURE\nmetal*=textureSample(reflectivitySampler,reflectivitySamplerSampler,input.vReflectivityUV).b;roughness*=textureSample(reflectivitySampler,reflectivitySamplerSampler,input.vReflectivityUV).g;\n#endif\n#ifdef METALLIC\nmetal*=uniforms.metallic;\n#endif\n#ifdef ROUGHNESS\nroughness*=(1.0-uniforms.glossiness); \n#endif\nreflectivity=vec4f(reflectivity.rgb,reflectivity.a-roughness);var color: vec3f= vec3f(1.0);\n#ifdef ALBEDOTEXTURE\ncolor=textureSample(albedoSampler,albedoSamplerSampler,input.vAlbedoUV).rgb;\n#ifdef GAMMAALBEDO\ncolor=toLinearSpaceVec4(color);\n#endif\n#endif\n#ifdef ALBEDOCOLOR\ncolor*=uniforms.albedoColor.xyz;\n#endif\nreflectivity=vec4f(mix( vec3f(0.04),color,metal),reflectivity.a);\n#else\n#if defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nreflectivity=textureSample(reflectivitySampler,reflectivitySamplerSampler,input.vReflectivityUV);\n#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity=vec4f(toLinearSpaceVec3(reflectivity.rgb),reflectivity.a);\n#endif\n#else \n#ifdef REFLECTIVITYCOLOR\nreflectivity=vec4f(toLinearSpaceVec3(uniforms.reflectivityColor.xyz),1.0);\n#endif\n#endif\n#ifdef GLOSSINESSS\nreflectivity=vec4f(reflectivity.rgb,reflectivity.a*glossiness); \n#endif\n#endif\nfragData[REFLECTIVITY_INDEX]=reflectivity;\n#endif\n#if SCENE_MRT_COUNT>0\nfragmentOutputs.fragData0=fragData[0];\n#endif\n#if SCENE_MRT_COUNT>1\nfragmentOutputs.fragData1=fragData[1];\n#endif\n#if SCENE_MRT_COUNT>2\nfragmentOutputs.fragData2=fragData[2];\n#endif\n#if SCENE_MRT_COUNT>3\nfragmentOutputs.fragData3=fragData[3];\n#endif\n#if SCENE_MRT_COUNT>4\nfragmentOutputs.fragData4=fragData[4];\n#endif\n#if SCENE_MRT_COUNT>5\nfragmentOutputs.fragData5=fragData[5];\n#endif\n#if SCENE_MRT_COUNT>6\nfragmentOutputs.fragData6=fragData[6];\n#endif\n#if SCENE_MRT_COUNT>7\nfragmentOutputs.fragData7=fragData[7];\n#endif\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const geometryPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"geometry.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/geometry.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Jd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/bumpFragmentMainFunctions\";\nimport \"./ShadersInclude/bumpFragmentFunctions\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragment\";\nimport \"./ShadersInclude/bumpFragment\";\n\nconst name = \"geometryPixelShader\";\nconst shader = `#ifdef BUMP\nvarying vWorldView0: vec4f;varying vWorldView1: vec4f;varying vWorldView2: vec4f;varying vWorldView3: vec4f;varying vNormalW: vec3f;\n#else\nvarying vNormalV: vec3f;\n#endif\nvarying vViewPos: vec4f;\n#if defined(POSITION) || defined(BUMP)\nvarying vPositionW: vec3f;\n#endif\n#if defined(VELOCITY) || defined(VELOCITY_LINEAR)\nvarying vCurrentPosition: vec4f;varying vPreviousPosition: vec4f;\n#endif\n#ifdef NEED_UV\nvarying vUV: vec2f;\n#endif\n#ifdef BUMP\nuniform vBumpInfos: vec3f;uniform vTangentSpaceParams: vec2f;\n#endif\n#if defined(REFLECTIVITY)\n#if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nvar reflectivitySamplerSampler: sampler;var reflectivitySampler: texture_2d<f32>;varying vReflectivityUV: vec2f;\n#endif\n#ifdef ALBEDOTEXTURE\nvarying vAlbedoUV: vec2f;var albedoSamplerSampler: sampler;var albedoSampler: texture_2d<f32>;\n#endif\n#ifdef REFLECTIVITYCOLOR\nuniform reflectivityColor: vec3f;\n#endif\n#ifdef ALBEDOCOLOR\nuniform albedoColor: vec3f;\n#endif\n#ifdef METALLIC\nuniform metallic: f32;\n#endif\n#if defined(ROUGHNESS) || defined(GLOSSINESS)\nuniform glossiness: f32;\n#endif\n#endif\n#if defined(ALPHATEST) && defined(NEED_UV)\nvar diffuseSamplerSampler: sampler;var diffuseSampler: texture_2d<f32>;\n#endif\n#include<clipPlaneFragmentDeclaration>\n#include<bumpFragmentMainFunctions>\n#include<bumpFragmentFunctions>\n#include<helperFunctions>\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#include<clipPlaneFragment>\n#ifdef ALPHATEST\nif (textureSample(diffuseSampler,diffuseSamplerSampler,input.vUV).a<0.4) {discard;}\n#endif\nvar normalOutput: vec3f;\n#ifdef BUMP\nvar normalW: vec3f=normalize(input.vNormalW);\n#include<bumpFragment>\n#ifdef NORMAL_WORLDSPACE\nnormalOutput=normalW;\n#else\nnormalOutput=normalize( (mat4x4f(input.vWorldView0,input.vWorldView1,input.vWorldView2,input.vWorldView3)* vec4f(normalW,0.0)).xyz);\n#endif\n#else\nnormalOutput=normalize(input.vNormalV);\n#endif\n#ifdef ENCODE_NORMAL\nnormalOutput=normalOutput*0.5+0.5;\n#endif\nvar fragData: array<vec4<f32>,SCENE_MRT_COUNT>;\n#ifdef DEPTH\nfragData[DEPTH_INDEX]=vec4f(input.vViewPos.z/input.vViewPos.w,0.0,0.0,1.0);\n#endif\n#ifdef NORMAL\nfragData[NORMAL_INDEX]=vec4f(normalOutput,1.0);\n#endif\n#ifdef SCREENSPACE_DEPTH\nfragData[SCREENSPACE_DEPTH_INDEX]=vec4f(fragmentInputs.position.z,0.0,0.0,1.0);\n#endif\n#ifdef POSITION\nfragData[POSITION_INDEX]= vec4f(input.vPositionW,1.0);\n#endif\n#ifdef VELOCITY\nvar a: vec2f=(input.vCurrentPosition.xy/input.vCurrentPosition.w)*0.5+0.5;var b: vec2f=(input.vPreviousPosition.xy/input.vPreviousPosition.w)*0.5+0.5;var velocity: vec2f=abs(a-b);velocity= vec2f(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;fragData[VELOCITY_INDEX]= vec4f(velocity,0.0,1.0);\n#endif\n#ifdef VELOCITY_LINEAR\nvar velocity : vec2f=vec2f(0.5)*((input.vPreviousPosition.xy /\ninput.vPreviousPosition.w) -\n(input.vCurrentPosition.xy /\ninput.vCurrentPosition.w));fragData[VELOCITY_LINEAR_INDEX]=vec4f(velocity,0.0,1.0);\n#endif\n#ifdef REFLECTIVITY\nvar reflectivity: vec4f= vec4f(0.0,0.0,0.0,1.0);\n#ifdef METALLICWORKFLOW\nvar metal: f32=1.0;var roughness: f32=1.0;\n#ifdef ORMTEXTURE\nmetal*=textureSample(reflectivitySampler,reflectivitySamplerSampler,input.vReflectivityUV).b;roughness*=textureSample(reflectivitySampler,reflectivitySamplerSampler,input.vReflectivityUV).g;\n#endif\n#ifdef METALLIC\nmetal*=uniforms.metallic;\n#endif\n#ifdef ROUGHNESS\nroughness*=(1.0-uniforms.glossiness); \n#endif\nreflectivity=vec4f(reflectivity.rgb,reflectivity.a-roughness);var color: vec3f= vec3f(1.0);\n#ifdef ALBEDOTEXTURE\ncolor=textureSample(albedoSampler,albedoSamplerSampler,input.vAlbedoUV).rgb;\n#ifdef GAMMAALBEDO\ncolor=toLinearSpaceVec4(color);\n#endif\n#endif\n#ifdef ALBEDOCOLOR\ncolor*=uniforms.albedoColor.xyz;\n#endif\nreflectivity=vec4f(mix( vec3f(0.04),color,metal),reflectivity.a);\n#else\n#if defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nreflectivity=textureSample(reflectivitySampler,reflectivitySamplerSampler,input.vReflectivityUV);\n#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity=vec4f(toLinearSpaceVec3(reflectivity.rgb),reflectivity.a);\n#endif\n#else \n#ifdef REFLECTIVITYCOLOR\nreflectivity=vec4f(toLinearSpaceVec3(uniforms.reflectivityColor.xyz),1.0);\n#endif\n#endif\n#ifdef GLOSSINESSS\nreflectivity=vec4f(reflectivity.rgb,reflectivity.a*glossiness); \n#endif\n#endif\nfragData[REFLECTIVITY_INDEX]=reflectivity;\n#endif\n#if SCENE_MRT_COUNT>0\nfragmentOutputs.fragData0=fragData[0];\n#endif\n#if SCENE_MRT_COUNT>1\nfragmentOutputs.fragData1=fragData[1];\n#endif\n#if SCENE_MRT_COUNT>2\nfragmentOutputs.fragData2=fragData[2];\n#endif\n#if SCENE_MRT_COUNT>3\nfragmentOutputs.fragData3=fragData[3];\n#endif\n#if SCENE_MRT_COUNT>4\nfragmentOutputs.fragData4=fragData[4];\n#endif\n#if SCENE_MRT_COUNT>5\nfragmentOutputs.fragData5=fragData[5];\n#endif\n#if SCENE_MRT_COUNT>6\nfragmentOutputs.fragData6=fragData[6];\n#endif\n#if SCENE_MRT_COUNT>7\nfragmentOutputs.fragData7=fragData[7];\n#endif\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const geometryPixelShaderWGSL = { name, shader };\n"]}
@@ -157,7 +157,9 @@ vertexOutputs.vAlbedoUV=(uniforms.albedoMatrix* vec4f(uv2Updated,1.0,0.0)).xy;
157
157
  }
158
158
  `;
159
159
  // Sideeffect
160
- ShaderStore.ShadersStoreWGSL[name] = shader;
160
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
161
+ ShaderStore.ShadersStoreWGSL[name] = shader;
162
+ }
161
163
  /** @internal */
162
164
  export const geometryVertexShaderWGSL = { name, shader };
163
165
  //# sourceMappingURL=geometry.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/geometry.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kDAAkD,CAAC;AAC1D,OAAO,sDAAsD,CAAC;AAC9D,OAAO,gDAAgD,CAAC;AACxD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,6CAA6C,CAAC;AACrD,OAAO,2CAA2C,CAAC;AACnD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,8BAA8B,CAAC;AACtC,OAAO,uCAAuC,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,6BAA6B,CAAC;AAErC,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Id,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/bonesDeclaration\";\nimport \"./ShadersInclude/bakedVertexAnimationDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobalDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexDeclaration\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/sceneUboDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobal\";\nimport \"./ShadersInclude/morphTargetsVertex\";\nimport \"./ShadersInclude/instancesVertex\";\nimport \"./ShadersInclude/bonesVertex\";\nimport \"./ShadersInclude/bakedVertexAnimation\";\nimport \"./ShadersInclude/clipPlaneVertex\";\nimport \"./ShadersInclude/bumpVertex\";\n\nconst name = \"geometryVertexShader\";\nconst shader = `#include<bonesDeclaration>\n#include<bakedVertexAnimationDeclaration>\n#include<morphTargetsVertexGlobalDeclaration>\n#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]\n#include<instancesDeclaration>\n#include<sceneUboDeclaration>\n#include<clipPlaneVertexDeclaration>\nattribute position: vec3f;attribute normal: vec3f;\n#ifdef NEED_UV\nvarying vUV: vec2f;\n#ifdef ALPHATEST\nuniform diffuseMatrix: mat4x4f;\n#endif\n#ifdef BUMP\nuniform bumpMatrix: mat4x4f;varying vBumpUV: vec2f;\n#endif\n#ifdef REFLECTIVITY\nuniform reflectivityMatrix: mat4x4f;uniform albedoMatrix: mat4x4f;varying vReflectivityUV: vec2f;varying vAlbedoUV: vec2f;\n#endif\n#ifdef UV1\nattribute uv: vec2f;\n#endif\n#ifdef UV2\nattribute uv2: vec2f;\n#endif\n#endif\n#ifdef BUMP\nvarying vWorldView0: vec4f;varying vWorldView1: vec4f;varying vWorldView2: vec4f;varying vWorldView3: vec4f;\n#endif\n#ifdef BUMP\nvarying vNormalW: vec3f;\n#else\nvarying vNormalV: vec3f;\n#endif\nvarying vViewPos: vec4f;\n#if defined(POSITION) || defined(BUMP)\nvarying vPositionW: vec3f;\n#endif\n#if defined(VELOCITY) || defined(VELOCITY_LINEAR)\nuniform previousViewProjection: mat4x4f;varying vCurrentPosition: vec4f;varying vPreviousPosition: vec4f;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {var positionUpdated: vec3f=input.position;var normalUpdated: vec3f=input.normal;\n#ifdef UV1\nvar uvUpdated: vec2f=input.uv;\n#endif\n#ifdef UV2\nvar uv2Updated: vec2f=input.uv2;\n#endif\n#include<morphTargetsVertexGlobal>\n#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]\n#include<instancesVertex>\n#if (defined(VELOCITY) || defined(VELOCITY_LINEAR)) && !defined(BONES_VELOCITY_ENABLED)\nvCurrentPosition=scene.viewProjection*finalWorld*vec4f(positionUpdated,1.0);vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld* vec4f(positionUpdated,1.0);\n#endif\n#include<bonesVertex>\n#include<bakedVertexAnimation>\nvar worldPos: vec4f= vec4f(finalWorld* vec4f(positionUpdated,1.0));\n#ifdef BUMP\nlet vWorldView=scene.view*finalWorld;vertexOutputs.vWorldView0=vWorldView[0];vertexOutputs.vWorldView1=vWorldView[1];vertexOutputs.vWorldView2=vWorldView[2];vertexOutputs.vWorldView3=vWorldView[3];let normalWorld: mat3x3f= mat3x3f(finalWorld[0].xyz,finalWorld[1].xyz,finalWorld[2].xyz);vertexOutputs.vNormalW=normalize(normalWorld*normalUpdated);\n#else\n#ifdef NORMAL_WORLDSPACE\nvertexOutputs.vNormalV=normalize((finalWorld* vec4f(normalUpdated,0.0)).xyz);\n#else\nvertexOutputs.vNormalV=normalize(((scene.view*finalWorld)* vec4f(normalUpdated,0.0)).xyz);\n#endif\n#endif\nvertexOutputs.vViewPos=scene.view*worldPos;\n#if (defined(VELOCITY) || defined(VELOCITY_LINEAR)) && defined(BONES_VELOCITY_ENABLED)\nvertexOutputs.vCurrentPosition=scene.viewProjection*finalWorld* vec4f(positionUpdated,1.0);\n#if NUM_BONE_INFLUENCERS>0\nvar previousInfluence: mat4x4f;previousInfluence=mPreviousBones[ i32(matricesIndices[0])]*matricesWeights[0];\n#if NUM_BONE_INFLUENCERS>1\npreviousInfluence+=mPreviousBones[ i32(matricesIndices[1])]*matricesWeights[1];\n#endif\n#if NUM_BONE_INFLUENCERS>2\npreviousInfluence+=mPreviousBones[ i32(matricesIndices[2])]*matricesWeights[2];\n#endif\n#if NUM_BONE_INFLUENCERS>3\npreviousInfluence+=mPreviousBones[ i32(matricesIndices[3])]*matricesWeights[3];\n#endif\n#if NUM_BONE_INFLUENCERS>4\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[0])]*matricesWeightsExtra[0];\n#endif\n#if NUM_BONE_INFLUENCERS>5\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[1])]*matricesWeightsExtra[1];\n#endif\n#if NUM_BONE_INFLUENCERS>6\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[2])]*matricesWeightsExtra[2];\n#endif\n#if NUM_BONE_INFLUENCERS>7\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[3])]*matricesWeightsExtra[3];\n#endif\nvertexOutputs.vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld*previousInfluence* vec4f(positionUpdated,1.0);\n#else\nvertexOutputs.vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld* vec4f(positionUpdated,1.0);\n#endif\n#endif\n#if defined(POSITION) || defined(BUMP)\nvertexOutputs.vPositionW=worldPos.xyz/worldPos.w;\n#endif\nvertexOutputs.position=scene.viewProjection*finalWorld* vec4f(positionUpdated,1.0);\n#include<clipPlaneVertex>\n#ifdef NEED_UV\n#ifdef UV1\n#if defined(ALPHATEST) && defined(ALPHATEST_UV1)\nvertexOutputs.vUV=(uniforms.diffuseMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#else\nvertexOutputs.vUV=uvUpdated;\n#endif\n#ifdef BUMP_UV1\nvertexOutputs.vBumpUV=(uniforms.bumpMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef REFLECTIVITY_UV1\nvertexOutputs.vReflectivityUV=(uniforms.reflectivityMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef ALBEDO_UV1\nvertexOutputs.vAlbedoUV=(uniforms.albedoMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef UV2\n#if defined(ALPHATEST) && defined(ALPHATEST_UV2)\nvertexOutputs.vUV=(uniforms.diffuseMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#else\nvertexOutputs.vUV=uv2Updated;\n#endif\n#ifdef BUMP_UV2\nvertexOutputs.vBumpUV=(uniforms.bumpMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#ifdef REFLECTIVITY_UV2\nvertexOutputs.vReflectivityUV=(uniforms.reflectivityMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#ifdef ALBEDO_UV2\nvertexOutputs.vAlbedoUV=(uniforms.albedoMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#endif\n#include<bumpVertex>\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const geometryVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"geometry.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/geometry.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kDAAkD,CAAC;AAC1D,OAAO,sDAAsD,CAAC;AAC9D,OAAO,gDAAgD,CAAC;AACxD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,6CAA6C,CAAC;AACrD,OAAO,2CAA2C,CAAC;AACnD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,8BAA8B,CAAC;AACtC,OAAO,uCAAuC,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,6BAA6B,CAAC;AAErC,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Id,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/bonesDeclaration\";\nimport \"./ShadersInclude/bakedVertexAnimationDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobalDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexDeclaration\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/sceneUboDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobal\";\nimport \"./ShadersInclude/morphTargetsVertex\";\nimport \"./ShadersInclude/instancesVertex\";\nimport \"./ShadersInclude/bonesVertex\";\nimport \"./ShadersInclude/bakedVertexAnimation\";\nimport \"./ShadersInclude/clipPlaneVertex\";\nimport \"./ShadersInclude/bumpVertex\";\n\nconst name = \"geometryVertexShader\";\nconst shader = `#include<bonesDeclaration>\n#include<bakedVertexAnimationDeclaration>\n#include<morphTargetsVertexGlobalDeclaration>\n#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]\n#include<instancesDeclaration>\n#include<sceneUboDeclaration>\n#include<clipPlaneVertexDeclaration>\nattribute position: vec3f;attribute normal: vec3f;\n#ifdef NEED_UV\nvarying vUV: vec2f;\n#ifdef ALPHATEST\nuniform diffuseMatrix: mat4x4f;\n#endif\n#ifdef BUMP\nuniform bumpMatrix: mat4x4f;varying vBumpUV: vec2f;\n#endif\n#ifdef REFLECTIVITY\nuniform reflectivityMatrix: mat4x4f;uniform albedoMatrix: mat4x4f;varying vReflectivityUV: vec2f;varying vAlbedoUV: vec2f;\n#endif\n#ifdef UV1\nattribute uv: vec2f;\n#endif\n#ifdef UV2\nattribute uv2: vec2f;\n#endif\n#endif\n#ifdef BUMP\nvarying vWorldView0: vec4f;varying vWorldView1: vec4f;varying vWorldView2: vec4f;varying vWorldView3: vec4f;\n#endif\n#ifdef BUMP\nvarying vNormalW: vec3f;\n#else\nvarying vNormalV: vec3f;\n#endif\nvarying vViewPos: vec4f;\n#if defined(POSITION) || defined(BUMP)\nvarying vPositionW: vec3f;\n#endif\n#if defined(VELOCITY) || defined(VELOCITY_LINEAR)\nuniform previousViewProjection: mat4x4f;varying vCurrentPosition: vec4f;varying vPreviousPosition: vec4f;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {var positionUpdated: vec3f=input.position;var normalUpdated: vec3f=input.normal;\n#ifdef UV1\nvar uvUpdated: vec2f=input.uv;\n#endif\n#ifdef UV2\nvar uv2Updated: vec2f=input.uv2;\n#endif\n#include<morphTargetsVertexGlobal>\n#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]\n#include<instancesVertex>\n#if (defined(VELOCITY) || defined(VELOCITY_LINEAR)) && !defined(BONES_VELOCITY_ENABLED)\nvCurrentPosition=scene.viewProjection*finalWorld*vec4f(positionUpdated,1.0);vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld* vec4f(positionUpdated,1.0);\n#endif\n#include<bonesVertex>\n#include<bakedVertexAnimation>\nvar worldPos: vec4f= vec4f(finalWorld* vec4f(positionUpdated,1.0));\n#ifdef BUMP\nlet vWorldView=scene.view*finalWorld;vertexOutputs.vWorldView0=vWorldView[0];vertexOutputs.vWorldView1=vWorldView[1];vertexOutputs.vWorldView2=vWorldView[2];vertexOutputs.vWorldView3=vWorldView[3];let normalWorld: mat3x3f= mat3x3f(finalWorld[0].xyz,finalWorld[1].xyz,finalWorld[2].xyz);vertexOutputs.vNormalW=normalize(normalWorld*normalUpdated);\n#else\n#ifdef NORMAL_WORLDSPACE\nvertexOutputs.vNormalV=normalize((finalWorld* vec4f(normalUpdated,0.0)).xyz);\n#else\nvertexOutputs.vNormalV=normalize(((scene.view*finalWorld)* vec4f(normalUpdated,0.0)).xyz);\n#endif\n#endif\nvertexOutputs.vViewPos=scene.view*worldPos;\n#if (defined(VELOCITY) || defined(VELOCITY_LINEAR)) && defined(BONES_VELOCITY_ENABLED)\nvertexOutputs.vCurrentPosition=scene.viewProjection*finalWorld* vec4f(positionUpdated,1.0);\n#if NUM_BONE_INFLUENCERS>0\nvar previousInfluence: mat4x4f;previousInfluence=mPreviousBones[ i32(matricesIndices[0])]*matricesWeights[0];\n#if NUM_BONE_INFLUENCERS>1\npreviousInfluence+=mPreviousBones[ i32(matricesIndices[1])]*matricesWeights[1];\n#endif\n#if NUM_BONE_INFLUENCERS>2\npreviousInfluence+=mPreviousBones[ i32(matricesIndices[2])]*matricesWeights[2];\n#endif\n#if NUM_BONE_INFLUENCERS>3\npreviousInfluence+=mPreviousBones[ i32(matricesIndices[3])]*matricesWeights[3];\n#endif\n#if NUM_BONE_INFLUENCERS>4\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[0])]*matricesWeightsExtra[0];\n#endif\n#if NUM_BONE_INFLUENCERS>5\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[1])]*matricesWeightsExtra[1];\n#endif\n#if NUM_BONE_INFLUENCERS>6\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[2])]*matricesWeightsExtra[2];\n#endif\n#if NUM_BONE_INFLUENCERS>7\npreviousInfluence+=mPreviousBones[ i32(matricesIndicesExtra[3])]*matricesWeightsExtra[3];\n#endif\nvertexOutputs.vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld*previousInfluence* vec4f(positionUpdated,1.0);\n#else\nvertexOutputs.vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld* vec4f(positionUpdated,1.0);\n#endif\n#endif\n#if defined(POSITION) || defined(BUMP)\nvertexOutputs.vPositionW=worldPos.xyz/worldPos.w;\n#endif\nvertexOutputs.position=scene.viewProjection*finalWorld* vec4f(positionUpdated,1.0);\n#include<clipPlaneVertex>\n#ifdef NEED_UV\n#ifdef UV1\n#if defined(ALPHATEST) && defined(ALPHATEST_UV1)\nvertexOutputs.vUV=(uniforms.diffuseMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#else\nvertexOutputs.vUV=uvUpdated;\n#endif\n#ifdef BUMP_UV1\nvertexOutputs.vBumpUV=(uniforms.bumpMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef REFLECTIVITY_UV1\nvertexOutputs.vReflectivityUV=(uniforms.reflectivityMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef ALBEDO_UV1\nvertexOutputs.vAlbedoUV=(uniforms.albedoMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef UV2\n#if defined(ALPHATEST) && defined(ALPHATEST_UV2)\nvertexOutputs.vUV=(uniforms.diffuseMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#else\nvertexOutputs.vUV=uv2Updated;\n#endif\n#ifdef BUMP_UV2\nvertexOutputs.vBumpUV=(uniforms.bumpMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#ifdef REFLECTIVITY_UV2\nvertexOutputs.vReflectivityUV=(uniforms.reflectivityMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#ifdef ALBEDO_UV2\nvertexOutputs.vAlbedoUV=(uniforms.albedoMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#endif\n#include<bumpVertex>\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const geometryVertexShaderWGSL = { name, shader };\n"]}
@@ -9,7 +9,9 @@ fn main(input: FragmentInputs)->FragmentOutputs {var weights: array<f32 ,7>;weig
9
9
  {var texel: vec4f=textureSample(textureSampler,textureSamplerSampler,start+texelOffset);baseColor=vec4f(baseColor.rgb,baseColor.a+texel.a*weights[i]);var luminance: f32=getLuminance(baseColor.rgb);var luminanceTexel: f32=getLuminance(texel.rgb);var choice: f32=step(luminanceTexel,luminance);baseColor=vec4f(choice*baseColor.rgb+(1.0-choice)*texel.rgb,baseColor.a);texelOffset+=texelStep;}
10
10
  fragmentOutputs.color=baseColor;}`;
11
11
  // Sideeffect
12
- ShaderStore.ShadersStoreWGSL[name] = shader;
12
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
13
+ ShaderStore.ShadersStoreWGSL[name] = shader;
14
+ }
13
15
  /** @internal */
14
16
  export const glowBlurPostProcessPixelShaderWGSL = { name, shader };
15
17
  //# sourceMappingURL=glowBlurPostProcess.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glowBlurPostProcess.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowBlurPostProcess.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,gCAAgC,CAAC;AAC9C,MAAM,MAAM,GAAG;;;;;;kCAMmB,CAAC;AACnC,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"glowBlurPostProcessPixelShader\";\nconst shader = `varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform screenSize: vec2f;uniform direction: vec2f;uniform blurWidth: f32;fn getLuminance(color: vec3f)->f32\n{return dot(color, vec3f(0.2126,0.7152,0.0722));}\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {var weights: array<f32 ,7>;weights[0]=0.05;weights[1]=0.1;weights[2]=0.2;weights[3]=0.3;weights[4]=0.2;weights[5]=0.1;weights[6]=0.05;var texelSize: vec2f= vec2f(1.0/uniforms.screenSize.x,1.0/uniforms.screenSize.y);var texelStep: vec2f=texelSize*uniforms.direction*uniforms.blurWidth;var start: vec2f=input.vUV-3.0*texelStep;var baseColor: vec4f= vec4f(0.,0.,0.,0.);var texelOffset: vec2f= vec2f(0.,0.);for (var i: i32=0; i<7; i++)\n{var texel: vec4f=textureSample(textureSampler,textureSamplerSampler,start+texelOffset);baseColor=vec4f(baseColor.rgb,baseColor.a+texel.a*weights[i]);var luminance: f32=getLuminance(baseColor.rgb);var luminanceTexel: f32=getLuminance(texel.rgb);var choice: f32=step(luminanceTexel,luminance);baseColor=vec4f(choice*baseColor.rgb+(1.0-choice)*texel.rgb,baseColor.a);texelOffset+=texelStep;}\nfragmentOutputs.color=baseColor;}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const glowBlurPostProcessPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"glowBlurPostProcess.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowBlurPostProcess.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,gCAAgC,CAAC;AAC9C,MAAM,MAAM,GAAG;;;;;;kCAMmB,CAAC;AACnC,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"glowBlurPostProcessPixelShader\";\nconst shader = `varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform screenSize: vec2f;uniform direction: vec2f;uniform blurWidth: f32;fn getLuminance(color: vec3f)->f32\n{return dot(color, vec3f(0.2126,0.7152,0.0722));}\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {var weights: array<f32 ,7>;weights[0]=0.05;weights[1]=0.1;weights[2]=0.2;weights[3]=0.3;weights[4]=0.2;weights[5]=0.1;weights[6]=0.05;var texelSize: vec2f= vec2f(1.0/uniforms.screenSize.x,1.0/uniforms.screenSize.y);var texelStep: vec2f=texelSize*uniforms.direction*uniforms.blurWidth;var start: vec2f=input.vUV-3.0*texelStep;var baseColor: vec4f= vec4f(0.,0.,0.,0.);var texelOffset: vec2f= vec2f(0.,0.);for (var i: i32=0; i<7; i++)\n{var texel: vec4f=textureSample(textureSampler,textureSamplerSampler,start+texelOffset);baseColor=vec4f(baseColor.rgb,baseColor.a+texel.a*weights[i]);var luminance: f32=getLuminance(baseColor.rgb);var luminanceTexel: f32=getLuminance(texel.rgb);var choice: f32=step(luminanceTexel,luminance);baseColor=vec4f(choice*baseColor.rgb+(1.0-choice)*texel.rgb,baseColor.a);texelOffset+=texelStep;}\nfragmentOutputs.color=baseColor;}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const glowBlurPostProcessPixelShaderWGSL = { name, shader };\n"]}
@@ -68,7 +68,9 @@ fragmentOutputs.color=vec4f(fragmentOutputs.color.rgb,uniforms.glowColor.a);
68
68
  }
69
69
  `;
70
70
  // Sideeffect
71
- ShaderStore.ShadersStoreWGSL[name] = shader;
71
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
72
+ ShaderStore.ShadersStoreWGSL[name] = shader;
73
+ }
72
74
  /** @internal */
73
75
  export const glowMapGenerationPixelShaderWGSL = { name, shader };
74
76
  //# sourceMappingURL=glowMapGeneration.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glowMapGeneration.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapGeneration.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,+CAA+C,CAAC;AACvD,OAAO,oCAAoC,CAAC;AAE5C,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Dd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/clipPlaneFragment\";\n\nconst name = \"glowMapGenerationPixelShader\";\nconst shader = `#if defined(DIFFUSE_ISLINEAR) || defined(EMISSIVE_ISLINEAR)\n#include<helperFunctions>\n#endif\n#ifdef DIFFUSE\nvarying vUVDiffuse: vec2f;var diffuseSamplerSampler: sampler;var diffuseSampler: texture_2d<f32>;\n#endif\n#ifdef OPACITY\nvarying vUVOpacity: vec2f;var opacitySamplerSampler: sampler;var opacitySampler: texture_2d<f32>;uniform opacityIntensity: f32;\n#endif\n#ifdef EMISSIVE\nvarying vUVEmissive: vec2f;var emissiveSamplerSampler: sampler;var emissiveSampler: texture_2d<f32>;\n#endif\n#ifdef VERTEXALPHA\nvarying vColor: vec4f;\n#endif\nuniform glowColor: vec4f;uniform glowIntensity: f32;\n#include<clipPlaneFragmentDeclaration>\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#include<clipPlaneFragment>\nvar finalColor: vec4f=uniforms.glowColor;\n#ifdef DIFFUSE\nvar albedoTexture: vec4f=textureSample(diffuseSampler,diffuseSamplerSampler,fragmentInputs.vUVDiffuse);\n#ifdef DIFFUSE_ISLINEAR\nalbedoTexture=toGammaSpace(albedoTexture);\n#endif\n#ifdef GLOW\nfinalColor=vec4f(finalColor.rgb,finalColor.a*albedoTexture.a);\n#endif\n#ifdef HIGHLIGHT\nfinalColor=vec4f(finalColor.rgb,albedoTexture.a);\n#endif\n#endif\n#ifdef OPACITY\nvar opacityMap: vec4f=textureSample(opacitySampler,opacitySamplerSampler,fragmentInputs.vUVOpacity);\n#ifdef OPACITYRGB\nfinalColor=vec4f(finalColor.rgb,finalColor.a*getLuminance(opacityMap.rgb));\n#else\nfinalColor=vec4f(finalColor.rgb,finalColor.a*opacityMap.a);\n#endif\nfinalColor=vec4f(finalColor.rgb,finalColor.a*uniforms.opacityIntensity);\n#endif\n#ifdef VERTEXALPHA\nfinalColor=vec4f(finalColor.rgb,finalColor.a*fragmentInputs.vColor.a);\n#endif\n#ifdef ALPHATEST\nif (finalColor.a<ALPHATESTVALUE) {discard;}\n#endif\n#ifdef EMISSIVE\nvar emissive: vec4f=textureSample(emissiveSampler,emissiveSamplerSampler,fragmentInputs.vUVEmissive);\n#ifdef EMISSIVE_ISLINEAR\nemissive=toGammaSpace(emissive);\n#endif\nfragmentOutputs.color=emissive*finalColor*uniforms.glowIntensity;\n#else\nfragmentOutputs.color=finalColor*uniforms.glowIntensity;\n#endif\n#ifdef HIGHLIGHT\nfragmentOutputs.color=vec4f(fragmentOutputs.color.rgb,uniforms.glowColor.a);\n#endif\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const glowMapGenerationPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"glowMapGeneration.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapGeneration.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,+CAA+C,CAAC;AACvD,OAAO,oCAAoC,CAAC;AAE5C,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Dd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/clipPlaneFragment\";\n\nconst name = \"glowMapGenerationPixelShader\";\nconst shader = `#if defined(DIFFUSE_ISLINEAR) || defined(EMISSIVE_ISLINEAR)\n#include<helperFunctions>\n#endif\n#ifdef DIFFUSE\nvarying vUVDiffuse: vec2f;var diffuseSamplerSampler: sampler;var diffuseSampler: texture_2d<f32>;\n#endif\n#ifdef OPACITY\nvarying vUVOpacity: vec2f;var opacitySamplerSampler: sampler;var opacitySampler: texture_2d<f32>;uniform opacityIntensity: f32;\n#endif\n#ifdef EMISSIVE\nvarying vUVEmissive: vec2f;var emissiveSamplerSampler: sampler;var emissiveSampler: texture_2d<f32>;\n#endif\n#ifdef VERTEXALPHA\nvarying vColor: vec4f;\n#endif\nuniform glowColor: vec4f;uniform glowIntensity: f32;\n#include<clipPlaneFragmentDeclaration>\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#include<clipPlaneFragment>\nvar finalColor: vec4f=uniforms.glowColor;\n#ifdef DIFFUSE\nvar albedoTexture: vec4f=textureSample(diffuseSampler,diffuseSamplerSampler,fragmentInputs.vUVDiffuse);\n#ifdef DIFFUSE_ISLINEAR\nalbedoTexture=toGammaSpace(albedoTexture);\n#endif\n#ifdef GLOW\nfinalColor=vec4f(finalColor.rgb,finalColor.a*albedoTexture.a);\n#endif\n#ifdef HIGHLIGHT\nfinalColor=vec4f(finalColor.rgb,albedoTexture.a);\n#endif\n#endif\n#ifdef OPACITY\nvar opacityMap: vec4f=textureSample(opacitySampler,opacitySamplerSampler,fragmentInputs.vUVOpacity);\n#ifdef OPACITYRGB\nfinalColor=vec4f(finalColor.rgb,finalColor.a*getLuminance(opacityMap.rgb));\n#else\nfinalColor=vec4f(finalColor.rgb,finalColor.a*opacityMap.a);\n#endif\nfinalColor=vec4f(finalColor.rgb,finalColor.a*uniforms.opacityIntensity);\n#endif\n#ifdef VERTEXALPHA\nfinalColor=vec4f(finalColor.rgb,finalColor.a*fragmentInputs.vColor.a);\n#endif\n#ifdef ALPHATEST\nif (finalColor.a<ALPHATESTVALUE) {discard;}\n#endif\n#ifdef EMISSIVE\nvar emissive: vec4f=textureSample(emissiveSampler,emissiveSamplerSampler,fragmentInputs.vUVEmissive);\n#ifdef EMISSIVE_ISLINEAR\nemissive=toGammaSpace(emissive);\n#endif\nfragmentOutputs.color=emissive*finalColor*uniforms.glowIntensity;\n#else\nfragmentOutputs.color=finalColor*uniforms.glowIntensity;\n#endif\n#ifdef HIGHLIGHT\nfragmentOutputs.color=vec4f(fragmentOutputs.color.rgb,uniforms.glowColor.a);\n#endif\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const glowMapGenerationPixelShaderWGSL = { name, shader };\n"]}
@@ -89,7 +89,9 @@ vertexOutputs.vColor=vertexInputs.color;
89
89
  #include<clipPlaneVertex>
90
90
  }`;
91
91
  // Sideeffect
92
- ShaderStore.ShadersStoreWGSL[name] = shader;
92
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
93
+ ShaderStore.ShadersStoreWGSL[name] = shader;
94
+ }
93
95
  /** @internal */
94
96
  export const glowMapGenerationVertexShaderWGSL = { name, shader };
95
97
  //# sourceMappingURL=glowMapGeneration.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glowMapGeneration.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapGeneration.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kDAAkD,CAAC;AAC1D,OAAO,sDAAsD,CAAC;AAC9D,OAAO,gDAAgD,CAAC;AACxD,OAAO,6CAA6C,CAAC;AACrD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,2CAA2C,CAAC;AACnD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,8BAA8B,CAAC;AACtC,OAAO,uCAAuC,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAG,+BAA+B,CAAC;AAC7C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0Eb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/bonesDeclaration\";\nimport \"./ShadersInclude/bakedVertexAnimationDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobalDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobal\";\nimport \"./ShadersInclude/morphTargetsVertex\";\nimport \"./ShadersInclude/instancesVertex\";\nimport \"./ShadersInclude/bonesVertex\";\nimport \"./ShadersInclude/bakedVertexAnimation\";\nimport \"./ShadersInclude/clipPlaneVertex\";\n\nconst name = \"glowMapGenerationVertexShader\";\nconst shader = `attribute position: vec3f;\n#include<bonesDeclaration>\n#include<bakedVertexAnimationDeclaration>\n#include<morphTargetsVertexGlobalDeclaration>\n#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]\n#include<clipPlaneVertexDeclaration>\n#include<instancesDeclaration>\nuniform viewProjection: mat4x4f;varying vPosition: vec4f;\n#ifdef UV1\nattribute uv: vec2f;\n#endif\n#ifdef UV2\nattribute uv2: vec2f;\n#endif\n#ifdef DIFFUSE\nvarying vUVDiffuse: vec2f;uniform diffuseMatrix: mat4x4f;\n#endif\n#ifdef OPACITY\nvarying vUVOpacity: vec2f;uniform opacityMatrix: mat4x4f;\n#endif\n#ifdef EMISSIVE\nvarying vUVEmissive: vec2f;uniform emissiveMatrix: mat4x4f;\n#endif\n#ifdef VERTEXALPHA\nattribute color: vec4f;varying vColor: vec4f;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {var positionUpdated: vec3f=input.position;\n#ifdef UV1\nvar uvUpdated: vec2f=input.uv;\n#endif\n#ifdef UV2\nvar uv2Updated: vec2f=input.uv2;\n#endif\n#include<morphTargetsVertexGlobal>\n#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]\n#include<instancesVertex>\n#include<bonesVertex>\n#include<bakedVertexAnimation>\nvar worldPos: vec4f=finalWorld* vec4f(positionUpdated,1.0);\n#ifdef CUBEMAP\nvertexOutputs.vPosition=worldPos;vertexOutputs.position=uniforms.viewProjection*finalWorld* vec4f(input.position,1.0);\n#else\nvertexOutputs.vPosition=uniforms.viewProjection*worldPos;vertexOutputs.position=vertexOutputs.vPosition;\n#endif\n#ifdef DIFFUSE\n#ifdef DIFFUSEUV1\nvertexOutputs.vUVDiffuse= (uniforms.diffuseMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef DIFFUSEUV2\nvertexOutputs.vUVDiffuse= (uniforms.diffuseMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef OPACITY\n#ifdef OPACITYUV1\nvertexOutputs.vUVOpacity= (uniforms.opacityMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef OPACITYUV2\nvertexOutputs.vUVOpacity= (uniforms.opacityMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef EMISSIVE\n#ifdef EMISSIVEUV1\nvertexOutputs.vUVEmissive= (uniforms.emissiveMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef EMISSIVEUV2\nvertexOutputs.vUVEmissive= (uniforms.emissiveMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef VERTEXALPHA\nvertexOutputs.vColor=vertexInputs.color;\n#endif\n#include<clipPlaneVertex>\n}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const glowMapGenerationVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"glowMapGeneration.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapGeneration.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kDAAkD,CAAC;AAC1D,OAAO,sDAAsD,CAAC;AAC9D,OAAO,gDAAgD,CAAC;AACxD,OAAO,6CAA6C,CAAC;AACrD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,2CAA2C,CAAC;AACnD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,8BAA8B,CAAC;AACtC,OAAO,uCAAuC,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAG,+BAA+B,CAAC;AAC7C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0Eb,CAAC;AACH,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/bonesDeclaration\";\nimport \"./ShadersInclude/bakedVertexAnimationDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobalDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobal\";\nimport \"./ShadersInclude/morphTargetsVertex\";\nimport \"./ShadersInclude/instancesVertex\";\nimport \"./ShadersInclude/bonesVertex\";\nimport \"./ShadersInclude/bakedVertexAnimation\";\nimport \"./ShadersInclude/clipPlaneVertex\";\n\nconst name = \"glowMapGenerationVertexShader\";\nconst shader = `attribute position: vec3f;\n#include<bonesDeclaration>\n#include<bakedVertexAnimationDeclaration>\n#include<morphTargetsVertexGlobalDeclaration>\n#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]\n#include<clipPlaneVertexDeclaration>\n#include<instancesDeclaration>\nuniform viewProjection: mat4x4f;varying vPosition: vec4f;\n#ifdef UV1\nattribute uv: vec2f;\n#endif\n#ifdef UV2\nattribute uv2: vec2f;\n#endif\n#ifdef DIFFUSE\nvarying vUVDiffuse: vec2f;uniform diffuseMatrix: mat4x4f;\n#endif\n#ifdef OPACITY\nvarying vUVOpacity: vec2f;uniform opacityMatrix: mat4x4f;\n#endif\n#ifdef EMISSIVE\nvarying vUVEmissive: vec2f;uniform emissiveMatrix: mat4x4f;\n#endif\n#ifdef VERTEXALPHA\nattribute color: vec4f;varying vColor: vec4f;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {var positionUpdated: vec3f=input.position;\n#ifdef UV1\nvar uvUpdated: vec2f=input.uv;\n#endif\n#ifdef UV2\nvar uv2Updated: vec2f=input.uv2;\n#endif\n#include<morphTargetsVertexGlobal>\n#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]\n#include<instancesVertex>\n#include<bonesVertex>\n#include<bakedVertexAnimation>\nvar worldPos: vec4f=finalWorld* vec4f(positionUpdated,1.0);\n#ifdef CUBEMAP\nvertexOutputs.vPosition=worldPos;vertexOutputs.position=uniforms.viewProjection*finalWorld* vec4f(input.position,1.0);\n#else\nvertexOutputs.vPosition=uniforms.viewProjection*worldPos;vertexOutputs.position=vertexOutputs.vPosition;\n#endif\n#ifdef DIFFUSE\n#ifdef DIFFUSEUV1\nvertexOutputs.vUVDiffuse= (uniforms.diffuseMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef DIFFUSEUV2\nvertexOutputs.vUVDiffuse= (uniforms.diffuseMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef OPACITY\n#ifdef OPACITYUV1\nvertexOutputs.vUVOpacity= (uniforms.opacityMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef OPACITYUV2\nvertexOutputs.vUVOpacity= (uniforms.opacityMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef EMISSIVE\n#ifdef EMISSIVEUV1\nvertexOutputs.vUVEmissive= (uniforms.emissiveMatrix* vec4f(uvUpdated,1.0,0.0)).xy;\n#endif\n#ifdef EMISSIVEUV2\nvertexOutputs.vUVEmissive= (uniforms.emissiveMatrix* vec4f(uv2Updated,1.0,0.0)).xy;\n#endif\n#endif\n#ifdef VERTEXALPHA\nvertexOutputs.vColor=vertexInputs.color;\n#endif\n#include<clipPlaneVertex>\n}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const glowMapGenerationVertexShaderWGSL = { name, shader };\n"]}
@@ -27,7 +27,9 @@ fragmentOutputs.color=baseColor;
27
27
  }
28
28
  `;
29
29
  // Sideeffect
30
- ShaderStore.ShadersStoreWGSL[name] = shader;
30
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
31
+ ShaderStore.ShadersStoreWGSL[name] = shader;
32
+ }
31
33
  /** @internal */
32
34
  export const glowMapMergePixelShaderWGSL = { name, shader };
33
35
  //# sourceMappingURL=glowMapMerge.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glowMapMerge.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapMerge.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"glowMapMergePixelShader\";\nconst shader = `varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;\n#ifdef EMISSIVE\nvar textureSampler2Sampler: sampler;var textureSampler2: texture_2d<f32>;\n#endif\nuniform offset: f32;\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#define CUSTOM_FRAGMENT_MAIN_BEGIN\nvar baseColor: vec4f=textureSample(textureSampler,textureSamplerSampler,input.vUV);\n#ifdef EMISSIVE\nbaseColor+=textureSample(textureSampler2,textureSampler2Sampler,input.vUV);baseColor*=uniforms.offset;\n#else\nbaseColor=vec4f(baseColor.rgb,abs(uniforms.offset-baseColor.a));\n#ifdef STROKE\nvar alpha: f32=smoothstep(.0,.1,baseColor.a);baseColor=vec4f(baseColor.rgb*alpha,alpha);\n#endif\n#endif\n#if LDR\nbaseColor=clamp(baseColor,vec4f(0.),vec4f(1.0));\n#endif\nfragmentOutputs.color=baseColor;\n#define CUSTOM_FRAGMENT_MAIN_END\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const glowMapMergePixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"glowMapMerge.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapMerge.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"glowMapMergePixelShader\";\nconst shader = `varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;\n#ifdef EMISSIVE\nvar textureSampler2Sampler: sampler;var textureSampler2: texture_2d<f32>;\n#endif\nuniform offset: f32;\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#define CUSTOM_FRAGMENT_MAIN_BEGIN\nvar baseColor: vec4f=textureSample(textureSampler,textureSamplerSampler,input.vUV);\n#ifdef EMISSIVE\nbaseColor+=textureSample(textureSampler2,textureSampler2Sampler,input.vUV);baseColor*=uniforms.offset;\n#else\nbaseColor=vec4f(baseColor.rgb,abs(uniforms.offset-baseColor.a));\n#ifdef STROKE\nvar alpha: f32=smoothstep(.0,.1,baseColor.a);baseColor=vec4f(baseColor.rgb*alpha,alpha);\n#endif\n#endif\n#if LDR\nbaseColor=clamp(baseColor,vec4f(0.),vec4f(1.0));\n#endif\nfragmentOutputs.color=baseColor;\n#define CUSTOM_FRAGMENT_MAIN_END\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const glowMapMergePixelShaderWGSL = { name, shader };\n"]}
@@ -10,7 +10,9 @@ vertexOutputs.vUV=input.position*madd+madd;vertexOutputs.position= vec4f(input.p
10
10
  #define CUSTOM_VERTEX_MAIN_END
11
11
  }`;
12
12
  // Sideeffect
13
- ShaderStore.ShadersStoreWGSL[name] = shader;
13
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
14
+ ShaderStore.ShadersStoreWGSL[name] = shader;
15
+ }
14
16
  /** @internal */
15
17
  export const glowMapMergeVertexShaderWGSL = { name, shader };
16
18
  //# sourceMappingURL=glowMapMerge.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glowMapMerge.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapMerge.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;EAOb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"glowMapMergeVertexShader\";\nconst shader = `attribute position: vec2f;varying vUV: vec2f;\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {const madd: vec2f= vec2f(0.5,0.5);\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvertexOutputs.vUV=input.position*madd+madd;vertexOutputs.position= vec4f(input.position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const glowMapMergeVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"glowMapMerge.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/glowMapMerge.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;EAOb,CAAC;AACH,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"glowMapMergeVertexShader\";\nconst shader = `attribute position: vec2f;varying vUV: vec2f;\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {const madd: vec2f= vec2f(0.5,0.5);\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvertexOutputs.vUV=input.position*madd+madd;vertexOutputs.position= vec4f(input.position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const glowMapMergeVertexShaderWGSL = { name, shader };\n"]}
@@ -281,7 +281,9 @@ particlesOut.particles[index].cellIndex=f32(i32(params.cellInfos.x+ratio*dist));
281
281
  }}
282
282
  `;
283
283
  // Sideeffect
284
- ShaderStore.ShadersStoreWGSL[name] = shader;
284
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
285
+ ShaderStore.ShadersStoreWGSL[name] = shader;
286
+ }
285
287
  /** @internal */
286
288
  export const gpuUpdateParticlesComputeShaderWGSL = { name, shader };
287
289
  //# sourceMappingURL=gpuUpdateParticles.compute.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gpuUpdateParticles.compute.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/gpuUpdateParticles.compute.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsRd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"gpuUpdateParticlesComputeShader\";\nconst shader = `struct Particle {position : vec3<f32>,\nage : f32,\nsize : vec3<f32>,\nlife : f32,\nseed : vec4<f32>,\ndirection : vec3<f32>,\ndummy0: f32,\n#ifdef CUSTOMEMITTER\ninitialPosition : vec3<f32>,\ndummy1: f32,\n#endif\n#ifndef COLORGRADIENTS\ncolor : vec4<f32>,\n#endif\n#ifndef BILLBOARD\ninitialDirection : vec3<f32>,\ndummy2: f32,\n#endif\n#ifdef NOISE\nnoiseCoordinates1 : vec3<f32>,\ndummy3: f32,\nnoiseCoordinates2 : vec3<f32>,\ndummy4: f32,\n#endif\n#ifdef ANGULARSPEEDGRADIENTS\nangle : f32,\n#else\nangle : vec2<f32>,\n#endif\n#ifdef ANIMATESHEET\ncellIndex : f32,\n#ifdef ANIMATESHEETRANDOMSTART\ncellStartOffset : f32,\n#endif\n#endif\n};struct Particles {particles : array<Particle>,};struct SimParams {currentCount : f32,\ntimeDelta : f32,\nstopFactor : f32,\nrandomTextureSize: i32,\nlifeTime : vec2<f32>,\nemitPower : vec2<f32>,\n#ifndef COLORGRADIENTS\ncolor1 : vec4<f32>,\ncolor2 : vec4<f32>,\n#endif\nsizeRange : vec2<f32>,\nscaleRange : vec4<f32>,\nangleRange : vec4<f32>,\ngravity : vec3<f32>,\n#ifdef LIMITVELOCITYGRADIENTS\nlimitVelocityDamping : f32,\n#endif\n#ifdef ANIMATESHEET\ncellInfos : vec4<f32>,\n#endif\n#ifdef NOISE\nnoiseStrength : vec3<f32>,\n#endif\n#ifndef LOCAL\nemitterWM : mat4x4<f32>,\n#endif\n#ifdef BOXEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\nminEmitBox : vec3<f32>,\nmaxEmitBox : vec3<f32>,\n#endif\n#ifdef CONEEMITTER\nradius : vec2<f32>,\nconeAngle : f32,\nheight : vec2<f32>,\n#ifdef DIRECTEDCONEEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#else\ndirectionRandomizer : f32,\n#endif\n#endif\n#ifdef CYLINDEREMITTER\nradius : f32,\nheight : f32,\nradiusRange : f32,\n#ifdef DIRECTEDCYLINDEREMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#else\ndirectionRandomizer : f32,\n#endif\n#endif\n#ifdef HEMISPHERICEMITTER\nradius : f32,\nradiusRange : f32,\ndirectionRandomizer : f32,\n#endif\n#ifdef POINTEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#endif\n#ifdef SPHEREEMITTER\nradius : f32,\nradiusRange : f32,\n#ifdef DIRECTEDSPHEREEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#else\ndirectionRandomizer : f32,\n#endif\n#endif\n};@binding(0) @group(0) var<uniform> params : SimParams;@binding(1) @group(0) var<storage,read> particlesIn : Particles;@binding(2) @group(0) var<storage,read_write> particlesOut : Particles;@binding(3) @group(0) var randomTexture : texture_2d<f32>;@binding(4) @group(0) var randomTexture2 : texture_2d<f32>;\n#ifdef SIZEGRADIENTS\n@binding(0) @group(1) var sizeGradientSampler : sampler;@binding(1) @group(1) var sizeGradientTexture : texture_2d<f32>;\n#endif \n#ifdef ANGULARSPEEDGRADIENTS\n@binding(2) @group(1) var angularSpeedGradientSampler : sampler;@binding(3) @group(1) var angularSpeedGradientTexture : texture_2d<f32>;\n#endif \n#ifdef VELOCITYGRADIENTS\n@binding(4) @group(1) var velocityGradientSampler : sampler;@binding(5) @group(1) var velocityGradientTexture : texture_2d<f32>;\n#endif\n#ifdef LIMITVELOCITYGRADIENTS\n@binding(6) @group(1) var limitVelocityGradientSampler : sampler;@binding(7) @group(1) var limitVelocityGradientTexture : texture_2d<f32>;\n#endif\n#ifdef DRAGGRADIENTS\n@binding(8) @group(1) var dragGradientSampler : sampler;@binding(9) @group(1) var dragGradientTexture : texture_2d<f32>;\n#endif\n#ifdef NOISE\n@binding(10) @group(1) var noiseSampler : sampler;@binding(11) @group(1) var noiseTexture : texture_2d<f32>;\n#endif\nfn getRandomVec3(offset : f32,vertexID : f32)->vec3<f32> {return textureLoad(randomTexture2,vec2<i32>(i32(vertexID*offset/params.currentCount*f32(params.randomTextureSize)) % params.randomTextureSize,0),0).rgb;}\nfn getRandomVec4(offset : f32,vertexID : f32)->vec4<f32> {return textureLoad(randomTexture,vec2<i32>(i32(vertexID*offset/params.currentCount*f32(params.randomTextureSize)) % params.randomTextureSize,0),0);}\n@compute @workgroup_size(64)\nfn main(@builtin(global_invocation_id) GlobalInvocationID : vec3<u32>) {let index : u32=GlobalInvocationID.x;let vertexID : f32=f32(index);if (index>=u32(params.currentCount)) {return;}\nlet PI : f32=3.14159;let timeDelta : f32=params.timeDelta;let newAge : f32=particlesIn.particles[index].age+timeDelta;let life : f32=particlesIn.particles[index].life;let seed : vec4<f32>=particlesIn.particles[index].seed;let direction : vec3<f32>=particlesIn.particles[index].direction;if (newAge>=life && params.stopFactor != 0.) {var newPosition : vec3<f32>;var newDirection : vec3<f32>;let randoms : vec4<f32>=getRandomVec4(seed.x,vertexID);let outLife : f32=params.lifeTime.x+(params.lifeTime.y-params.lifeTime.x)*randoms.r;particlesOut.particles[index].life=outLife;particlesOut.particles[index].age=newAge-life;particlesOut.particles[index].seed=seed;var sizex : f32;\n#ifdef SIZEGRADIENTS \nsizex=textureSampleLevel(sizeGradientTexture,sizeGradientSampler,vec2<f32>(0.,0.),0.).r;\n#else\nsizex=params.sizeRange.x+(params.sizeRange.y-params.sizeRange.x)*randoms.g;\n#endif\nparticlesOut.particles[index].size=vec3<f32>(\nsizex,\nparams.scaleRange.x+(params.scaleRange.y-params.scaleRange.x)*randoms.b,\nparams.scaleRange.z+(params.scaleRange.w-params.scaleRange.z)*randoms.a);\n#ifndef COLORGRADIENTS\nparticlesOut.particles[index].color=params.color1+(params.color2-params.color1)*randoms.b;\n#endif\n#ifndef ANGULARSPEEDGRADIENTS \nparticlesOut.particles[index].angle=vec2<f32>(\nparams.angleRange.z+(params.angleRange.w-params.angleRange.z)*randoms.r,\nparams.angleRange.x+(params.angleRange.y-params.angleRange.x)*randoms.a);\n#else\nparticlesOut.particles[index].angle=params.angleRange.z+(params.angleRange.w-params.angleRange.z)*randoms.r;\n#endif \n#if defined(POINTEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);newPosition=vec3<f32>(0.,0.,0.);newDirection=params.direction1+(params.direction2-params.direction1)*randoms3;\n#elif defined(BOXEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);newPosition=params.minEmitBox+(params.maxEmitBox-params.minEmitBox)*randoms2;newDirection=params.direction1+(params.direction2-params.direction1)*randoms3; \n#elif defined(HEMISPHERICEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);let phi : f32=2.0*PI*randoms2.x;let theta : f32=acos(-1.0+2.0*randoms2.y);let randX : f32=cos(phi)*sin(theta);let randY : f32=cos(theta);let randZ : f32=sin(phi)*sin(theta);newPosition=(params.radius-(params.radius*params.radiusRange*randoms2.z))*vec3<f32>(randX,abs(randY),randZ);newDirection=normalize(newPosition+params.directionRandomizer*randoms3);\n#elif defined(SPHEREEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);let phi : f32=2.0*PI*randoms2.x;let theta : f32=acos(-1.0+2.0*randoms2.y);let randX : f32=cos(phi)*sin(theta);let randY : f32=cos(theta);let randZ : f32=sin(phi)*sin(theta);newPosition=(params.radius-(params.radius*params.radiusRange*randoms2.z))*vec3<f32>(randX,randY,randZ);\n#ifdef DIRECTEDSPHEREEMITTER\nnewDirection=normalize(params.direction1+(params.direction2-params.direction1)*randoms3);\n#else\nnewDirection=normalize(newPosition+params.directionRandomizer*randoms3);\n#endif\n#elif defined(CYLINDEREMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);let yPos : f32=(-0.5+randoms2.x)*params.height;var angle : f32=randoms2.y*PI*2.;let inverseRadiusRangeSquared : f32=(1.-params.radiusRange)*(1.-params.radiusRange);let positionRadius : f32=params.radius*sqrt(inverseRadiusRangeSquared+randoms2.z*(1.-inverseRadiusRangeSquared));let xPos : f32=positionRadius*cos(angle);let zPos : f32=positionRadius*sin(angle);newPosition=vec3<f32>(xPos,yPos,zPos);\n#ifdef DIRECTEDCYLINDEREMITTER\nnewDirection=params.direction1+(params.direction2-params.direction1)*randoms3;\n#else\nangle=angle+(-0.5+randoms3.x)*PI*params.directionRandomizer;newDirection=vec3<f32>(cos(angle),(-0.5+randoms3.y)*params.directionRandomizer,sin(angle));newDirection=normalize(newDirection);\n#endif\n#elif defined(CONEEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let s : f32=2.0*PI*randoms2.x;\n#ifdef CONEEMITTERSPAWNPOINT\nlet h : f32=0.0001;\n#else\nvar h : f32=randoms2.y*params.height.y;h=1.-h*h; \n#endif\nvar lRadius : f32=params.radius.x-params.radius.x*randoms2.z*params.radius.y;lRadius=lRadius*h;let randX : f32=lRadius*sin(s);let randZ : f32=lRadius*cos(s);let randY : f32=h *params.height.x;newPosition=vec3<f32>(randX,randY,randZ); \nlet randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);\n#ifdef DIRECTEDCONEEMITTER\nnewDirection=params.direction1+(params.direction2-params.direction1)*randoms3;\n#else\nif (abs(cos(params.coneAngle))==1.0) {newDirection=vec3<f32>(0.,1.0,0.);} else {newDirection=normalize(newPosition+params.directionRandomizer*randoms3); }\n#endif\n#elif defined(CUSTOMEMITTER)\nnewPosition=particlesIn.particles[index].initialPosition;particlesOut.particles[index].initialPosition=newPosition;\n#else \nnewPosition=vec3<f32>(0.,0.,0.);newDirection=2.0*(getRandomVec3(seed.w,vertexID)-vec3<f32>(0.5,0.5,0.5));\n#endif\nlet power : f32=params.emitPower.x+(params.emitPower.y-params.emitPower.x)*randoms.a;\n#ifdef LOCAL\nparticlesOut.particles[index].position=newPosition;\n#else\nparticlesOut.particles[index].position=(params.emitterWM*vec4<f32>(newPosition,1.)).xyz;\n#endif\n#ifdef CUSTOMEMITTER\nparticlesOut.particles[index].direction=direction;\n#ifndef BILLBOARD \nparticlesOut.particles[index].initialDirection=direction;\n#endif\n#else\n#ifdef LOCAL\nlet initial : vec3<f32>=newDirection;\n#else \nlet initial : vec3<f32>=(params.emitterWM*vec4<f32>(newDirection,0.)).xyz;\n#endif\nparticlesOut.particles[index].direction=initial*power;\n#ifndef BILLBOARD \nparticlesOut.particles[index].initialDirection=initial;\n#endif\n#endif\n#ifdef ANIMATESHEET \nparticlesOut.particles[index].cellIndex=params.cellInfos.x;\n#ifdef ANIMATESHEETRANDOMSTART\nparticlesOut.particles[index].cellStartOffset=randoms.a*outLife;\n#endif \n#endif\n#ifdef NOISE\nparticlesOut.particles[index].noiseCoordinates1=particlesIn.particles[index].noiseCoordinates1;particlesOut.particles[index].noiseCoordinates2=particlesIn.particles[index].noiseCoordinates2;\n#endif\n} else {var directionScale : f32=timeDelta;particlesOut.particles[index].age=newAge;let ageGradient : f32=newAge/life;\n#ifdef VELOCITYGRADIENTS\ndirectionScale=directionScale*textureSampleLevel(velocityGradientTexture,velocityGradientSampler,vec2<f32>(ageGradient,0.),0.).r;\n#endif\n#ifdef DRAGGRADIENTS\ndirectionScale=directionScale*(1.0-textureSampleLevel(dragGradientTexture,dragGradientSampler,vec2<f32>(ageGradient,0.),0.).r);\n#endif\nlet position : vec3<f32>=particlesIn.particles[index].position;\n#if defined(CUSTOMEMITTER)\nparticlesOut.particles[index].position=position+(direction-position)*ageGradient; \nparticlesOut.particles[index].initialPosition=particlesIn.particles[index].initialPosition;\n#else\nparticlesOut.particles[index].position=position+direction*directionScale;\n#endif\nparticlesOut.particles[index].life=life;particlesOut.particles[index].seed=seed;\n#ifndef COLORGRADIENTS \nparticlesOut.particles[index].color=particlesIn.particles[index].color;\n#endif\n#ifdef SIZEGRADIENTS\nparticlesOut.particles[index].size=vec3<f32>(\ntextureSampleLevel(sizeGradientTexture,sizeGradientSampler,vec2<f32>(ageGradient,0.),0.).r,\nparticlesIn.particles[index].size.yz);\n#else\nparticlesOut.particles[index].size=particlesIn.particles[index].size;\n#endif \n#ifndef BILLBOARD \nparticlesOut.particles[index].initialDirection=particlesIn.particles[index].initialDirection;\n#endif\n#ifdef CUSTOMEMITTER\nparticlesOut.particles[index].direction=direction;\n#else\nvar updatedDirection : vec3<f32>=direction+params.gravity*timeDelta;\n#ifdef LIMITVELOCITYGRADIENTS\nlet limitVelocity : f32=textureSampleLevel(limitVelocityGradientTexture,limitVelocityGradientSampler,vec2<f32>(ageGradient,0.),0.).r;let currentVelocity : f32=length(updatedDirection);if (currentVelocity>limitVelocity) {updatedDirection=updatedDirection*params.limitVelocityDamping;}\n#endif\nparticlesOut.particles[index].direction=updatedDirection;\n#ifdef NOISE\nlet noiseCoordinates1 : vec3<f32>=particlesIn.particles[index].noiseCoordinates1;let noiseCoordinates2 : vec3<f32>=particlesIn.particles[index].noiseCoordinates2;let fetchedR : f32=textureSampleLevel(noiseTexture,noiseSampler,vec2<f32>(noiseCoordinates1.x,noiseCoordinates1.y)*vec2<f32>(0.5,0.5)+vec2<f32>(0.5,0.5),0.).r;let fetchedG : f32=textureSampleLevel(noiseTexture,noiseSampler,vec2<f32>(noiseCoordinates1.z,noiseCoordinates2.x)*vec2<f32>(0.5,0.5)+vec2<f32>(0.5,0.5),0.).r;let fetchedB : f32=textureSampleLevel(noiseTexture,noiseSampler,vec2<f32>(noiseCoordinates2.y,noiseCoordinates2.z)*vec2<f32>(0.5,0.5)+vec2<f32>(0.5,0.5),0.).r;let force : vec3<f32>=vec3<f32>(-1.+2.*fetchedR,-1.+2.*fetchedG,-1.+2.*fetchedB)*params.noiseStrength;particlesOut.particles[index].direction=particlesOut.particles[index].direction+force*timeDelta;particlesOut.particles[index].noiseCoordinates1=noiseCoordinates1;particlesOut.particles[index].noiseCoordinates2=noiseCoordinates2;\n#endif \n#endif \n#ifdef ANGULARSPEEDGRADIENTS\nlet angularSpeed : f32=textureSampleLevel(angularSpeedGradientTexture,angularSpeedGradientSampler,vec2<f32>(ageGradient,0.),0.).r;particlesOut.particles[index].angle=particlesIn.particles[index].angle+angularSpeed*timeDelta;\n#else\nlet angle : vec2<f32>=particlesIn.particles[index].angle;particlesOut.particles[index].angle=vec2<f32>(angle.x+angle.y*timeDelta,angle.y);\n#endif\n#ifdef ANIMATESHEET \nvar offsetAge : f32=particlesOut.particles[index].age;let dist : f32=params.cellInfos.y-params.cellInfos.x;\n#ifdef ANIMATESHEETRANDOMSTART\nlet cellStartOffset : f32=particlesIn.particles[index].cellStartOffset;particlesOut.particles[index].cellStartOffset=cellStartOffset;offsetAge=offsetAge+cellStartOffset;\n#else\nlet cellStartOffset : f32=0.;\n#endif \nvar ratio : f32;if (params.cellInfos.w==1.0) {ratio=clamp(((cellStartOffset+params.cellInfos.z*offsetAge) % life)/life,0.,1.0);}\nelse {ratio=clamp((cellStartOffset+params.cellInfos.z*offsetAge)/life,0.,1.0);}\nparticlesOut.particles[index].cellIndex=f32(i32(params.cellInfos.x+ratio*dist));\n#endif\n}}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const gpuUpdateParticlesComputeShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"gpuUpdateParticles.compute.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/gpuUpdateParticles.compute.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsRd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"gpuUpdateParticlesComputeShader\";\nconst shader = `struct Particle {position : vec3<f32>,\nage : f32,\nsize : vec3<f32>,\nlife : f32,\nseed : vec4<f32>,\ndirection : vec3<f32>,\ndummy0: f32,\n#ifdef CUSTOMEMITTER\ninitialPosition : vec3<f32>,\ndummy1: f32,\n#endif\n#ifndef COLORGRADIENTS\ncolor : vec4<f32>,\n#endif\n#ifndef BILLBOARD\ninitialDirection : vec3<f32>,\ndummy2: f32,\n#endif\n#ifdef NOISE\nnoiseCoordinates1 : vec3<f32>,\ndummy3: f32,\nnoiseCoordinates2 : vec3<f32>,\ndummy4: f32,\n#endif\n#ifdef ANGULARSPEEDGRADIENTS\nangle : f32,\n#else\nangle : vec2<f32>,\n#endif\n#ifdef ANIMATESHEET\ncellIndex : f32,\n#ifdef ANIMATESHEETRANDOMSTART\ncellStartOffset : f32,\n#endif\n#endif\n};struct Particles {particles : array<Particle>,};struct SimParams {currentCount : f32,\ntimeDelta : f32,\nstopFactor : f32,\nrandomTextureSize: i32,\nlifeTime : vec2<f32>,\nemitPower : vec2<f32>,\n#ifndef COLORGRADIENTS\ncolor1 : vec4<f32>,\ncolor2 : vec4<f32>,\n#endif\nsizeRange : vec2<f32>,\nscaleRange : vec4<f32>,\nangleRange : vec4<f32>,\ngravity : vec3<f32>,\n#ifdef LIMITVELOCITYGRADIENTS\nlimitVelocityDamping : f32,\n#endif\n#ifdef ANIMATESHEET\ncellInfos : vec4<f32>,\n#endif\n#ifdef NOISE\nnoiseStrength : vec3<f32>,\n#endif\n#ifndef LOCAL\nemitterWM : mat4x4<f32>,\n#endif\n#ifdef BOXEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\nminEmitBox : vec3<f32>,\nmaxEmitBox : vec3<f32>,\n#endif\n#ifdef CONEEMITTER\nradius : vec2<f32>,\nconeAngle : f32,\nheight : vec2<f32>,\n#ifdef DIRECTEDCONEEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#else\ndirectionRandomizer : f32,\n#endif\n#endif\n#ifdef CYLINDEREMITTER\nradius : f32,\nheight : f32,\nradiusRange : f32,\n#ifdef DIRECTEDCYLINDEREMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#else\ndirectionRandomizer : f32,\n#endif\n#endif\n#ifdef HEMISPHERICEMITTER\nradius : f32,\nradiusRange : f32,\ndirectionRandomizer : f32,\n#endif\n#ifdef POINTEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#endif\n#ifdef SPHEREEMITTER\nradius : f32,\nradiusRange : f32,\n#ifdef DIRECTEDSPHEREEMITTER\ndirection1 : vec3<f32>,\ndirection2 : vec3<f32>,\n#else\ndirectionRandomizer : f32,\n#endif\n#endif\n};@binding(0) @group(0) var<uniform> params : SimParams;@binding(1) @group(0) var<storage,read> particlesIn : Particles;@binding(2) @group(0) var<storage,read_write> particlesOut : Particles;@binding(3) @group(0) var randomTexture : texture_2d<f32>;@binding(4) @group(0) var randomTexture2 : texture_2d<f32>;\n#ifdef SIZEGRADIENTS\n@binding(0) @group(1) var sizeGradientSampler : sampler;@binding(1) @group(1) var sizeGradientTexture : texture_2d<f32>;\n#endif \n#ifdef ANGULARSPEEDGRADIENTS\n@binding(2) @group(1) var angularSpeedGradientSampler : sampler;@binding(3) @group(1) var angularSpeedGradientTexture : texture_2d<f32>;\n#endif \n#ifdef VELOCITYGRADIENTS\n@binding(4) @group(1) var velocityGradientSampler : sampler;@binding(5) @group(1) var velocityGradientTexture : texture_2d<f32>;\n#endif\n#ifdef LIMITVELOCITYGRADIENTS\n@binding(6) @group(1) var limitVelocityGradientSampler : sampler;@binding(7) @group(1) var limitVelocityGradientTexture : texture_2d<f32>;\n#endif\n#ifdef DRAGGRADIENTS\n@binding(8) @group(1) var dragGradientSampler : sampler;@binding(9) @group(1) var dragGradientTexture : texture_2d<f32>;\n#endif\n#ifdef NOISE\n@binding(10) @group(1) var noiseSampler : sampler;@binding(11) @group(1) var noiseTexture : texture_2d<f32>;\n#endif\nfn getRandomVec3(offset : f32,vertexID : f32)->vec3<f32> {return textureLoad(randomTexture2,vec2<i32>(i32(vertexID*offset/params.currentCount*f32(params.randomTextureSize)) % params.randomTextureSize,0),0).rgb;}\nfn getRandomVec4(offset : f32,vertexID : f32)->vec4<f32> {return textureLoad(randomTexture,vec2<i32>(i32(vertexID*offset/params.currentCount*f32(params.randomTextureSize)) % params.randomTextureSize,0),0);}\n@compute @workgroup_size(64)\nfn main(@builtin(global_invocation_id) GlobalInvocationID : vec3<u32>) {let index : u32=GlobalInvocationID.x;let vertexID : f32=f32(index);if (index>=u32(params.currentCount)) {return;}\nlet PI : f32=3.14159;let timeDelta : f32=params.timeDelta;let newAge : f32=particlesIn.particles[index].age+timeDelta;let life : f32=particlesIn.particles[index].life;let seed : vec4<f32>=particlesIn.particles[index].seed;let direction : vec3<f32>=particlesIn.particles[index].direction;if (newAge>=life && params.stopFactor != 0.) {var newPosition : vec3<f32>;var newDirection : vec3<f32>;let randoms : vec4<f32>=getRandomVec4(seed.x,vertexID);let outLife : f32=params.lifeTime.x+(params.lifeTime.y-params.lifeTime.x)*randoms.r;particlesOut.particles[index].life=outLife;particlesOut.particles[index].age=newAge-life;particlesOut.particles[index].seed=seed;var sizex : f32;\n#ifdef SIZEGRADIENTS \nsizex=textureSampleLevel(sizeGradientTexture,sizeGradientSampler,vec2<f32>(0.,0.),0.).r;\n#else\nsizex=params.sizeRange.x+(params.sizeRange.y-params.sizeRange.x)*randoms.g;\n#endif\nparticlesOut.particles[index].size=vec3<f32>(\nsizex,\nparams.scaleRange.x+(params.scaleRange.y-params.scaleRange.x)*randoms.b,\nparams.scaleRange.z+(params.scaleRange.w-params.scaleRange.z)*randoms.a);\n#ifndef COLORGRADIENTS\nparticlesOut.particles[index].color=params.color1+(params.color2-params.color1)*randoms.b;\n#endif\n#ifndef ANGULARSPEEDGRADIENTS \nparticlesOut.particles[index].angle=vec2<f32>(\nparams.angleRange.z+(params.angleRange.w-params.angleRange.z)*randoms.r,\nparams.angleRange.x+(params.angleRange.y-params.angleRange.x)*randoms.a);\n#else\nparticlesOut.particles[index].angle=params.angleRange.z+(params.angleRange.w-params.angleRange.z)*randoms.r;\n#endif \n#if defined(POINTEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);newPosition=vec3<f32>(0.,0.,0.);newDirection=params.direction1+(params.direction2-params.direction1)*randoms3;\n#elif defined(BOXEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);newPosition=params.minEmitBox+(params.maxEmitBox-params.minEmitBox)*randoms2;newDirection=params.direction1+(params.direction2-params.direction1)*randoms3; \n#elif defined(HEMISPHERICEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);let phi : f32=2.0*PI*randoms2.x;let theta : f32=acos(-1.0+2.0*randoms2.y);let randX : f32=cos(phi)*sin(theta);let randY : f32=cos(theta);let randZ : f32=sin(phi)*sin(theta);newPosition=(params.radius-(params.radius*params.radiusRange*randoms2.z))*vec3<f32>(randX,abs(randY),randZ);newDirection=normalize(newPosition+params.directionRandomizer*randoms3);\n#elif defined(SPHEREEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);let phi : f32=2.0*PI*randoms2.x;let theta : f32=acos(-1.0+2.0*randoms2.y);let randX : f32=cos(phi)*sin(theta);let randY : f32=cos(theta);let randZ : f32=sin(phi)*sin(theta);newPosition=(params.radius-(params.radius*params.radiusRange*randoms2.z))*vec3<f32>(randX,randY,randZ);\n#ifdef DIRECTEDSPHEREEMITTER\nnewDirection=normalize(params.direction1+(params.direction2-params.direction1)*randoms3);\n#else\nnewDirection=normalize(newPosition+params.directionRandomizer*randoms3);\n#endif\n#elif defined(CYLINDEREMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);let yPos : f32=(-0.5+randoms2.x)*params.height;var angle : f32=randoms2.y*PI*2.;let inverseRadiusRangeSquared : f32=(1.-params.radiusRange)*(1.-params.radiusRange);let positionRadius : f32=params.radius*sqrt(inverseRadiusRangeSquared+randoms2.z*(1.-inverseRadiusRangeSquared));let xPos : f32=positionRadius*cos(angle);let zPos : f32=positionRadius*sin(angle);newPosition=vec3<f32>(xPos,yPos,zPos);\n#ifdef DIRECTEDCYLINDEREMITTER\nnewDirection=params.direction1+(params.direction2-params.direction1)*randoms3;\n#else\nangle=angle+(-0.5+randoms3.x)*PI*params.directionRandomizer;newDirection=vec3<f32>(cos(angle),(-0.5+randoms3.y)*params.directionRandomizer,sin(angle));newDirection=normalize(newDirection);\n#endif\n#elif defined(CONEEMITTER)\nlet randoms2 : vec3<f32>=getRandomVec3(seed.y,vertexID);let s : f32=2.0*PI*randoms2.x;\n#ifdef CONEEMITTERSPAWNPOINT\nlet h : f32=0.0001;\n#else\nvar h : f32=randoms2.y*params.height.y;h=1.-h*h; \n#endif\nvar lRadius : f32=params.radius.x-params.radius.x*randoms2.z*params.radius.y;lRadius=lRadius*h;let randX : f32=lRadius*sin(s);let randZ : f32=lRadius*cos(s);let randY : f32=h *params.height.x;newPosition=vec3<f32>(randX,randY,randZ); \nlet randoms3 : vec3<f32>=getRandomVec3(seed.z,vertexID);\n#ifdef DIRECTEDCONEEMITTER\nnewDirection=params.direction1+(params.direction2-params.direction1)*randoms3;\n#else\nif (abs(cos(params.coneAngle))==1.0) {newDirection=vec3<f32>(0.,1.0,0.);} else {newDirection=normalize(newPosition+params.directionRandomizer*randoms3); }\n#endif\n#elif defined(CUSTOMEMITTER)\nnewPosition=particlesIn.particles[index].initialPosition;particlesOut.particles[index].initialPosition=newPosition;\n#else \nnewPosition=vec3<f32>(0.,0.,0.);newDirection=2.0*(getRandomVec3(seed.w,vertexID)-vec3<f32>(0.5,0.5,0.5));\n#endif\nlet power : f32=params.emitPower.x+(params.emitPower.y-params.emitPower.x)*randoms.a;\n#ifdef LOCAL\nparticlesOut.particles[index].position=newPosition;\n#else\nparticlesOut.particles[index].position=(params.emitterWM*vec4<f32>(newPosition,1.)).xyz;\n#endif\n#ifdef CUSTOMEMITTER\nparticlesOut.particles[index].direction=direction;\n#ifndef BILLBOARD \nparticlesOut.particles[index].initialDirection=direction;\n#endif\n#else\n#ifdef LOCAL\nlet initial : vec3<f32>=newDirection;\n#else \nlet initial : vec3<f32>=(params.emitterWM*vec4<f32>(newDirection,0.)).xyz;\n#endif\nparticlesOut.particles[index].direction=initial*power;\n#ifndef BILLBOARD \nparticlesOut.particles[index].initialDirection=initial;\n#endif\n#endif\n#ifdef ANIMATESHEET \nparticlesOut.particles[index].cellIndex=params.cellInfos.x;\n#ifdef ANIMATESHEETRANDOMSTART\nparticlesOut.particles[index].cellStartOffset=randoms.a*outLife;\n#endif \n#endif\n#ifdef NOISE\nparticlesOut.particles[index].noiseCoordinates1=particlesIn.particles[index].noiseCoordinates1;particlesOut.particles[index].noiseCoordinates2=particlesIn.particles[index].noiseCoordinates2;\n#endif\n} else {var directionScale : f32=timeDelta;particlesOut.particles[index].age=newAge;let ageGradient : f32=newAge/life;\n#ifdef VELOCITYGRADIENTS\ndirectionScale=directionScale*textureSampleLevel(velocityGradientTexture,velocityGradientSampler,vec2<f32>(ageGradient,0.),0.).r;\n#endif\n#ifdef DRAGGRADIENTS\ndirectionScale=directionScale*(1.0-textureSampleLevel(dragGradientTexture,dragGradientSampler,vec2<f32>(ageGradient,0.),0.).r);\n#endif\nlet position : vec3<f32>=particlesIn.particles[index].position;\n#if defined(CUSTOMEMITTER)\nparticlesOut.particles[index].position=position+(direction-position)*ageGradient; \nparticlesOut.particles[index].initialPosition=particlesIn.particles[index].initialPosition;\n#else\nparticlesOut.particles[index].position=position+direction*directionScale;\n#endif\nparticlesOut.particles[index].life=life;particlesOut.particles[index].seed=seed;\n#ifndef COLORGRADIENTS \nparticlesOut.particles[index].color=particlesIn.particles[index].color;\n#endif\n#ifdef SIZEGRADIENTS\nparticlesOut.particles[index].size=vec3<f32>(\ntextureSampleLevel(sizeGradientTexture,sizeGradientSampler,vec2<f32>(ageGradient,0.),0.).r,\nparticlesIn.particles[index].size.yz);\n#else\nparticlesOut.particles[index].size=particlesIn.particles[index].size;\n#endif \n#ifndef BILLBOARD \nparticlesOut.particles[index].initialDirection=particlesIn.particles[index].initialDirection;\n#endif\n#ifdef CUSTOMEMITTER\nparticlesOut.particles[index].direction=direction;\n#else\nvar updatedDirection : vec3<f32>=direction+params.gravity*timeDelta;\n#ifdef LIMITVELOCITYGRADIENTS\nlet limitVelocity : f32=textureSampleLevel(limitVelocityGradientTexture,limitVelocityGradientSampler,vec2<f32>(ageGradient,0.),0.).r;let currentVelocity : f32=length(updatedDirection);if (currentVelocity>limitVelocity) {updatedDirection=updatedDirection*params.limitVelocityDamping;}\n#endif\nparticlesOut.particles[index].direction=updatedDirection;\n#ifdef NOISE\nlet noiseCoordinates1 : vec3<f32>=particlesIn.particles[index].noiseCoordinates1;let noiseCoordinates2 : vec3<f32>=particlesIn.particles[index].noiseCoordinates2;let fetchedR : f32=textureSampleLevel(noiseTexture,noiseSampler,vec2<f32>(noiseCoordinates1.x,noiseCoordinates1.y)*vec2<f32>(0.5,0.5)+vec2<f32>(0.5,0.5),0.).r;let fetchedG : f32=textureSampleLevel(noiseTexture,noiseSampler,vec2<f32>(noiseCoordinates1.z,noiseCoordinates2.x)*vec2<f32>(0.5,0.5)+vec2<f32>(0.5,0.5),0.).r;let fetchedB : f32=textureSampleLevel(noiseTexture,noiseSampler,vec2<f32>(noiseCoordinates2.y,noiseCoordinates2.z)*vec2<f32>(0.5,0.5)+vec2<f32>(0.5,0.5),0.).r;let force : vec3<f32>=vec3<f32>(-1.+2.*fetchedR,-1.+2.*fetchedG,-1.+2.*fetchedB)*params.noiseStrength;particlesOut.particles[index].direction=particlesOut.particles[index].direction+force*timeDelta;particlesOut.particles[index].noiseCoordinates1=noiseCoordinates1;particlesOut.particles[index].noiseCoordinates2=noiseCoordinates2;\n#endif \n#endif \n#ifdef ANGULARSPEEDGRADIENTS\nlet angularSpeed : f32=textureSampleLevel(angularSpeedGradientTexture,angularSpeedGradientSampler,vec2<f32>(ageGradient,0.),0.).r;particlesOut.particles[index].angle=particlesIn.particles[index].angle+angularSpeed*timeDelta;\n#else\nlet angle : vec2<f32>=particlesIn.particles[index].angle;particlesOut.particles[index].angle=vec2<f32>(angle.x+angle.y*timeDelta,angle.y);\n#endif\n#ifdef ANIMATESHEET \nvar offsetAge : f32=particlesOut.particles[index].age;let dist : f32=params.cellInfos.y-params.cellInfos.x;\n#ifdef ANIMATESHEETRANDOMSTART\nlet cellStartOffset : f32=particlesIn.particles[index].cellStartOffset;particlesOut.particles[index].cellStartOffset=cellStartOffset;offsetAge=offsetAge+cellStartOffset;\n#else\nlet cellStartOffset : f32=0.;\n#endif \nvar ratio : f32;if (params.cellInfos.w==1.0) {ratio=clamp(((cellStartOffset+params.cellInfos.z*offsetAge) % life)/life,0.,1.0);}\nelse {ratio=clamp((cellStartOffset+params.cellInfos.z*offsetAge)/life,0.,1.0);}\nparticlesOut.particles[index].cellIndex=f32(i32(params.cellInfos.x+ratio*dist));\n#endif\n}}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const gpuUpdateParticlesComputeShaderWGSL = { name, shader };\n"]}
@@ -8,7 +8,9 @@ varying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: textur
8
8
  @fragment
9
9
  fn main(input: FragmentInputs)->FragmentOutputs {fragmentOutputs.color=textureSample(textureSampler,textureSamplerSampler,input.vUV);var seed: vec2f=input.vUV*uniforms.animatedSeed;var grain: f32=dither(seed,uniforms.intensity);var lum: f32=getLuminance(fragmentOutputs.color.rgb);var grainAmount: f32=(cos(-PI+(lum*PI*2.))+1.)/2.;fragmentOutputs.color=vec4f(fragmentOutputs.color.rgb+grain*grainAmount,fragmentOutputs.color.a);fragmentOutputs.color=vec4f(max(fragmentOutputs.color.rgb,vec3f(0.0)),fragmentOutputs.color.a);}`;
10
10
  // Sideeffect
11
- ShaderStore.ShadersStoreWGSL[name] = shader;
11
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
12
+ ShaderStore.ShadersStoreWGSL[name] = shader;
13
+ }
12
14
  /** @internal */
13
15
  export const grainPixelShaderWGSL = { name, shader };
14
16
  //# sourceMappingURL=grain.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grain.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/grain.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAChC,MAAM,MAAM,GAAG;;;;6gBAI8f,CAAC;AAC9gB,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/helperFunctions\";\n\nconst name = \"grainPixelShader\";\nconst shader = `#include<helperFunctions>\nvarying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform intensity: f32;uniform animatedSeed: f32;\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {fragmentOutputs.color=textureSample(textureSampler,textureSamplerSampler,input.vUV);var seed: vec2f=input.vUV*uniforms.animatedSeed;var grain: f32=dither(seed,uniforms.intensity);var lum: f32=getLuminance(fragmentOutputs.color.rgb);var grainAmount: f32=(cos(-PI+(lum*PI*2.))+1.)/2.;fragmentOutputs.color=vec4f(fragmentOutputs.color.rgb+grain*grainAmount,fragmentOutputs.color.a);fragmentOutputs.color=vec4f(max(fragmentOutputs.color.rgb,vec3f(0.0)),fragmentOutputs.color.a);}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const grainPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"grain.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/grain.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAChC,MAAM,MAAM,GAAG;;;;6gBAI8f,CAAC;AAC9gB,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/helperFunctions\";\n\nconst name = \"grainPixelShader\";\nconst shader = `#include<helperFunctions>\nvarying vUV: vec2f;var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform intensity: f32;uniform animatedSeed: f32;\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {fragmentOutputs.color=textureSample(textureSampler,textureSamplerSampler,input.vUV);var seed: vec2f=input.vUV*uniforms.animatedSeed;var grain: f32=dither(seed,uniforms.intensity);var lum: f32=getLuminance(fragmentOutputs.color.rgb);var grainAmount: f32=(cos(-PI+(lum*PI*2.))+1.)/2.;fragmentOutputs.color=vec4f(fragmentOutputs.color.rgb+grain*grainAmount,fragmentOutputs.color.a);fragmentOutputs.color=vec4f(max(fragmentOutputs.color.rgb,vec3f(0.0)),fragmentOutputs.color.a);}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const grainPixelShaderWGSL = { name, shader };\n"]}
@@ -25,7 +25,9 @@ if (fragDepth==nearestDepth) {fragmentOutputs.frontColor=vec4f(fragmentOutputs.f
25
25
  }
26
26
  `;
27
27
  // Sideeffect
28
- ShaderStore.ShadersStoreWGSL[name] = shader;
28
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
29
+ ShaderStore.ShadersStoreWGSL[name] = shader;
30
+ }
29
31
  /** @internal */
30
32
  export const greasedLinePixelShaderWGSL = { name, shader };
31
33
  //# sourceMappingURL=greasedLine.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"greasedLine.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/greasedLine.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,wBAAwB,CAAC;AACtC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"greasedLinePixelShader\";\nconst shader = `var grlColors: texture_2d<f32>;var grlColorsSampler: sampler;uniform grlUseColors: f32;uniform grlUseDash: f32;uniform grlDashArray: f32;uniform grlDashOffset: f32;uniform grlDashRatio: f32;uniform grlVisibility: f32;uniform grlColorsWidth: f32;uniform grl_colorModeAndColorDistributionType: vec2f;uniform grlColor: vec3f;varying grlCounters: f32;varying grlColorPointer: f32;\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#define CUSTOM_FRAGMENT_MAIN_BEGIN\nlet grlColorMode: f32=uniforms.grl_colorModeAndColorDistributionType.x;let grlColorDistributionType: f32=uniforms.grl_colorModeAndColorDistributionType.y;var outColor=vec4(uniforms.grlColor,1.);outColor.a=step(fragmentInputs.grlCounters,uniforms.grlVisibility);if (outColor.a==0.0) {discard;}\nif (uniforms.grlUseDash==1.0) {let dashPosition=(fragmentInputs.grlCounters+uniforms.grlDashOffset) % uniforms.grlDashArray;outColor.a*=ceil(dashPosition-(uniforms.grlDashArray*uniforms.grlDashRatio));if (outColor.a==0.0) {discard;}}\nif (uniforms.grlUseColors==1.) {\n#ifdef GREASED_LINE_COLOR_DISTRIBUTION_TYPE_LINE\nlet grlColor: vec4f=textureSample(grlColors,grlColorsSampler,vec2f(fragmentInputs.grlCounters,0.));\n#else\nlet lookup: vec2f=vec2(fract(fragmentInputs.grlColorPointer/uniforms.grlColorsWidth),1.0-floor(fragmentInputs.grlColorPointer/uniforms.grlColorsWidth));let grlColor: vec4f=textureSample(grlColors,grlColorsSampler,lookup);\n#endif\nif (grlColorMode==COLOR_MODE_SET) {outColor=grlColor;} else if (grlColorMode==COLOR_MODE_ADD) {outColor+=grlColor;} else if (grlColorMode==COLOR_MODE_MULTIPLY) {outColor*=grlColor;}}\n#if !defined(PREPASS) && !defined(ORDER_INDEPENDENT_TRANSPARENCY)\nfragmentOutputs.color=outColor;\n#endif\n#if ORDER_INDEPENDENT_TRANSPARENCY\nif (fragDepth==nearestDepth) {fragmentOutputs.frontColor=vec4f(fragmentOutputs.frontColor.rgb+outColor.rgb*outColor.a*alphaMultiplier,1.0-alphaMultiplier*(1.0-outColor.a));} else {fragmentOutputs.backColor+=outColor;}\n#endif\n#define CUSTOM_FRAGMENT_MAIN_END\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const greasedLinePixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"greasedLine.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/greasedLine.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,wBAAwB,CAAC;AACtC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"greasedLinePixelShader\";\nconst shader = `var grlColors: texture_2d<f32>;var grlColorsSampler: sampler;uniform grlUseColors: f32;uniform grlUseDash: f32;uniform grlDashArray: f32;uniform grlDashOffset: f32;uniform grlDashRatio: f32;uniform grlVisibility: f32;uniform grlColorsWidth: f32;uniform grl_colorModeAndColorDistributionType: vec2f;uniform grlColor: vec3f;varying grlCounters: f32;varying grlColorPointer: f32;\n#define CUSTOM_FRAGMENT_DEFINITIONS\n@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {\n#define CUSTOM_FRAGMENT_MAIN_BEGIN\nlet grlColorMode: f32=uniforms.grl_colorModeAndColorDistributionType.x;let grlColorDistributionType: f32=uniforms.grl_colorModeAndColorDistributionType.y;var outColor=vec4(uniforms.grlColor,1.);outColor.a=step(fragmentInputs.grlCounters,uniforms.grlVisibility);if (outColor.a==0.0) {discard;}\nif (uniforms.grlUseDash==1.0) {let dashPosition=(fragmentInputs.grlCounters+uniforms.grlDashOffset) % uniforms.grlDashArray;outColor.a*=ceil(dashPosition-(uniforms.grlDashArray*uniforms.grlDashRatio));if (outColor.a==0.0) {discard;}}\nif (uniforms.grlUseColors==1.) {\n#ifdef GREASED_LINE_COLOR_DISTRIBUTION_TYPE_LINE\nlet grlColor: vec4f=textureSample(grlColors,grlColorsSampler,vec2f(fragmentInputs.grlCounters,0.));\n#else\nlet lookup: vec2f=vec2(fract(fragmentInputs.grlColorPointer/uniforms.grlColorsWidth),1.0-floor(fragmentInputs.grlColorPointer/uniforms.grlColorsWidth));let grlColor: vec4f=textureSample(grlColors,grlColorsSampler,lookup);\n#endif\nif (grlColorMode==COLOR_MODE_SET) {outColor=grlColor;} else if (grlColorMode==COLOR_MODE_ADD) {outColor+=grlColor;} else if (grlColorMode==COLOR_MODE_MULTIPLY) {outColor*=grlColor;}}\n#if !defined(PREPASS) && !defined(ORDER_INDEPENDENT_TRANSPARENCY)\nfragmentOutputs.color=outColor;\n#endif\n#if ORDER_INDEPENDENT_TRANSPARENCY\nif (fragDepth==nearestDepth) {fragmentOutputs.frontColor=vec4f(fragmentOutputs.frontColor.rgb+outColor.rgb*outColor.a*alphaMultiplier,1.0-alphaMultiplier*(1.0-outColor.a));} else {fragmentOutputs.backColor+=outColor;}\n#endif\n#define CUSTOM_FRAGMENT_MAIN_END\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const greasedLinePixelShaderWGSL = { name, shader };\n"]}
@@ -46,7 +46,9 @@ vertexOutputs.grlCounters=input.grl_counters;vertexOutputs.position=grlMatrix*ve
46
46
  }
47
47
  `;
48
48
  // Sideeffect
49
- ShaderStore.ShadersStoreWGSL[name] = shader;
49
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
50
+ ShaderStore.ShadersStoreWGSL[name] = shader;
51
+ }
50
52
  /** @internal */
51
53
  export const greasedLineVertexShaderWGSL = { name, shader };
52
54
  //# sourceMappingURL=greasedLine.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"greasedLine.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/greasedLine.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/sceneUboDeclaration\";\nimport \"./ShadersInclude/meshUboDeclaration\";\nimport \"./ShadersInclude/instancesVertex\";\n\nconst name = \"greasedLineVertexShader\";\nconst shader = `#include<instancesDeclaration>\n#include<sceneUboDeclaration>\n#include<meshUboDeclaration>\nattribute grl_widths: f32;\n#ifdef GREASED_LINE_USE_OFFSETS\nattribute grl_offsets: vec3f; \n#endif\nattribute grl_colorPointers: f32;attribute position: vec3f;varying grlCounters: f32;varying grlColorPointer: f32;\n#ifdef GREASED_LINE_CAMERA_FACING\nattribute grl_nextAndCounters: vec4f;attribute grl_previousAndSide: vec4f;uniform grlResolution: vec2f;uniform grlAspect: f32;uniform grlWidth: f32;uniform grlSizeAttenuation: f32;fn grlFix(i: vec4f,aspect: f32)->vec2f {var res=i.xy/i.w;res.x*=aspect;return res;}\n#else\nattribute grl_slopes: vec3f;attribute grl_counters: f32;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {\n#define CUSTOM_VERTEX_MAIN_BEGIN\n#include<instancesVertex>\nvertexOutputs.grlColorPointer=input.grl_colorPointers;let grlMatrix: mat4x4f=scene.viewProjection*mesh.world ;\n#ifdef GREASED_LINE_CAMERA_FACING\nlet grlBaseWidth: f32=uniforms.grlWidth;let grlPrevious: vec3f=input.grl_previousAndSide.xyz;let grlSide: f32=input.grl_previousAndSide.w;let grlNext: vec3f=input.grl_nextAndCounters.xyz;vertexOutputs.grlCounters=input.grl_nextAndCounters.w;let grlWidth:f32=grlBaseWidth*input.grl_widths;\n#ifdef GREASED_LINE_USE_OFFSETS\nvar grlPositionOffset: vec3f=input.grl_offsets;\n#else\nvar grlPositionOffset=vec3f(0.);\n#endif\nlet positionUpdated: vec3f=vertexInputs.position+grlPositionOffset;let worldDir: vec3f=normalize(grlNext-grlPrevious);let nearPosition: vec3f=positionUpdated+(worldDir*0.001);let grlFinalPosition: vec4f=grlMatrix*vec4f(positionUpdated,1.0);let screenNearPos: vec4f=grlMatrix*vec4(nearPosition,1.0);let grlLinePosition: vec2f=grlFix(grlFinalPosition,uniforms.grlAspect);let grlLineNearPosition: vec2f=grlFix(screenNearPos,uniforms.grlAspect);let grlDir: vec2f=normalize(grlLineNearPosition-grlLinePosition);var grlNormal: vec4f=vec4f(-grlDir.y,grlDir.x,0.0,1.0);let grlHalfWidth: f32=0.5*grlWidth;\n#if defined(GREASED_LINE_RIGHT_HANDED_COORDINATE_SYSTEM)\ngrlNormal.x*=-grlHalfWidth;grlNormal.y*=-grlHalfWidth;\n#else\ngrlNormal.x*=grlHalfWidth;grlNormal.y*=grlHalfWidth;\n#endif\ngrlNormal*=scene.projection;if (uniforms.grlSizeAttenuation==1.) {grlNormal.x*=grlFinalPosition.w;grlNormal.y*=grlFinalPosition.w;let pr=vec4f(uniforms.grlResolution,0.0,1.0)*scene.projection;grlNormal.x/=pr.x;grlNormal.y/=pr.y;}\nvertexOutputs.position=vec4f(grlFinalPosition.xy+grlNormal.xy*grlSide,grlFinalPosition.z,grlFinalPosition.w);\n#else\nvertexOutputs.grlCounters=input.grl_counters;vertexOutputs.position=grlMatrix*vec4f((vertexInputs.position+input.grl_offsets)+input.grl_slopes*input.grl_widths,1.0) ;\n#endif\n#define CUSTOM_VERTEX_MAIN_END\n}\n`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const greasedLineVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"greasedLine.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/greasedLine.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/sceneUboDeclaration\";\nimport \"./ShadersInclude/meshUboDeclaration\";\nimport \"./ShadersInclude/instancesVertex\";\n\nconst name = \"greasedLineVertexShader\";\nconst shader = `#include<instancesDeclaration>\n#include<sceneUboDeclaration>\n#include<meshUboDeclaration>\nattribute grl_widths: f32;\n#ifdef GREASED_LINE_USE_OFFSETS\nattribute grl_offsets: vec3f; \n#endif\nattribute grl_colorPointers: f32;attribute position: vec3f;varying grlCounters: f32;varying grlColorPointer: f32;\n#ifdef GREASED_LINE_CAMERA_FACING\nattribute grl_nextAndCounters: vec4f;attribute grl_previousAndSide: vec4f;uniform grlResolution: vec2f;uniform grlAspect: f32;uniform grlWidth: f32;uniform grlSizeAttenuation: f32;fn grlFix(i: vec4f,aspect: f32)->vec2f {var res=i.xy/i.w;res.x*=aspect;return res;}\n#else\nattribute grl_slopes: vec3f;attribute grl_counters: f32;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {\n#define CUSTOM_VERTEX_MAIN_BEGIN\n#include<instancesVertex>\nvertexOutputs.grlColorPointer=input.grl_colorPointers;let grlMatrix: mat4x4f=scene.viewProjection*mesh.world ;\n#ifdef GREASED_LINE_CAMERA_FACING\nlet grlBaseWidth: f32=uniforms.grlWidth;let grlPrevious: vec3f=input.grl_previousAndSide.xyz;let grlSide: f32=input.grl_previousAndSide.w;let grlNext: vec3f=input.grl_nextAndCounters.xyz;vertexOutputs.grlCounters=input.grl_nextAndCounters.w;let grlWidth:f32=grlBaseWidth*input.grl_widths;\n#ifdef GREASED_LINE_USE_OFFSETS\nvar grlPositionOffset: vec3f=input.grl_offsets;\n#else\nvar grlPositionOffset=vec3f(0.);\n#endif\nlet positionUpdated: vec3f=vertexInputs.position+grlPositionOffset;let worldDir: vec3f=normalize(grlNext-grlPrevious);let nearPosition: vec3f=positionUpdated+(worldDir*0.001);let grlFinalPosition: vec4f=grlMatrix*vec4f(positionUpdated,1.0);let screenNearPos: vec4f=grlMatrix*vec4(nearPosition,1.0);let grlLinePosition: vec2f=grlFix(grlFinalPosition,uniforms.grlAspect);let grlLineNearPosition: vec2f=grlFix(screenNearPos,uniforms.grlAspect);let grlDir: vec2f=normalize(grlLineNearPosition-grlLinePosition);var grlNormal: vec4f=vec4f(-grlDir.y,grlDir.x,0.0,1.0);let grlHalfWidth: f32=0.5*grlWidth;\n#if defined(GREASED_LINE_RIGHT_HANDED_COORDINATE_SYSTEM)\ngrlNormal.x*=-grlHalfWidth;grlNormal.y*=-grlHalfWidth;\n#else\ngrlNormal.x*=grlHalfWidth;grlNormal.y*=grlHalfWidth;\n#endif\ngrlNormal*=scene.projection;if (uniforms.grlSizeAttenuation==1.) {grlNormal.x*=grlFinalPosition.w;grlNormal.y*=grlFinalPosition.w;let pr=vec4f(uniforms.grlResolution,0.0,1.0)*scene.projection;grlNormal.x/=pr.x;grlNormal.y/=pr.y;}\nvertexOutputs.position=vec4f(grlFinalPosition.xy+grlNormal.xy*grlSide,grlFinalPosition.z,grlFinalPosition.w);\n#else\nvertexOutputs.grlCounters=input.grl_counters;vertexOutputs.position=grlMatrix*vec4f((vertexInputs.position+input.grl_offsets)+input.grl_slopes*input.grl_widths,1.0) ;\n#endif\n#define CUSTOM_VERTEX_MAIN_END\n}\n`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const greasedLineVertexShaderWGSL = { name, shader };\n"]}
@@ -12,7 +12,9 @@ const shader = `#include<helperFunctions>
12
12
  uniform alphaG: f32;var inputTextureSampler: sampler;var inputTexture: texture_cube<f32>;uniform vFilteringInfo: vec2f;uniform hdrScale: f32;varying direction: vec3f;@fragment
13
13
  fn main(input: FragmentInputs)->FragmentOutputs {var color: vec3f=radiance(uniforms.alphaG,inputTexture,inputTextureSampler,input.direction,uniforms.vFilteringInfo);fragmentOutputs.color= vec4f(color*uniforms.hdrScale,1.0);}`;
14
14
  // Sideeffect
15
- ShaderStore.ShadersStoreWGSL[name] = shader;
15
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
16
+ ShaderStore.ShadersStoreWGSL[name] = shader;
17
+ }
16
18
  /** @internal */
17
19
  export const hdrFilteringPixelShaderWGSL = { name, shader };
18
20
  //# sourceMappingURL=hdrFiltering.fragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hdrFiltering.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/hdrFiltering.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,wCAAwC,CAAC;AAEhD,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;iOAKkN,CAAC;AAClO,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/importanceSampling\";\nimport \"./ShadersInclude/pbrBRDFFunctions\";\nimport \"./ShadersInclude/hdrFilteringFunctions\";\n\nconst name = \"hdrFilteringPixelShader\";\nconst shader = `#include<helperFunctions>\n#include<importanceSampling>\n#include<pbrBRDFFunctions>\n#include<hdrFilteringFunctions>\nuniform alphaG: f32;var inputTextureSampler: sampler;var inputTexture: texture_cube<f32>;uniform vFilteringInfo: vec2f;uniform hdrScale: f32;varying direction: vec3f;@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {var color: vec3f=radiance(uniforms.alphaG,inputTexture,inputTextureSampler,input.direction,uniforms.vFilteringInfo);fragmentOutputs.color= vec4f(color*uniforms.hdrScale,1.0);}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const hdrFilteringPixelShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"hdrFiltering.fragment.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/hdrFiltering.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,mCAAmC,CAAC;AAC3C,OAAO,wCAAwC,CAAC;AAEhD,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;iOAKkN,CAAC;AAClO,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/importanceSampling\";\nimport \"./ShadersInclude/pbrBRDFFunctions\";\nimport \"./ShadersInclude/hdrFilteringFunctions\";\n\nconst name = \"hdrFilteringPixelShader\";\nconst shader = `#include<helperFunctions>\n#include<importanceSampling>\n#include<pbrBRDFFunctions>\n#include<hdrFilteringFunctions>\nuniform alphaG: f32;var inputTextureSampler: sampler;var inputTexture: texture_cube<f32>;uniform vFilteringInfo: vec2f;uniform hdrScale: f32;varying direction: vec3f;@fragment\nfn main(input: FragmentInputs)->FragmentOutputs {var color: vec3f=radiance(uniforms.alphaG,inputTexture,inputTextureSampler,input.direction,uniforms.vFilteringInfo);fragmentOutputs.color= vec4f(color*uniforms.hdrScale,1.0);}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const hdrFilteringPixelShaderWGSL = { name, shader };\n"]}
@@ -10,7 +10,9 @@ var view: mat3x3f= mat3x3f(uniforms.up,uniforms.right,uniforms.front);vertexOutp
10
10
  #define CUSTOM_VERTEX_MAIN_END
11
11
  }`;
12
12
  // Sideeffect
13
- ShaderStore.ShadersStoreWGSL[name] = shader;
13
+ if (!ShaderStore.ShadersStoreWGSL[name]) {
14
+ ShaderStore.ShadersStoreWGSL[name] = shader;
15
+ }
14
16
  /** @internal */
15
17
  export const hdrFilteringVertexShaderWGSL = { name, shader };
16
18
  //# sourceMappingURL=hdrFiltering.vertex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hdrFiltering.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/hdrFiltering.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;EAOb,CAAC;AACH,aAAa;AACb,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"hdrFilteringVertexShader\";\nconst shader = `attribute position: vec2f;varying direction: vec3f;uniform up: vec3f;uniform right: vec3f;uniform front: vec3f;\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvar view: mat3x3f= mat3x3f(uniforms.up,uniforms.right,uniforms.front);vertexOutputs.direction=view*vec3f(input.position,1.0);vertexOutputs.position= vec4f(input.position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nShaderStore.ShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const hdrFilteringVertexShaderWGSL = { name, shader };\n"]}
1
+ {"version":3,"file":"hdrFiltering.vertex.js","sourceRoot":"","sources":["../../../../dev/core/src/ShadersWGSL/hdrFiltering.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;EAOb,CAAC;AACH,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACtC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\n\nconst name = \"hdrFilteringVertexShader\";\nconst shader = `attribute position: vec2f;varying direction: vec3f;uniform up: vec3f;uniform right: vec3f;uniform front: vec3f;\n#define CUSTOM_VERTEX_DEFINITIONS\n@vertex\nfn main(input : VertexInputs)->FragmentInputs {\n#define CUSTOM_VERTEX_MAIN_BEGIN\nvar view: mat3x3f= mat3x3f(uniforms.up,uniforms.right,uniforms.front);vertexOutputs.direction=view*vec3f(input.position,1.0);vertexOutputs.position= vec4f(input.position,0.0,1.0);\n#define CUSTOM_VERTEX_MAIN_END\n}`;\n// Sideeffect\nif (!ShaderStore.ShadersStoreWGSL[name]) {\n ShaderStore.ShadersStoreWGSL[name] = shader;\n}\n/** @internal */\nexport const hdrFilteringVertexShaderWGSL = { name, shader };\n"]}