@babylonjs/core 7.53.3 → 7.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1196) hide show
  1. package/AudioV2/abstractAudio/audioEngineV2.d.ts +11 -1
  2. package/AudioV2/abstractAudio/audioEngineV2.js +14 -1
  3. package/AudioV2/abstractAudio/audioEngineV2.js.map +1 -1
  4. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.d.ts +2 -0
  5. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.js +6 -6
  6. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.js.map +1 -1
  7. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.d.ts +3 -0
  8. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.js +4 -2
  9. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.js.map +1 -1
  10. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.d.ts +3 -0
  11. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.js +4 -2
  12. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.js.map +1 -1
  13. package/AudioV2/webAudio/subProperties/spatialWebAudioListener.js +10 -9
  14. package/AudioV2/webAudio/subProperties/spatialWebAudioListener.js.map +1 -1
  15. package/AudioV2/webAudio/webAudioEngine.d.ts +12 -0
  16. package/AudioV2/webAudio/webAudioEngine.js +16 -2
  17. package/AudioV2/webAudio/webAudioEngine.js.map +1 -1
  18. package/AudioV2/webAudio/webAudioMainOut.d.ts +3 -0
  19. package/AudioV2/webAudio/webAudioMainOut.js +4 -2
  20. package/AudioV2/webAudio/webAudioMainOut.js.map +1 -1
  21. package/AudioV2/webAudio/webAudioStaticSound.js +2 -2
  22. package/AudioV2/webAudio/webAudioStaticSound.js.map +1 -1
  23. package/AudioV2/webAudio/webAudioUnmuteUI.d.ts +15 -0
  24. package/AudioV2/webAudio/webAudioUnmuteUI.js +45 -0
  25. package/AudioV2/webAudio/webAudioUnmuteUI.js.map +1 -0
  26. package/Behaviors/Meshes/pointerDragBehavior.js +10 -0
  27. package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
  28. package/Cameras/Inputs/BaseCameraPointersInput.d.ts +4 -1
  29. package/Cameras/Inputs/BaseCameraPointersInput.js +10 -7
  30. package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
  31. package/DeviceInput/webDeviceInputSystem.js +21 -3
  32. package/DeviceInput/webDeviceInputSystem.js.map +1 -1
  33. package/Engines/abstractEngine.js +2 -2
  34. package/Engines/abstractEngine.js.map +1 -1
  35. package/Engines/thinEngine.d.ts +2 -1
  36. package/Engines/thinEngine.js +10 -2
  37. package/Engines/thinEngine.js.map +1 -1
  38. package/Engines/webgpuEngine.d.ts +2 -1
  39. package/Engines/webgpuEngine.js +3 -2
  40. package/Engines/webgpuEngine.js.map +1 -1
  41. package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.js +3 -0
  42. package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.js.map +1 -1
  43. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.d.ts +16 -1
  44. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js +33 -1
  45. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js.map +1 -1
  46. package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.js +4 -4
  47. package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.js.map +1 -1
  48. package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.js +4 -4
  49. package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.js.map +1 -1
  50. package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.js +2 -2
  51. package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.js.map +1 -1
  52. package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.js +4 -4
  53. package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.js.map +1 -1
  54. package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.js +25 -15
  55. package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.js.map +1 -1
  56. package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js +6 -6
  57. package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js.map +1 -1
  58. package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js +4 -2
  59. package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js.map +1 -1
  60. package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js +2 -0
  61. package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js.map +1 -1
  62. package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.js +2 -0
  63. package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.js.map +1 -1
  64. package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js +4 -2
  65. package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js.map +1 -1
  66. package/FrameGraph/Node/Blocks/Textures/clearBlock.js +4 -4
  67. package/FrameGraph/Node/Blocks/Textures/clearBlock.js.map +1 -1
  68. package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js +4 -4
  69. package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js.map +1 -1
  70. package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js +2 -2
  71. package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js.map +1 -1
  72. package/FrameGraph/Node/Blocks/{Rendering/cullObjectsBlock.d.ts → cullObjectsBlock.d.ts} +3 -3
  73. package/FrameGraph/Node/Blocks/{Rendering/cullObjectsBlock.js → cullObjectsBlock.js} +4 -4
  74. package/FrameGraph/Node/Blocks/cullObjectsBlock.js.map +1 -0
  75. package/FrameGraph/Node/Blocks/executeBlock.js +1 -2
  76. package/FrameGraph/Node/Blocks/executeBlock.js.map +1 -1
  77. package/FrameGraph/Node/Blocks/index.d.ts +1 -1
  78. package/FrameGraph/Node/Blocks/index.js +1 -1
  79. package/FrameGraph/Node/Blocks/index.js.map +1 -1
  80. package/FrameGraph/Node/Blocks/resourceContainerBlock.js +16 -16
  81. package/FrameGraph/Node/Blocks/resourceContainerBlock.js.map +1 -1
  82. package/FrameGraph/Node/nodeRenderGraphBlock.d.ts +1 -1
  83. package/FrameGraph/Node/nodeRenderGraphBlock.js +5 -4
  84. package/FrameGraph/Node/nodeRenderGraphBlock.js.map +1 -1
  85. package/FrameGraph/Tasks/Layers/baseLayerTask.js +4 -4
  86. package/FrameGraph/Tasks/Layers/baseLayerTask.js.map +1 -1
  87. package/FrameGraph/Tasks/Misc/cullObjectsTask.js.map +1 -0
  88. package/FrameGraph/Tasks/PostProcesses/bloomTask.js +2 -2
  89. package/FrameGraph/Tasks/PostProcesses/bloomTask.js.map +1 -1
  90. package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js +2 -2
  91. package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js.map +1 -1
  92. package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.js +4 -4
  93. package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.js.map +1 -1
  94. package/FrameGraph/index.d.ts +1 -1
  95. package/FrameGraph/index.js +1 -1
  96. package/FrameGraph/index.js.map +1 -1
  97. package/Gizmos/gizmo.js +25 -17
  98. package/Gizmos/gizmo.js.map +1 -1
  99. package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +1 -0
  100. package/Materials/PBR/pbrSubSurfaceConfiguration.js +3 -0
  101. package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
  102. package/Materials/material.js +1 -1
  103. package/Materials/material.js.map +1 -1
  104. package/Meshes/Node/Blocks/conditionBlock.d.ts +4 -0
  105. package/Meshes/Node/Blocks/conditionBlock.js +19 -8
  106. package/Meshes/Node/Blocks/conditionBlock.js.map +1 -1
  107. package/Misc/decorators.js +2 -2
  108. package/Misc/decorators.js.map +1 -1
  109. package/Physics/v2/Plugins/havokPlugin.js +1 -0
  110. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  111. package/PostProcesses/subSurfaceScatteringPostProcess.d.ts +3 -0
  112. package/PostProcesses/subSurfaceScatteringPostProcess.js +16 -1
  113. package/PostProcesses/subSurfaceScatteringPostProcess.js.map +1 -1
  114. package/Rendering/subSurfaceConfiguration.js +5 -1
  115. package/Rendering/subSurfaceConfiguration.js.map +1 -1
  116. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js +3 -1
  117. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js.map +1 -1
  118. package/Shaders/ShadersInclude/backgroundUboDeclaration.js +3 -1
  119. package/Shaders/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  120. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js +3 -1
  121. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js.map +1 -1
  122. package/Shaders/ShadersInclude/bakedVertexAnimation.js +3 -1
  123. package/Shaders/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  124. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js +3 -1
  125. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  126. package/Shaders/ShadersInclude/bayerDitherFunctions.js +3 -1
  127. package/Shaders/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  128. package/Shaders/ShadersInclude/bonesDeclaration.js +3 -1
  129. package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
  130. package/Shaders/ShadersInclude/bonesVertex.js +3 -1
  131. package/Shaders/ShadersInclude/bonesVertex.js.map +1 -1
  132. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js +3 -1
  133. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js.map +1 -1
  134. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js +3 -1
  135. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js.map +1 -1
  136. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js +3 -1
  137. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js.map +1 -1
  138. package/Shaders/ShadersInclude/bumpFragment.js +3 -1
  139. package/Shaders/ShadersInclude/bumpFragment.js.map +1 -1
  140. package/Shaders/ShadersInclude/bumpFragmentFunctions.js +3 -1
  141. package/Shaders/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  142. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js +3 -1
  143. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  144. package/Shaders/ShadersInclude/bumpVertex.js +3 -1
  145. package/Shaders/ShadersInclude/bumpVertex.js.map +1 -1
  146. package/Shaders/ShadersInclude/bumpVertexDeclaration.js +3 -1
  147. package/Shaders/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  148. package/Shaders/ShadersInclude/clipPlaneFragment.js +3 -1
  149. package/Shaders/ShadersInclude/clipPlaneFragment.js.map +1 -1
  150. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js +3 -1
  151. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  152. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js +3 -1
  153. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js.map +1 -1
  154. package/Shaders/ShadersInclude/clipPlaneVertex.js +3 -1
  155. package/Shaders/ShadersInclude/clipPlaneVertex.js.map +1 -1
  156. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js +3 -1
  157. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  158. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js +3 -1
  159. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js.map +1 -1
  160. package/Shaders/ShadersInclude/decalFragment.js +3 -1
  161. package/Shaders/ShadersInclude/decalFragment.js.map +1 -1
  162. package/Shaders/ShadersInclude/decalFragmentDeclaration.js +3 -1
  163. package/Shaders/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  164. package/Shaders/ShadersInclude/decalVertexDeclaration.js +3 -1
  165. package/Shaders/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  166. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +3 -1
  167. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
  168. package/Shaders/ShadersInclude/defaultUboDeclaration.js +3 -1
  169. package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  170. package/Shaders/ShadersInclude/defaultVertexDeclaration.js +3 -1
  171. package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
  172. package/Shaders/ShadersInclude/depthPrePass.js +3 -1
  173. package/Shaders/ShadersInclude/depthPrePass.js.map +1 -1
  174. package/Shaders/ShadersInclude/diffusionProfile.js +3 -1
  175. package/Shaders/ShadersInclude/diffusionProfile.js.map +1 -1
  176. package/Shaders/ShadersInclude/fibonacci.js +3 -2
  177. package/Shaders/ShadersInclude/fibonacci.js.map +1 -1
  178. package/Shaders/ShadersInclude/fogFragment.js +3 -1
  179. package/Shaders/ShadersInclude/fogFragment.js.map +1 -1
  180. package/Shaders/ShadersInclude/fogFragmentDeclaration.js +3 -1
  181. package/Shaders/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  182. package/Shaders/ShadersInclude/fogVertex.js +3 -1
  183. package/Shaders/ShadersInclude/fogVertex.js.map +1 -1
  184. package/Shaders/ShadersInclude/fogVertexDeclaration.js +3 -1
  185. package/Shaders/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  186. package/Shaders/ShadersInclude/fresnelFunction.js +3 -1
  187. package/Shaders/ShadersInclude/fresnelFunction.js.map +1 -1
  188. package/Shaders/ShadersInclude/gaussianSplatting.js +3 -1
  189. package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
  190. package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.js +3 -1
  191. package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
  192. package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.js +3 -1
  193. package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.js.map +1 -1
  194. package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js +3 -1
  195. package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
  196. package/Shaders/ShadersInclude/geometryUboDeclaration.js +3 -1
  197. package/Shaders/ShadersInclude/geometryUboDeclaration.js.map +1 -1
  198. package/Shaders/ShadersInclude/geometryVertexDeclaration.js +3 -1
  199. package/Shaders/ShadersInclude/geometryVertexDeclaration.js.map +1 -1
  200. package/Shaders/ShadersInclude/harmonicsFunctions.js +3 -1
  201. package/Shaders/ShadersInclude/harmonicsFunctions.js.map +1 -1
  202. package/Shaders/ShadersInclude/hdrFilteringFunctions.js +3 -1
  203. package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  204. package/Shaders/ShadersInclude/helperFunctions.js +3 -1
  205. package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
  206. package/Shaders/ShadersInclude/imageProcessingCompatibility.js +3 -1
  207. package/Shaders/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  208. package/Shaders/ShadersInclude/imageProcessingDeclaration.js +3 -1
  209. package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  210. package/Shaders/ShadersInclude/imageProcessingFunctions.js +3 -1
  211. package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  212. package/Shaders/ShadersInclude/importanceSampling.js +3 -1
  213. package/Shaders/ShadersInclude/importanceSampling.js.map +1 -1
  214. package/Shaders/ShadersInclude/instancesDeclaration.js +3 -1
  215. package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
  216. package/Shaders/ShadersInclude/instancesVertex.js +3 -1
  217. package/Shaders/ShadersInclude/instancesVertex.js.map +1 -1
  218. package/Shaders/ShadersInclude/intersectionFunctions.js +3 -1
  219. package/Shaders/ShadersInclude/intersectionFunctions.js.map +1 -1
  220. package/Shaders/ShadersInclude/kernelBlurFragment.js +3 -1
  221. package/Shaders/ShadersInclude/kernelBlurFragment.js.map +1 -1
  222. package/Shaders/ShadersInclude/kernelBlurFragment2.js +3 -1
  223. package/Shaders/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  224. package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js +3 -1
  225. package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
  226. package/Shaders/ShadersInclude/kernelBlurVertex.js +3 -1
  227. package/Shaders/ShadersInclude/kernelBlurVertex.js.map +1 -1
  228. package/Shaders/ShadersInclude/lightFragment.js +3 -1
  229. package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
  230. package/Shaders/ShadersInclude/lightFragmentDeclaration.js +3 -1
  231. package/Shaders/ShadersInclude/lightFragmentDeclaration.js.map +1 -1
  232. package/Shaders/ShadersInclude/lightUboDeclaration.js +3 -1
  233. package/Shaders/ShadersInclude/lightUboDeclaration.js.map +1 -1
  234. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js +3 -1
  235. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  236. package/Shaders/ShadersInclude/lightVxUboDeclaration.js +3 -1
  237. package/Shaders/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  238. package/Shaders/ShadersInclude/lightsFragmentFunctions.js +3 -1
  239. package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  240. package/Shaders/ShadersInclude/lineUboDeclaration.js +3 -1
  241. package/Shaders/ShadersInclude/lineUboDeclaration.js.map +1 -1
  242. package/Shaders/ShadersInclude/lineVertexDeclaration.js +3 -1
  243. package/Shaders/ShadersInclude/lineVertexDeclaration.js.map +1 -1
  244. package/Shaders/ShadersInclude/logDepthDeclaration.js +3 -1
  245. package/Shaders/ShadersInclude/logDepthDeclaration.js.map +1 -1
  246. package/Shaders/ShadersInclude/logDepthFragment.js +3 -1
  247. package/Shaders/ShadersInclude/logDepthFragment.js.map +1 -1
  248. package/Shaders/ShadersInclude/logDepthVertex.js +3 -1
  249. package/Shaders/ShadersInclude/logDepthVertex.js.map +1 -1
  250. package/Shaders/ShadersInclude/ltcHelperFunctions.js +3 -1
  251. package/Shaders/ShadersInclude/ltcHelperFunctions.js.map +1 -1
  252. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js +3 -1
  253. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  254. package/Shaders/ShadersInclude/meshFragmentDeclaration.js +3 -1
  255. package/Shaders/ShadersInclude/meshFragmentDeclaration.js.map +1 -1
  256. package/Shaders/ShadersInclude/meshUboDeclaration.js +3 -1
  257. package/Shaders/ShadersInclude/meshUboDeclaration.js.map +1 -1
  258. package/Shaders/ShadersInclude/meshVertexDeclaration.js +3 -1
  259. package/Shaders/ShadersInclude/meshVertexDeclaration.js.map +1 -1
  260. package/Shaders/ShadersInclude/morphTargetsVertex.js +3 -1
  261. package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
  262. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js +3 -1
  263. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  264. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js +3 -1
  265. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  266. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -1
  267. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  268. package/Shaders/ShadersInclude/mrtFragmentDeclaration.js +3 -1
  269. package/Shaders/ShadersInclude/mrtFragmentDeclaration.js.map +1 -1
  270. package/Shaders/ShadersInclude/oitDeclaration.js +3 -1
  271. package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
  272. package/Shaders/ShadersInclude/oitFragment.js +3 -1
  273. package/Shaders/ShadersInclude/oitFragment.js.map +1 -1
  274. package/Shaders/ShadersInclude/packingFunctions.js +3 -1
  275. package/Shaders/ShadersInclude/packingFunctions.js.map +1 -1
  276. package/Shaders/ShadersInclude/pbrBRDFFunctions.js +3 -1
  277. package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  278. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -1
  279. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  280. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +3 -1
  281. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  282. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +3 -1
  283. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  284. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +3 -1
  285. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  286. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +3 -1
  287. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  288. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +3 -1
  289. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  290. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +3 -1
  291. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  292. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js +5 -2
  293. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  294. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +3 -1
  295. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  296. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js +3 -1
  297. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  298. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js +3 -1
  299. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  300. package/Shaders/ShadersInclude/pbrBlockIridescence.js +3 -1
  301. package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  302. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js +3 -1
  303. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  304. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js +3 -1
  305. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  306. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js +3 -1
  307. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  308. package/Shaders/ShadersInclude/pbrBlockPrePass.js +3 -1
  309. package/Shaders/ShadersInclude/pbrBlockPrePass.js.map +1 -1
  310. package/Shaders/ShadersInclude/pbrBlockReflectance.js +3 -1
  311. package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  312. package/Shaders/ShadersInclude/pbrBlockReflectance0.js +3 -1
  313. package/Shaders/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  314. package/Shaders/ShadersInclude/pbrBlockReflection.js +3 -1
  315. package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
  316. package/Shaders/ShadersInclude/pbrBlockReflectivity.js +3 -1
  317. package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  318. package/Shaders/ShadersInclude/pbrBlockSheen.js +3 -1
  319. package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
  320. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +3 -1
  321. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  322. package/Shaders/ShadersInclude/pbrDebug.js +3 -1
  323. package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
  324. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js +3 -1
  325. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  326. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +3 -1
  327. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  328. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +3 -1
  329. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  330. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +3 -1
  331. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
  332. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +3 -1
  333. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  334. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +3 -1
  335. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  336. package/Shaders/ShadersInclude/pbrHelperFunctions.js +3 -1
  337. package/Shaders/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  338. package/Shaders/ShadersInclude/pbrIBLFunctions.js +3 -1
  339. package/Shaders/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  340. package/Shaders/ShadersInclude/pbrUboDeclaration.js +3 -1
  341. package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  342. package/Shaders/ShadersInclude/pbrVertexDeclaration.js +3 -1
  343. package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
  344. package/Shaders/ShadersInclude/pointCloudVertex.js +3 -1
  345. package/Shaders/ShadersInclude/pointCloudVertex.js.map +1 -1
  346. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js +3 -1
  347. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  348. package/Shaders/ShadersInclude/prePassDeclaration.js +3 -1
  349. package/Shaders/ShadersInclude/prePassDeclaration.js.map +1 -1
  350. package/Shaders/ShadersInclude/prePassVertex.js +3 -1
  351. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  352. package/Shaders/ShadersInclude/prePassVertexDeclaration.js +3 -1
  353. package/Shaders/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  354. package/Shaders/ShadersInclude/reflectionFunction.js +3 -1
  355. package/Shaders/ShadersInclude/reflectionFunction.js.map +1 -1
  356. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js +3 -1
  357. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  358. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js +3 -1
  359. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  360. package/Shaders/ShadersInclude/samplerVertexDeclaration.js +3 -1
  361. package/Shaders/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  362. package/Shaders/ShadersInclude/samplerVertexImplementation.js +3 -1
  363. package/Shaders/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  364. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js +3 -1
  365. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js.map +1 -1
  366. package/Shaders/ShadersInclude/sceneUboDeclaration.js +3 -1
  367. package/Shaders/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  368. package/Shaders/ShadersInclude/sceneVertexDeclaration.js +3 -1
  369. package/Shaders/ShadersInclude/sceneVertexDeclaration.js.map +1 -1
  370. package/Shaders/ShadersInclude/screenSpaceRayTrace.js +3 -1
  371. package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  372. package/Shaders/ShadersInclude/shadowMapFragment.js +3 -1
  373. package/Shaders/ShadersInclude/shadowMapFragment.js.map +1 -1
  374. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js +3 -1
  375. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  376. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +3 -1
  377. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  378. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js +3 -1
  379. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js.map +1 -1
  380. package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js +3 -1
  381. package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js.map +1 -1
  382. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js +3 -1
  383. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  384. package/Shaders/ShadersInclude/shadowMapVertexMetric.js +3 -1
  385. package/Shaders/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  386. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js +3 -1
  387. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  388. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +3 -1
  389. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  390. package/Shaders/ShadersInclude/shadowsVertex.js +3 -1
  391. package/Shaders/ShadersInclude/shadowsVertex.js.map +1 -1
  392. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js +3 -1
  393. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  394. package/Shaders/ShadersInclude/uvAttributeDeclaration.js +3 -1
  395. package/Shaders/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  396. package/Shaders/ShadersInclude/uvVariableDeclaration.js +3 -1
  397. package/Shaders/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  398. package/Shaders/ShadersInclude/vertexColorMixing.js +3 -1
  399. package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
  400. package/Shaders/anaglyph.fragment.js +3 -1
  401. package/Shaders/anaglyph.fragment.js.map +1 -1
  402. package/Shaders/background.fragment.js +3 -1
  403. package/Shaders/background.fragment.js.map +1 -1
  404. package/Shaders/background.vertex.js +3 -1
  405. package/Shaders/background.vertex.js.map +1 -1
  406. package/Shaders/bilateralBlur.fragment.js +3 -1
  407. package/Shaders/bilateralBlur.fragment.js.map +1 -1
  408. package/Shaders/bilateralBlurQuality.fragment.js +3 -1
  409. package/Shaders/bilateralBlurQuality.fragment.js.map +1 -1
  410. package/Shaders/blackAndWhite.fragment.js +3 -1
  411. package/Shaders/blackAndWhite.fragment.js.map +1 -1
  412. package/Shaders/bloomMerge.fragment.js +3 -1
  413. package/Shaders/bloomMerge.fragment.js.map +1 -1
  414. package/Shaders/boundingBoxRenderer.fragment.js +3 -1
  415. package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
  416. package/Shaders/boundingBoxRenderer.vertex.js +3 -1
  417. package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
  418. package/Shaders/chromaticAberration.fragment.js +3 -1
  419. package/Shaders/chromaticAberration.fragment.js.map +1 -1
  420. package/Shaders/circleOfConfusion.fragment.js +3 -1
  421. package/Shaders/circleOfConfusion.fragment.js.map +1 -1
  422. package/Shaders/color.fragment.js +3 -1
  423. package/Shaders/color.fragment.js.map +1 -1
  424. package/Shaders/color.vertex.js +3 -1
  425. package/Shaders/color.vertex.js.map +1 -1
  426. package/Shaders/colorCorrection.fragment.js +3 -1
  427. package/Shaders/colorCorrection.fragment.js.map +1 -1
  428. package/Shaders/convolution.fragment.js +3 -1
  429. package/Shaders/convolution.fragment.js.map +1 -1
  430. package/Shaders/copyTexture3DLayerToTexture.fragment.js +3 -1
  431. package/Shaders/copyTexture3DLayerToTexture.fragment.js.map +1 -1
  432. package/Shaders/copyTextureToTexture.fragment.js +3 -1
  433. package/Shaders/copyTextureToTexture.fragment.js.map +1 -1
  434. package/Shaders/default.fragment.js +3 -1
  435. package/Shaders/default.fragment.js.map +1 -1
  436. package/Shaders/default.vertex.js +3 -1
  437. package/Shaders/default.vertex.js.map +1 -1
  438. package/Shaders/depth.fragment.js +3 -1
  439. package/Shaders/depth.fragment.js.map +1 -1
  440. package/Shaders/depth.vertex.js +3 -1
  441. package/Shaders/depth.vertex.js.map +1 -1
  442. package/Shaders/depthBoxBlur.fragment.js +3 -1
  443. package/Shaders/depthBoxBlur.fragment.js.map +1 -1
  444. package/Shaders/depthOfField.fragment.js +3 -1
  445. package/Shaders/depthOfField.fragment.js.map +1 -1
  446. package/Shaders/depthOfFieldMerge.fragment.js +3 -1
  447. package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
  448. package/Shaders/displayPass.fragment.js +3 -1
  449. package/Shaders/displayPass.fragment.js.map +1 -1
  450. package/Shaders/equirectangularPanorama.fragment.js +3 -1
  451. package/Shaders/equirectangularPanorama.fragment.js.map +1 -1
  452. package/Shaders/extractHighlights.fragment.js +3 -1
  453. package/Shaders/extractHighlights.fragment.js.map +1 -1
  454. package/Shaders/filter.fragment.js +3 -1
  455. package/Shaders/filter.fragment.js.map +1 -1
  456. package/Shaders/fluidRenderingBilateralBlur.fragment.js +3 -1
  457. package/Shaders/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  458. package/Shaders/fluidRenderingParticleDepth.fragment.js +3 -1
  459. package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
  460. package/Shaders/fluidRenderingParticleDepth.vertex.js +3 -1
  461. package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
  462. package/Shaders/fluidRenderingParticleDiffuse.fragment.js +3 -1
  463. package/Shaders/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  464. package/Shaders/fluidRenderingParticleDiffuse.vertex.js +3 -1
  465. package/Shaders/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  466. package/Shaders/fluidRenderingParticleThickness.fragment.js +3 -1
  467. package/Shaders/fluidRenderingParticleThickness.fragment.js.map +1 -1
  468. package/Shaders/fluidRenderingParticleThickness.vertex.js +3 -1
  469. package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
  470. package/Shaders/fluidRenderingRender.fragment.js +3 -1
  471. package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
  472. package/Shaders/fluidRenderingStandardBlur.fragment.js +3 -1
  473. package/Shaders/fluidRenderingStandardBlur.fragment.js.map +1 -1
  474. package/Shaders/fxaa.fragment.js +3 -1
  475. package/Shaders/fxaa.fragment.js.map +1 -1
  476. package/Shaders/fxaa.vertex.js +3 -1
  477. package/Shaders/fxaa.vertex.js.map +1 -1
  478. package/Shaders/gaussianSplatting.fragment.js +3 -1
  479. package/Shaders/gaussianSplatting.fragment.js.map +1 -1
  480. package/Shaders/gaussianSplatting.vertex.js +3 -1
  481. package/Shaders/gaussianSplatting.vertex.js.map +1 -1
  482. package/Shaders/geometry.fragment.js +3 -1
  483. package/Shaders/geometry.fragment.js.map +1 -1
  484. package/Shaders/geometry.vertex.js +3 -1
  485. package/Shaders/geometry.vertex.js.map +1 -1
  486. package/Shaders/glowBlurPostProcess.fragment.js +3 -1
  487. package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
  488. package/Shaders/glowMapGeneration.fragment.js +3 -1
  489. package/Shaders/glowMapGeneration.fragment.js.map +1 -1
  490. package/Shaders/glowMapGeneration.vertex.js +3 -1
  491. package/Shaders/glowMapGeneration.vertex.js.map +1 -1
  492. package/Shaders/glowMapMerge.fragment.js +3 -1
  493. package/Shaders/glowMapMerge.fragment.js.map +1 -1
  494. package/Shaders/glowMapMerge.vertex.js +3 -1
  495. package/Shaders/glowMapMerge.vertex.js.map +1 -1
  496. package/Shaders/gpuRenderParticles.fragment.js +3 -1
  497. package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
  498. package/Shaders/gpuRenderParticles.vertex.js +3 -1
  499. package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
  500. package/Shaders/gpuTransform.fragment.js +3 -1
  501. package/Shaders/gpuTransform.fragment.js.map +1 -1
  502. package/Shaders/gpuTransform.vertex.js +3 -1
  503. package/Shaders/gpuTransform.vertex.js.map +1 -1
  504. package/Shaders/gpuUpdateParticles.fragment.js +3 -1
  505. package/Shaders/gpuUpdateParticles.fragment.js.map +1 -1
  506. package/Shaders/gpuUpdateParticles.vertex.js +3 -1
  507. package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
  508. package/Shaders/grain.fragment.js +3 -1
  509. package/Shaders/grain.fragment.js.map +1 -1
  510. package/Shaders/greasedLine.fragment.js +3 -1
  511. package/Shaders/greasedLine.fragment.js.map +1 -1
  512. package/Shaders/greasedLine.vertex.js +3 -1
  513. package/Shaders/greasedLine.vertex.js.map +1 -1
  514. package/Shaders/hdrFiltering.fragment.js +3 -1
  515. package/Shaders/hdrFiltering.fragment.js.map +1 -1
  516. package/Shaders/hdrFiltering.vertex.js +3 -1
  517. package/Shaders/hdrFiltering.vertex.js.map +1 -1
  518. package/Shaders/hdrIrradianceFiltering.fragment.js +3 -1
  519. package/Shaders/hdrIrradianceFiltering.fragment.js.map +1 -1
  520. package/Shaders/hdrIrradianceFiltering.vertex.js +3 -1
  521. package/Shaders/hdrIrradianceFiltering.vertex.js.map +1 -1
  522. package/Shaders/highlights.fragment.js +3 -1
  523. package/Shaders/highlights.fragment.js.map +1 -1
  524. package/Shaders/iblCdfDebug.fragment.js +3 -1
  525. package/Shaders/iblCdfDebug.fragment.js.map +1 -1
  526. package/Shaders/iblCdfx.fragment.js +3 -1
  527. package/Shaders/iblCdfx.fragment.js.map +1 -1
  528. package/Shaders/iblCdfy.fragment.js +3 -1
  529. package/Shaders/iblCdfy.fragment.js.map +1 -1
  530. package/Shaders/iblCombineVoxelGrids.fragment.js +3 -1
  531. package/Shaders/iblCombineVoxelGrids.fragment.js.map +1 -1
  532. package/Shaders/iblGenerateVoxelMip.fragment.js +3 -1
  533. package/Shaders/iblGenerateVoxelMip.fragment.js.map +1 -1
  534. package/Shaders/iblIcdf.fragment.js +3 -1
  535. package/Shaders/iblIcdf.fragment.js.map +1 -1
  536. package/Shaders/iblScaledLuminance.fragment.js +3 -1
  537. package/Shaders/iblScaledLuminance.fragment.js.map +1 -1
  538. package/Shaders/iblShadowAccumulation.fragment.js +3 -1
  539. package/Shaders/iblShadowAccumulation.fragment.js.map +1 -1
  540. package/Shaders/iblShadowDebug.fragment.js +3 -1
  541. package/Shaders/iblShadowDebug.fragment.js.map +1 -1
  542. package/Shaders/iblShadowGBufferDebug.fragment.js +3 -1
  543. package/Shaders/iblShadowGBufferDebug.fragment.js.map +1 -1
  544. package/Shaders/iblShadowSpatialBlur.fragment.js +3 -1
  545. package/Shaders/iblShadowSpatialBlur.fragment.js.map +1 -1
  546. package/Shaders/iblShadowVoxelTracing.fragment.js +3 -1
  547. package/Shaders/iblShadowVoxelTracing.fragment.js.map +1 -1
  548. package/Shaders/iblShadowsCombine.fragment.js +3 -1
  549. package/Shaders/iblShadowsCombine.fragment.js.map +1 -1
  550. package/Shaders/iblVoxelGrid.fragment.js +3 -1
  551. package/Shaders/iblVoxelGrid.fragment.js.map +1 -1
  552. package/Shaders/iblVoxelGrid.vertex.js +3 -1
  553. package/Shaders/iblVoxelGrid.vertex.js.map +1 -1
  554. package/Shaders/iblVoxelGrid2dArrayDebug.fragment.js +3 -1
  555. package/Shaders/iblVoxelGrid2dArrayDebug.fragment.js.map +1 -1
  556. package/Shaders/iblVoxelGrid3dDebug.fragment.js +3 -1
  557. package/Shaders/iblVoxelGrid3dDebug.fragment.js.map +1 -1
  558. package/Shaders/iblVoxelSlabDebug.fragment.js +3 -1
  559. package/Shaders/iblVoxelSlabDebug.fragment.js.map +1 -1
  560. package/Shaders/iblVoxelSlabDebug.vertex.js +3 -1
  561. package/Shaders/iblVoxelSlabDebug.vertex.js.map +1 -1
  562. package/Shaders/imageProcessing.fragment.js +3 -1
  563. package/Shaders/imageProcessing.fragment.js.map +1 -1
  564. package/Shaders/kernelBlur.fragment.js +3 -1
  565. package/Shaders/kernelBlur.fragment.js.map +1 -1
  566. package/Shaders/kernelBlur.vertex.js +3 -1
  567. package/Shaders/kernelBlur.vertex.js.map +1 -1
  568. package/Shaders/layer.fragment.js +3 -1
  569. package/Shaders/layer.fragment.js.map +1 -1
  570. package/Shaders/layer.vertex.js +3 -1
  571. package/Shaders/layer.vertex.js.map +1 -1
  572. package/Shaders/lensFlare.fragment.js +3 -1
  573. package/Shaders/lensFlare.fragment.js.map +1 -1
  574. package/Shaders/lensFlare.vertex.js +3 -1
  575. package/Shaders/lensFlare.vertex.js.map +1 -1
  576. package/Shaders/lensHighlights.fragment.js +3 -1
  577. package/Shaders/lensHighlights.fragment.js.map +1 -1
  578. package/Shaders/line.fragment.js +3 -1
  579. package/Shaders/line.fragment.js.map +1 -1
  580. package/Shaders/line.vertex.js +3 -1
  581. package/Shaders/line.vertex.js.map +1 -1
  582. package/Shaders/lod.fragment.js +3 -1
  583. package/Shaders/lod.fragment.js.map +1 -1
  584. package/Shaders/lodCube.fragment.js +3 -1
  585. package/Shaders/lodCube.fragment.js.map +1 -1
  586. package/Shaders/meshUVSpaceRenderer.fragment.js +3 -1
  587. package/Shaders/meshUVSpaceRenderer.fragment.js.map +1 -1
  588. package/Shaders/meshUVSpaceRenderer.vertex.js +3 -1
  589. package/Shaders/meshUVSpaceRenderer.vertex.js.map +1 -1
  590. package/Shaders/meshUVSpaceRendererFinaliser.fragment.js +3 -1
  591. package/Shaders/meshUVSpaceRendererFinaliser.fragment.js.map +1 -1
  592. package/Shaders/meshUVSpaceRendererFinaliser.vertex.js +3 -1
  593. package/Shaders/meshUVSpaceRendererFinaliser.vertex.js.map +1 -1
  594. package/Shaders/meshUVSpaceRendererMasker.fragment.js +3 -1
  595. package/Shaders/meshUVSpaceRendererMasker.fragment.js.map +1 -1
  596. package/Shaders/meshUVSpaceRendererMasker.vertex.js +3 -1
  597. package/Shaders/meshUVSpaceRendererMasker.vertex.js.map +1 -1
  598. package/Shaders/minmaxRedux.fragment.js +3 -1
  599. package/Shaders/minmaxRedux.fragment.js.map +1 -1
  600. package/Shaders/motionBlur.fragment.js +3 -1
  601. package/Shaders/motionBlur.fragment.js.map +1 -1
  602. package/Shaders/noise.fragment.js +3 -1
  603. package/Shaders/noise.fragment.js.map +1 -1
  604. package/Shaders/oitBackBlend.fragment.js +3 -1
  605. package/Shaders/oitBackBlend.fragment.js.map +1 -1
  606. package/Shaders/oitFinal.fragment.js +3 -1
  607. package/Shaders/oitFinal.fragment.js.map +1 -1
  608. package/Shaders/outline.fragment.js +3 -1
  609. package/Shaders/outline.fragment.js.map +1 -1
  610. package/Shaders/outline.vertex.js +3 -1
  611. package/Shaders/outline.vertex.js.map +1 -1
  612. package/Shaders/particles.fragment.js +3 -1
  613. package/Shaders/particles.fragment.js.map +1 -1
  614. package/Shaders/particles.vertex.js +3 -1
  615. package/Shaders/particles.vertex.js.map +1 -1
  616. package/Shaders/pass.fragment.js +3 -1
  617. package/Shaders/pass.fragment.js.map +1 -1
  618. package/Shaders/passCube.fragment.js +3 -1
  619. package/Shaders/passCube.fragment.js.map +1 -1
  620. package/Shaders/pbr.fragment.js +6 -1
  621. package/Shaders/pbr.fragment.js.map +1 -1
  622. package/Shaders/pbr.vertex.js +3 -1
  623. package/Shaders/pbr.vertex.js.map +1 -1
  624. package/Shaders/picking.fragment.js +3 -1
  625. package/Shaders/picking.fragment.js.map +1 -1
  626. package/Shaders/picking.vertex.js +3 -1
  627. package/Shaders/picking.vertex.js.map +1 -1
  628. package/Shaders/postprocess.vertex.js +3 -1
  629. package/Shaders/postprocess.vertex.js.map +1 -1
  630. package/Shaders/procedural.vertex.js +3 -1
  631. package/Shaders/procedural.vertex.js.map +1 -1
  632. package/Shaders/refraction.fragment.js +3 -1
  633. package/Shaders/refraction.fragment.js.map +1 -1
  634. package/Shaders/rgbdDecode.fragment.js +3 -1
  635. package/Shaders/rgbdDecode.fragment.js.map +1 -1
  636. package/Shaders/rgbdEncode.fragment.js +3 -1
  637. package/Shaders/rgbdEncode.fragment.js.map +1 -1
  638. package/Shaders/rsmFullGlobalIllumination.fragment.js +3 -1
  639. package/Shaders/rsmFullGlobalIllumination.fragment.js.map +1 -1
  640. package/Shaders/rsmGlobalIllumination.fragment.js +3 -1
  641. package/Shaders/rsmGlobalIllumination.fragment.js.map +1 -1
  642. package/Shaders/screenSpaceCurvature.fragment.js +3 -1
  643. package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
  644. package/Shaders/screenSpaceReflection.fragment.js +3 -1
  645. package/Shaders/screenSpaceReflection.fragment.js.map +1 -1
  646. package/Shaders/screenSpaceReflection2.fragment.js +3 -1
  647. package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
  648. package/Shaders/screenSpaceReflection2Blur.fragment.js +3 -1
  649. package/Shaders/screenSpaceReflection2Blur.fragment.js.map +1 -1
  650. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +3 -1
  651. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  652. package/Shaders/shadowMap.fragment.js +3 -1
  653. package/Shaders/shadowMap.fragment.js.map +1 -1
  654. package/Shaders/shadowMap.vertex.js +3 -1
  655. package/Shaders/shadowMap.vertex.js.map +1 -1
  656. package/Shaders/sharpen.fragment.js +3 -1
  657. package/Shaders/sharpen.fragment.js.map +1 -1
  658. package/Shaders/spriteMap.fragment.js +3 -1
  659. package/Shaders/spriteMap.fragment.js.map +1 -1
  660. package/Shaders/spriteMap.vertex.js +3 -1
  661. package/Shaders/spriteMap.vertex.js.map +1 -1
  662. package/Shaders/sprites.fragment.js +3 -1
  663. package/Shaders/sprites.fragment.js.map +1 -1
  664. package/Shaders/sprites.vertex.js +3 -1
  665. package/Shaders/sprites.vertex.js.map +1 -1
  666. package/Shaders/ssao.fragment.js +3 -1
  667. package/Shaders/ssao.fragment.js.map +1 -1
  668. package/Shaders/ssao2.fragment.js +3 -1
  669. package/Shaders/ssao2.fragment.js.map +1 -1
  670. package/Shaders/ssaoCombine.fragment.js +3 -1
  671. package/Shaders/ssaoCombine.fragment.js.map +1 -1
  672. package/Shaders/standard.fragment.js +3 -1
  673. package/Shaders/standard.fragment.js.map +1 -1
  674. package/Shaders/stereoscopicInterlace.fragment.js +3 -1
  675. package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
  676. package/Shaders/subSurfaceScattering.fragment.d.ts +1 -1
  677. package/Shaders/subSurfaceScattering.fragment.js +8 -6
  678. package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
  679. package/Shaders/taa.fragment.js +3 -1
  680. package/Shaders/taa.fragment.js.map +1 -1
  681. package/Shaders/tonemap.fragment.js +3 -1
  682. package/Shaders/tonemap.fragment.js.map +1 -1
  683. package/Shaders/velocity.fragment.js +3 -1
  684. package/Shaders/velocity.fragment.js.map +1 -1
  685. package/Shaders/velocity.vertex.js +3 -1
  686. package/Shaders/velocity.vertex.js.map +1 -1
  687. package/Shaders/volumetricLightScattering.fragment.js +3 -1
  688. package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
  689. package/Shaders/volumetricLightScatteringPass.fragment.js +3 -1
  690. package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
  691. package/Shaders/volumetricLightScatteringPass.vertex.js +3 -1
  692. package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
  693. package/Shaders/vrDistortionCorrection.fragment.js +3 -1
  694. package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
  695. package/Shaders/vrMultiviewToSingleview.fragment.js +3 -1
  696. package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
  697. package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.js +3 -1
  698. package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  699. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js +3 -1
  700. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  701. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js +3 -1
  702. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  703. package/ShadersWGSL/ShadersInclude/bayerDitherFunctions.js +3 -1
  704. package/ShadersWGSL/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  705. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js +3 -1
  706. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js.map +1 -1
  707. package/ShadersWGSL/ShadersInclude/bonesVertex.js +3 -1
  708. package/ShadersWGSL/ShadersInclude/bonesVertex.js.map +1 -1
  709. package/ShadersWGSL/ShadersInclude/bumpFragment.js +3 -1
  710. package/ShadersWGSL/ShadersInclude/bumpFragment.js.map +1 -1
  711. package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.js +3 -1
  712. package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  713. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js +3 -1
  714. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  715. package/ShadersWGSL/ShadersInclude/bumpVertex.js +3 -1
  716. package/ShadersWGSL/ShadersInclude/bumpVertex.js.map +1 -1
  717. package/ShadersWGSL/ShadersInclude/bumpVertexDeclaration.js +3 -1
  718. package/ShadersWGSL/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  719. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js +3 -1
  720. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js.map +1 -1
  721. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js +3 -1
  722. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  723. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js +3 -1
  724. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js.map +1 -1
  725. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js +3 -1
  726. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  727. package/ShadersWGSL/ShadersInclude/decalFragment.js +3 -1
  728. package/ShadersWGSL/ShadersInclude/decalFragment.js.map +1 -1
  729. package/ShadersWGSL/ShadersInclude/decalFragmentDeclaration.js +3 -1
  730. package/ShadersWGSL/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  731. package/ShadersWGSL/ShadersInclude/decalVertexDeclaration.js +3 -1
  732. package/ShadersWGSL/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  733. package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.js +3 -1
  734. package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  735. package/ShadersWGSL/ShadersInclude/depthPrePass.js +3 -1
  736. package/ShadersWGSL/ShadersInclude/depthPrePass.js.map +1 -1
  737. package/ShadersWGSL/ShadersInclude/diffusionProfile.d.ts +5 -0
  738. package/ShadersWGSL/ShadersInclude/diffusionProfile.js +12 -0
  739. package/ShadersWGSL/ShadersInclude/diffusionProfile.js.map +1 -0
  740. package/ShadersWGSL/ShadersInclude/fibonacci.d.ts +5 -0
  741. package/ShadersWGSL/ShadersInclude/fibonacci.js +17 -0
  742. package/ShadersWGSL/ShadersInclude/fibonacci.js.map +1 -0
  743. package/ShadersWGSL/ShadersInclude/fogFragment.js +3 -1
  744. package/ShadersWGSL/ShadersInclude/fogFragment.js.map +1 -1
  745. package/ShadersWGSL/ShadersInclude/fogFragmentDeclaration.js +3 -1
  746. package/ShadersWGSL/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  747. package/ShadersWGSL/ShadersInclude/fogVertex.js +3 -1
  748. package/ShadersWGSL/ShadersInclude/fogVertex.js.map +1 -1
  749. package/ShadersWGSL/ShadersInclude/fogVertexDeclaration.js +3 -1
  750. package/ShadersWGSL/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  751. package/ShadersWGSL/ShadersInclude/fresnelFunction.js +3 -1
  752. package/ShadersWGSL/ShadersInclude/fresnelFunction.js.map +1 -1
  753. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +3 -1
  754. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
  755. package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js +3 -1
  756. package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
  757. package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.js +3 -1
  758. package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.js.map +1 -1
  759. package/ShadersWGSL/ShadersInclude/gaussianSplattingVertexDeclaration.js +3 -1
  760. package/ShadersWGSL/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
  761. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js +3 -1
  762. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js.map +1 -1
  763. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js +3 -1
  764. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  765. package/ShadersWGSL/ShadersInclude/helperFunctions.js +3 -1
  766. package/ShadersWGSL/ShadersInclude/helperFunctions.js.map +1 -1
  767. package/ShadersWGSL/ShadersInclude/imageProcessingCompatibility.js +3 -1
  768. package/ShadersWGSL/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  769. package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js +3 -1
  770. package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  771. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js +3 -1
  772. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  773. package/ShadersWGSL/ShadersInclude/importanceSampling.js +3 -1
  774. package/ShadersWGSL/ShadersInclude/importanceSampling.js.map +1 -1
  775. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +3 -1
  776. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
  777. package/ShadersWGSL/ShadersInclude/instancesVertex.js +3 -1
  778. package/ShadersWGSL/ShadersInclude/instancesVertex.js.map +1 -1
  779. package/ShadersWGSL/ShadersInclude/intersectionFunctions.js +3 -1
  780. package/ShadersWGSL/ShadersInclude/intersectionFunctions.js.map +1 -1
  781. package/ShadersWGSL/ShadersInclude/kernelBlurFragment.js +3 -1
  782. package/ShadersWGSL/ShadersInclude/kernelBlurFragment.js.map +1 -1
  783. package/ShadersWGSL/ShadersInclude/kernelBlurFragment2.js +3 -1
  784. package/ShadersWGSL/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  785. package/ShadersWGSL/ShadersInclude/kernelBlurVaryingDeclaration.js +3 -1
  786. package/ShadersWGSL/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
  787. package/ShadersWGSL/ShadersInclude/kernelBlurVertex.js +3 -1
  788. package/ShadersWGSL/ShadersInclude/kernelBlurVertex.js.map +1 -1
  789. package/ShadersWGSL/ShadersInclude/lightFragment.js +3 -1
  790. package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
  791. package/ShadersWGSL/ShadersInclude/lightUboDeclaration.js +3 -1
  792. package/ShadersWGSL/ShadersInclude/lightUboDeclaration.js.map +1 -1
  793. package/ShadersWGSL/ShadersInclude/lightVxFragmentDeclaration.js +3 -1
  794. package/ShadersWGSL/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  795. package/ShadersWGSL/ShadersInclude/lightVxUboDeclaration.js +3 -1
  796. package/ShadersWGSL/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  797. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +3 -1
  798. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  799. package/ShadersWGSL/ShadersInclude/logDepthDeclaration.js +3 -1
  800. package/ShadersWGSL/ShadersInclude/logDepthDeclaration.js.map +1 -1
  801. package/ShadersWGSL/ShadersInclude/logDepthFragment.js +3 -1
  802. package/ShadersWGSL/ShadersInclude/logDepthFragment.js.map +1 -1
  803. package/ShadersWGSL/ShadersInclude/logDepthVertex.js +3 -1
  804. package/ShadersWGSL/ShadersInclude/logDepthVertex.js.map +1 -1
  805. package/ShadersWGSL/ShadersInclude/ltcHelperFunctions.js +3 -1
  806. package/ShadersWGSL/ShadersInclude/ltcHelperFunctions.js.map +1 -1
  807. package/ShadersWGSL/ShadersInclude/mainUVVaryingDeclaration.js +3 -1
  808. package/ShadersWGSL/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  809. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js +3 -1
  810. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js.map +1 -1
  811. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +3 -1
  812. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
  813. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js +3 -1
  814. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  815. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js +3 -1
  816. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  817. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -1
  818. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  819. package/ShadersWGSL/ShadersInclude/oitDeclaration.js +3 -1
  820. package/ShadersWGSL/ShadersInclude/oitDeclaration.js.map +1 -1
  821. package/ShadersWGSL/ShadersInclude/oitFragment.js +3 -1
  822. package/ShadersWGSL/ShadersInclude/oitFragment.js.map +1 -1
  823. package/ShadersWGSL/ShadersInclude/packingFunctions.js +3 -1
  824. package/ShadersWGSL/ShadersInclude/packingFunctions.js.map +1 -1
  825. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js +3 -1
  826. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  827. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -1
  828. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  829. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js +3 -1
  830. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  831. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js +3 -1
  832. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  833. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js +3 -1
  834. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  835. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js +3 -1
  836. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  837. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js +3 -1
  838. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  839. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js +3 -1
  840. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  841. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js +5 -2
  842. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  843. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +3 -1
  844. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  845. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js +3 -1
  846. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  847. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js +3 -1
  848. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  849. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js +3 -1
  850. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  851. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js +3 -1
  852. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  853. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js +3 -1
  854. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  855. package/ShadersWGSL/ShadersInclude/pbrBlockNormalGeometric.js +3 -1
  856. package/ShadersWGSL/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  857. package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js +3 -1
  858. package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js.map +1 -1
  859. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js +3 -1
  860. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  861. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js +3 -1
  862. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  863. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js +3 -1
  864. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js.map +1 -1
  865. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js +3 -1
  866. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  867. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js +3 -1
  868. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js.map +1 -1
  869. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js +3 -1
  870. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  871. package/ShadersWGSL/ShadersInclude/pbrDebug.js +3 -1
  872. package/ShadersWGSL/ShadersInclude/pbrDebug.js.map +1 -1
  873. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js +3 -1
  874. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  875. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +3 -1
  876. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  877. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js +3 -1
  878. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  879. package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.js +3 -1
  880. package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  881. package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.js +3 -1
  882. package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  883. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js +3 -1
  884. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  885. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js +3 -1
  886. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  887. package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.js +3 -1
  888. package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  889. package/ShadersWGSL/ShadersInclude/pointCloudVertex.js +3 -1
  890. package/ShadersWGSL/ShadersInclude/pointCloudVertex.js.map +1 -1
  891. package/ShadersWGSL/ShadersInclude/pointCloudVertexDeclaration.js +3 -1
  892. package/ShadersWGSL/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  893. package/ShadersWGSL/ShadersInclude/prePassDeclaration.js +3 -1
  894. package/ShadersWGSL/ShadersInclude/prePassDeclaration.js.map +1 -1
  895. package/ShadersWGSL/ShadersInclude/prePassVertex.js +3 -1
  896. package/ShadersWGSL/ShadersInclude/prePassVertex.js.map +1 -1
  897. package/ShadersWGSL/ShadersInclude/prePassVertexDeclaration.js +3 -1
  898. package/ShadersWGSL/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  899. package/ShadersWGSL/ShadersInclude/reflectionFunction.js +3 -1
  900. package/ShadersWGSL/ShadersInclude/reflectionFunction.js.map +1 -1
  901. package/ShadersWGSL/ShadersInclude/samplerFragmentAlternateDeclaration.js +3 -1
  902. package/ShadersWGSL/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  903. package/ShadersWGSL/ShadersInclude/samplerFragmentDeclaration.js +3 -1
  904. package/ShadersWGSL/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  905. package/ShadersWGSL/ShadersInclude/samplerVertexDeclaration.js +3 -1
  906. package/ShadersWGSL/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  907. package/ShadersWGSL/ShadersInclude/samplerVertexImplementation.js +3 -1
  908. package/ShadersWGSL/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  909. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js +3 -1
  910. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  911. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js +3 -1
  912. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  913. package/ShadersWGSL/ShadersInclude/shadowMapFragment.js +3 -1
  914. package/ShadersWGSL/ShadersInclude/shadowMapFragment.js.map +1 -1
  915. package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.js +3 -1
  916. package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  917. package/ShadersWGSL/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +3 -1
  918. package/ShadersWGSL/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  919. package/ShadersWGSL/ShadersInclude/shadowMapVertexExtraDeclaration.js +3 -1
  920. package/ShadersWGSL/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  921. package/ShadersWGSL/ShadersInclude/shadowMapVertexMetric.js +3 -1
  922. package/ShadersWGSL/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  923. package/ShadersWGSL/ShadersInclude/shadowMapVertexNormalBias.js +3 -1
  924. package/ShadersWGSL/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  925. package/ShadersWGSL/ShadersInclude/shadowsFragmentFunctions.js +3 -1
  926. package/ShadersWGSL/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  927. package/ShadersWGSL/ShadersInclude/shadowsVertex.js +3 -1
  928. package/ShadersWGSL/ShadersInclude/shadowsVertex.js.map +1 -1
  929. package/ShadersWGSL/ShadersInclude/subSurfaceScatteringFunctions.js +3 -1
  930. package/ShadersWGSL/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  931. package/ShadersWGSL/ShadersInclude/uvAttributeDeclaration.js +3 -1
  932. package/ShadersWGSL/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  933. package/ShadersWGSL/ShadersInclude/uvVariableDeclaration.js +3 -1
  934. package/ShadersWGSL/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  935. package/ShadersWGSL/ShadersInclude/vertexColorMixing.js +3 -1
  936. package/ShadersWGSL/ShadersInclude/vertexColorMixing.js.map +1 -1
  937. package/ShadersWGSL/anaglyph.fragment.js +3 -1
  938. package/ShadersWGSL/anaglyph.fragment.js.map +1 -1
  939. package/ShadersWGSL/background.fragment.js +3 -1
  940. package/ShadersWGSL/background.fragment.js.map +1 -1
  941. package/ShadersWGSL/background.vertex.js +3 -1
  942. package/ShadersWGSL/background.vertex.js.map +1 -1
  943. package/ShadersWGSL/bilateralBlur.fragment.js +3 -1
  944. package/ShadersWGSL/bilateralBlur.fragment.js.map +1 -1
  945. package/ShadersWGSL/bilateralBlurQuality.fragment.js +3 -1
  946. package/ShadersWGSL/bilateralBlurQuality.fragment.js.map +1 -1
  947. package/ShadersWGSL/blackAndWhite.fragment.js +3 -1
  948. package/ShadersWGSL/blackAndWhite.fragment.js.map +1 -1
  949. package/ShadersWGSL/bloomMerge.fragment.js +3 -1
  950. package/ShadersWGSL/bloomMerge.fragment.js.map +1 -1
  951. package/ShadersWGSL/boundingBoxRenderer.fragment.js +3 -1
  952. package/ShadersWGSL/boundingBoxRenderer.fragment.js.map +1 -1
  953. package/ShadersWGSL/boundingBoxRenderer.vertex.js +3 -1
  954. package/ShadersWGSL/boundingBoxRenderer.vertex.js.map +1 -1
  955. package/ShadersWGSL/boundingInfo.compute.js +3 -1
  956. package/ShadersWGSL/boundingInfo.compute.js.map +1 -1
  957. package/ShadersWGSL/chromaticAberration.fragment.js +3 -1
  958. package/ShadersWGSL/chromaticAberration.fragment.js.map +1 -1
  959. package/ShadersWGSL/circleOfConfusion.fragment.js +3 -1
  960. package/ShadersWGSL/circleOfConfusion.fragment.js.map +1 -1
  961. package/ShadersWGSL/clearQuad.fragment.js +3 -1
  962. package/ShadersWGSL/clearQuad.fragment.js.map +1 -1
  963. package/ShadersWGSL/clearQuad.vertex.js +3 -1
  964. package/ShadersWGSL/clearQuad.vertex.js.map +1 -1
  965. package/ShadersWGSL/color.fragment.js +3 -1
  966. package/ShadersWGSL/color.fragment.js.map +1 -1
  967. package/ShadersWGSL/color.vertex.js +3 -1
  968. package/ShadersWGSL/color.vertex.js.map +1 -1
  969. package/ShadersWGSL/colorCorrection.fragment.js +3 -1
  970. package/ShadersWGSL/colorCorrection.fragment.js.map +1 -1
  971. package/ShadersWGSL/convolution.fragment.js +3 -1
  972. package/ShadersWGSL/convolution.fragment.js.map +1 -1
  973. package/ShadersWGSL/copyTexture3DLayerToTexture.fragment.js +3 -1
  974. package/ShadersWGSL/copyTexture3DLayerToTexture.fragment.js.map +1 -1
  975. package/ShadersWGSL/copyTextureToTexture.fragment.js +3 -1
  976. package/ShadersWGSL/copyTextureToTexture.fragment.js.map +1 -1
  977. package/ShadersWGSL/default.fragment.js +3 -1
  978. package/ShadersWGSL/default.fragment.js.map +1 -1
  979. package/ShadersWGSL/default.vertex.js +3 -1
  980. package/ShadersWGSL/default.vertex.js.map +1 -1
  981. package/ShadersWGSL/depth.fragment.js +3 -1
  982. package/ShadersWGSL/depth.fragment.js.map +1 -1
  983. package/ShadersWGSL/depth.vertex.js +3 -1
  984. package/ShadersWGSL/depth.vertex.js.map +1 -1
  985. package/ShadersWGSL/depthBoxBlur.fragment.js +3 -1
  986. package/ShadersWGSL/depthBoxBlur.fragment.js.map +1 -1
  987. package/ShadersWGSL/depthOfFieldMerge.fragment.js +3 -1
  988. package/ShadersWGSL/depthOfFieldMerge.fragment.js.map +1 -1
  989. package/ShadersWGSL/displayPass.fragment.js +3 -1
  990. package/ShadersWGSL/displayPass.fragment.js.map +1 -1
  991. package/ShadersWGSL/extractHighlights.fragment.js +3 -1
  992. package/ShadersWGSL/extractHighlights.fragment.js.map +1 -1
  993. package/ShadersWGSL/filter.fragment.js +3 -1
  994. package/ShadersWGSL/filter.fragment.js.map +1 -1
  995. package/ShadersWGSL/fluidRenderingBilateralBlur.fragment.js +3 -1
  996. package/ShadersWGSL/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  997. package/ShadersWGSL/fluidRenderingParticleDepth.fragment.js +3 -1
  998. package/ShadersWGSL/fluidRenderingParticleDepth.fragment.js.map +1 -1
  999. package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js +3 -1
  1000. package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js.map +1 -1
  1001. package/ShadersWGSL/fluidRenderingParticleDiffuse.fragment.js +3 -1
  1002. package/ShadersWGSL/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  1003. package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js +3 -1
  1004. package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  1005. package/ShadersWGSL/fluidRenderingParticleThickness.fragment.js +3 -1
  1006. package/ShadersWGSL/fluidRenderingParticleThickness.fragment.js.map +1 -1
  1007. package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js +3 -1
  1008. package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js.map +1 -1
  1009. package/ShadersWGSL/fluidRenderingRender.fragment.js +3 -1
  1010. package/ShadersWGSL/fluidRenderingRender.fragment.js.map +1 -1
  1011. package/ShadersWGSL/fluidRenderingStandardBlur.fragment.js +3 -1
  1012. package/ShadersWGSL/fluidRenderingStandardBlur.fragment.js.map +1 -1
  1013. package/ShadersWGSL/fxaa.fragment.js +3 -1
  1014. package/ShadersWGSL/fxaa.fragment.js.map +1 -1
  1015. package/ShadersWGSL/fxaa.vertex.js +3 -1
  1016. package/ShadersWGSL/fxaa.vertex.js.map +1 -1
  1017. package/ShadersWGSL/gaussianSplatting.fragment.js +3 -1
  1018. package/ShadersWGSL/gaussianSplatting.fragment.js.map +1 -1
  1019. package/ShadersWGSL/gaussianSplatting.vertex.js +3 -1
  1020. package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
  1021. package/ShadersWGSL/geometry.fragment.js +3 -1
  1022. package/ShadersWGSL/geometry.fragment.js.map +1 -1
  1023. package/ShadersWGSL/geometry.vertex.js +3 -1
  1024. package/ShadersWGSL/geometry.vertex.js.map +1 -1
  1025. package/ShadersWGSL/glowBlurPostProcess.fragment.js +3 -1
  1026. package/ShadersWGSL/glowBlurPostProcess.fragment.js.map +1 -1
  1027. package/ShadersWGSL/glowMapGeneration.fragment.js +3 -1
  1028. package/ShadersWGSL/glowMapGeneration.fragment.js.map +1 -1
  1029. package/ShadersWGSL/glowMapGeneration.vertex.js +3 -1
  1030. package/ShadersWGSL/glowMapGeneration.vertex.js.map +1 -1
  1031. package/ShadersWGSL/glowMapMerge.fragment.js +3 -1
  1032. package/ShadersWGSL/glowMapMerge.fragment.js.map +1 -1
  1033. package/ShadersWGSL/glowMapMerge.vertex.js +3 -1
  1034. package/ShadersWGSL/glowMapMerge.vertex.js.map +1 -1
  1035. package/ShadersWGSL/gpuUpdateParticles.compute.js +3 -1
  1036. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  1037. package/ShadersWGSL/grain.fragment.js +3 -1
  1038. package/ShadersWGSL/grain.fragment.js.map +1 -1
  1039. package/ShadersWGSL/greasedLine.fragment.js +3 -1
  1040. package/ShadersWGSL/greasedLine.fragment.js.map +1 -1
  1041. package/ShadersWGSL/greasedLine.vertex.js +3 -1
  1042. package/ShadersWGSL/greasedLine.vertex.js.map +1 -1
  1043. package/ShadersWGSL/hdrFiltering.fragment.js +3 -1
  1044. package/ShadersWGSL/hdrFiltering.fragment.js.map +1 -1
  1045. package/ShadersWGSL/hdrFiltering.vertex.js +3 -1
  1046. package/ShadersWGSL/hdrFiltering.vertex.js.map +1 -1
  1047. package/ShadersWGSL/hdrIrradianceFiltering.fragment.js +3 -1
  1048. package/ShadersWGSL/hdrIrradianceFiltering.fragment.js.map +1 -1
  1049. package/ShadersWGSL/hdrIrradianceFiltering.vertex.js +3 -1
  1050. package/ShadersWGSL/hdrIrradianceFiltering.vertex.js.map +1 -1
  1051. package/ShadersWGSL/highlights.fragment.js +3 -1
  1052. package/ShadersWGSL/highlights.fragment.js.map +1 -1
  1053. package/ShadersWGSL/iblCdfDebug.fragment.js +3 -1
  1054. package/ShadersWGSL/iblCdfDebug.fragment.js.map +1 -1
  1055. package/ShadersWGSL/iblCdfx.fragment.js +3 -1
  1056. package/ShadersWGSL/iblCdfx.fragment.js.map +1 -1
  1057. package/ShadersWGSL/iblCdfy.fragment.js +3 -1
  1058. package/ShadersWGSL/iblCdfy.fragment.js.map +1 -1
  1059. package/ShadersWGSL/iblCombineVoxelGrids.fragment.js +3 -1
  1060. package/ShadersWGSL/iblCombineVoxelGrids.fragment.js.map +1 -1
  1061. package/ShadersWGSL/iblGenerateVoxelMip.fragment.js +3 -1
  1062. package/ShadersWGSL/iblGenerateVoxelMip.fragment.js.map +1 -1
  1063. package/ShadersWGSL/iblIcdf.fragment.js +3 -1
  1064. package/ShadersWGSL/iblIcdf.fragment.js.map +1 -1
  1065. package/ShadersWGSL/iblScaledLuminance.fragment.js +3 -1
  1066. package/ShadersWGSL/iblScaledLuminance.fragment.js.map +1 -1
  1067. package/ShadersWGSL/iblShadowAccumulation.fragment.js +3 -1
  1068. package/ShadersWGSL/iblShadowAccumulation.fragment.js.map +1 -1
  1069. package/ShadersWGSL/iblShadowDebug.fragment.js +3 -1
  1070. package/ShadersWGSL/iblShadowDebug.fragment.js.map +1 -1
  1071. package/ShadersWGSL/iblShadowGBufferDebug.fragment.js +3 -1
  1072. package/ShadersWGSL/iblShadowGBufferDebug.fragment.js.map +1 -1
  1073. package/ShadersWGSL/iblShadowSpatialBlur.fragment.js +3 -1
  1074. package/ShadersWGSL/iblShadowSpatialBlur.fragment.js.map +1 -1
  1075. package/ShadersWGSL/iblShadowVoxelTracing.fragment.js +3 -1
  1076. package/ShadersWGSL/iblShadowVoxelTracing.fragment.js.map +1 -1
  1077. package/ShadersWGSL/iblShadowsCombine.fragment.js +3 -1
  1078. package/ShadersWGSL/iblShadowsCombine.fragment.js.map +1 -1
  1079. package/ShadersWGSL/iblVoxelGrid.fragment.js +3 -1
  1080. package/ShadersWGSL/iblVoxelGrid.fragment.js.map +1 -1
  1081. package/ShadersWGSL/iblVoxelGrid.vertex.js +3 -1
  1082. package/ShadersWGSL/iblVoxelGrid.vertex.js.map +1 -1
  1083. package/ShadersWGSL/iblVoxelGrid2dArrayDebug.fragment.js +3 -1
  1084. package/ShadersWGSL/iblVoxelGrid2dArrayDebug.fragment.js.map +1 -1
  1085. package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js +3 -1
  1086. package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js.map +1 -1
  1087. package/ShadersWGSL/iblVoxelSlabDebug.fragment.js +3 -1
  1088. package/ShadersWGSL/iblVoxelSlabDebug.fragment.js.map +1 -1
  1089. package/ShadersWGSL/iblVoxelSlabDebug.vertex.js +3 -1
  1090. package/ShadersWGSL/iblVoxelSlabDebug.vertex.js.map +1 -1
  1091. package/ShadersWGSL/imageProcessing.fragment.js +3 -1
  1092. package/ShadersWGSL/imageProcessing.fragment.js.map +1 -1
  1093. package/ShadersWGSL/kernelBlur.fragment.js +3 -1
  1094. package/ShadersWGSL/kernelBlur.fragment.js.map +1 -1
  1095. package/ShadersWGSL/kernelBlur.vertex.js +3 -1
  1096. package/ShadersWGSL/kernelBlur.vertex.js.map +1 -1
  1097. package/ShadersWGSL/layer.fragment.js +3 -1
  1098. package/ShadersWGSL/layer.fragment.js.map +1 -1
  1099. package/ShadersWGSL/layer.vertex.js +3 -1
  1100. package/ShadersWGSL/layer.vertex.js.map +1 -1
  1101. package/ShadersWGSL/lensFlare.fragment.js +3 -1
  1102. package/ShadersWGSL/lensFlare.fragment.js.map +1 -1
  1103. package/ShadersWGSL/lensFlare.vertex.js +3 -1
  1104. package/ShadersWGSL/lensFlare.vertex.js.map +1 -1
  1105. package/ShadersWGSL/line.fragment.js +3 -1
  1106. package/ShadersWGSL/line.fragment.js.map +1 -1
  1107. package/ShadersWGSL/line.vertex.js +3 -1
  1108. package/ShadersWGSL/line.vertex.js.map +1 -1
  1109. package/ShadersWGSL/lod.fragment.js +3 -1
  1110. package/ShadersWGSL/lod.fragment.js.map +1 -1
  1111. package/ShadersWGSL/lodCube.fragment.js +3 -1
  1112. package/ShadersWGSL/lodCube.fragment.js.map +1 -1
  1113. package/ShadersWGSL/meshUVSpaceRenderer.fragment.js +3 -1
  1114. package/ShadersWGSL/meshUVSpaceRenderer.fragment.js.map +1 -1
  1115. package/ShadersWGSL/meshUVSpaceRenderer.vertex.js +3 -1
  1116. package/ShadersWGSL/meshUVSpaceRenderer.vertex.js.map +1 -1
  1117. package/ShadersWGSL/meshUVSpaceRendererFinaliser.fragment.js +3 -1
  1118. package/ShadersWGSL/meshUVSpaceRendererFinaliser.fragment.js.map +1 -1
  1119. package/ShadersWGSL/meshUVSpaceRendererFinaliser.vertex.js +3 -1
  1120. package/ShadersWGSL/meshUVSpaceRendererFinaliser.vertex.js.map +1 -1
  1121. package/ShadersWGSL/meshUVSpaceRendererMasker.fragment.js +3 -1
  1122. package/ShadersWGSL/meshUVSpaceRendererMasker.fragment.js.map +1 -1
  1123. package/ShadersWGSL/meshUVSpaceRendererMasker.vertex.js +3 -1
  1124. package/ShadersWGSL/meshUVSpaceRendererMasker.vertex.js.map +1 -1
  1125. package/ShadersWGSL/motionBlur.fragment.js +3 -1
  1126. package/ShadersWGSL/motionBlur.fragment.js.map +1 -1
  1127. package/ShadersWGSL/oitBackBlend.fragment.js +3 -1
  1128. package/ShadersWGSL/oitBackBlend.fragment.js.map +1 -1
  1129. package/ShadersWGSL/oitFinal.fragment.js +3 -1
  1130. package/ShadersWGSL/oitFinal.fragment.js.map +1 -1
  1131. package/ShadersWGSL/outline.fragment.js +3 -1
  1132. package/ShadersWGSL/outline.fragment.js.map +1 -1
  1133. package/ShadersWGSL/outline.vertex.js +3 -1
  1134. package/ShadersWGSL/outline.vertex.js.map +1 -1
  1135. package/ShadersWGSL/particles.fragment.js +3 -1
  1136. package/ShadersWGSL/particles.fragment.js.map +1 -1
  1137. package/ShadersWGSL/particles.vertex.js +3 -1
  1138. package/ShadersWGSL/particles.vertex.js.map +1 -1
  1139. package/ShadersWGSL/pass.fragment.js +3 -1
  1140. package/ShadersWGSL/pass.fragment.js.map +1 -1
  1141. package/ShadersWGSL/passCube.fragment.js +3 -1
  1142. package/ShadersWGSL/passCube.fragment.js.map +1 -1
  1143. package/ShadersWGSL/pbr.fragment.js +6 -1
  1144. package/ShadersWGSL/pbr.fragment.js.map +1 -1
  1145. package/ShadersWGSL/pbr.vertex.js +3 -1
  1146. package/ShadersWGSL/pbr.vertex.js.map +1 -1
  1147. package/ShadersWGSL/picking.fragment.js +3 -1
  1148. package/ShadersWGSL/picking.fragment.js.map +1 -1
  1149. package/ShadersWGSL/picking.vertex.js +3 -1
  1150. package/ShadersWGSL/picking.vertex.js.map +1 -1
  1151. package/ShadersWGSL/postprocess.vertex.js +3 -1
  1152. package/ShadersWGSL/postprocess.vertex.js.map +1 -1
  1153. package/ShadersWGSL/procedural.vertex.js +3 -1
  1154. package/ShadersWGSL/procedural.vertex.js.map +1 -1
  1155. package/ShadersWGSL/rgbdDecode.fragment.js +3 -1
  1156. package/ShadersWGSL/rgbdDecode.fragment.js.map +1 -1
  1157. package/ShadersWGSL/rgbdEncode.fragment.js +3 -1
  1158. package/ShadersWGSL/rgbdEncode.fragment.js.map +1 -1
  1159. package/ShadersWGSL/rsmFullGlobalIllumination.fragment.js +3 -1
  1160. package/ShadersWGSL/rsmFullGlobalIllumination.fragment.js.map +1 -1
  1161. package/ShadersWGSL/rsmGlobalIllumination.fragment.js +3 -1
  1162. package/ShadersWGSL/rsmGlobalIllumination.fragment.js.map +1 -1
  1163. package/ShadersWGSL/screenSpaceReflection2.fragment.js +3 -1
  1164. package/ShadersWGSL/screenSpaceReflection2.fragment.js.map +1 -1
  1165. package/ShadersWGSL/screenSpaceReflection2Blur.fragment.js +3 -1
  1166. package/ShadersWGSL/screenSpaceReflection2Blur.fragment.js.map +1 -1
  1167. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js +3 -1
  1168. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  1169. package/ShadersWGSL/shadowMap.fragment.js +3 -1
  1170. package/ShadersWGSL/shadowMap.fragment.js.map +1 -1
  1171. package/ShadersWGSL/shadowMap.vertex.js +3 -1
  1172. package/ShadersWGSL/shadowMap.vertex.js.map +1 -1
  1173. package/ShadersWGSL/sharpen.fragment.js +3 -1
  1174. package/ShadersWGSL/sharpen.fragment.js.map +1 -1
  1175. package/ShadersWGSL/sprites.fragment.js +3 -1
  1176. package/ShadersWGSL/sprites.fragment.js.map +1 -1
  1177. package/ShadersWGSL/sprites.vertex.js +3 -1
  1178. package/ShadersWGSL/sprites.vertex.js.map +1 -1
  1179. package/ShadersWGSL/ssao2.fragment.js +3 -1
  1180. package/ShadersWGSL/ssao2.fragment.js.map +1 -1
  1181. package/ShadersWGSL/ssaoCombine.fragment.js +3 -1
  1182. package/ShadersWGSL/ssaoCombine.fragment.js.map +1 -1
  1183. package/ShadersWGSL/subSurfaceScattering.fragment.d.ts +9 -0
  1184. package/ShadersWGSL/subSurfaceScattering.fragment.js +77 -0
  1185. package/ShadersWGSL/subSurfaceScattering.fragment.js.map +1 -0
  1186. package/ShadersWGSL/taa.fragment.js +3 -1
  1187. package/ShadersWGSL/taa.fragment.js.map +1 -1
  1188. package/ShadersWGSL/tonemap.fragment.js +3 -1
  1189. package/ShadersWGSL/tonemap.fragment.js.map +1 -1
  1190. package/ShadersWGSL/vrDistortionCorrection.fragment.js +3 -1
  1191. package/ShadersWGSL/vrDistortionCorrection.fragment.js.map +1 -1
  1192. package/package.json +1 -1
  1193. package/FrameGraph/Node/Blocks/Rendering/cullObjectsBlock.js.map +0 -1
  1194. package/FrameGraph/Tasks/Rendering/cullObjectsTask.js.map +0 -1
  1195. /package/FrameGraph/Tasks/{Rendering → Misc}/cullObjectsTask.d.ts +0 -0
  1196. /package/FrameGraph/Tasks/{Rendering → Misc}/cullObjectsTask.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"prePassVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/prePassVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;;;;;CAWd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"prePassVertexDeclaration\";\nconst shader = `#ifdef PREPASS\n#ifdef PREPASS_LOCAL_POSITION\nvarying vec3 vPosition;\n#endif\n#ifdef PREPASS_DEPTH\nvarying vec3 vViewPos;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nuniform mat4 previousViewProjection;varying vec4 vCurrentPosition;varying vec4 vPreviousPosition;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const prePassVertexDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"prePassVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/prePassVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;;;;;CAWd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"prePassVertexDeclaration\";\nconst shader = `#ifdef PREPASS\n#ifdef PREPASS_LOCAL_POSITION\nvarying vec3 vPosition;\n#endif\n#ifdef PREPASS_DEPTH\nvarying vec3 vViewPos;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nuniform mat4 previousViewProjection;varying vec4 vCurrentPosition;varying vec4 vPreviousPosition;\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const prePassVertexDeclaration = { name, shader };\n"]}
@@ -65,7 +65,9 @@ return vec3(0,0,0);
65
65
  #endif
66
66
  `;
67
67
  // Sideeffect
68
- ShaderStore.IncludesShadersStore[name] = shader;
68
+ if (!ShaderStore.IncludesShadersStore[name]) {
69
+ ShaderStore.IncludesShadersStore[name] = shader;
70
+ }
69
71
  /** @internal */
70
72
  export const reflectionFunction = { name, shader };
71
73
  //# sourceMappingURL=reflectionFunction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reflectionFunction.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/reflectionFunction.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,oBAAoB,CAAC;AAClC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Dd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"reflectionFunction\";\nconst shader = `vec3 computeFixedEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 direction)\n{float lon=atan(direction.z,direction.x);float lat=acos(direction.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(s,t,0); }\nvec3 computeMirroredFixedEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 direction)\n{float lon=atan(direction.z,direction.x);float lat=acos(direction.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(1.0-s,t,0); }\nvec3 computeEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix)\n{vec3 cameraToVertex=normalize(worldPos.xyz-eyePosition);vec3 r=normalize(reflect(cameraToVertex,worldNormal));r=vec3(reflectionMatrix*vec4(r,0));float lon=atan(r.z,r.x);float lat=acos(r.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(s,t,0);}\nvec3 computeSphericalCoords(vec4 worldPos,vec3 worldNormal,mat4 view,mat4 reflectionMatrix)\n{vec3 viewDir=normalize(vec3(view*worldPos));vec3 viewNormal=normalize(vec3(view*vec4(worldNormal,0.0)));vec3 r=reflect(viewDir,viewNormal);r=vec3(reflectionMatrix*vec4(r,0));r.z=r.z-1.0;float m=2.0*length(r);return vec3(r.x/m+0.5,1.0-r.y/m-0.5,0);}\nvec3 computePlanarCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix)\n{vec3 viewDir=worldPos.xyz-eyePosition;vec3 coords=normalize(reflect(viewDir,worldNormal));return vec3(reflectionMatrix*vec4(coords,1));}\nvec3 computeCubicCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix)\n{vec3 viewDir=normalize(worldPos.xyz-eyePosition);vec3 coords=reflect(viewDir,worldNormal);coords=vec3(reflectionMatrix*vec4(coords,0));\n#ifdef INVERTCUBICMAP\ncoords.y*=-1.0;\n#endif\nreturn coords;}\nvec3 computeCubicLocalCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix,vec3 reflectionSize,vec3 reflectionPosition)\n{vec3 viewDir=normalize(worldPos.xyz-eyePosition);vec3 coords=reflect(viewDir,worldNormal);coords=parallaxCorrectNormal(worldPos.xyz,coords,reflectionSize,reflectionPosition);coords=vec3(reflectionMatrix*vec4(coords,0));\n#ifdef INVERTCUBICMAP\ncoords.y*=-1.0;\n#endif\nreturn coords;}\nvec3 computeProjectionCoords(vec4 worldPos,mat4 view,mat4 reflectionMatrix)\n{return vec3(reflectionMatrix*(view*worldPos));}\nvec3 computeSkyBoxCoords(vec3 positionW,mat4 reflectionMatrix)\n{return vec3(reflectionMatrix*vec4(positionW,1.));}\n#ifdef REFLECTION\nvec3 computeReflectionCoords(vec4 worldPos,vec3 worldNormal)\n{\n#ifdef REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED\nvec3 direction=normalize(vDirectionW);return computeMirroredFixedEquirectangularCoords(worldPos,worldNormal,direction);\n#endif\n#ifdef REFLECTIONMAP_EQUIRECTANGULAR_FIXED\nvec3 direction=normalize(vDirectionW);return computeFixedEquirectangularCoords(worldPos,worldNormal,direction);\n#endif\n#ifdef REFLECTIONMAP_EQUIRECTANGULAR\nreturn computeEquirectangularCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_SPHERICAL\nreturn computeSphericalCoords(worldPos,worldNormal,view,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_PLANAR\nreturn computePlanarCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_CUBIC\n#ifdef USE_LOCAL_REFLECTIONMAP_CUBIC\nreturn computeCubicLocalCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix,vReflectionSize,vReflectionPosition);\n#else\nreturn computeCubicCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix);\n#endif\n#endif\n#ifdef REFLECTIONMAP_PROJECTION\nreturn computeProjectionCoords(worldPos,view,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_SKYBOX\nreturn computeSkyBoxCoords(vPositionUVW,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_EXPLICIT\nreturn vec3(0,0,0);\n#endif\n}\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const reflectionFunction = { name, shader };\n"]}
1
+ {"version":3,"file":"reflectionFunction.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/reflectionFunction.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,oBAAoB,CAAC;AAClC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Dd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"reflectionFunction\";\nconst shader = `vec3 computeFixedEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 direction)\n{float lon=atan(direction.z,direction.x);float lat=acos(direction.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(s,t,0); }\nvec3 computeMirroredFixedEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 direction)\n{float lon=atan(direction.z,direction.x);float lat=acos(direction.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(1.0-s,t,0); }\nvec3 computeEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix)\n{vec3 cameraToVertex=normalize(worldPos.xyz-eyePosition);vec3 r=normalize(reflect(cameraToVertex,worldNormal));r=vec3(reflectionMatrix*vec4(r,0));float lon=atan(r.z,r.x);float lat=acos(r.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(s,t,0);}\nvec3 computeSphericalCoords(vec4 worldPos,vec3 worldNormal,mat4 view,mat4 reflectionMatrix)\n{vec3 viewDir=normalize(vec3(view*worldPos));vec3 viewNormal=normalize(vec3(view*vec4(worldNormal,0.0)));vec3 r=reflect(viewDir,viewNormal);r=vec3(reflectionMatrix*vec4(r,0));r.z=r.z-1.0;float m=2.0*length(r);return vec3(r.x/m+0.5,1.0-r.y/m-0.5,0);}\nvec3 computePlanarCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix)\n{vec3 viewDir=worldPos.xyz-eyePosition;vec3 coords=normalize(reflect(viewDir,worldNormal));return vec3(reflectionMatrix*vec4(coords,1));}\nvec3 computeCubicCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix)\n{vec3 viewDir=normalize(worldPos.xyz-eyePosition);vec3 coords=reflect(viewDir,worldNormal);coords=vec3(reflectionMatrix*vec4(coords,0));\n#ifdef INVERTCUBICMAP\ncoords.y*=-1.0;\n#endif\nreturn coords;}\nvec3 computeCubicLocalCoords(vec4 worldPos,vec3 worldNormal,vec3 eyePosition,mat4 reflectionMatrix,vec3 reflectionSize,vec3 reflectionPosition)\n{vec3 viewDir=normalize(worldPos.xyz-eyePosition);vec3 coords=reflect(viewDir,worldNormal);coords=parallaxCorrectNormal(worldPos.xyz,coords,reflectionSize,reflectionPosition);coords=vec3(reflectionMatrix*vec4(coords,0));\n#ifdef INVERTCUBICMAP\ncoords.y*=-1.0;\n#endif\nreturn coords;}\nvec3 computeProjectionCoords(vec4 worldPos,mat4 view,mat4 reflectionMatrix)\n{return vec3(reflectionMatrix*(view*worldPos));}\nvec3 computeSkyBoxCoords(vec3 positionW,mat4 reflectionMatrix)\n{return vec3(reflectionMatrix*vec4(positionW,1.));}\n#ifdef REFLECTION\nvec3 computeReflectionCoords(vec4 worldPos,vec3 worldNormal)\n{\n#ifdef REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED\nvec3 direction=normalize(vDirectionW);return computeMirroredFixedEquirectangularCoords(worldPos,worldNormal,direction);\n#endif\n#ifdef REFLECTIONMAP_EQUIRECTANGULAR_FIXED\nvec3 direction=normalize(vDirectionW);return computeFixedEquirectangularCoords(worldPos,worldNormal,direction);\n#endif\n#ifdef REFLECTIONMAP_EQUIRECTANGULAR\nreturn computeEquirectangularCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_SPHERICAL\nreturn computeSphericalCoords(worldPos,worldNormal,view,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_PLANAR\nreturn computePlanarCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_CUBIC\n#ifdef USE_LOCAL_REFLECTIONMAP_CUBIC\nreturn computeCubicLocalCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix,vReflectionSize,vReflectionPosition);\n#else\nreturn computeCubicCoords(worldPos,worldNormal,vEyePosition.xyz,reflectionMatrix);\n#endif\n#endif\n#ifdef REFLECTIONMAP_PROJECTION\nreturn computeProjectionCoords(worldPos,view,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_SKYBOX\nreturn computeSkyBoxCoords(vPositionUVW,reflectionMatrix);\n#endif\n#ifdef REFLECTIONMAP_EXPLICIT\nreturn vec3(0,0,0);\n#endif\n}\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const reflectionFunction = { name, shader };\n"]}
@@ -20,7 +20,9 @@ varying vec2 v_VARYINGNAME_UV;
20
20
  #endif
21
21
  `;
22
22
  // Sideeffect
23
- ShaderStore.IncludesShadersStore[name] = shader;
23
+ if (!ShaderStore.IncludesShadersStore[name]) {
24
+ ShaderStore.IncludesShadersStore[name] = shader;
25
+ }
24
26
  /** @internal */
25
27
  export const samplerFragmentAlternateDeclaration = { name, shader };
26
28
  //# sourceMappingURL=samplerFragmentAlternateDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"samplerFragmentAlternateDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qCAAqC,CAAC;AACnD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;CAiBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,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 = \"samplerFragmentAlternateDeclaration\";\nconst shader = `#ifdef _DEFINENAME_\n#if _DEFINENAME_DIRECTUV==1\n#define v_VARYINGNAME_UV vMainUV1\n#elif _DEFINENAME_DIRECTUV==2\n#define v_VARYINGNAME_UV vMainUV2\n#elif _DEFINENAME_DIRECTUV==3\n#define v_VARYINGNAME_UV vMainUV3\n#elif _DEFINENAME_DIRECTUV==4\n#define v_VARYINGNAME_UV vMainUV4\n#elif _DEFINENAME_DIRECTUV==5\n#define v_VARYINGNAME_UV vMainUV5\n#elif _DEFINENAME_DIRECTUV==6\n#define v_VARYINGNAME_UV vMainUV6\n#else\nvarying vec2 v_VARYINGNAME_UV;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const samplerFragmentAlternateDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"samplerFragmentAlternateDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qCAAqC,CAAC;AACnD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;CAiBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 = \"samplerFragmentAlternateDeclaration\";\nconst shader = `#ifdef _DEFINENAME_\n#if _DEFINENAME_DIRECTUV==1\n#define v_VARYINGNAME_UV vMainUV1\n#elif _DEFINENAME_DIRECTUV==2\n#define v_VARYINGNAME_UV vMainUV2\n#elif _DEFINENAME_DIRECTUV==3\n#define v_VARYINGNAME_UV vMainUV3\n#elif _DEFINENAME_DIRECTUV==4\n#define v_VARYINGNAME_UV vMainUV4\n#elif _DEFINENAME_DIRECTUV==5\n#define v_VARYINGNAME_UV vMainUV5\n#elif _DEFINENAME_DIRECTUV==6\n#define v_VARYINGNAME_UV vMainUV6\n#else\nvarying vec2 v_VARYINGNAME_UV;\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const samplerFragmentAlternateDeclaration = { name, shader };\n"]}
@@ -21,7 +21,9 @@ uniform sampler2D _SAMPLERNAME_Sampler;
21
21
  #endif
22
22
  `;
23
23
  // Sideeffect
24
- ShaderStore.IncludesShadersStore[name] = shader;
24
+ if (!ShaderStore.IncludesShadersStore[name]) {
25
+ ShaderStore.IncludesShadersStore[name] = shader;
26
+ }
25
27
  /** @internal */
26
28
  export const samplerFragmentDeclaration = { name, shader };
27
29
  //# sourceMappingURL=samplerFragmentDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"samplerFragmentDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerFragmentDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,4BAA4B,CAAC;AAC1C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;CAkBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,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 = \"samplerFragmentDeclaration\";\nconst shader = `#ifdef _DEFINENAME_\n#if _DEFINENAME_DIRECTUV==1\n#define v_VARYINGNAME_UV vMainUV1\n#elif _DEFINENAME_DIRECTUV==2\n#define v_VARYINGNAME_UV vMainUV2\n#elif _DEFINENAME_DIRECTUV==3\n#define v_VARYINGNAME_UV vMainUV3\n#elif _DEFINENAME_DIRECTUV==4\n#define v_VARYINGNAME_UV vMainUV4\n#elif _DEFINENAME_DIRECTUV==5\n#define v_VARYINGNAME_UV vMainUV5\n#elif _DEFINENAME_DIRECTUV==6\n#define v_VARYINGNAME_UV vMainUV6\n#else\nvarying vec2 v_VARYINGNAME_UV;\n#endif\nuniform sampler2D _SAMPLERNAME_Sampler;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const samplerFragmentDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"samplerFragmentDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerFragmentDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,4BAA4B,CAAC;AAC1C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;CAkBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 = \"samplerFragmentDeclaration\";\nconst shader = `#ifdef _DEFINENAME_\n#if _DEFINENAME_DIRECTUV==1\n#define v_VARYINGNAME_UV vMainUV1\n#elif _DEFINENAME_DIRECTUV==2\n#define v_VARYINGNAME_UV vMainUV2\n#elif _DEFINENAME_DIRECTUV==3\n#define v_VARYINGNAME_UV vMainUV3\n#elif _DEFINENAME_DIRECTUV==4\n#define v_VARYINGNAME_UV vMainUV4\n#elif _DEFINENAME_DIRECTUV==5\n#define v_VARYINGNAME_UV vMainUV5\n#elif _DEFINENAME_DIRECTUV==6\n#define v_VARYINGNAME_UV vMainUV6\n#else\nvarying vec2 v_VARYINGNAME_UV;\n#endif\nuniform sampler2D _SAMPLERNAME_Sampler;\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const samplerFragmentDeclaration = { name, shader };\n"]}
@@ -6,7 +6,9 @@ varying vec2 v_VARYINGNAME_UV;
6
6
  #endif
7
7
  `;
8
8
  // Sideeffect
9
- ShaderStore.IncludesShadersStore[name] = shader;
9
+ if (!ShaderStore.IncludesShadersStore[name]) {
10
+ ShaderStore.IncludesShadersStore[name] = shader;
11
+ }
10
12
  /** @internal */
11
13
  export const samplerVertexDeclaration = { name, shader };
12
14
  //# sourceMappingURL=samplerVertexDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"samplerVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"samplerVertexDeclaration\";\nconst shader = `#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0\nvarying vec2 v_VARYINGNAME_UV;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const samplerVertexDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"samplerVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"samplerVertexDeclaration\";\nconst shader = `#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0\nvarying vec2 v_VARYINGNAME_UV;\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const samplerVertexDeclaration = { name, shader };\n"]}
@@ -27,7 +27,9 @@ else if (v_INFONAME_==5.)
27
27
  #endif
28
28
  `;
29
29
  // Sideeffect
30
- ShaderStore.IncludesShadersStore[name] = shader;
30
+ if (!ShaderStore.IncludesShadersStore[name]) {
31
+ ShaderStore.IncludesShadersStore[name] = shader;
32
+ }
31
33
  /** @internal */
32
34
  export const samplerVertexImplementation = { name, shader };
33
35
  //# sourceMappingURL=samplerVertexImplementation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"samplerVertexImplementation.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerVertexImplementation.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,6BAA6B,CAAC;AAC3C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,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 = \"samplerVertexImplementation\";\nconst shader = `#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0\nif (v_INFONAME_==0.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uvUpdated,1.0,0.0));}\n#ifdef UV2\nelse if (v_INFONAME_==1.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv2Updated,1.0,0.0));}\n#endif\n#ifdef UV3\nelse if (v_INFONAME_==2.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv3,1.0,0.0));}\n#endif\n#ifdef UV4\nelse if (v_INFONAME_==3.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv4,1.0,0.0));}\n#endif\n#ifdef UV5\nelse if (v_INFONAME_==4.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv5,1.0,0.0));}\n#endif\n#ifdef UV6\nelse if (v_INFONAME_==5.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv6,1.0,0.0));}\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const samplerVertexImplementation = { name, shader };\n"]}
1
+ {"version":3,"file":"samplerVertexImplementation.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/samplerVertexImplementation.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,6BAA6B,CAAC;AAC3C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 = \"samplerVertexImplementation\";\nconst shader = `#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0\nif (v_INFONAME_==0.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uvUpdated,1.0,0.0));}\n#ifdef UV2\nelse if (v_INFONAME_==1.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv2Updated,1.0,0.0));}\n#endif\n#ifdef UV3\nelse if (v_INFONAME_==2.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv3,1.0,0.0));}\n#endif\n#ifdef UV4\nelse if (v_INFONAME_==3.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv4,1.0,0.0));}\n#endif\n#ifdef UV5\nelse if (v_INFONAME_==4.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv5,1.0,0.0));}\n#endif\n#ifdef UV6\nelse if (v_INFONAME_==5.)\n{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv6,1.0,0.0));}\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const samplerVertexImplementation = { name, shader };\n"]}
@@ -8,7 +8,9 @@ uniform mat4 viewProjectionR;
8
8
  uniform mat4 view;uniform mat4 projection;uniform vec4 vEyePosition;
9
9
  `;
10
10
  // Sideeffect
11
- ShaderStore.IncludesShadersStore[name] = shader;
11
+ if (!ShaderStore.IncludesShadersStore[name]) {
12
+ ShaderStore.IncludesShadersStore[name] = shader;
13
+ }
12
14
  /** @internal */
13
15
  export const sceneFragmentDeclaration = { name, shader };
14
16
  //# sourceMappingURL=sceneFragmentDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sceneFragmentDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/sceneFragmentDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;CAKd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"sceneFragmentDeclaration\";\nconst shader = `uniform mat4 viewProjection;\n#ifdef MULTIVIEW\nuniform mat4 viewProjectionR;\n#endif\nuniform mat4 view;uniform mat4 projection;uniform vec4 vEyePosition;\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const sceneFragmentDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"sceneFragmentDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/sceneFragmentDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;CAKd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"sceneFragmentDeclaration\";\nconst shader = `uniform mat4 viewProjection;\n#ifdef MULTIVIEW\nuniform mat4 viewProjectionR;\n#endif\nuniform mat4 view;uniform mat4 projection;uniform vec4 vEyePosition;\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const sceneFragmentDeclaration = { name, shader };\n"]}
@@ -8,7 +8,9 @@ mat4 viewProjectionR;
8
8
  mat4 view;mat4 projection;vec4 vEyePosition;};
9
9
  `;
10
10
  // Sideeffect
11
- ShaderStore.IncludesShadersStore[name] = shader;
11
+ if (!ShaderStore.IncludesShadersStore[name]) {
12
+ ShaderStore.IncludesShadersStore[name] = shader;
13
+ }
12
14
  /** @internal */
13
15
  export const sceneUboDeclaration = { name, shader };
14
16
  //# sourceMappingURL=sceneUboDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sceneUboDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/sceneUboDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;CAKd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,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 = \"sceneUboDeclaration\";\nconst shader = `layout(std140,column_major) uniform;uniform Scene {mat4 viewProjection;\n#ifdef MULTIVIEW\nmat4 viewProjectionR;\n#endif \nmat4 view;mat4 projection;vec4 vEyePosition;};\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const sceneUboDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"sceneUboDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/sceneUboDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;CAKd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 = \"sceneUboDeclaration\";\nconst shader = `layout(std140,column_major) uniform;uniform Scene {mat4 viewProjection;\n#ifdef MULTIVIEW\nmat4 viewProjectionR;\n#endif \nmat4 view;mat4 projection;vec4 vEyePosition;};\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const sceneUboDeclaration = { name, shader };\n"]}
@@ -8,7 +8,9 @@ uniform mat4 viewProjectionR;
8
8
  uniform mat4 view;uniform mat4 projection;uniform vec4 vEyePosition;
9
9
  `;
10
10
  // Sideeffect
11
- ShaderStore.IncludesShadersStore[name] = shader;
11
+ if (!ShaderStore.IncludesShadersStore[name]) {
12
+ ShaderStore.IncludesShadersStore[name] = shader;
13
+ }
12
14
  /** @internal */
13
15
  export const sceneVertexDeclaration = { name, shader };
14
16
  //# sourceMappingURL=sceneVertexDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sceneVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/sceneVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,wBAAwB,CAAC;AACtC,MAAM,MAAM,GAAG;;;;;CAKd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"sceneVertexDeclaration\";\nconst shader = `uniform mat4 viewProjection;\n#ifdef MULTIVIEW\nuniform mat4 viewProjectionR;\n#endif\nuniform mat4 view;uniform mat4 projection;uniform vec4 vEyePosition;\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const sceneVertexDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"sceneVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/sceneVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,wBAAwB,CAAC;AACtC,MAAM,MAAM,GAAG;;;;;CAKd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"sceneVertexDeclaration\";\nconst shader = `uniform mat4 viewProjection;\n#ifdef MULTIVIEW\nuniform mat4 viewProjectionR;\n#endif\nuniform mat4 view;uniform mat4 projection;uniform vec4 vEyePosition;\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const sceneVertexDeclaration = { name, shader };\n"]}
@@ -147,7 +147,9 @@ ndc.z=projection[2].z+projection[3].z/depth;
147
147
  ndc.w=1.0;vec4 eyePos=invProjectionMatrix*ndc;eyePos.xyz/=eyePos.w;return eyePos.xyz;}
148
148
  `;
149
149
  // Sideeffect
150
- ShaderStore.IncludesShadersStore[name] = shader;
150
+ if (!ShaderStore.IncludesShadersStore[name]) {
151
+ ShaderStore.IncludesShadersStore[name] = shader;
152
+ }
151
153
  /** @internal */
152
154
  export const screenSpaceRayTrace = { name, shader };
153
155
  //# sourceMappingURL=screenSpaceRayTrace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"screenSpaceRayTrace.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/screenSpaceRayTrace.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgJd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,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 = \"screenSpaceRayTrace\";\nconst shader = `float distanceSquared(vec2 a,vec2 b) { a-=b; return dot(a,a); }\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nfloat linearizeDepth(float depth,float near,float far) {\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\nreturn -(near*far)/(far-depth*(far-near));\n#else\nreturn (near*far)/(far-depth*(far-near));\n#endif\n}\n#endif\n/**\n\\param csOrigin Camera-space ray origin,which must be \nwithin the view volume and must have z>0.01 and project within the valid screen rectangle\n\\param csDirection Unit length camera-space ray direction\n\\param projectToPixelMatrix A projection matrix that maps to **pixel** coordinates \n(**not** [-1,+1] normalized device coordinates).\n\\param csZBuffer The camera-space Z buffer\n\\param csZBufferSize Dimensions of csZBuffer\n\\param csZThickness Camera space csZThickness to ascribe to each pixel in the depth buffer\n\\param nearPlaneZ Positive number. Doesn't have to be THE actual near plane,just a reasonable value\nfor clipping rays headed towards the camera\n\\param stride Step in horizontal or vertical pixels between samples. This is a float\nbecause integer math is slow on GPUs,but should be set to an integer>=1\n\\param jitterFraction Number between 0 and 1 for how far to bump the ray in stride units\nto conceal banding artifacts,plus the stride ray offset.\n\\param maxSteps Maximum number of iterations. Higher gives better images but may be slow\n\\param maxRayTraceDistance Maximum camera-space distance to trace before returning a miss\n\\param selfCollisionNumSkip Number of steps to skip at start when raytracing to avoid self collisions.\n1 is a reasonable value,depending on the scene you may need to set this value to 2\n\\param hitPixel Pixel coordinates of the first intersection with the scene\n\\param numIterations number of iterations performed\n\\param csHitPoint Camera space location of the ray hit\n*/\n#define inline\nbool traceScreenSpaceRay1(\nvec3 csOrigin,\nvec3 csDirection,\nmat4 projectToPixelMatrix,\nsampler2D csZBuffer,\nvec2 csZBufferSize,\n#ifdef SSRAYTRACE_USE_BACK_DEPTHBUFFER\nsampler2D csZBackBuffer,\nfloat csZBackSizeFactor,\n#endif\nfloat csZThickness,\nfloat nearPlaneZ,\nfloat farPlaneZ,\nfloat stride,\nfloat jitterFraction,\nfloat maxSteps,\nfloat maxRayTraceDistance,\nfloat selfCollisionNumSkip,\nout vec2 startPixel,\nout vec2 hitPixel,\nout vec3 csHitPoint,\nout float numIterations\n#ifdef SSRAYTRACE_DEBUG\n,out vec3 debugColor\n#endif\n)\n{\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\nfloat rayLength=(csOrigin.z+csDirection.z*maxRayTraceDistance)>-nearPlaneZ ? (-nearPlaneZ-csOrigin.z)/csDirection.z : maxRayTraceDistance;\n#else\nfloat rayLength=(csOrigin.z+csDirection.z*maxRayTraceDistance)<nearPlaneZ ? (nearPlaneZ-csOrigin.z)/csDirection.z : maxRayTraceDistance;\n#endif\nvec3 csEndPoint=csOrigin+csDirection*rayLength;hitPixel=vec2(-1.0,-1.0);vec4 H0=projectToPixelMatrix*vec4(csOrigin,1.0);vec4 H1=projectToPixelMatrix*vec4(csEndPoint,1.0);float k0=1.0/H0.w;float k1=1.0/H1.w;vec3 Q0=csOrigin*k0;vec3 Q1=csEndPoint*k1;vec2 P0=H0.xy*k0;vec2 P1=H1.xy*k1;\n#ifdef SSRAYTRACE_CLIP_TO_FRUSTUM\nfloat xMax=csZBufferSize.x-0.5,xMin=0.5,yMax=csZBufferSize.y-0.5,yMin=0.5;float alpha=0.0;if ((P1.y>yMax) || (P1.y<yMin)) {alpha=(P1.y-((P1.y>yMax) ? yMax : yMin))/(P1.y-P0.y);}\nif ((P1.x>xMax) || (P1.x<xMin)) {alpha=max(alpha,(P1.x-((P1.x>xMax) ? xMax : xMin))/(P1.x-P0.x));}\nP1=mix(P1,P0,alpha); k1=mix(k1,k0,alpha); Q1=mix(Q1,Q0,alpha);\n#endif\nP1+=vec2((distanceSquared(P0,P1)<0.0001) ? 0.01 : 0.0);vec2 delta=P1-P0;bool permute=false;if (abs(delta.x)<abs(delta.y)) { \npermute=true;delta=delta.yx;P0=P0.yx;P1=P1.yx; }\nfloat stepDirection=sign(delta.x);float invdx=stepDirection/delta.x;vec2 dP=vec2(stepDirection,delta.y*invdx);vec3 dQ=(Q1-Q0)*invdx;float dk=(k1-k0)*invdx;float zMin=min(csEndPoint.z,csOrigin.z);float zMax=max(csEndPoint.z,csOrigin.z);dP*=stride; dQ*=stride; dk*=stride;P0+=dP*jitterFraction; Q0+=dQ*jitterFraction; k0+=dk*jitterFraction;vec4 pqk=vec4(P0,Q0.z,k0);vec4 dPQK=vec4(dP,dQ.z,dk);startPixel=permute ? P0.yx : P0.xy;float prevZMaxEstimate=csOrigin.z;float rayZMin=prevZMaxEstimate,rayZMax=prevZMaxEstimate;float sceneZMax=rayZMax+1e4;float end=P1.x*stepDirection;bool hit=false;float stepCount;for (stepCount=0.0;stepCount<=selfCollisionNumSkip ||\n(pqk.x*stepDirection)<=end &&\nstepCount<maxSteps &&\n!hit &&\nsceneZMax != 0.0; \npqk+=dPQK,++stepCount)\n{hitPixel=permute ? pqk.yx : pqk.xy;rayZMin=prevZMaxEstimate;rayZMax=(dPQK.z*0.5+pqk.z)/(dPQK.w*0.5+pqk.w);rayZMax=clamp(rayZMax,zMin,zMax);prevZMaxEstimate=rayZMax;if (rayZMin>rayZMax) { \nfloat t=rayZMin; rayZMin=rayZMax; rayZMax=t;}\nsceneZMax=texelFetch(csZBuffer,ivec2(hitPixel),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneZMax=linearizeDepth(sceneZMax,nearPlaneZ,farPlaneZ);\n#endif\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\n#ifdef SSRAYTRACE_USE_BACK_DEPTHBUFFER\nfloat sceneBackZ=texelFetch(csZBackBuffer,ivec2(hitPixel/csZBackSizeFactor),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneBackZ=linearizeDepth(sceneBackZ,nearPlaneZ,farPlaneZ);\n#endif\nhit=(rayZMax>=sceneBackZ-csZThickness) && (rayZMin<=sceneZMax);\n#else\nhit=(rayZMax>=sceneZMax-csZThickness) && (rayZMin<=sceneZMax);\n#endif\n#else\n#ifdef SSRAYTRACE_USE_BACK_DEPTHBUFFER\nfloat sceneBackZ=texelFetch(csZBackBuffer,ivec2(hitPixel/csZBackSizeFactor),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneBackZ=linearizeDepth(sceneBackZ,nearPlaneZ,farPlaneZ);\n#endif\nhit=(rayZMin<=sceneBackZ+csZThickness) && (rayZMax>=sceneZMax) && (sceneZMax != 0.0);\n#else\nhit=(rayZMin<=sceneZMax+csZThickness) && (rayZMax>=sceneZMax);\n#endif\n#endif\n}\npqk-=dPQK;stepCount-=1.0;if (((pqk.x+dPQK.x)*stepDirection)>end || (stepCount+1.0)>=maxSteps || sceneZMax==0.0) {hit=false;}\n#ifdef SSRAYTRACE_ENABLE_REFINEMENT\nif (stride>1.0 && hit) {pqk-=dPQK;stepCount-=1.0;float invStride=1.0/stride;dPQK*=invStride;float refinementStepCount=0.0;prevZMaxEstimate=pqk.z/pqk.w;rayZMax=prevZMaxEstimate;sceneZMax=rayZMax+1e7;for (;refinementStepCount<=1.0 ||\n(refinementStepCount<=stride*1.4) &&\n(rayZMax<sceneZMax) && (sceneZMax != 0.0);pqk+=dPQK,refinementStepCount+=1.0)\n{rayZMin=prevZMaxEstimate;rayZMax=(dPQK.z*0.5+pqk.z)/(dPQK.w*0.5+pqk.w);rayZMax=clamp(rayZMax,zMin,zMax);prevZMaxEstimate=rayZMax;rayZMax=max(rayZMax,rayZMin);hitPixel=permute ? pqk.yx : pqk.xy;sceneZMax=texelFetch(csZBuffer,ivec2(hitPixel),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneZMax=linearizeDepth(sceneZMax,nearPlaneZ,farPlaneZ);\n#endif\n}\npqk-=dPQK;refinementStepCount-=1.0;stepCount+=refinementStepCount/stride;}\n#endif\nQ0.xy+=dQ.xy*stepCount;Q0.z=pqk.z;csHitPoint=Q0/pqk.w;numIterations=stepCount+1.0;\n#ifdef SSRAYTRACE_DEBUG\nif (((pqk.x+dPQK.x)*stepDirection)>end) {debugColor=vec3(0,0,1);} else if ((stepCount+1.0)>=maxSteps) {debugColor=vec3(1,0,0);} else if (sceneZMax==0.0) {debugColor=vec3(1,1,0);} else {debugColor=vec3(0,stepCount/maxSteps,0);}\n#endif\nreturn hit;}\n/**\ntexCoord: in the [0,1] range\ndepth: depth in view space (range [znear,zfar]])\n*/\nvec3 computeViewPosFromUVDepth(vec2 texCoord,float depth,mat4 projection,mat4 invProjectionMatrix) {vec4 ndc;ndc.xy=texCoord*2.0-1.0;\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\n#ifdef ORTHOGRAPHIC_CAMERA\nndc.z=-projection[2].z*depth+projection[3].z;\n#else\nndc.z=-projection[2].z-projection[3].z/depth;\n#endif\n#else\n#ifdef ORTHOGRAPHIC_CAMERA\nndc.z=projection[2].z*depth+projection[3].z;\n#else\nndc.z=projection[2].z+projection[3].z/depth;\n#endif\n#endif\nndc.w=1.0;vec4 eyePos=invProjectionMatrix*ndc;eyePos.xyz/=eyePos.w;return eyePos.xyz;}\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const screenSpaceRayTrace = { name, shader };\n"]}
1
+ {"version":3,"file":"screenSpaceRayTrace.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/screenSpaceRayTrace.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgJd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 = \"screenSpaceRayTrace\";\nconst shader = `float distanceSquared(vec2 a,vec2 b) { a-=b; return dot(a,a); }\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nfloat linearizeDepth(float depth,float near,float far) {\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\nreturn -(near*far)/(far-depth*(far-near));\n#else\nreturn (near*far)/(far-depth*(far-near));\n#endif\n}\n#endif\n/**\n\\param csOrigin Camera-space ray origin,which must be \nwithin the view volume and must have z>0.01 and project within the valid screen rectangle\n\\param csDirection Unit length camera-space ray direction\n\\param projectToPixelMatrix A projection matrix that maps to **pixel** coordinates \n(**not** [-1,+1] normalized device coordinates).\n\\param csZBuffer The camera-space Z buffer\n\\param csZBufferSize Dimensions of csZBuffer\n\\param csZThickness Camera space csZThickness to ascribe to each pixel in the depth buffer\n\\param nearPlaneZ Positive number. Doesn't have to be THE actual near plane,just a reasonable value\nfor clipping rays headed towards the camera\n\\param stride Step in horizontal or vertical pixels between samples. This is a float\nbecause integer math is slow on GPUs,but should be set to an integer>=1\n\\param jitterFraction Number between 0 and 1 for how far to bump the ray in stride units\nto conceal banding artifacts,plus the stride ray offset.\n\\param maxSteps Maximum number of iterations. Higher gives better images but may be slow\n\\param maxRayTraceDistance Maximum camera-space distance to trace before returning a miss\n\\param selfCollisionNumSkip Number of steps to skip at start when raytracing to avoid self collisions.\n1 is a reasonable value,depending on the scene you may need to set this value to 2\n\\param hitPixel Pixel coordinates of the first intersection with the scene\n\\param numIterations number of iterations performed\n\\param csHitPoint Camera space location of the ray hit\n*/\n#define inline\nbool traceScreenSpaceRay1(\nvec3 csOrigin,\nvec3 csDirection,\nmat4 projectToPixelMatrix,\nsampler2D csZBuffer,\nvec2 csZBufferSize,\n#ifdef SSRAYTRACE_USE_BACK_DEPTHBUFFER\nsampler2D csZBackBuffer,\nfloat csZBackSizeFactor,\n#endif\nfloat csZThickness,\nfloat nearPlaneZ,\nfloat farPlaneZ,\nfloat stride,\nfloat jitterFraction,\nfloat maxSteps,\nfloat maxRayTraceDistance,\nfloat selfCollisionNumSkip,\nout vec2 startPixel,\nout vec2 hitPixel,\nout vec3 csHitPoint,\nout float numIterations\n#ifdef SSRAYTRACE_DEBUG\n,out vec3 debugColor\n#endif\n)\n{\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\nfloat rayLength=(csOrigin.z+csDirection.z*maxRayTraceDistance)>-nearPlaneZ ? (-nearPlaneZ-csOrigin.z)/csDirection.z : maxRayTraceDistance;\n#else\nfloat rayLength=(csOrigin.z+csDirection.z*maxRayTraceDistance)<nearPlaneZ ? (nearPlaneZ-csOrigin.z)/csDirection.z : maxRayTraceDistance;\n#endif\nvec3 csEndPoint=csOrigin+csDirection*rayLength;hitPixel=vec2(-1.0,-1.0);vec4 H0=projectToPixelMatrix*vec4(csOrigin,1.0);vec4 H1=projectToPixelMatrix*vec4(csEndPoint,1.0);float k0=1.0/H0.w;float k1=1.0/H1.w;vec3 Q0=csOrigin*k0;vec3 Q1=csEndPoint*k1;vec2 P0=H0.xy*k0;vec2 P1=H1.xy*k1;\n#ifdef SSRAYTRACE_CLIP_TO_FRUSTUM\nfloat xMax=csZBufferSize.x-0.5,xMin=0.5,yMax=csZBufferSize.y-0.5,yMin=0.5;float alpha=0.0;if ((P1.y>yMax) || (P1.y<yMin)) {alpha=(P1.y-((P1.y>yMax) ? yMax : yMin))/(P1.y-P0.y);}\nif ((P1.x>xMax) || (P1.x<xMin)) {alpha=max(alpha,(P1.x-((P1.x>xMax) ? xMax : xMin))/(P1.x-P0.x));}\nP1=mix(P1,P0,alpha); k1=mix(k1,k0,alpha); Q1=mix(Q1,Q0,alpha);\n#endif\nP1+=vec2((distanceSquared(P0,P1)<0.0001) ? 0.01 : 0.0);vec2 delta=P1-P0;bool permute=false;if (abs(delta.x)<abs(delta.y)) { \npermute=true;delta=delta.yx;P0=P0.yx;P1=P1.yx; }\nfloat stepDirection=sign(delta.x);float invdx=stepDirection/delta.x;vec2 dP=vec2(stepDirection,delta.y*invdx);vec3 dQ=(Q1-Q0)*invdx;float dk=(k1-k0)*invdx;float zMin=min(csEndPoint.z,csOrigin.z);float zMax=max(csEndPoint.z,csOrigin.z);dP*=stride; dQ*=stride; dk*=stride;P0+=dP*jitterFraction; Q0+=dQ*jitterFraction; k0+=dk*jitterFraction;vec4 pqk=vec4(P0,Q0.z,k0);vec4 dPQK=vec4(dP,dQ.z,dk);startPixel=permute ? P0.yx : P0.xy;float prevZMaxEstimate=csOrigin.z;float rayZMin=prevZMaxEstimate,rayZMax=prevZMaxEstimate;float sceneZMax=rayZMax+1e4;float end=P1.x*stepDirection;bool hit=false;float stepCount;for (stepCount=0.0;stepCount<=selfCollisionNumSkip ||\n(pqk.x*stepDirection)<=end &&\nstepCount<maxSteps &&\n!hit &&\nsceneZMax != 0.0; \npqk+=dPQK,++stepCount)\n{hitPixel=permute ? pqk.yx : pqk.xy;rayZMin=prevZMaxEstimate;rayZMax=(dPQK.z*0.5+pqk.z)/(dPQK.w*0.5+pqk.w);rayZMax=clamp(rayZMax,zMin,zMax);prevZMaxEstimate=rayZMax;if (rayZMin>rayZMax) { \nfloat t=rayZMin; rayZMin=rayZMax; rayZMax=t;}\nsceneZMax=texelFetch(csZBuffer,ivec2(hitPixel),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneZMax=linearizeDepth(sceneZMax,nearPlaneZ,farPlaneZ);\n#endif\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\n#ifdef SSRAYTRACE_USE_BACK_DEPTHBUFFER\nfloat sceneBackZ=texelFetch(csZBackBuffer,ivec2(hitPixel/csZBackSizeFactor),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneBackZ=linearizeDepth(sceneBackZ,nearPlaneZ,farPlaneZ);\n#endif\nhit=(rayZMax>=sceneBackZ-csZThickness) && (rayZMin<=sceneZMax);\n#else\nhit=(rayZMax>=sceneZMax-csZThickness) && (rayZMin<=sceneZMax);\n#endif\n#else\n#ifdef SSRAYTRACE_USE_BACK_DEPTHBUFFER\nfloat sceneBackZ=texelFetch(csZBackBuffer,ivec2(hitPixel/csZBackSizeFactor),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneBackZ=linearizeDepth(sceneBackZ,nearPlaneZ,farPlaneZ);\n#endif\nhit=(rayZMin<=sceneBackZ+csZThickness) && (rayZMax>=sceneZMax) && (sceneZMax != 0.0);\n#else\nhit=(rayZMin<=sceneZMax+csZThickness) && (rayZMax>=sceneZMax);\n#endif\n#endif\n}\npqk-=dPQK;stepCount-=1.0;if (((pqk.x+dPQK.x)*stepDirection)>end || (stepCount+1.0)>=maxSteps || sceneZMax==0.0) {hit=false;}\n#ifdef SSRAYTRACE_ENABLE_REFINEMENT\nif (stride>1.0 && hit) {pqk-=dPQK;stepCount-=1.0;float invStride=1.0/stride;dPQK*=invStride;float refinementStepCount=0.0;prevZMaxEstimate=pqk.z/pqk.w;rayZMax=prevZMaxEstimate;sceneZMax=rayZMax+1e7;for (;refinementStepCount<=1.0 ||\n(refinementStepCount<=stride*1.4) &&\n(rayZMax<sceneZMax) && (sceneZMax != 0.0);pqk+=dPQK,refinementStepCount+=1.0)\n{rayZMin=prevZMaxEstimate;rayZMax=(dPQK.z*0.5+pqk.z)/(dPQK.w*0.5+pqk.w);rayZMax=clamp(rayZMax,zMin,zMax);prevZMaxEstimate=rayZMax;rayZMax=max(rayZMax,rayZMin);hitPixel=permute ? pqk.yx : pqk.xy;sceneZMax=texelFetch(csZBuffer,ivec2(hitPixel),0).r;\n#ifdef SSRAYTRACE_SCREENSPACE_DEPTH\nsceneZMax=linearizeDepth(sceneZMax,nearPlaneZ,farPlaneZ);\n#endif\n}\npqk-=dPQK;refinementStepCount-=1.0;stepCount+=refinementStepCount/stride;}\n#endif\nQ0.xy+=dQ.xy*stepCount;Q0.z=pqk.z;csHitPoint=Q0/pqk.w;numIterations=stepCount+1.0;\n#ifdef SSRAYTRACE_DEBUG\nif (((pqk.x+dPQK.x)*stepDirection)>end) {debugColor=vec3(0,0,1);} else if ((stepCount+1.0)>=maxSteps) {debugColor=vec3(1,0,0);} else if (sceneZMax==0.0) {debugColor=vec3(1,1,0);} else {debugColor=vec3(0,stepCount/maxSteps,0);}\n#endif\nreturn hit;}\n/**\ntexCoord: in the [0,1] range\ndepth: depth in view space (range [znear,zfar]])\n*/\nvec3 computeViewPosFromUVDepth(vec2 texCoord,float depth,mat4 projection,mat4 invProjectionMatrix) {vec4 ndc;ndc.xy=texCoord*2.0-1.0;\n#ifdef SSRAYTRACE_RIGHT_HANDED_SCENE\n#ifdef ORTHOGRAPHIC_CAMERA\nndc.z=-projection[2].z*depth+projection[3].z;\n#else\nndc.z=-projection[2].z-projection[3].z/depth;\n#endif\n#else\n#ifdef ORTHOGRAPHIC_CAMERA\nndc.z=projection[2].z*depth+projection[3].z;\n#else\nndc.z=projection[2].z+projection[3].z/depth;\n#endif\n#endif\nndc.w=1.0;vec4 eyePos=invProjectionMatrix*ndc;eyePos.xyz/=eyePos.w;return eyePos.xyz;}\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const screenSpaceRayTrace = { name, shader };\n"]}
@@ -31,7 +31,9 @@ gl_FragColor=pack(depthSM);
31
31
  #endif
32
32
  return;`;
33
33
  // Sideeffect
34
- ShaderStore.IncludesShadersStore[name] = shader;
34
+ if (!ShaderStore.IncludesShadersStore[name]) {
35
+ ShaderStore.IncludesShadersStore[name] = shader;
36
+ }
35
37
  /** @internal */
36
38
  export const shadowMapFragment = { name, shader };
37
39
  //# sourceMappingURL=shadowMapFragment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapFragment.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapFragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,mBAAmB,CAAC;AACjC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4BP,CAAC;AACT,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapFragment\";\nconst shader = `float depthSM=vDepthMetricSM;\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\n#if SM_USEDISTANCE==1\ndepthSM=(length(vPositionWSM-lightDataSM)+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#else\n#ifdef USE_REVERSE_DEPTHBUFFER\ndepthSM=(-zSM+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#else\ndepthSM=(zSM+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#endif\n#endif\ndepthSM=clamp(depthSM,0.0,1.0);\n#ifdef USE_REVERSE_DEPTHBUFFER\ngl_FragDepth=clamp(1.0-depthSM,0.0,1.0);\n#else\ngl_FragDepth=clamp(depthSM,0.0,1.0); \n#endif\n#elif SM_USEDISTANCE==1\ndepthSM=(length(vPositionWSM-lightDataSM)+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#endif\n#if SM_ESM==1\ndepthSM=clamp(exp(-min(87.,biasAndScaleSM.z*depthSM)),0.,1.);\n#endif\n#if SM_FLOAT==1\ngl_FragColor=vec4(depthSM,1.0,1.0,1.0);\n#else\ngl_FragColor=pack(depthSM);\n#endif\nreturn;`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapFragment = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapFragment.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapFragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,mBAAmB,CAAC;AACjC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4BP,CAAC;AACT,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapFragment\";\nconst shader = `float depthSM=vDepthMetricSM;\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\n#if SM_USEDISTANCE==1\ndepthSM=(length(vPositionWSM-lightDataSM)+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#else\n#ifdef USE_REVERSE_DEPTHBUFFER\ndepthSM=(-zSM+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#else\ndepthSM=(zSM+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#endif\n#endif\ndepthSM=clamp(depthSM,0.0,1.0);\n#ifdef USE_REVERSE_DEPTHBUFFER\ngl_FragDepth=clamp(1.0-depthSM,0.0,1.0);\n#else\ngl_FragDepth=clamp(depthSM,0.0,1.0); \n#endif\n#elif SM_USEDISTANCE==1\ndepthSM=(length(vPositionWSM-lightDataSM)+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#endif\n#if SM_ESM==1\ndepthSM=clamp(exp(-min(87.,biasAndScaleSM.z*depthSM)),0.,1.);\n#endif\n#if SM_FLOAT==1\ngl_FragColor=vec4(depthSM,1.0,1.0,1.0);\n#else\ngl_FragColor=pack(depthSM);\n#endif\nreturn;`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapFragment = { name, shader };\n"]}
@@ -20,7 +20,9 @@ varying float zSM;
20
20
  #endif
21
21
  `;
22
22
  // Sideeffect
23
- ShaderStore.IncludesShadersStore[name] = shader;
23
+ if (!ShaderStore.IncludesShadersStore[name]) {
24
+ ShaderStore.IncludesShadersStore[name] = shader;
25
+ }
24
26
  /** @internal */
25
27
  export const shadowMapFragmentExtraDeclaration = { name, shader };
26
28
  //# sourceMappingURL=shadowMapFragmentExtraDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapFragmentExtraDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,oBAAoB,CAAC;AAC5B,OAAO,wBAAwB,CAAC;AAEhC,MAAM,IAAI,GAAG,mCAAmC,CAAC;AACjD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;CAed,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nimport \"./packingFunctions\";\nimport \"./bayerDitherFunctions\";\n\nconst name = \"shadowMapFragmentExtraDeclaration\";\nconst shader = `#if SM_FLOAT==0\n#include<packingFunctions>\n#endif\n#if SM_SOFTTRANSPARENTSHADOW==1\n#include<bayerDitherFunctions>\nuniform vec2 softTransparentShadowSM;\n#endif\nvarying float vDepthMetricSM;\n#if SM_USEDISTANCE==1\nuniform vec3 lightDataSM;varying vec3 vPositionWSM;\n#endif\nuniform vec3 biasAndScaleSM;uniform vec2 depthValuesSM;\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\nvarying float zSM;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapFragmentExtraDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapFragmentExtraDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,oBAAoB,CAAC;AAC5B,OAAO,wBAAwB,CAAC;AAEhC,MAAM,IAAI,GAAG,mCAAmC,CAAC;AACjD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;CAed,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 \"./packingFunctions\";\nimport \"./bayerDitherFunctions\";\n\nconst name = \"shadowMapFragmentExtraDeclaration\";\nconst shader = `#if SM_FLOAT==0\n#include<packingFunctions>\n#endif\n#if SM_SOFTTRANSPARENTSHADOW==1\n#include<bayerDitherFunctions>\nuniform vec2 softTransparentShadowSM;\n#endif\nvarying float vDepthMetricSM;\n#if SM_USEDISTANCE==1\nuniform vec3 lightDataSM;varying vec3 vPositionWSM;\n#endif\nuniform vec3 biasAndScaleSM;uniform vec2 depthValuesSM;\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\nvarying float zSM;\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapFragmentExtraDeclaration = { name, shader };\n"]}
@@ -6,7 +6,9 @@ if ((bayerDither8(floor(mod(gl_FragCoord.xy,8.0))))/64.0>=softTransparentShadowS
6
6
  #endif
7
7
  `;
8
8
  // Sideeffect
9
- ShaderStore.IncludesShadersStore[name] = shader;
9
+ if (!ShaderStore.IncludesShadersStore[name]) {
10
+ ShaderStore.IncludesShadersStore[name] = shader;
11
+ }
10
12
  /** @internal */
11
13
  export const shadowMapFragmentSoftTransparentShadow = { name, shader };
12
14
  //# sourceMappingURL=shadowMapFragmentSoftTransparentShadow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapFragmentSoftTransparentShadow.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,wCAAwC,CAAC;AACtD,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,sCAAsC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapFragmentSoftTransparentShadow\";\nconst shader = `#if SM_SOFTTRANSPARENTSHADOW==1\nif ((bayerDither8(floor(mod(gl_FragCoord.xy,8.0))))/64.0>=softTransparentShadowSM.x*alpha) discard;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapFragmentSoftTransparentShadow = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapFragmentSoftTransparentShadow.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,wCAAwC,CAAC;AACtD,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,sCAAsC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapFragmentSoftTransparentShadow\";\nconst shader = `#if SM_SOFTTRANSPARENTSHADOW==1\nif ((bayerDither8(floor(mod(gl_FragCoord.xy,8.0))))/64.0>=softTransparentShadowSM.x*alpha) discard;\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapFragmentSoftTransparentShadow = { name, shader };\n"]}
@@ -8,7 +8,9 @@ const shader = `layout(std140,column_major) uniform;
8
8
  #include<meshUboDeclaration>
9
9
  `;
10
10
  // Sideeffect
11
- ShaderStore.IncludesShadersStore[name] = shader;
11
+ if (!ShaderStore.IncludesShadersStore[name]) {
12
+ ShaderStore.IncludesShadersStore[name] = shader;
13
+ }
12
14
  /** @internal */
13
15
  export const shadowMapUboDeclaration = { name, shader };
14
16
  //# sourceMappingURL=shadowMapUboDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapUboDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapUboDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAE9B,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nimport \"./sceneUboDeclaration\";\nimport \"./meshUboDeclaration\";\n\nconst name = \"shadowMapUboDeclaration\";\nconst shader = `layout(std140,column_major) uniform;\n#include<sceneUboDeclaration>\n#include<meshUboDeclaration>\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapUboDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapUboDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapUboDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,uBAAuB,CAAC;AAC/B,OAAO,sBAAsB,CAAC;AAE9B,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;CAGd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,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 \"./sceneUboDeclaration\";\nimport \"./meshUboDeclaration\";\n\nconst name = \"shadowMapUboDeclaration\";\nconst shader = `layout(std140,column_major) uniform;\n#include<sceneUboDeclaration>\n#include<meshUboDeclaration>\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapUboDeclaration = { name, shader };\n"]}
@@ -7,7 +7,9 @@ const shader = `#include<sceneVertexDeclaration>
7
7
  #include<meshVertexDeclaration>
8
8
  `;
9
9
  // Sideeffect
10
- ShaderStore.IncludesShadersStore[name] = shader;
10
+ if (!ShaderStore.IncludesShadersStore[name]) {
11
+ ShaderStore.IncludesShadersStore[name] = shader;
12
+ }
11
13
  /** @internal */
12
14
  export const shadowMapVertexDeclaration = { name, shader };
13
15
  //# sourceMappingURL=shadowMapVertexDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,0BAA0B,CAAC;AAClC,OAAO,yBAAyB,CAAC;AAEjC,MAAM,IAAI,GAAG,4BAA4B,CAAC;AAC1C,MAAM,MAAM,GAAG;;CAEd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nimport \"./sceneVertexDeclaration\";\nimport \"./meshVertexDeclaration\";\n\nconst name = \"shadowMapVertexDeclaration\";\nconst shader = `#include<sceneVertexDeclaration>\n#include<meshVertexDeclaration>\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapVertexDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapVertexDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,0BAA0B,CAAC;AAClC,OAAO,yBAAyB,CAAC;AAEjC,MAAM,IAAI,GAAG,4BAA4B,CAAC;AAC1C,MAAM,MAAM,GAAG;;CAEd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nimport \"./sceneVertexDeclaration\";\nimport \"./meshVertexDeclaration\";\n\nconst name = \"shadowMapVertexDeclaration\";\nconst shader = `#include<sceneVertexDeclaration>\n#include<meshVertexDeclaration>\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapVertexDeclaration = { name, shader };\n"]}
@@ -13,7 +13,9 @@ varying float zSM;
13
13
  #endif
14
14
  `;
15
15
  // Sideeffect
16
- ShaderStore.IncludesShadersStore[name] = shader;
16
+ if (!ShaderStore.IncludesShadersStore[name]) {
17
+ ShaderStore.IncludesShadersStore[name] = shader;
18
+ }
17
19
  /** @internal */
18
20
  export const shadowMapVertexExtraDeclaration = { name, shader };
19
21
  //# sourceMappingURL=shadowMapVertexExtraDeclaration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapVertexExtraDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAM,MAAM,GAAG;;;;;;;;;;CAUd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapVertexExtraDeclaration\";\nconst shader = `#if SM_NORMALBIAS==1\nuniform vec3 lightDataSM;\n#endif\nuniform vec3 biasAndScaleSM;uniform vec2 depthValuesSM;varying float vDepthMetricSM;\n#if SM_USEDISTANCE==1\nvarying vec3 vPositionWSM;\n#endif\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\nvarying float zSM;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapVertexExtraDeclaration = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapVertexExtraDeclaration.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAM,MAAM,GAAG;;;;;;;;;;CAUd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapVertexExtraDeclaration\";\nconst shader = `#if SM_NORMALBIAS==1\nuniform vec3 lightDataSM;\n#endif\nuniform vec3 biasAndScaleSM;uniform vec2 depthValuesSM;varying float vDepthMetricSM;\n#if SM_USEDISTANCE==1\nvarying vec3 vPositionWSM;\n#endif\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\nvarying float zSM;\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapVertexExtraDeclaration = { name, shader };\n"]}
@@ -27,7 +27,9 @@ vDepthMetricSM=(gl_Position.z+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;
27
27
  #endif
28
28
  `;
29
29
  // Sideeffect
30
- ShaderStore.IncludesShadersStore[name] = shader;
30
+ if (!ShaderStore.IncludesShadersStore[name]) {
31
+ ShaderStore.IncludesShadersStore[name] = shader;
32
+ }
31
33
  /** @internal */
32
34
  export const shadowMapVertexMetric = { name, shader };
33
35
  //# sourceMappingURL=shadowMapVertexMetric.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapVertexMetric.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexMetric.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,uBAAuB,CAAC;AACrC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapVertexMetric\";\nconst shader = `#if SM_USEDISTANCE==1\nvPositionWSM=worldPos.xyz;\n#endif\n#if SM_DEPTHTEXTURE==1\n#ifdef IS_NDC_HALF_ZRANGE\n#define BIASFACTOR 0.5\n#else\n#define BIASFACTOR 1.0\n#endif\n#ifdef USE_REVERSE_DEPTHBUFFER\ngl_Position.z-=biasAndScaleSM.x*gl_Position.w*BIASFACTOR;\n#else\ngl_Position.z+=biasAndScaleSM.x*gl_Position.w*BIASFACTOR;\n#endif\n#endif\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\nzSM=gl_Position.z;gl_Position.z=0.0;\n#elif SM_USEDISTANCE==0\n#ifdef USE_REVERSE_DEPTHBUFFER\nvDepthMetricSM=(-gl_Position.z+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#else\nvDepthMetricSM=(gl_Position.z+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapVertexMetric = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapVertexMetric.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexMetric.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,uBAAuB,CAAC;AACrC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapVertexMetric\";\nconst shader = `#if SM_USEDISTANCE==1\nvPositionWSM=worldPos.xyz;\n#endif\n#if SM_DEPTHTEXTURE==1\n#ifdef IS_NDC_HALF_ZRANGE\n#define BIASFACTOR 0.5\n#else\n#define BIASFACTOR 1.0\n#endif\n#ifdef USE_REVERSE_DEPTHBUFFER\ngl_Position.z-=biasAndScaleSM.x*gl_Position.w*BIASFACTOR;\n#else\ngl_Position.z+=biasAndScaleSM.x*gl_Position.w*BIASFACTOR;\n#endif\n#endif\n#if defined(SM_DEPTHCLAMP) && SM_DEPTHCLAMP==1\nzSM=gl_Position.z;gl_Position.z=0.0;\n#elif SM_USEDISTANCE==0\n#ifdef USE_REVERSE_DEPTHBUFFER\nvDepthMetricSM=(-gl_Position.z+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#else\nvDepthMetricSM=(gl_Position.z+depthValuesSM.x)/depthValuesSM.y+biasAndScaleSM.x;\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapVertexMetric = { name, shader };\n"]}
@@ -11,7 +11,9 @@ float ndlSM=dot(vNormalW,worldLightDirSM);float sinNLSM=sqrt(1.0-ndlSM*ndlSM);fl
11
11
  #endif
12
12
  `;
13
13
  // Sideeffect
14
- ShaderStore.IncludesShadersStore[name] = shader;
14
+ if (!ShaderStore.IncludesShadersStore[name]) {
15
+ ShaderStore.IncludesShadersStore[name] = shader;
16
+ }
15
17
  /** @internal */
16
18
  export const shadowMapVertexNormalBias = { name, shader };
17
19
  //# sourceMappingURL=shadowMapVertexNormalBias.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowMapVertexNormalBias.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexNormalBias.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,2BAA2B,CAAC;AACzC,MAAM,MAAM,GAAG;;;;;;;;CAQd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapVertexNormalBias\";\nconst shader = `#if SM_NORMALBIAS==1\n#if SM_DIRECTIONINLIGHTDATA==1\nvec3 worldLightDirSM=normalize(-lightDataSM.xyz);\n#else\nvec3 directionToLightSM=lightDataSM.xyz-worldPos.xyz;vec3 worldLightDirSM=normalize(directionToLightSM);\n#endif\nfloat ndlSM=dot(vNormalW,worldLightDirSM);float sinNLSM=sqrt(1.0-ndlSM*ndlSM);float normalBiasSM=biasAndScaleSM.y*sinNLSM;worldPos.xyz-=vNormalW*normalBiasSM;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowMapVertexNormalBias = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowMapVertexNormalBias.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowMapVertexNormalBias.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,2BAA2B,CAAC;AACzC,MAAM,MAAM,GAAG;;;;;;;;CAQd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowMapVertexNormalBias\";\nconst shader = `#if SM_NORMALBIAS==1\n#if SM_DIRECTIONINLIGHTDATA==1\nvec3 worldLightDirSM=normalize(-lightDataSM.xyz);\n#else\nvec3 directionToLightSM=lightDataSM.xyz-worldPos.xyz;vec3 worldLightDirSM=normalize(directionToLightSM);\n#endif\nfloat ndlSM=dot(vNormalW,worldLightDirSM);float sinNLSM=sqrt(1.0-ndlSM*ndlSM);float normalBiasSM=biasAndScaleSM.y*sinNLSM;worldPos.xyz-=vNormalW*normalBiasSM;\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowMapVertexNormalBias = { name, shader };\n"]}
@@ -329,7 +329,9 @@ float computeShadowWithCSMPCSS64(float layer,vec4 vPositionFromLight,float depth
329
329
  #endif
330
330
  `;
331
331
  // Sideeffect
332
- ShaderStore.IncludesShadersStore[name] = shader;
332
+ if (!ShaderStore.IncludesShadersStore[name]) {
333
+ ShaderStore.IncludesShadersStore[name] = shader;
334
+ }
333
335
  /** @internal */
334
336
  export const shadowsFragmentFunctions = { name, shader };
335
337
  //# sourceMappingURL=shadowsFragmentFunctions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shadowsFragmentFunctions.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowsFragmentFunctions.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsUd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAChD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowsFragmentFunctions\";\nconst shader = `#ifdef SHADOWS\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define TEXTUREFUNC(s,c,l) texture2DLodEXT(s,c,l)\n#else\n#define TEXTUREFUNC(s,c,b) texture2D(s,c,b)\n#endif\n#ifndef SHADOWFLOAT\nfloat unpack(vec4 color)\n{const vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(color,bit_shift);}\n#endif\nfloat computeFallOff(float value,vec2 clipSpace,float frustumEdgeFalloff)\n{float mask=smoothstep(1.0-frustumEdgeFalloff,1.00000012,clamp(dot(clipSpace,clipSpace),0.,1.));return mix(value,1.0,mask);}\n#define inline\nfloat computeShadowCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float darkness,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);depth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;\n#ifndef SHADOWFLOAT\nfloat shadow=unpack(textureCube(shadowSampler,directionToLight));\n#else\nfloat shadow=textureCube(shadowSampler,directionToLight).x;\n#endif\nreturn depth>shadow ? darkness : 1.0;}\n#define inline\nfloat computeShadowWithPoissonSamplingCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float mapSize,float darkness,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);depth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;float visibility=1.;vec3 poissonDisk[4];poissonDisk[0]=vec3(-1.0,1.0,-1.0);poissonDisk[1]=vec3(1.0,-1.0,-1.0);poissonDisk[2]=vec3(-1.0,-1.0,-1.0);poissonDisk[3]=vec3(1.0,-1.0,1.0);\n#ifndef SHADOWFLOAT\nif (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[0]*mapSize))<depth) visibility-=0.25;if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[1]*mapSize))<depth) visibility-=0.25;if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[2]*mapSize))<depth) visibility-=0.25;if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[3]*mapSize))<depth) visibility-=0.25;\n#else\nif (textureCube(shadowSampler,directionToLight+poissonDisk[0]*mapSize).x<depth) visibility-=0.25;if (textureCube(shadowSampler,directionToLight+poissonDisk[1]*mapSize).x<depth) visibility-=0.25;if (textureCube(shadowSampler,directionToLight+poissonDisk[2]*mapSize).x<depth) visibility-=0.25;if (textureCube(shadowSampler,directionToLight+poissonDisk[3]*mapSize).x<depth) visibility-=0.25;\n#endif\nreturn min(1.0,visibility+darkness);}\n#define inline\nfloat computeShadowWithESMCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float darkness,float depthScale,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);float shadowPixelDepth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;\n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(textureCube(shadowSampler,directionToLight));\n#else\nfloat shadowMapSample=textureCube(shadowSampler,directionToLight).x;\n#endif\nfloat esm=1.0-clamp(exp(min(87.,depthScale*shadowPixelDepth))*shadowMapSample,0.,1.-darkness);return esm;}\n#define inline\nfloat computeShadowWithCloseESMCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float darkness,float depthScale,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);float shadowPixelDepth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;\n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(textureCube(shadowSampler,directionToLight));\n#else\nfloat shadowMapSample=textureCube(shadowSampler,directionToLight).x;\n#endif\nfloat esm=clamp(exp(min(87.,-depthScale*(shadowPixelDepth-shadowMapSample))),darkness,1.);return esm;}\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define inline\nfloat computeShadowCSM(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray shadowSampler,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);vec3 uvLayer=vec3(uv.x,uv.y,layer);float shadowPixelDepth=clamp(depthMetric,0.,1.0);\n#ifndef SHADOWFLOAT\nfloat shadow=unpack(texture2D(shadowSampler,uvLayer));\n#else\nfloat shadow=texture2D(shadowSampler,uvLayer).x;\n#endif\nreturn shadowPixelDepth>shadow ? computeFallOff(darkness,clipSpace.xy,frustumEdgeFalloff) : 1.;}\n#endif\n#define inline\nfloat computeShadow(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0);\n#ifndef SHADOWFLOAT\nfloat shadow=unpack(TEXTUREFUNC(shadowSampler,uv,0.));\n#else\nfloat shadow=TEXTUREFUNC(shadowSampler,uv,0.).x;\n#endif\nreturn shadowPixelDepth>shadow ? computeFallOff(darkness,clipSpace.xy,frustumEdgeFalloff) : 1.;}}\n#define inline\nfloat computeShadowWithPoissonSampling(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float mapSize,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0);float visibility=1.;vec2 poissonDisk[4];poissonDisk[0]=vec2(-0.94201624,-0.39906216);poissonDisk[1]=vec2(0.94558609,-0.76890725);poissonDisk[2]=vec2(-0.094184101,-0.92938870);poissonDisk[3]=vec2(0.34495938,0.29387760);\n#ifndef SHADOWFLOAT\nif (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[0]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[1]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[2]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[3]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;\n#else\nif (TEXTUREFUNC(shadowSampler,uv+poissonDisk[0]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[1]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[2]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[3]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;\n#endif\nreturn computeFallOff(min(1.0,visibility+darkness),clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithESM(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float depthScale,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0);\n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(TEXTUREFUNC(shadowSampler,uv,0.));\n#else\nfloat shadowMapSample=TEXTUREFUNC(shadowSampler,uv,0.).x;\n#endif\nfloat esm=1.0-clamp(exp(min(87.,depthScale*shadowPixelDepth))*shadowMapSample,0.,1.-darkness);return computeFallOff(esm,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithCloseESM(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float depthScale,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0); \n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(TEXTUREFUNC(shadowSampler,uv,0.));\n#else\nfloat shadowMapSample=TEXTUREFUNC(shadowSampler,uv,0.).x;\n#endif\nfloat esm=clamp(exp(min(87.,-depthScale*(shadowPixelDepth-shadowMapSample))),darkness,1.);return computeFallOff(esm,clipSpace.xy,frustumEdgeFalloff);}}\n#ifdef IS_NDC_HALF_ZRANGE\n#define ZINCLIP clipSpace.z\n#else\n#define ZINCLIP uvDepth.z\n#endif\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define GREATEST_LESS_THAN_ONE 0.99999994\n#define DISABLE_UNIFORMITY_ANALYSIS\n#define inline\nfloat computeShadowWithCSMPCF1(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec4 uvDepthLayer=vec4(uvDepth.x,uvDepth.y,layer,uvDepth.z);float shadow=texture2D(shadowSampler,uvDepthLayer);shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}\n#define inline\nfloat computeShadowWithCSMPCF3(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=3.-2.*st;vec2 uvw1=1.+2.*st;vec2 u=vec2((2.-st.x)/uvw0.x-1.,st.x/uvw1.x+1.)*shadowMapSizeAndInverse.y;vec2 v=vec2((2.-st.y)/uvw0.y-1.,st.y/uvw1.y+1.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[0]),layer,uvDepth.z));shadow+=uvw1.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[0]),layer,uvDepth.z));shadow+=uvw0.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[1]),layer,uvDepth.z));shadow+=uvw1.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[1]),layer,uvDepth.z));shadow=shadow/16.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}\n#define inline\nfloat computeShadowWithCSMPCF5(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=4.-3.*st;vec2 uvw1=vec2(7.);vec2 uvw2=1.+3.*st;vec3 u=vec3((3.-2.*st.x)/uvw0.x-2.,(3.+st.x)/uvw1.x,st.x/uvw2.x+2.)*shadowMapSizeAndInverse.y;vec3 v=vec3((3.-2.*st.y)/uvw0.y-2.,(3.+st.y)/uvw1.y,st.y/uvw2.y+2.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[0]),layer,uvDepth.z));shadow+=uvw1.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[0]),layer,uvDepth.z));shadow+=uvw2.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[0]),layer,uvDepth.z));shadow+=uvw0.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[1]),layer,uvDepth.z));shadow+=uvw1.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[1]),layer,uvDepth.z));shadow+=uvw2.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[1]),layer,uvDepth.z));shadow+=uvw0.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[2]),layer,uvDepth.z));shadow+=uvw1.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[2]),layer,uvDepth.z));shadow+=uvw2.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[2]),layer,uvDepth.z));shadow=shadow/144.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}\n#define inline\nfloat computeShadowWithPCF1(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,float darkness,float frustumEdgeFalloff)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;float shadow=TEXTUREFUNC(shadowSampler,uvDepth,0.);shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithPCF3(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=3.-2.*st;vec2 uvw1=1.+2.*st;vec2 u=vec2((2.-st.x)/uvw0.x-1.,st.x/uvw1.x+1.)*shadowMapSizeAndInverse.y;vec2 v=vec2((2.-st.y)/uvw0.y-1.,st.y/uvw1.y+1.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[0]),uvDepth.z),0.);shadow+=uvw1.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[0]),uvDepth.z),0.);shadow+=uvw0.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[1]),uvDepth.z),0.);shadow+=uvw1.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[1]),uvDepth.z),0.);shadow=shadow/16.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithPCF5(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=4.-3.*st;vec2 uvw1=vec2(7.);vec2 uvw2=1.+3.*st;vec3 u=vec3((3.-2.*st.x)/uvw0.x-2.,(3.+st.x)/uvw1.x,st.x/uvw2.x+2.)*shadowMapSizeAndInverse.y;vec3 v=vec3((3.-2.*st.y)/uvw0.y-2.,(3.+st.y)/uvw1.y,st.y/uvw2.y+2.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[0]),uvDepth.z),0.);shadow+=uvw1.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[0]),uvDepth.z),0.);shadow+=uvw2.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[0]),uvDepth.z),0.);shadow+=uvw0.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[1]),uvDepth.z),0.);shadow+=uvw1.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[1]),uvDepth.z),0.);shadow+=uvw2.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[1]),uvDepth.z),0.);shadow+=uvw0.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[2]),uvDepth.z),0.);shadow+=uvw1.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[2]),uvDepth.z),0.);shadow+=uvw2.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[2]),uvDepth.z),0.);shadow=shadow/144.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\nconst vec3 PoissonSamplers32[64]=vec3[64](\nvec3(0.06407013,0.05409927,0.),\nvec3(0.7366577,0.5789394,0.),\nvec3(-0.6270542,-0.5320278,0.),\nvec3(-0.4096107,0.8411095,0.),\nvec3(0.6849564,-0.4990818,0.),\nvec3(-0.874181,-0.04579735,0.),\nvec3(0.9989998,0.0009880066,0.),\nvec3(-0.004920578,-0.9151649,0.),\nvec3(0.1805763,0.9747483,0.),\nvec3(-0.2138451,0.2635818,0.),\nvec3(0.109845,0.3884785,0.),\nvec3(0.06876755,-0.3581074,0.),\nvec3(0.374073,-0.7661266,0.),\nvec3(0.3079132,-0.1216763,0.),\nvec3(-0.3794335,-0.8271583,0.),\nvec3(-0.203878,-0.07715034,0.),\nvec3(0.5912697,0.1469799,0.),\nvec3(-0.88069,0.3031784,0.),\nvec3(0.5040108,0.8283722,0.),\nvec3(-0.5844124,0.5494877,0.),\nvec3(0.6017799,-0.1726654,0.),\nvec3(-0.5554981,0.1559997,0.),\nvec3(-0.3016369,-0.3900928,0.),\nvec3(-0.5550632,-0.1723762,0.),\nvec3(0.925029,0.2995041,0.),\nvec3(-0.2473137,0.5538505,0.),\nvec3(0.9183037,-0.2862392,0.),\nvec3(0.2469421,0.6718712,0.),\nvec3(0.3916397,-0.4328209,0.),\nvec3(-0.03576927,-0.6220032,0.),\nvec3(-0.04661255,0.7995201,0.),\nvec3(0.4402924,0.3640312,0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.)\n);const vec3 PoissonSamplers64[64]=vec3[64](\nvec3(-0.613392,0.617481,0.),\nvec3(0.170019,-0.040254,0.),\nvec3(-0.299417,0.791925,0.),\nvec3(0.645680,0.493210,0.),\nvec3(-0.651784,0.717887,0.),\nvec3(0.421003,0.027070,0.),\nvec3(-0.817194,-0.271096,0.),\nvec3(-0.705374,-0.668203,0.),\nvec3(0.977050,-0.108615,0.),\nvec3(0.063326,0.142369,0.),\nvec3(0.203528,0.214331,0.),\nvec3(-0.667531,0.326090,0.),\nvec3(-0.098422,-0.295755,0.),\nvec3(-0.885922,0.215369,0.),\nvec3(0.566637,0.605213,0.),\nvec3(0.039766,-0.396100,0.),\nvec3(0.751946,0.453352,0.),\nvec3(0.078707,-0.715323,0.),\nvec3(-0.075838,-0.529344,0.),\nvec3(0.724479,-0.580798,0.),\nvec3(0.222999,-0.215125,0.),\nvec3(-0.467574,-0.405438,0.),\nvec3(-0.248268,-0.814753,0.),\nvec3(0.354411,-0.887570,0.),\nvec3(0.175817,0.382366,0.),\nvec3(0.487472,-0.063082,0.),\nvec3(-0.084078,0.898312,0.),\nvec3(0.488876,-0.783441,0.),\nvec3(0.470016,0.217933,0.),\nvec3(-0.696890,-0.549791,0.),\nvec3(-0.149693,0.605762,0.),\nvec3(0.034211,0.979980,0.),\nvec3(0.503098,-0.308878,0.),\nvec3(-0.016205,-0.872921,0.),\nvec3(0.385784,-0.393902,0.),\nvec3(-0.146886,-0.859249,0.),\nvec3(0.643361,0.164098,0.),\nvec3(0.634388,-0.049471,0.),\nvec3(-0.688894,0.007843,0.),\nvec3(0.464034,-0.188818,0.),\nvec3(-0.440840,0.137486,0.),\nvec3(0.364483,0.511704,0.),\nvec3(0.034028,0.325968,0.),\nvec3(0.099094,-0.308023,0.),\nvec3(0.693960,-0.366253,0.),\nvec3(0.678884,-0.204688,0.),\nvec3(0.001801,0.780328,0.),\nvec3(0.145177,-0.898984,0.),\nvec3(0.062655,-0.611866,0.),\nvec3(0.315226,-0.604297,0.),\nvec3(-0.780145,0.486251,0.),\nvec3(-0.371868,0.882138,0.),\nvec3(0.200476,0.494430,0.),\nvec3(-0.494552,-0.711051,0.),\nvec3(0.612476,0.705252,0.),\nvec3(-0.578845,-0.768792,0.),\nvec3(-0.772454,-0.090976,0.),\nvec3(0.504440,0.372295,0.),\nvec3(0.155736,0.065157,0.),\nvec3(0.391522,0.849605,0.),\nvec3(-0.620106,-0.328104,0.),\nvec3(0.789239,-0.419965,0.),\nvec3(-0.545396,0.538133,0.),\nvec3(-0.178564,-0.596057,0.)\n);\n#define inline\nfloat computeShadowWithCSMPCSS(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,int searchTapCount,int pcfTapCount,vec3[64] poissonSamplers,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec4 uvDepthLayer=vec4(uvDepth.x,uvDepth.y,layer,uvDepth.z);float blockerDepth=0.0;float sumBlockerDepth=0.0;float numBlocker=0.0;for (int i=0; i<searchTapCount; i ++) {blockerDepth=texture2D(depthSampler,vec3(uvDepth.xy+(lightSizeUV*lightSizeUVCorrection*shadowMapSizeInverse*PoissonSamplers32[i].xy),layer)).r;if (blockerDepth<depthMetric) {sumBlockerDepth+=blockerDepth;numBlocker++;}}\nfloat avgBlockerDepth=sumBlockerDepth/numBlocker;float AAOffset=shadowMapSizeInverse*10.;float penumbraRatio=((depthMetric-avgBlockerDepth)*depthCorrection+AAOffset);vec4 filterRadius=vec4(penumbraRatio*lightSizeUV*lightSizeUVCorrection*shadowMapSizeInverse,0.,0.);float random=getRand(vPositionFromLight.xy);float rotationAngle=random*3.1415926;vec2 rotationVector=vec2(cos(rotationAngle),sin(rotationAngle));float shadow=0.;for (int i=0; i<pcfTapCount; i++) {vec4 offset=vec4(poissonSamplers[i],0.);offset=vec4(offset.x*rotationVector.x-offset.y*rotationVector.y,offset.y*rotationVector.x+offset.x*rotationVector.y,0.,0.);shadow+=texture2D(shadowSampler,uvDepthLayer+offset*filterRadius);}\nshadow/=float(pcfTapCount);shadow=mix(shadow,1.,min((depthMetric-avgBlockerDepth)*depthCorrection*penumbraDarkness,1.));shadow=mix(darkness,1.,shadow);if (numBlocker<1.0) {return 1.0;}\nelse\n{return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithPCSS(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,int searchTapCount,int pcfTapCount,vec3[64] poissonSamplers)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;float blockerDepth=0.0;float sumBlockerDepth=0.0;float numBlocker=0.0;for (int i=0; i<searchTapCount; i ++) {blockerDepth=TEXTUREFUNC(depthSampler,uvDepth.xy+(lightSizeUV*shadowMapSizeInverse*PoissonSamplers32[i].xy),0.).r;if (blockerDepth<depthMetric) {sumBlockerDepth+=blockerDepth;numBlocker++;}}\nif (numBlocker<1.0) {return 1.0;}\nelse\n{float avgBlockerDepth=sumBlockerDepth/numBlocker;float AAOffset=shadowMapSizeInverse*10.;float penumbraRatio=((depthMetric-avgBlockerDepth)+AAOffset);float filterRadius=penumbraRatio*lightSizeUV*shadowMapSizeInverse;float random=getRand(vPositionFromLight.xy);float rotationAngle=random*3.1415926;vec2 rotationVector=vec2(cos(rotationAngle),sin(rotationAngle));float shadow=0.;for (int i=0; i<pcfTapCount; i++) {vec3 offset=poissonSamplers[i];offset=vec3(offset.x*rotationVector.x-offset.y*rotationVector.y,offset.y*rotationVector.x+offset.x*rotationVector.y,0.);shadow+=TEXTUREFUNC(shadowSampler,uvDepth+offset*filterRadius,0.);}\nshadow/=float(pcfTapCount);shadow=mix(shadow,1.,depthMetric-avgBlockerDepth);shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}}\n#define inline\nfloat computeShadowWithPCSS16(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)\n{return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,16,PoissonSamplers32);}\n#define inline\nfloat computeShadowWithPCSS32(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)\n{return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,32,PoissonSamplers32);}\n#define inline\nfloat computeShadowWithPCSS64(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)\n{return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64);}\n#define inline\nfloat computeShadowWithCSMPCSS16(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,16,PoissonSamplers32,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}\n#define inline\nfloat computeShadowWithCSMPCSS32(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,32,PoissonSamplers32,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}\n#define inline\nfloat computeShadowWithCSMPCSS64(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStore[name] = shader;\n/** @internal */\nexport const shadowsFragmentFunctions = { name, shader };\n"]}
1
+ {"version":3,"file":"shadowsFragmentFunctions.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/shadowsFragmentFunctions.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsUd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"shadowsFragmentFunctions\";\nconst shader = `#ifdef SHADOWS\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define TEXTUREFUNC(s,c,l) texture2DLodEXT(s,c,l)\n#else\n#define TEXTUREFUNC(s,c,b) texture2D(s,c,b)\n#endif\n#ifndef SHADOWFLOAT\nfloat unpack(vec4 color)\n{const vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(color,bit_shift);}\n#endif\nfloat computeFallOff(float value,vec2 clipSpace,float frustumEdgeFalloff)\n{float mask=smoothstep(1.0-frustumEdgeFalloff,1.00000012,clamp(dot(clipSpace,clipSpace),0.,1.));return mix(value,1.0,mask);}\n#define inline\nfloat computeShadowCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float darkness,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);depth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;\n#ifndef SHADOWFLOAT\nfloat shadow=unpack(textureCube(shadowSampler,directionToLight));\n#else\nfloat shadow=textureCube(shadowSampler,directionToLight).x;\n#endif\nreturn depth>shadow ? darkness : 1.0;}\n#define inline\nfloat computeShadowWithPoissonSamplingCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float mapSize,float darkness,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);depth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;float visibility=1.;vec3 poissonDisk[4];poissonDisk[0]=vec3(-1.0,1.0,-1.0);poissonDisk[1]=vec3(1.0,-1.0,-1.0);poissonDisk[2]=vec3(-1.0,-1.0,-1.0);poissonDisk[3]=vec3(1.0,-1.0,1.0);\n#ifndef SHADOWFLOAT\nif (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[0]*mapSize))<depth) visibility-=0.25;if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[1]*mapSize))<depth) visibility-=0.25;if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[2]*mapSize))<depth) visibility-=0.25;if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[3]*mapSize))<depth) visibility-=0.25;\n#else\nif (textureCube(shadowSampler,directionToLight+poissonDisk[0]*mapSize).x<depth) visibility-=0.25;if (textureCube(shadowSampler,directionToLight+poissonDisk[1]*mapSize).x<depth) visibility-=0.25;if (textureCube(shadowSampler,directionToLight+poissonDisk[2]*mapSize).x<depth) visibility-=0.25;if (textureCube(shadowSampler,directionToLight+poissonDisk[3]*mapSize).x<depth) visibility-=0.25;\n#endif\nreturn min(1.0,visibility+darkness);}\n#define inline\nfloat computeShadowWithESMCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float darkness,float depthScale,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);float shadowPixelDepth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;\n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(textureCube(shadowSampler,directionToLight));\n#else\nfloat shadowMapSample=textureCube(shadowSampler,directionToLight).x;\n#endif\nfloat esm=1.0-clamp(exp(min(87.,depthScale*shadowPixelDepth))*shadowMapSample,0.,1.-darkness);return esm;}\n#define inline\nfloat computeShadowWithCloseESMCube(vec3 worldPos,vec3 lightPosition,samplerCube shadowSampler,float darkness,float depthScale,vec2 depthValues)\n{vec3 directionToLight=worldPos-lightPosition;float depth=length(directionToLight);depth=(depth+depthValues.x)/(depthValues.y);float shadowPixelDepth=clamp(depth,0.,1.0);directionToLight=normalize(directionToLight);directionToLight.y=-directionToLight.y;\n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(textureCube(shadowSampler,directionToLight));\n#else\nfloat shadowMapSample=textureCube(shadowSampler,directionToLight).x;\n#endif\nfloat esm=clamp(exp(min(87.,-depthScale*(shadowPixelDepth-shadowMapSample))),darkness,1.);return esm;}\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define inline\nfloat computeShadowCSM(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray shadowSampler,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);vec3 uvLayer=vec3(uv.x,uv.y,layer);float shadowPixelDepth=clamp(depthMetric,0.,1.0);\n#ifndef SHADOWFLOAT\nfloat shadow=unpack(texture2D(shadowSampler,uvLayer));\n#else\nfloat shadow=texture2D(shadowSampler,uvLayer).x;\n#endif\nreturn shadowPixelDepth>shadow ? computeFallOff(darkness,clipSpace.xy,frustumEdgeFalloff) : 1.;}\n#endif\n#define inline\nfloat computeShadow(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0);\n#ifndef SHADOWFLOAT\nfloat shadow=unpack(TEXTUREFUNC(shadowSampler,uv,0.));\n#else\nfloat shadow=TEXTUREFUNC(shadowSampler,uv,0.).x;\n#endif\nreturn shadowPixelDepth>shadow ? computeFallOff(darkness,clipSpace.xy,frustumEdgeFalloff) : 1.;}}\n#define inline\nfloat computeShadowWithPoissonSampling(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float mapSize,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0);float visibility=1.;vec2 poissonDisk[4];poissonDisk[0]=vec2(-0.94201624,-0.39906216);poissonDisk[1]=vec2(0.94558609,-0.76890725);poissonDisk[2]=vec2(-0.094184101,-0.92938870);poissonDisk[3]=vec2(0.34495938,0.29387760);\n#ifndef SHADOWFLOAT\nif (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[0]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[1]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[2]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[3]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;\n#else\nif (TEXTUREFUNC(shadowSampler,uv+poissonDisk[0]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[1]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[2]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[3]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;\n#endif\nreturn computeFallOff(min(1.0,visibility+darkness),clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithESM(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float depthScale,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0);\n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(TEXTUREFUNC(shadowSampler,uv,0.));\n#else\nfloat shadowMapSample=TEXTUREFUNC(shadowSampler,uv,0.).x;\n#endif\nfloat esm=1.0-clamp(exp(min(87.,depthScale*shadowPixelDepth))*shadowMapSample,0.,1.-darkness);return computeFallOff(esm,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithCloseESM(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float depthScale,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec2 uv=0.5*clipSpace.xy+vec2(0.5);if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)\n{return 1.0;}\nelse\n{float shadowPixelDepth=clamp(depthMetric,0.,1.0); \n#ifndef SHADOWFLOAT\nfloat shadowMapSample=unpack(TEXTUREFUNC(shadowSampler,uv,0.));\n#else\nfloat shadowMapSample=TEXTUREFUNC(shadowSampler,uv,0.).x;\n#endif\nfloat esm=clamp(exp(min(87.,-depthScale*(shadowPixelDepth-shadowMapSample))),darkness,1.);return computeFallOff(esm,clipSpace.xy,frustumEdgeFalloff);}}\n#ifdef IS_NDC_HALF_ZRANGE\n#define ZINCLIP clipSpace.z\n#else\n#define ZINCLIP uvDepth.z\n#endif\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\n#define GREATEST_LESS_THAN_ONE 0.99999994\n#define DISABLE_UNIFORMITY_ANALYSIS\n#define inline\nfloat computeShadowWithCSMPCF1(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec4 uvDepthLayer=vec4(uvDepth.x,uvDepth.y,layer,uvDepth.z);float shadow=texture2D(shadowSampler,uvDepthLayer);shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}\n#define inline\nfloat computeShadowWithCSMPCF3(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=3.-2.*st;vec2 uvw1=1.+2.*st;vec2 u=vec2((2.-st.x)/uvw0.x-1.,st.x/uvw1.x+1.)*shadowMapSizeAndInverse.y;vec2 v=vec2((2.-st.y)/uvw0.y-1.,st.y/uvw1.y+1.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[0]),layer,uvDepth.z));shadow+=uvw1.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[0]),layer,uvDepth.z));shadow+=uvw0.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[1]),layer,uvDepth.z));shadow+=uvw1.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[1]),layer,uvDepth.z));shadow=shadow/16.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}\n#define inline\nfloat computeShadowWithCSMPCF5(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=4.-3.*st;vec2 uvw1=vec2(7.);vec2 uvw2=1.+3.*st;vec3 u=vec3((3.-2.*st.x)/uvw0.x-2.,(3.+st.x)/uvw1.x,st.x/uvw2.x+2.)*shadowMapSizeAndInverse.y;vec3 v=vec3((3.-2.*st.y)/uvw0.y-2.,(3.+st.y)/uvw1.y,st.y/uvw2.y+2.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[0]),layer,uvDepth.z));shadow+=uvw1.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[0]),layer,uvDepth.z));shadow+=uvw2.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[0]),layer,uvDepth.z));shadow+=uvw0.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[1]),layer,uvDepth.z));shadow+=uvw1.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[1]),layer,uvDepth.z));shadow+=uvw2.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[1]),layer,uvDepth.z));shadow+=uvw0.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[2]),layer,uvDepth.z));shadow+=uvw1.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[2]),layer,uvDepth.z));shadow+=uvw2.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[2]),layer,uvDepth.z));shadow=shadow/144.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}\n#define inline\nfloat computeShadowWithPCF1(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,float darkness,float frustumEdgeFalloff)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;float shadow=TEXTUREFUNC(shadowSampler,uvDepth,0.);shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithPCF3(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=3.-2.*st;vec2 uvw1=1.+2.*st;vec2 u=vec2((2.-st.x)/uvw0.x-1.,st.x/uvw1.x+1.)*shadowMapSizeAndInverse.y;vec2 v=vec2((2.-st.y)/uvw0.y-1.,st.y/uvw1.y+1.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[0]),uvDepth.z),0.);shadow+=uvw1.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[0]),uvDepth.z),0.);shadow+=uvw0.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[1]),uvDepth.z),0.);shadow+=uvw1.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[1]),uvDepth.z),0.);shadow=shadow/16.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithPCF5(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x; \nuv+=0.5; \nvec2 st=fract(uv); \nvec2 base_uv=floor(uv)-0.5; \nbase_uv*=shadowMapSizeAndInverse.y; \nvec2 uvw0=4.-3.*st;vec2 uvw1=vec2(7.);vec2 uvw2=1.+3.*st;vec3 u=vec3((3.-2.*st.x)/uvw0.x-2.,(3.+st.x)/uvw1.x,st.x/uvw2.x+2.)*shadowMapSizeAndInverse.y;vec3 v=vec3((3.-2.*st.y)/uvw0.y-2.,(3.+st.y)/uvw1.y,st.y/uvw2.y+2.)*shadowMapSizeAndInverse.y;float shadow=0.;shadow+=uvw0.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[0]),uvDepth.z),0.);shadow+=uvw1.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[0]),uvDepth.z),0.);shadow+=uvw2.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[0]),uvDepth.z),0.);shadow+=uvw0.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[1]),uvDepth.z),0.);shadow+=uvw1.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[1]),uvDepth.z),0.);shadow+=uvw2.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[1]),uvDepth.z),0.);shadow+=uvw0.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[2]),uvDepth.z),0.);shadow+=uvw1.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[2]),uvDepth.z),0.);shadow+=uvw2.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[2]),uvDepth.z),0.);shadow=shadow/144.;shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\nconst vec3 PoissonSamplers32[64]=vec3[64](\nvec3(0.06407013,0.05409927,0.),\nvec3(0.7366577,0.5789394,0.),\nvec3(-0.6270542,-0.5320278,0.),\nvec3(-0.4096107,0.8411095,0.),\nvec3(0.6849564,-0.4990818,0.),\nvec3(-0.874181,-0.04579735,0.),\nvec3(0.9989998,0.0009880066,0.),\nvec3(-0.004920578,-0.9151649,0.),\nvec3(0.1805763,0.9747483,0.),\nvec3(-0.2138451,0.2635818,0.),\nvec3(0.109845,0.3884785,0.),\nvec3(0.06876755,-0.3581074,0.),\nvec3(0.374073,-0.7661266,0.),\nvec3(0.3079132,-0.1216763,0.),\nvec3(-0.3794335,-0.8271583,0.),\nvec3(-0.203878,-0.07715034,0.),\nvec3(0.5912697,0.1469799,0.),\nvec3(-0.88069,0.3031784,0.),\nvec3(0.5040108,0.8283722,0.),\nvec3(-0.5844124,0.5494877,0.),\nvec3(0.6017799,-0.1726654,0.),\nvec3(-0.5554981,0.1559997,0.),\nvec3(-0.3016369,-0.3900928,0.),\nvec3(-0.5550632,-0.1723762,0.),\nvec3(0.925029,0.2995041,0.),\nvec3(-0.2473137,0.5538505,0.),\nvec3(0.9183037,-0.2862392,0.),\nvec3(0.2469421,0.6718712,0.),\nvec3(0.3916397,-0.4328209,0.),\nvec3(-0.03576927,-0.6220032,0.),\nvec3(-0.04661255,0.7995201,0.),\nvec3(0.4402924,0.3640312,0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.),\nvec3(0.)\n);const vec3 PoissonSamplers64[64]=vec3[64](\nvec3(-0.613392,0.617481,0.),\nvec3(0.170019,-0.040254,0.),\nvec3(-0.299417,0.791925,0.),\nvec3(0.645680,0.493210,0.),\nvec3(-0.651784,0.717887,0.),\nvec3(0.421003,0.027070,0.),\nvec3(-0.817194,-0.271096,0.),\nvec3(-0.705374,-0.668203,0.),\nvec3(0.977050,-0.108615,0.),\nvec3(0.063326,0.142369,0.),\nvec3(0.203528,0.214331,0.),\nvec3(-0.667531,0.326090,0.),\nvec3(-0.098422,-0.295755,0.),\nvec3(-0.885922,0.215369,0.),\nvec3(0.566637,0.605213,0.),\nvec3(0.039766,-0.396100,0.),\nvec3(0.751946,0.453352,0.),\nvec3(0.078707,-0.715323,0.),\nvec3(-0.075838,-0.529344,0.),\nvec3(0.724479,-0.580798,0.),\nvec3(0.222999,-0.215125,0.),\nvec3(-0.467574,-0.405438,0.),\nvec3(-0.248268,-0.814753,0.),\nvec3(0.354411,-0.887570,0.),\nvec3(0.175817,0.382366,0.),\nvec3(0.487472,-0.063082,0.),\nvec3(-0.084078,0.898312,0.),\nvec3(0.488876,-0.783441,0.),\nvec3(0.470016,0.217933,0.),\nvec3(-0.696890,-0.549791,0.),\nvec3(-0.149693,0.605762,0.),\nvec3(0.034211,0.979980,0.),\nvec3(0.503098,-0.308878,0.),\nvec3(-0.016205,-0.872921,0.),\nvec3(0.385784,-0.393902,0.),\nvec3(-0.146886,-0.859249,0.),\nvec3(0.643361,0.164098,0.),\nvec3(0.634388,-0.049471,0.),\nvec3(-0.688894,0.007843,0.),\nvec3(0.464034,-0.188818,0.),\nvec3(-0.440840,0.137486,0.),\nvec3(0.364483,0.511704,0.),\nvec3(0.034028,0.325968,0.),\nvec3(0.099094,-0.308023,0.),\nvec3(0.693960,-0.366253,0.),\nvec3(0.678884,-0.204688,0.),\nvec3(0.001801,0.780328,0.),\nvec3(0.145177,-0.898984,0.),\nvec3(0.062655,-0.611866,0.),\nvec3(0.315226,-0.604297,0.),\nvec3(-0.780145,0.486251,0.),\nvec3(-0.371868,0.882138,0.),\nvec3(0.200476,0.494430,0.),\nvec3(-0.494552,-0.711051,0.),\nvec3(0.612476,0.705252,0.),\nvec3(-0.578845,-0.768792,0.),\nvec3(-0.772454,-0.090976,0.),\nvec3(0.504440,0.372295,0.),\nvec3(0.155736,0.065157,0.),\nvec3(0.391522,0.849605,0.),\nvec3(-0.620106,-0.328104,0.),\nvec3(0.789239,-0.419965,0.),\nvec3(-0.545396,0.538133,0.),\nvec3(-0.178564,-0.596057,0.)\n);\n#define inline\nfloat computeShadowWithCSMPCSS(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,int searchTapCount,int pcfTapCount,vec3[64] poissonSamplers,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);vec4 uvDepthLayer=vec4(uvDepth.x,uvDepth.y,layer,uvDepth.z);float blockerDepth=0.0;float sumBlockerDepth=0.0;float numBlocker=0.0;for (int i=0; i<searchTapCount; i ++) {blockerDepth=texture2D(depthSampler,vec3(uvDepth.xy+(lightSizeUV*lightSizeUVCorrection*shadowMapSizeInverse*PoissonSamplers32[i].xy),layer)).r;if (blockerDepth<depthMetric) {sumBlockerDepth+=blockerDepth;numBlocker++;}}\nfloat avgBlockerDepth=sumBlockerDepth/numBlocker;float AAOffset=shadowMapSizeInverse*10.;float penumbraRatio=((depthMetric-avgBlockerDepth)*depthCorrection+AAOffset);vec4 filterRadius=vec4(penumbraRatio*lightSizeUV*lightSizeUVCorrection*shadowMapSizeInverse,0.,0.);float random=getRand(vPositionFromLight.xy);float rotationAngle=random*3.1415926;vec2 rotationVector=vec2(cos(rotationAngle),sin(rotationAngle));float shadow=0.;for (int i=0; i<pcfTapCount; i++) {vec4 offset=vec4(poissonSamplers[i],0.);offset=vec4(offset.x*rotationVector.x-offset.y*rotationVector.y,offset.y*rotationVector.x+offset.x*rotationVector.y,0.,0.);shadow+=texture2D(shadowSampler,uvDepthLayer+offset*filterRadius);}\nshadow/=float(pcfTapCount);shadow=mix(shadow,1.,min((depthMetric-avgBlockerDepth)*depthCorrection*penumbraDarkness,1.));shadow=mix(darkness,1.,shadow);if (numBlocker<1.0) {return 1.0;}\nelse\n{return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}\n#define inline\nfloat computeShadowWithPCSS(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,int searchTapCount,int pcfTapCount,vec3[64] poissonSamplers)\n{if (depthMetric>1.0 || depthMetric<0.0) {return 1.0;}\nelse\n{vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));uvDepth.z=ZINCLIP;float blockerDepth=0.0;float sumBlockerDepth=0.0;float numBlocker=0.0;for (int i=0; i<searchTapCount; i ++) {blockerDepth=TEXTUREFUNC(depthSampler,uvDepth.xy+(lightSizeUV*shadowMapSizeInverse*PoissonSamplers32[i].xy),0.).r;if (blockerDepth<depthMetric) {sumBlockerDepth+=blockerDepth;numBlocker++;}}\nif (numBlocker<1.0) {return 1.0;}\nelse\n{float avgBlockerDepth=sumBlockerDepth/numBlocker;float AAOffset=shadowMapSizeInverse*10.;float penumbraRatio=((depthMetric-avgBlockerDepth)+AAOffset);float filterRadius=penumbraRatio*lightSizeUV*shadowMapSizeInverse;float random=getRand(vPositionFromLight.xy);float rotationAngle=random*3.1415926;vec2 rotationVector=vec2(cos(rotationAngle),sin(rotationAngle));float shadow=0.;for (int i=0; i<pcfTapCount; i++) {vec3 offset=poissonSamplers[i];offset=vec3(offset.x*rotationVector.x-offset.y*rotationVector.y,offset.y*rotationVector.x+offset.x*rotationVector.y,0.);shadow+=TEXTUREFUNC(shadowSampler,uvDepth+offset*filterRadius,0.);}\nshadow/=float(pcfTapCount);shadow=mix(shadow,1.,depthMetric-avgBlockerDepth);shadow=mix(darkness,1.,shadow);return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);}}}\n#define inline\nfloat computeShadowWithPCSS16(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)\n{return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,16,PoissonSamplers32);}\n#define inline\nfloat computeShadowWithPCSS32(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)\n{return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,32,PoissonSamplers32);}\n#define inline\nfloat computeShadowWithPCSS64(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)\n{return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64);}\n#define inline\nfloat computeShadowWithCSMPCSS16(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,16,PoissonSamplers32,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}\n#define inline\nfloat computeShadowWithCSMPCSS32(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,32,PoissonSamplers32,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}\n#define inline\nfloat computeShadowWithCSMPCSS64(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)\n{return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64,lightSizeUVCorrection,depthCorrection,penumbraDarkness);}\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const shadowsFragmentFunctions = { name, shader };\n"]}
@@ -21,7 +21,9 @@ vDepthMetric{X}=(vPositionFromLight{X}.z+light{X}.depthValues.x)/light{X}.depthV
21
21
  #endif
22
22
  `;
23
23
  // Sideeffect
24
- ShaderStore.IncludesShadersStore[name] = shader;
24
+ if (!ShaderStore.IncludesShadersStore[name]) {
25
+ ShaderStore.IncludesShadersStore[name] = shader;
26
+ }
25
27
  /** @internal */
26
28
  export const shadowsVertex = { name, shader };
27
29
  //# sourceMappingURL=shadowsVertex.js.map