@babylonjs/core 7.53.3 → 7.54.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1260) hide show
  1. package/AudioV2/abstractAudio/abstractAudioBus.d.ts +2 -3
  2. package/AudioV2/abstractAudio/abstractAudioBus.js.map +1 -1
  3. package/AudioV2/abstractAudio/abstractSound.d.ts +2 -3
  4. package/AudioV2/abstractAudio/abstractSound.js.map +1 -1
  5. package/AudioV2/abstractAudio/audioEngineV2.d.ts +11 -1
  6. package/AudioV2/abstractAudio/audioEngineV2.js +14 -1
  7. package/AudioV2/abstractAudio/audioEngineV2.js.map +1 -1
  8. package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.d.ts +1 -1
  9. package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.js.map +1 -1
  10. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.d.ts +4 -2
  11. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.js +13 -13
  12. package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.js.map +1 -1
  13. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.d.ts +5 -2
  14. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.js +11 -9
  15. package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.js.map +1 -1
  16. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.d.ts +5 -2
  17. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.js +11 -9
  18. package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.js.map +1 -1
  19. package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.d.ts +1 -1
  20. package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.js +2 -2
  21. package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.js.map +1 -1
  22. package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.d.ts +3 -3
  23. package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.js +9 -9
  24. package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.js.map +1 -1
  25. package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.d.ts +2 -2
  26. package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.js +11 -11
  27. package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.js.map +1 -1
  28. package/AudioV2/webAudio/subProperties/spatialWebAudioListener.js +11 -10
  29. package/AudioV2/webAudio/subProperties/spatialWebAudioListener.js.map +1 -1
  30. package/AudioV2/webAudio/webAudioBus.d.ts +6 -6
  31. package/AudioV2/webAudio/webAudioBus.js +27 -8
  32. package/AudioV2/webAudio/webAudioBus.js.map +1 -1
  33. package/AudioV2/webAudio/webAudioEngine.d.ts +19 -7
  34. package/AudioV2/webAudio/webAudioEngine.js +43 -29
  35. package/AudioV2/webAudio/webAudioEngine.js.map +1 -1
  36. package/AudioV2/webAudio/webAudioMainBus.d.ts +3 -5
  37. package/AudioV2/webAudio/webAudioMainBus.js +11 -12
  38. package/AudioV2/webAudio/webAudioMainBus.js.map +1 -1
  39. package/AudioV2/webAudio/webAudioMainOut.d.ts +4 -1
  40. package/AudioV2/webAudio/webAudioMainOut.js +6 -4
  41. package/AudioV2/webAudio/webAudioMainOut.js.map +1 -1
  42. package/AudioV2/webAudio/webAudioNode.d.ts +2 -2
  43. package/AudioV2/webAudio/webAudioNode.js.map +1 -1
  44. package/AudioV2/webAudio/webAudioStaticSound.d.ts +7 -7
  45. package/AudioV2/webAudio/webAudioStaticSound.js +29 -29
  46. package/AudioV2/webAudio/webAudioStaticSound.js.map +1 -1
  47. package/AudioV2/webAudio/webAudioStreamingSound.d.ts +6 -6
  48. package/AudioV2/webAudio/webAudioStreamingSound.js +27 -27
  49. package/AudioV2/webAudio/webAudioStreamingSound.js.map +1 -1
  50. package/AudioV2/webAudio/webAudioUnmuteUI.d.ts +15 -0
  51. package/AudioV2/webAudio/webAudioUnmuteUI.js +46 -0
  52. package/AudioV2/webAudio/webAudioUnmuteUI.js.map +1 -0
  53. package/Behaviors/Meshes/pointerDragBehavior.js +10 -0
  54. package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
  55. package/Cameras/Inputs/BaseCameraPointersInput.d.ts +4 -1
  56. package/Cameras/Inputs/BaseCameraPointersInput.js +10 -7
  57. package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
  58. package/DeviceInput/webDeviceInputSystem.js +21 -3
  59. package/DeviceInput/webDeviceInputSystem.js.map +1 -1
  60. package/Engines/abstractEngine.js +5 -11
  61. package/Engines/abstractEngine.js.map +1 -1
  62. package/Engines/thinEngine.d.ts +2 -1
  63. package/Engines/thinEngine.js +10 -2
  64. package/Engines/thinEngine.js.map +1 -1
  65. package/Engines/webgpuEngine.d.ts +2 -1
  66. package/Engines/webgpuEngine.js +3 -2
  67. package/Engines/webgpuEngine.js.map +1 -1
  68. package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.js +3 -0
  69. package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.js.map +1 -1
  70. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +6 -0
  71. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
  72. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.d.ts +16 -1
  73. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js +33 -1
  74. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js.map +1 -1
  75. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +6 -6
  76. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +31 -4
  77. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
  78. package/FlowGraph/flowGraphCoordinator.d.ts +21 -1
  79. package/FlowGraph/flowGraphCoordinator.js +51 -2
  80. package/FlowGraph/flowGraphCoordinator.js.map +1 -1
  81. package/FlowGraph/flowGraphParser.js +3 -0
  82. package/FlowGraph/flowGraphParser.js.map +1 -1
  83. package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.js +4 -4
  84. package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.js.map +1 -1
  85. package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.js +4 -4
  86. package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.js.map +1 -1
  87. package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.js +2 -2
  88. package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.js.map +1 -1
  89. package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.js +4 -4
  90. package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.js.map +1 -1
  91. package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.js +25 -15
  92. package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.js.map +1 -1
  93. package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js +6 -6
  94. package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js.map +1 -1
  95. package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js +4 -2
  96. package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js.map +1 -1
  97. package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js +2 -0
  98. package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js.map +1 -1
  99. package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.js +2 -0
  100. package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.js.map +1 -1
  101. package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js +4 -2
  102. package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js.map +1 -1
  103. package/FrameGraph/Node/Blocks/Textures/clearBlock.js +4 -4
  104. package/FrameGraph/Node/Blocks/Textures/clearBlock.js.map +1 -1
  105. package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js +4 -4
  106. package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js.map +1 -1
  107. package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js +2 -2
  108. package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js.map +1 -1
  109. package/FrameGraph/Node/Blocks/{Rendering/cullObjectsBlock.d.ts → cullObjectsBlock.d.ts} +3 -3
  110. package/FrameGraph/Node/Blocks/{Rendering/cullObjectsBlock.js → cullObjectsBlock.js} +4 -4
  111. package/FrameGraph/Node/Blocks/cullObjectsBlock.js.map +1 -0
  112. package/FrameGraph/Node/Blocks/executeBlock.js +1 -2
  113. package/FrameGraph/Node/Blocks/executeBlock.js.map +1 -1
  114. package/FrameGraph/Node/Blocks/index.d.ts +1 -1
  115. package/FrameGraph/Node/Blocks/index.js +1 -1
  116. package/FrameGraph/Node/Blocks/index.js.map +1 -1
  117. package/FrameGraph/Node/Blocks/resourceContainerBlock.js +16 -16
  118. package/FrameGraph/Node/Blocks/resourceContainerBlock.js.map +1 -1
  119. package/FrameGraph/Node/nodeRenderGraphBlock.d.ts +1 -1
  120. package/FrameGraph/Node/nodeRenderGraphBlock.js +5 -4
  121. package/FrameGraph/Node/nodeRenderGraphBlock.js.map +1 -1
  122. package/FrameGraph/Tasks/Layers/baseLayerTask.js +4 -4
  123. package/FrameGraph/Tasks/Layers/baseLayerTask.js.map +1 -1
  124. package/FrameGraph/Tasks/Misc/cullObjectsTask.js.map +1 -0
  125. package/FrameGraph/Tasks/PostProcesses/bloomTask.js +2 -2
  126. package/FrameGraph/Tasks/PostProcesses/bloomTask.js.map +1 -1
  127. package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js +2 -2
  128. package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js.map +1 -1
  129. package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.js +4 -4
  130. package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.js.map +1 -1
  131. package/FrameGraph/index.d.ts +1 -1
  132. package/FrameGraph/index.js +1 -1
  133. package/FrameGraph/index.js.map +1 -1
  134. package/Gizmos/gizmo.js +25 -17
  135. package/Gizmos/gizmo.js.map +1 -1
  136. package/Loading/Plugins/babylonFileLoader.js +4 -0
  137. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  138. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +4 -3
  139. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  140. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +26 -17
  141. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  142. package/Materials/Node/Blocks/Fragment/shadowMapBlock.js +8 -0
  143. package/Materials/Node/Blocks/Fragment/shadowMapBlock.js.map +1 -1
  144. package/Materials/Node/Blocks/Input/inputBlock.js +1 -1
  145. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  146. package/Materials/Node/nodeMaterial.d.ts +2 -0
  147. package/Materials/Node/nodeMaterial.js +6 -1
  148. package/Materials/Node/nodeMaterial.js.map +1 -1
  149. package/Materials/Node/nodeMaterialBlock.js +11 -2
  150. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  151. package/Materials/Node/nodeMaterialBuildState.js +41 -13
  152. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  153. package/Materials/Node/nodeMaterialBuildStateSharedData.d.ts +11 -1
  154. package/Materials/Node/nodeMaterialBuildStateSharedData.js +11 -1
  155. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  156. package/Materials/PBR/pbrBaseMaterial.js +1 -1
  157. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  158. package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +1 -0
  159. package/Materials/PBR/pbrSubSurfaceConfiguration.js +3 -0
  160. package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
  161. package/Materials/material.js +1 -1
  162. package/Materials/material.js.map +1 -1
  163. package/Meshes/Node/Blocks/conditionBlock.d.ts +4 -0
  164. package/Meshes/Node/Blocks/conditionBlock.js +19 -8
  165. package/Meshes/Node/Blocks/conditionBlock.js.map +1 -1
  166. package/Misc/decorators.js +2 -2
  167. package/Misc/decorators.js.map +1 -1
  168. package/Misc/sceneSerializer.js +2 -0
  169. package/Misc/sceneSerializer.js.map +1 -1
  170. package/Physics/v2/Plugins/havokPlugin.js +1 -0
  171. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  172. package/PostProcesses/subSurfaceScatteringPostProcess.d.ts +3 -0
  173. package/PostProcesses/subSurfaceScatteringPostProcess.js +16 -1
  174. package/PostProcesses/subSurfaceScatteringPostProcess.js.map +1 -1
  175. package/Rendering/subSurfaceConfiguration.js +5 -1
  176. package/Rendering/subSurfaceConfiguration.js.map +1 -1
  177. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js +3 -1
  178. package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js.map +1 -1
  179. package/Shaders/ShadersInclude/backgroundUboDeclaration.js +3 -1
  180. package/Shaders/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  181. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js +3 -1
  182. package/Shaders/ShadersInclude/backgroundVertexDeclaration.js.map +1 -1
  183. package/Shaders/ShadersInclude/bakedVertexAnimation.js +3 -1
  184. package/Shaders/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  185. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js +3 -1
  186. package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  187. package/Shaders/ShadersInclude/bayerDitherFunctions.js +3 -1
  188. package/Shaders/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  189. package/Shaders/ShadersInclude/bonesDeclaration.js +3 -1
  190. package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
  191. package/Shaders/ShadersInclude/bonesVertex.js +3 -1
  192. package/Shaders/ShadersInclude/bonesVertex.js.map +1 -1
  193. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js +3 -1
  194. package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js.map +1 -1
  195. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js +3 -1
  196. package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js.map +1 -1
  197. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js +3 -1
  198. package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js.map +1 -1
  199. package/Shaders/ShadersInclude/bumpFragment.js +3 -1
  200. package/Shaders/ShadersInclude/bumpFragment.js.map +1 -1
  201. package/Shaders/ShadersInclude/bumpFragmentFunctions.js +3 -1
  202. package/Shaders/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  203. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js +3 -1
  204. package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  205. package/Shaders/ShadersInclude/bumpVertex.js +3 -1
  206. package/Shaders/ShadersInclude/bumpVertex.js.map +1 -1
  207. package/Shaders/ShadersInclude/bumpVertexDeclaration.js +3 -1
  208. package/Shaders/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  209. package/Shaders/ShadersInclude/clipPlaneFragment.js +3 -1
  210. package/Shaders/ShadersInclude/clipPlaneFragment.js.map +1 -1
  211. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js +3 -1
  212. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  213. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js +3 -1
  214. package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js.map +1 -1
  215. package/Shaders/ShadersInclude/clipPlaneVertex.js +3 -1
  216. package/Shaders/ShadersInclude/clipPlaneVertex.js.map +1 -1
  217. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js +3 -1
  218. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  219. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js +3 -1
  220. package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js.map +1 -1
  221. package/Shaders/ShadersInclude/decalFragment.js +3 -1
  222. package/Shaders/ShadersInclude/decalFragment.js.map +1 -1
  223. package/Shaders/ShadersInclude/decalFragmentDeclaration.js +3 -1
  224. package/Shaders/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  225. package/Shaders/ShadersInclude/decalVertexDeclaration.js +3 -1
  226. package/Shaders/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  227. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +3 -1
  228. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
  229. package/Shaders/ShadersInclude/defaultUboDeclaration.js +3 -1
  230. package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  231. package/Shaders/ShadersInclude/defaultVertexDeclaration.js +3 -1
  232. package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
  233. package/Shaders/ShadersInclude/depthPrePass.js +3 -1
  234. package/Shaders/ShadersInclude/depthPrePass.js.map +1 -1
  235. package/Shaders/ShadersInclude/diffusionProfile.js +3 -1
  236. package/Shaders/ShadersInclude/diffusionProfile.js.map +1 -1
  237. package/Shaders/ShadersInclude/fibonacci.js +3 -2
  238. package/Shaders/ShadersInclude/fibonacci.js.map +1 -1
  239. package/Shaders/ShadersInclude/fogFragment.js +3 -1
  240. package/Shaders/ShadersInclude/fogFragment.js.map +1 -1
  241. package/Shaders/ShadersInclude/fogFragmentDeclaration.js +3 -1
  242. package/Shaders/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  243. package/Shaders/ShadersInclude/fogVertex.js +3 -1
  244. package/Shaders/ShadersInclude/fogVertex.js.map +1 -1
  245. package/Shaders/ShadersInclude/fogVertexDeclaration.js +3 -1
  246. package/Shaders/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  247. package/Shaders/ShadersInclude/fresnelFunction.js +3 -1
  248. package/Shaders/ShadersInclude/fresnelFunction.js.map +1 -1
  249. package/Shaders/ShadersInclude/gaussianSplatting.js +3 -1
  250. package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
  251. package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.js +3 -1
  252. package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
  253. package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.js +3 -1
  254. package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.js.map +1 -1
  255. package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js +3 -1
  256. package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
  257. package/Shaders/ShadersInclude/geometryUboDeclaration.js +3 -1
  258. package/Shaders/ShadersInclude/geometryUboDeclaration.js.map +1 -1
  259. package/Shaders/ShadersInclude/geometryVertexDeclaration.js +3 -1
  260. package/Shaders/ShadersInclude/geometryVertexDeclaration.js.map +1 -1
  261. package/Shaders/ShadersInclude/harmonicsFunctions.js +3 -1
  262. package/Shaders/ShadersInclude/harmonicsFunctions.js.map +1 -1
  263. package/Shaders/ShadersInclude/hdrFilteringFunctions.js +3 -1
  264. package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  265. package/Shaders/ShadersInclude/helperFunctions.js +3 -1
  266. package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
  267. package/Shaders/ShadersInclude/imageProcessingCompatibility.js +3 -1
  268. package/Shaders/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  269. package/Shaders/ShadersInclude/imageProcessingDeclaration.js +3 -1
  270. package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  271. package/Shaders/ShadersInclude/imageProcessingFunctions.js +3 -1
  272. package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  273. package/Shaders/ShadersInclude/importanceSampling.js +3 -1
  274. package/Shaders/ShadersInclude/importanceSampling.js.map +1 -1
  275. package/Shaders/ShadersInclude/instancesDeclaration.js +3 -1
  276. package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
  277. package/Shaders/ShadersInclude/instancesVertex.js +3 -1
  278. package/Shaders/ShadersInclude/instancesVertex.js.map +1 -1
  279. package/Shaders/ShadersInclude/intersectionFunctions.js +3 -1
  280. package/Shaders/ShadersInclude/intersectionFunctions.js.map +1 -1
  281. package/Shaders/ShadersInclude/kernelBlurFragment.js +3 -1
  282. package/Shaders/ShadersInclude/kernelBlurFragment.js.map +1 -1
  283. package/Shaders/ShadersInclude/kernelBlurFragment2.js +3 -1
  284. package/Shaders/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  285. package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js +3 -1
  286. package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
  287. package/Shaders/ShadersInclude/kernelBlurVertex.js +3 -1
  288. package/Shaders/ShadersInclude/kernelBlurVertex.js.map +1 -1
  289. package/Shaders/ShadersInclude/lightFragment.js +3 -1
  290. package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
  291. package/Shaders/ShadersInclude/lightFragmentDeclaration.js +3 -1
  292. package/Shaders/ShadersInclude/lightFragmentDeclaration.js.map +1 -1
  293. package/Shaders/ShadersInclude/lightUboDeclaration.js +3 -1
  294. package/Shaders/ShadersInclude/lightUboDeclaration.js.map +1 -1
  295. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js +3 -1
  296. package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  297. package/Shaders/ShadersInclude/lightVxUboDeclaration.js +3 -1
  298. package/Shaders/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  299. package/Shaders/ShadersInclude/lightsFragmentFunctions.js +3 -1
  300. package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  301. package/Shaders/ShadersInclude/lineUboDeclaration.js +3 -1
  302. package/Shaders/ShadersInclude/lineUboDeclaration.js.map +1 -1
  303. package/Shaders/ShadersInclude/lineVertexDeclaration.js +3 -1
  304. package/Shaders/ShadersInclude/lineVertexDeclaration.js.map +1 -1
  305. package/Shaders/ShadersInclude/logDepthDeclaration.js +3 -1
  306. package/Shaders/ShadersInclude/logDepthDeclaration.js.map +1 -1
  307. package/Shaders/ShadersInclude/logDepthFragment.js +3 -1
  308. package/Shaders/ShadersInclude/logDepthFragment.js.map +1 -1
  309. package/Shaders/ShadersInclude/logDepthVertex.js +3 -1
  310. package/Shaders/ShadersInclude/logDepthVertex.js.map +1 -1
  311. package/Shaders/ShadersInclude/ltcHelperFunctions.js +3 -1
  312. package/Shaders/ShadersInclude/ltcHelperFunctions.js.map +1 -1
  313. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js +3 -1
  314. package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  315. package/Shaders/ShadersInclude/meshFragmentDeclaration.js +3 -1
  316. package/Shaders/ShadersInclude/meshFragmentDeclaration.js.map +1 -1
  317. package/Shaders/ShadersInclude/meshUboDeclaration.js +3 -1
  318. package/Shaders/ShadersInclude/meshUboDeclaration.js.map +1 -1
  319. package/Shaders/ShadersInclude/meshVertexDeclaration.js +3 -1
  320. package/Shaders/ShadersInclude/meshVertexDeclaration.js.map +1 -1
  321. package/Shaders/ShadersInclude/morphTargetsVertex.js +3 -1
  322. package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
  323. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js +3 -1
  324. package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  325. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js +3 -1
  326. package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  327. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -1
  328. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  329. package/Shaders/ShadersInclude/mrtFragmentDeclaration.js +3 -1
  330. package/Shaders/ShadersInclude/mrtFragmentDeclaration.js.map +1 -1
  331. package/Shaders/ShadersInclude/oitDeclaration.js +3 -1
  332. package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
  333. package/Shaders/ShadersInclude/oitFragment.js +3 -1
  334. package/Shaders/ShadersInclude/oitFragment.js.map +1 -1
  335. package/Shaders/ShadersInclude/packingFunctions.js +3 -1
  336. package/Shaders/ShadersInclude/packingFunctions.js.map +1 -1
  337. package/Shaders/ShadersInclude/pbrBRDFFunctions.js +3 -1
  338. package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  339. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -1
  340. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  341. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +3 -1
  342. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  343. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +3 -1
  344. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  345. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +3 -1
  346. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  347. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +3 -1
  348. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  349. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +3 -1
  350. package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  351. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +3 -1
  352. package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  353. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js +5 -2
  354. package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  355. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +3 -1
  356. package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  357. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js +3 -1
  358. package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  359. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js +3 -1
  360. package/Shaders/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  361. package/Shaders/ShadersInclude/pbrBlockIridescence.js +3 -1
  362. package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  363. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js +3 -1
  364. package/Shaders/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  365. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js +3 -1
  366. package/Shaders/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  367. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js +3 -1
  368. package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  369. package/Shaders/ShadersInclude/pbrBlockPrePass.js +3 -1
  370. package/Shaders/ShadersInclude/pbrBlockPrePass.js.map +1 -1
  371. package/Shaders/ShadersInclude/pbrBlockReflectance.js +3 -1
  372. package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  373. package/Shaders/ShadersInclude/pbrBlockReflectance0.js +3 -1
  374. package/Shaders/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  375. package/Shaders/ShadersInclude/pbrBlockReflection.js +4 -2
  376. package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
  377. package/Shaders/ShadersInclude/pbrBlockReflectivity.js +3 -1
  378. package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  379. package/Shaders/ShadersInclude/pbrBlockSheen.js +3 -1
  380. package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
  381. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +3 -1
  382. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  383. package/Shaders/ShadersInclude/pbrDebug.js +3 -1
  384. package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
  385. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js +3 -1
  386. package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  387. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +3 -1
  388. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  389. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +3 -1
  390. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  391. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +3 -1
  392. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
  393. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +3 -1
  394. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  395. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +3 -1
  396. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  397. package/Shaders/ShadersInclude/pbrHelperFunctions.js +3 -1
  398. package/Shaders/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  399. package/Shaders/ShadersInclude/pbrIBLFunctions.js +3 -1
  400. package/Shaders/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  401. package/Shaders/ShadersInclude/pbrUboDeclaration.js +3 -1
  402. package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  403. package/Shaders/ShadersInclude/pbrVertexDeclaration.js +3 -1
  404. package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
  405. package/Shaders/ShadersInclude/pointCloudVertex.js +3 -1
  406. package/Shaders/ShadersInclude/pointCloudVertex.js.map +1 -1
  407. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js +3 -1
  408. package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  409. package/Shaders/ShadersInclude/prePassDeclaration.js +3 -1
  410. package/Shaders/ShadersInclude/prePassDeclaration.js.map +1 -1
  411. package/Shaders/ShadersInclude/prePassVertex.js +3 -1
  412. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  413. package/Shaders/ShadersInclude/prePassVertexDeclaration.js +3 -1
  414. package/Shaders/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  415. package/Shaders/ShadersInclude/reflectionFunction.js +3 -1
  416. package/Shaders/ShadersInclude/reflectionFunction.js.map +1 -1
  417. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js +3 -1
  418. package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  419. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js +3 -1
  420. package/Shaders/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  421. package/Shaders/ShadersInclude/samplerVertexDeclaration.js +3 -1
  422. package/Shaders/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  423. package/Shaders/ShadersInclude/samplerVertexImplementation.js +3 -1
  424. package/Shaders/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  425. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js +3 -1
  426. package/Shaders/ShadersInclude/sceneFragmentDeclaration.js.map +1 -1
  427. package/Shaders/ShadersInclude/sceneUboDeclaration.js +3 -1
  428. package/Shaders/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  429. package/Shaders/ShadersInclude/sceneVertexDeclaration.js +3 -1
  430. package/Shaders/ShadersInclude/sceneVertexDeclaration.js.map +1 -1
  431. package/Shaders/ShadersInclude/screenSpaceRayTrace.js +3 -1
  432. package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  433. package/Shaders/ShadersInclude/shadowMapFragment.js +3 -1
  434. package/Shaders/ShadersInclude/shadowMapFragment.js.map +1 -1
  435. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js +3 -1
  436. package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  437. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +3 -1
  438. package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  439. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js +3 -1
  440. package/Shaders/ShadersInclude/shadowMapUboDeclaration.js.map +1 -1
  441. package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js +3 -1
  442. package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js.map +1 -1
  443. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js +3 -1
  444. package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  445. package/Shaders/ShadersInclude/shadowMapVertexMetric.js +3 -1
  446. package/Shaders/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  447. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js +3 -1
  448. package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  449. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +3 -1
  450. package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  451. package/Shaders/ShadersInclude/shadowsVertex.js +3 -1
  452. package/Shaders/ShadersInclude/shadowsVertex.js.map +1 -1
  453. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js +3 -1
  454. package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  455. package/Shaders/ShadersInclude/uvAttributeDeclaration.js +3 -1
  456. package/Shaders/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  457. package/Shaders/ShadersInclude/uvVariableDeclaration.js +3 -1
  458. package/Shaders/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  459. package/Shaders/ShadersInclude/vertexColorMixing.js +3 -1
  460. package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
  461. package/Shaders/anaglyph.fragment.js +3 -1
  462. package/Shaders/anaglyph.fragment.js.map +1 -1
  463. package/Shaders/background.fragment.js +3 -1
  464. package/Shaders/background.fragment.js.map +1 -1
  465. package/Shaders/background.vertex.js +3 -1
  466. package/Shaders/background.vertex.js.map +1 -1
  467. package/Shaders/bilateralBlur.fragment.js +3 -1
  468. package/Shaders/bilateralBlur.fragment.js.map +1 -1
  469. package/Shaders/bilateralBlurQuality.fragment.js +3 -1
  470. package/Shaders/bilateralBlurQuality.fragment.js.map +1 -1
  471. package/Shaders/blackAndWhite.fragment.js +3 -1
  472. package/Shaders/blackAndWhite.fragment.js.map +1 -1
  473. package/Shaders/bloomMerge.fragment.js +3 -1
  474. package/Shaders/bloomMerge.fragment.js.map +1 -1
  475. package/Shaders/boundingBoxRenderer.fragment.js +3 -1
  476. package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
  477. package/Shaders/boundingBoxRenderer.vertex.js +3 -1
  478. package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
  479. package/Shaders/chromaticAberration.fragment.js +3 -1
  480. package/Shaders/chromaticAberration.fragment.js.map +1 -1
  481. package/Shaders/circleOfConfusion.fragment.js +3 -1
  482. package/Shaders/circleOfConfusion.fragment.js.map +1 -1
  483. package/Shaders/color.fragment.js +3 -1
  484. package/Shaders/color.fragment.js.map +1 -1
  485. package/Shaders/color.vertex.js +3 -1
  486. package/Shaders/color.vertex.js.map +1 -1
  487. package/Shaders/colorCorrection.fragment.js +3 -1
  488. package/Shaders/colorCorrection.fragment.js.map +1 -1
  489. package/Shaders/convolution.fragment.js +3 -1
  490. package/Shaders/convolution.fragment.js.map +1 -1
  491. package/Shaders/copyTexture3DLayerToTexture.fragment.js +3 -1
  492. package/Shaders/copyTexture3DLayerToTexture.fragment.js.map +1 -1
  493. package/Shaders/copyTextureToTexture.fragment.js +3 -1
  494. package/Shaders/copyTextureToTexture.fragment.js.map +1 -1
  495. package/Shaders/default.fragment.js +3 -1
  496. package/Shaders/default.fragment.js.map +1 -1
  497. package/Shaders/default.vertex.js +3 -1
  498. package/Shaders/default.vertex.js.map +1 -1
  499. package/Shaders/depth.fragment.js +3 -1
  500. package/Shaders/depth.fragment.js.map +1 -1
  501. package/Shaders/depth.vertex.js +3 -1
  502. package/Shaders/depth.vertex.js.map +1 -1
  503. package/Shaders/depthBoxBlur.fragment.js +3 -1
  504. package/Shaders/depthBoxBlur.fragment.js.map +1 -1
  505. package/Shaders/depthOfField.fragment.js +3 -1
  506. package/Shaders/depthOfField.fragment.js.map +1 -1
  507. package/Shaders/depthOfFieldMerge.fragment.js +3 -1
  508. package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
  509. package/Shaders/displayPass.fragment.js +3 -1
  510. package/Shaders/displayPass.fragment.js.map +1 -1
  511. package/Shaders/equirectangularPanorama.fragment.js +3 -1
  512. package/Shaders/equirectangularPanorama.fragment.js.map +1 -1
  513. package/Shaders/extractHighlights.fragment.js +3 -1
  514. package/Shaders/extractHighlights.fragment.js.map +1 -1
  515. package/Shaders/filter.fragment.js +3 -1
  516. package/Shaders/filter.fragment.js.map +1 -1
  517. package/Shaders/fluidRenderingBilateralBlur.fragment.js +3 -1
  518. package/Shaders/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  519. package/Shaders/fluidRenderingParticleDepth.fragment.js +3 -1
  520. package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
  521. package/Shaders/fluidRenderingParticleDepth.vertex.js +3 -1
  522. package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
  523. package/Shaders/fluidRenderingParticleDiffuse.fragment.js +3 -1
  524. package/Shaders/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  525. package/Shaders/fluidRenderingParticleDiffuse.vertex.js +3 -1
  526. package/Shaders/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  527. package/Shaders/fluidRenderingParticleThickness.fragment.js +3 -1
  528. package/Shaders/fluidRenderingParticleThickness.fragment.js.map +1 -1
  529. package/Shaders/fluidRenderingParticleThickness.vertex.js +3 -1
  530. package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
  531. package/Shaders/fluidRenderingRender.fragment.js +3 -1
  532. package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
  533. package/Shaders/fluidRenderingStandardBlur.fragment.js +3 -1
  534. package/Shaders/fluidRenderingStandardBlur.fragment.js.map +1 -1
  535. package/Shaders/fxaa.fragment.js +3 -1
  536. package/Shaders/fxaa.fragment.js.map +1 -1
  537. package/Shaders/fxaa.vertex.js +3 -1
  538. package/Shaders/fxaa.vertex.js.map +1 -1
  539. package/Shaders/gaussianSplatting.fragment.js +3 -1
  540. package/Shaders/gaussianSplatting.fragment.js.map +1 -1
  541. package/Shaders/gaussianSplatting.vertex.js +3 -1
  542. package/Shaders/gaussianSplatting.vertex.js.map +1 -1
  543. package/Shaders/geometry.fragment.js +3 -1
  544. package/Shaders/geometry.fragment.js.map +1 -1
  545. package/Shaders/geometry.vertex.js +3 -1
  546. package/Shaders/geometry.vertex.js.map +1 -1
  547. package/Shaders/glowBlurPostProcess.fragment.js +3 -1
  548. package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
  549. package/Shaders/glowMapGeneration.fragment.js +3 -1
  550. package/Shaders/glowMapGeneration.fragment.js.map +1 -1
  551. package/Shaders/glowMapGeneration.vertex.js +3 -1
  552. package/Shaders/glowMapGeneration.vertex.js.map +1 -1
  553. package/Shaders/glowMapMerge.fragment.js +3 -1
  554. package/Shaders/glowMapMerge.fragment.js.map +1 -1
  555. package/Shaders/glowMapMerge.vertex.js +3 -1
  556. package/Shaders/glowMapMerge.vertex.js.map +1 -1
  557. package/Shaders/gpuRenderParticles.fragment.js +3 -1
  558. package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
  559. package/Shaders/gpuRenderParticles.vertex.js +3 -1
  560. package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
  561. package/Shaders/gpuTransform.fragment.js +3 -1
  562. package/Shaders/gpuTransform.fragment.js.map +1 -1
  563. package/Shaders/gpuTransform.vertex.js +3 -1
  564. package/Shaders/gpuTransform.vertex.js.map +1 -1
  565. package/Shaders/gpuUpdateParticles.fragment.js +3 -1
  566. package/Shaders/gpuUpdateParticles.fragment.js.map +1 -1
  567. package/Shaders/gpuUpdateParticles.vertex.js +3 -1
  568. package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
  569. package/Shaders/grain.fragment.js +3 -1
  570. package/Shaders/grain.fragment.js.map +1 -1
  571. package/Shaders/greasedLine.fragment.js +3 -1
  572. package/Shaders/greasedLine.fragment.js.map +1 -1
  573. package/Shaders/greasedLine.vertex.js +3 -1
  574. package/Shaders/greasedLine.vertex.js.map +1 -1
  575. package/Shaders/hdrFiltering.fragment.js +3 -1
  576. package/Shaders/hdrFiltering.fragment.js.map +1 -1
  577. package/Shaders/hdrFiltering.vertex.js +3 -1
  578. package/Shaders/hdrFiltering.vertex.js.map +1 -1
  579. package/Shaders/hdrIrradianceFiltering.fragment.js +3 -1
  580. package/Shaders/hdrIrradianceFiltering.fragment.js.map +1 -1
  581. package/Shaders/hdrIrradianceFiltering.vertex.js +3 -1
  582. package/Shaders/hdrIrradianceFiltering.vertex.js.map +1 -1
  583. package/Shaders/highlights.fragment.js +3 -1
  584. package/Shaders/highlights.fragment.js.map +1 -1
  585. package/Shaders/iblCdfDebug.fragment.js +3 -1
  586. package/Shaders/iblCdfDebug.fragment.js.map +1 -1
  587. package/Shaders/iblCdfx.fragment.js +3 -1
  588. package/Shaders/iblCdfx.fragment.js.map +1 -1
  589. package/Shaders/iblCdfy.fragment.js +3 -1
  590. package/Shaders/iblCdfy.fragment.js.map +1 -1
  591. package/Shaders/iblCombineVoxelGrids.fragment.js +3 -1
  592. package/Shaders/iblCombineVoxelGrids.fragment.js.map +1 -1
  593. package/Shaders/iblGenerateVoxelMip.fragment.js +3 -1
  594. package/Shaders/iblGenerateVoxelMip.fragment.js.map +1 -1
  595. package/Shaders/iblIcdf.fragment.js +3 -1
  596. package/Shaders/iblIcdf.fragment.js.map +1 -1
  597. package/Shaders/iblScaledLuminance.fragment.js +3 -1
  598. package/Shaders/iblScaledLuminance.fragment.js.map +1 -1
  599. package/Shaders/iblShadowAccumulation.fragment.js +3 -1
  600. package/Shaders/iblShadowAccumulation.fragment.js.map +1 -1
  601. package/Shaders/iblShadowDebug.fragment.js +3 -1
  602. package/Shaders/iblShadowDebug.fragment.js.map +1 -1
  603. package/Shaders/iblShadowGBufferDebug.fragment.js +3 -1
  604. package/Shaders/iblShadowGBufferDebug.fragment.js.map +1 -1
  605. package/Shaders/iblShadowSpatialBlur.fragment.js +3 -1
  606. package/Shaders/iblShadowSpatialBlur.fragment.js.map +1 -1
  607. package/Shaders/iblShadowVoxelTracing.fragment.js +3 -1
  608. package/Shaders/iblShadowVoxelTracing.fragment.js.map +1 -1
  609. package/Shaders/iblShadowsCombine.fragment.js +3 -1
  610. package/Shaders/iblShadowsCombine.fragment.js.map +1 -1
  611. package/Shaders/iblVoxelGrid.fragment.js +3 -1
  612. package/Shaders/iblVoxelGrid.fragment.js.map +1 -1
  613. package/Shaders/iblVoxelGrid.vertex.js +3 -1
  614. package/Shaders/iblVoxelGrid.vertex.js.map +1 -1
  615. package/Shaders/iblVoxelGrid2dArrayDebug.fragment.js +3 -1
  616. package/Shaders/iblVoxelGrid2dArrayDebug.fragment.js.map +1 -1
  617. package/Shaders/iblVoxelGrid3dDebug.fragment.js +3 -1
  618. package/Shaders/iblVoxelGrid3dDebug.fragment.js.map +1 -1
  619. package/Shaders/iblVoxelSlabDebug.fragment.js +3 -1
  620. package/Shaders/iblVoxelSlabDebug.fragment.js.map +1 -1
  621. package/Shaders/iblVoxelSlabDebug.vertex.js +3 -1
  622. package/Shaders/iblVoxelSlabDebug.vertex.js.map +1 -1
  623. package/Shaders/imageProcessing.fragment.js +4 -2
  624. package/Shaders/imageProcessing.fragment.js.map +1 -1
  625. package/Shaders/kernelBlur.fragment.js +3 -1
  626. package/Shaders/kernelBlur.fragment.js.map +1 -1
  627. package/Shaders/kernelBlur.vertex.js +3 -1
  628. package/Shaders/kernelBlur.vertex.js.map +1 -1
  629. package/Shaders/layer.fragment.js +3 -1
  630. package/Shaders/layer.fragment.js.map +1 -1
  631. package/Shaders/layer.vertex.js +3 -1
  632. package/Shaders/layer.vertex.js.map +1 -1
  633. package/Shaders/lensFlare.fragment.js +3 -1
  634. package/Shaders/lensFlare.fragment.js.map +1 -1
  635. package/Shaders/lensFlare.vertex.js +3 -1
  636. package/Shaders/lensFlare.vertex.js.map +1 -1
  637. package/Shaders/lensHighlights.fragment.js +3 -1
  638. package/Shaders/lensHighlights.fragment.js.map +1 -1
  639. package/Shaders/line.fragment.js +3 -1
  640. package/Shaders/line.fragment.js.map +1 -1
  641. package/Shaders/line.vertex.js +3 -1
  642. package/Shaders/line.vertex.js.map +1 -1
  643. package/Shaders/lod.fragment.js +3 -1
  644. package/Shaders/lod.fragment.js.map +1 -1
  645. package/Shaders/lodCube.fragment.js +3 -1
  646. package/Shaders/lodCube.fragment.js.map +1 -1
  647. package/Shaders/meshUVSpaceRenderer.fragment.js +3 -1
  648. package/Shaders/meshUVSpaceRenderer.fragment.js.map +1 -1
  649. package/Shaders/meshUVSpaceRenderer.vertex.js +3 -1
  650. package/Shaders/meshUVSpaceRenderer.vertex.js.map +1 -1
  651. package/Shaders/meshUVSpaceRendererFinaliser.fragment.js +3 -1
  652. package/Shaders/meshUVSpaceRendererFinaliser.fragment.js.map +1 -1
  653. package/Shaders/meshUVSpaceRendererFinaliser.vertex.js +3 -1
  654. package/Shaders/meshUVSpaceRendererFinaliser.vertex.js.map +1 -1
  655. package/Shaders/meshUVSpaceRendererMasker.fragment.js +3 -1
  656. package/Shaders/meshUVSpaceRendererMasker.fragment.js.map +1 -1
  657. package/Shaders/meshUVSpaceRendererMasker.vertex.js +3 -1
  658. package/Shaders/meshUVSpaceRendererMasker.vertex.js.map +1 -1
  659. package/Shaders/minmaxRedux.fragment.js +3 -1
  660. package/Shaders/minmaxRedux.fragment.js.map +1 -1
  661. package/Shaders/motionBlur.fragment.js +4 -2
  662. package/Shaders/motionBlur.fragment.js.map +1 -1
  663. package/Shaders/noise.fragment.js +3 -1
  664. package/Shaders/noise.fragment.js.map +1 -1
  665. package/Shaders/oitBackBlend.fragment.js +3 -1
  666. package/Shaders/oitBackBlend.fragment.js.map +1 -1
  667. package/Shaders/oitFinal.fragment.js +3 -1
  668. package/Shaders/oitFinal.fragment.js.map +1 -1
  669. package/Shaders/outline.fragment.js +3 -1
  670. package/Shaders/outline.fragment.js.map +1 -1
  671. package/Shaders/outline.vertex.js +3 -1
  672. package/Shaders/outline.vertex.js.map +1 -1
  673. package/Shaders/particles.fragment.js +3 -1
  674. package/Shaders/particles.fragment.js.map +1 -1
  675. package/Shaders/particles.vertex.js +3 -1
  676. package/Shaders/particles.vertex.js.map +1 -1
  677. package/Shaders/pass.fragment.js +3 -1
  678. package/Shaders/pass.fragment.js.map +1 -1
  679. package/Shaders/passCube.fragment.js +3 -1
  680. package/Shaders/passCube.fragment.js.map +1 -1
  681. package/Shaders/pbr.fragment.js +6 -1
  682. package/Shaders/pbr.fragment.js.map +1 -1
  683. package/Shaders/pbr.vertex.js +3 -1
  684. package/Shaders/pbr.vertex.js.map +1 -1
  685. package/Shaders/picking.fragment.js +3 -1
  686. package/Shaders/picking.fragment.js.map +1 -1
  687. package/Shaders/picking.vertex.js +3 -1
  688. package/Shaders/picking.vertex.js.map +1 -1
  689. package/Shaders/postprocess.vertex.js +3 -1
  690. package/Shaders/postprocess.vertex.js.map +1 -1
  691. package/Shaders/procedural.vertex.js +3 -1
  692. package/Shaders/procedural.vertex.js.map +1 -1
  693. package/Shaders/refraction.fragment.js +3 -1
  694. package/Shaders/refraction.fragment.js.map +1 -1
  695. package/Shaders/rgbdDecode.fragment.js +3 -1
  696. package/Shaders/rgbdDecode.fragment.js.map +1 -1
  697. package/Shaders/rgbdEncode.fragment.js +3 -1
  698. package/Shaders/rgbdEncode.fragment.js.map +1 -1
  699. package/Shaders/rsmFullGlobalIllumination.fragment.js +3 -1
  700. package/Shaders/rsmFullGlobalIllumination.fragment.js.map +1 -1
  701. package/Shaders/rsmGlobalIllumination.fragment.js +3 -1
  702. package/Shaders/rsmGlobalIllumination.fragment.js.map +1 -1
  703. package/Shaders/screenSpaceCurvature.fragment.js +3 -1
  704. package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
  705. package/Shaders/screenSpaceReflection.fragment.js +3 -1
  706. package/Shaders/screenSpaceReflection.fragment.js.map +1 -1
  707. package/Shaders/screenSpaceReflection2.fragment.js +4 -2
  708. package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
  709. package/Shaders/screenSpaceReflection2Blur.fragment.js +3 -1
  710. package/Shaders/screenSpaceReflection2Blur.fragment.js.map +1 -1
  711. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +3 -1
  712. package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  713. package/Shaders/shadowMap.fragment.js +3 -1
  714. package/Shaders/shadowMap.fragment.js.map +1 -1
  715. package/Shaders/shadowMap.vertex.js +3 -1
  716. package/Shaders/shadowMap.vertex.js.map +1 -1
  717. package/Shaders/sharpen.fragment.js +3 -1
  718. package/Shaders/sharpen.fragment.js.map +1 -1
  719. package/Shaders/spriteMap.fragment.js +3 -1
  720. package/Shaders/spriteMap.fragment.js.map +1 -1
  721. package/Shaders/spriteMap.vertex.js +3 -1
  722. package/Shaders/spriteMap.vertex.js.map +1 -1
  723. package/Shaders/sprites.fragment.js +3 -1
  724. package/Shaders/sprites.fragment.js.map +1 -1
  725. package/Shaders/sprites.vertex.js +3 -1
  726. package/Shaders/sprites.vertex.js.map +1 -1
  727. package/Shaders/ssao.fragment.js +3 -1
  728. package/Shaders/ssao.fragment.js.map +1 -1
  729. package/Shaders/ssao2.fragment.js +3 -1
  730. package/Shaders/ssao2.fragment.js.map +1 -1
  731. package/Shaders/ssaoCombine.fragment.js +3 -1
  732. package/Shaders/ssaoCombine.fragment.js.map +1 -1
  733. package/Shaders/standard.fragment.js +3 -1
  734. package/Shaders/standard.fragment.js.map +1 -1
  735. package/Shaders/stereoscopicInterlace.fragment.js +3 -1
  736. package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
  737. package/Shaders/subSurfaceScattering.fragment.d.ts +1 -1
  738. package/Shaders/subSurfaceScattering.fragment.js +8 -6
  739. package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
  740. package/Shaders/taa.fragment.js +3 -1
  741. package/Shaders/taa.fragment.js.map +1 -1
  742. package/Shaders/tonemap.fragment.js +3 -1
  743. package/Shaders/tonemap.fragment.js.map +1 -1
  744. package/Shaders/velocity.fragment.js +3 -1
  745. package/Shaders/velocity.fragment.js.map +1 -1
  746. package/Shaders/velocity.vertex.js +3 -1
  747. package/Shaders/velocity.vertex.js.map +1 -1
  748. package/Shaders/volumetricLightScattering.fragment.js +3 -1
  749. package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
  750. package/Shaders/volumetricLightScatteringPass.fragment.js +3 -1
  751. package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
  752. package/Shaders/volumetricLightScatteringPass.vertex.js +3 -1
  753. package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
  754. package/Shaders/vrDistortionCorrection.fragment.js +3 -1
  755. package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
  756. package/Shaders/vrMultiviewToSingleview.fragment.js +3 -1
  757. package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
  758. package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.js +3 -1
  759. package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
  760. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js +3 -1
  761. package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js.map +1 -1
  762. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js +3 -1
  763. package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
  764. package/ShadersWGSL/ShadersInclude/bayerDitherFunctions.js +3 -1
  765. package/ShadersWGSL/ShadersInclude/bayerDitherFunctions.js.map +1 -1
  766. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js +3 -1
  767. package/ShadersWGSL/ShadersInclude/bonesDeclaration.js.map +1 -1
  768. package/ShadersWGSL/ShadersInclude/bonesVertex.js +3 -1
  769. package/ShadersWGSL/ShadersInclude/bonesVertex.js.map +1 -1
  770. package/ShadersWGSL/ShadersInclude/bumpFragment.js +3 -1
  771. package/ShadersWGSL/ShadersInclude/bumpFragment.js.map +1 -1
  772. package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.js +3 -1
  773. package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
  774. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js +3 -1
  775. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  776. package/ShadersWGSL/ShadersInclude/bumpVertex.js +3 -1
  777. package/ShadersWGSL/ShadersInclude/bumpVertex.js.map +1 -1
  778. package/ShadersWGSL/ShadersInclude/bumpVertexDeclaration.js +3 -1
  779. package/ShadersWGSL/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
  780. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js +3 -1
  781. package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js.map +1 -1
  782. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js +3 -1
  783. package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
  784. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js +3 -1
  785. package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js.map +1 -1
  786. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js +3 -1
  787. package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
  788. package/ShadersWGSL/ShadersInclude/decalFragment.js +3 -1
  789. package/ShadersWGSL/ShadersInclude/decalFragment.js.map +1 -1
  790. package/ShadersWGSL/ShadersInclude/decalFragmentDeclaration.js +3 -1
  791. package/ShadersWGSL/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
  792. package/ShadersWGSL/ShadersInclude/decalVertexDeclaration.js +3 -1
  793. package/ShadersWGSL/ShadersInclude/decalVertexDeclaration.js.map +1 -1
  794. package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.js +3 -1
  795. package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  796. package/ShadersWGSL/ShadersInclude/depthPrePass.js +3 -1
  797. package/ShadersWGSL/ShadersInclude/depthPrePass.js.map +1 -1
  798. package/ShadersWGSL/ShadersInclude/diffusionProfile.d.ts +5 -0
  799. package/ShadersWGSL/ShadersInclude/diffusionProfile.js +12 -0
  800. package/ShadersWGSL/ShadersInclude/diffusionProfile.js.map +1 -0
  801. package/ShadersWGSL/ShadersInclude/fibonacci.d.ts +5 -0
  802. package/ShadersWGSL/ShadersInclude/fibonacci.js +17 -0
  803. package/ShadersWGSL/ShadersInclude/fibonacci.js.map +1 -0
  804. package/ShadersWGSL/ShadersInclude/fogFragment.js +3 -1
  805. package/ShadersWGSL/ShadersInclude/fogFragment.js.map +1 -1
  806. package/ShadersWGSL/ShadersInclude/fogFragmentDeclaration.js +3 -1
  807. package/ShadersWGSL/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
  808. package/ShadersWGSL/ShadersInclude/fogVertex.js +3 -1
  809. package/ShadersWGSL/ShadersInclude/fogVertex.js.map +1 -1
  810. package/ShadersWGSL/ShadersInclude/fogVertexDeclaration.js +3 -1
  811. package/ShadersWGSL/ShadersInclude/fogVertexDeclaration.js.map +1 -1
  812. package/ShadersWGSL/ShadersInclude/fresnelFunction.js +3 -1
  813. package/ShadersWGSL/ShadersInclude/fresnelFunction.js.map +1 -1
  814. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +3 -1
  815. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
  816. package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js +3 -1
  817. package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
  818. package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.js +3 -1
  819. package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.js.map +1 -1
  820. package/ShadersWGSL/ShadersInclude/gaussianSplattingVertexDeclaration.js +3 -1
  821. package/ShadersWGSL/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
  822. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js +3 -1
  823. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js.map +1 -1
  824. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js +3 -1
  825. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
  826. package/ShadersWGSL/ShadersInclude/helperFunctions.js +3 -1
  827. package/ShadersWGSL/ShadersInclude/helperFunctions.js.map +1 -1
  828. package/ShadersWGSL/ShadersInclude/imageProcessingCompatibility.js +3 -1
  829. package/ShadersWGSL/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
  830. package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js +3 -1
  831. package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
  832. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js +3 -1
  833. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  834. package/ShadersWGSL/ShadersInclude/importanceSampling.js +3 -1
  835. package/ShadersWGSL/ShadersInclude/importanceSampling.js.map +1 -1
  836. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +3 -1
  837. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
  838. package/ShadersWGSL/ShadersInclude/instancesVertex.js +3 -1
  839. package/ShadersWGSL/ShadersInclude/instancesVertex.js.map +1 -1
  840. package/ShadersWGSL/ShadersInclude/intersectionFunctions.js +3 -1
  841. package/ShadersWGSL/ShadersInclude/intersectionFunctions.js.map +1 -1
  842. package/ShadersWGSL/ShadersInclude/kernelBlurFragment.js +3 -1
  843. package/ShadersWGSL/ShadersInclude/kernelBlurFragment.js.map +1 -1
  844. package/ShadersWGSL/ShadersInclude/kernelBlurFragment2.js +3 -1
  845. package/ShadersWGSL/ShadersInclude/kernelBlurFragment2.js.map +1 -1
  846. package/ShadersWGSL/ShadersInclude/kernelBlurVaryingDeclaration.js +3 -1
  847. package/ShadersWGSL/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
  848. package/ShadersWGSL/ShadersInclude/kernelBlurVertex.js +3 -1
  849. package/ShadersWGSL/ShadersInclude/kernelBlurVertex.js.map +1 -1
  850. package/ShadersWGSL/ShadersInclude/lightFragment.js +3 -1
  851. package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
  852. package/ShadersWGSL/ShadersInclude/lightUboDeclaration.js +3 -1
  853. package/ShadersWGSL/ShadersInclude/lightUboDeclaration.js.map +1 -1
  854. package/ShadersWGSL/ShadersInclude/lightVxFragmentDeclaration.js +3 -1
  855. package/ShadersWGSL/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
  856. package/ShadersWGSL/ShadersInclude/lightVxUboDeclaration.js +3 -1
  857. package/ShadersWGSL/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
  858. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +3 -1
  859. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  860. package/ShadersWGSL/ShadersInclude/logDepthDeclaration.js +3 -1
  861. package/ShadersWGSL/ShadersInclude/logDepthDeclaration.js.map +1 -1
  862. package/ShadersWGSL/ShadersInclude/logDepthFragment.js +3 -1
  863. package/ShadersWGSL/ShadersInclude/logDepthFragment.js.map +1 -1
  864. package/ShadersWGSL/ShadersInclude/logDepthVertex.js +3 -1
  865. package/ShadersWGSL/ShadersInclude/logDepthVertex.js.map +1 -1
  866. package/ShadersWGSL/ShadersInclude/ltcHelperFunctions.js +3 -1
  867. package/ShadersWGSL/ShadersInclude/ltcHelperFunctions.js.map +1 -1
  868. package/ShadersWGSL/ShadersInclude/mainUVVaryingDeclaration.js +3 -1
  869. package/ShadersWGSL/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
  870. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js +3 -1
  871. package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js.map +1 -1
  872. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +3 -1
  873. package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
  874. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js +3 -1
  875. package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
  876. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js +3 -1
  877. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
  878. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -1
  879. package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  880. package/ShadersWGSL/ShadersInclude/oitDeclaration.js +3 -1
  881. package/ShadersWGSL/ShadersInclude/oitDeclaration.js.map +1 -1
  882. package/ShadersWGSL/ShadersInclude/oitFragment.js +3 -1
  883. package/ShadersWGSL/ShadersInclude/oitFragment.js.map +1 -1
  884. package/ShadersWGSL/ShadersInclude/packingFunctions.js +3 -1
  885. package/ShadersWGSL/ShadersInclude/packingFunctions.js.map +1 -1
  886. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js +3 -1
  887. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
  888. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -1
  889. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  890. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js +3 -1
  891. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  892. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js +3 -1
  893. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  894. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js +3 -1
  895. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  896. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js +3 -1
  897. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  898. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js +3 -1
  899. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
  900. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js +3 -1
  901. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
  902. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js +5 -2
  903. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
  904. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +3 -1
  905. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
  906. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js +3 -1
  907. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
  908. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js +3 -1
  909. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
  910. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js +3 -1
  911. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  912. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js +3 -1
  913. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
  914. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js +3 -1
  915. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
  916. package/ShadersWGSL/ShadersInclude/pbrBlockNormalGeometric.js +3 -1
  917. package/ShadersWGSL/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
  918. package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js +3 -1
  919. package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js.map +1 -1
  920. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js +3 -1
  921. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js.map +1 -1
  922. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js +3 -1
  923. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
  924. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js +3 -1
  925. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js.map +1 -1
  926. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js +3 -1
  927. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  928. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js +3 -1
  929. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js.map +1 -1
  930. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js +3 -1
  931. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  932. package/ShadersWGSL/ShadersInclude/pbrDebug.js +3 -1
  933. package/ShadersWGSL/ShadersInclude/pbrDebug.js.map +1 -1
  934. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js +3 -1
  935. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
  936. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +3 -1
  937. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  938. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js +3 -1
  939. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  940. package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.js +3 -1
  941. package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  942. package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.js +3 -1
  943. package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  944. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js +3 -1
  945. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js.map +1 -1
  946. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js +3 -1
  947. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js.map +1 -1
  948. package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.js +3 -1
  949. package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  950. package/ShadersWGSL/ShadersInclude/pointCloudVertex.js +3 -1
  951. package/ShadersWGSL/ShadersInclude/pointCloudVertex.js.map +1 -1
  952. package/ShadersWGSL/ShadersInclude/pointCloudVertexDeclaration.js +3 -1
  953. package/ShadersWGSL/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
  954. package/ShadersWGSL/ShadersInclude/prePassDeclaration.js +3 -1
  955. package/ShadersWGSL/ShadersInclude/prePassDeclaration.js.map +1 -1
  956. package/ShadersWGSL/ShadersInclude/prePassVertex.js +3 -1
  957. package/ShadersWGSL/ShadersInclude/prePassVertex.js.map +1 -1
  958. package/ShadersWGSL/ShadersInclude/prePassVertexDeclaration.js +3 -1
  959. package/ShadersWGSL/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
  960. package/ShadersWGSL/ShadersInclude/reflectionFunction.js +3 -1
  961. package/ShadersWGSL/ShadersInclude/reflectionFunction.js.map +1 -1
  962. package/ShadersWGSL/ShadersInclude/samplerFragmentAlternateDeclaration.js +3 -1
  963. package/ShadersWGSL/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
  964. package/ShadersWGSL/ShadersInclude/samplerFragmentDeclaration.js +3 -1
  965. package/ShadersWGSL/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
  966. package/ShadersWGSL/ShadersInclude/samplerVertexDeclaration.js +3 -1
  967. package/ShadersWGSL/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
  968. package/ShadersWGSL/ShadersInclude/samplerVertexImplementation.js +3 -1
  969. package/ShadersWGSL/ShadersInclude/samplerVertexImplementation.js.map +1 -1
  970. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js +3 -1
  971. package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js.map +1 -1
  972. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js +3 -1
  973. package/ShadersWGSL/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
  974. package/ShadersWGSL/ShadersInclude/shadowMapFragment.js +3 -1
  975. package/ShadersWGSL/ShadersInclude/shadowMapFragment.js.map +1 -1
  976. package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.js +3 -1
  977. package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
  978. package/ShadersWGSL/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +3 -1
  979. package/ShadersWGSL/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
  980. package/ShadersWGSL/ShadersInclude/shadowMapVertexExtraDeclaration.js +3 -1
  981. package/ShadersWGSL/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
  982. package/ShadersWGSL/ShadersInclude/shadowMapVertexMetric.js +3 -1
  983. package/ShadersWGSL/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
  984. package/ShadersWGSL/ShadersInclude/shadowMapVertexNormalBias.js +3 -1
  985. package/ShadersWGSL/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
  986. package/ShadersWGSL/ShadersInclude/shadowsFragmentFunctions.js +3 -1
  987. package/ShadersWGSL/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
  988. package/ShadersWGSL/ShadersInclude/shadowsVertex.js +3 -1
  989. package/ShadersWGSL/ShadersInclude/shadowsVertex.js.map +1 -1
  990. package/ShadersWGSL/ShadersInclude/subSurfaceScatteringFunctions.js +3 -1
  991. package/ShadersWGSL/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
  992. package/ShadersWGSL/ShadersInclude/uvAttributeDeclaration.js +3 -1
  993. package/ShadersWGSL/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
  994. package/ShadersWGSL/ShadersInclude/uvVariableDeclaration.js +3 -1
  995. package/ShadersWGSL/ShadersInclude/uvVariableDeclaration.js.map +1 -1
  996. package/ShadersWGSL/ShadersInclude/vertexColorMixing.js +3 -1
  997. package/ShadersWGSL/ShadersInclude/vertexColorMixing.js.map +1 -1
  998. package/ShadersWGSL/anaglyph.fragment.js +3 -1
  999. package/ShadersWGSL/anaglyph.fragment.js.map +1 -1
  1000. package/ShadersWGSL/background.fragment.js +3 -1
  1001. package/ShadersWGSL/background.fragment.js.map +1 -1
  1002. package/ShadersWGSL/background.vertex.js +3 -1
  1003. package/ShadersWGSL/background.vertex.js.map +1 -1
  1004. package/ShadersWGSL/bilateralBlur.fragment.js +3 -1
  1005. package/ShadersWGSL/bilateralBlur.fragment.js.map +1 -1
  1006. package/ShadersWGSL/bilateralBlurQuality.fragment.js +3 -1
  1007. package/ShadersWGSL/bilateralBlurQuality.fragment.js.map +1 -1
  1008. package/ShadersWGSL/blackAndWhite.fragment.js +3 -1
  1009. package/ShadersWGSL/blackAndWhite.fragment.js.map +1 -1
  1010. package/ShadersWGSL/bloomMerge.fragment.js +3 -1
  1011. package/ShadersWGSL/bloomMerge.fragment.js.map +1 -1
  1012. package/ShadersWGSL/boundingBoxRenderer.fragment.js +3 -1
  1013. package/ShadersWGSL/boundingBoxRenderer.fragment.js.map +1 -1
  1014. package/ShadersWGSL/boundingBoxRenderer.vertex.js +3 -1
  1015. package/ShadersWGSL/boundingBoxRenderer.vertex.js.map +1 -1
  1016. package/ShadersWGSL/boundingInfo.compute.js +3 -1
  1017. package/ShadersWGSL/boundingInfo.compute.js.map +1 -1
  1018. package/ShadersWGSL/chromaticAberration.fragment.js +3 -1
  1019. package/ShadersWGSL/chromaticAberration.fragment.js.map +1 -1
  1020. package/ShadersWGSL/circleOfConfusion.fragment.js +3 -1
  1021. package/ShadersWGSL/circleOfConfusion.fragment.js.map +1 -1
  1022. package/ShadersWGSL/clearQuad.fragment.js +3 -1
  1023. package/ShadersWGSL/clearQuad.fragment.js.map +1 -1
  1024. package/ShadersWGSL/clearQuad.vertex.js +3 -1
  1025. package/ShadersWGSL/clearQuad.vertex.js.map +1 -1
  1026. package/ShadersWGSL/color.fragment.js +3 -1
  1027. package/ShadersWGSL/color.fragment.js.map +1 -1
  1028. package/ShadersWGSL/color.vertex.js +3 -1
  1029. package/ShadersWGSL/color.vertex.js.map +1 -1
  1030. package/ShadersWGSL/colorCorrection.fragment.js +3 -1
  1031. package/ShadersWGSL/colorCorrection.fragment.js.map +1 -1
  1032. package/ShadersWGSL/convolution.fragment.js +3 -1
  1033. package/ShadersWGSL/convolution.fragment.js.map +1 -1
  1034. package/ShadersWGSL/copyTexture3DLayerToTexture.fragment.js +3 -1
  1035. package/ShadersWGSL/copyTexture3DLayerToTexture.fragment.js.map +1 -1
  1036. package/ShadersWGSL/copyTextureToTexture.fragment.js +3 -1
  1037. package/ShadersWGSL/copyTextureToTexture.fragment.js.map +1 -1
  1038. package/ShadersWGSL/default.fragment.js +3 -1
  1039. package/ShadersWGSL/default.fragment.js.map +1 -1
  1040. package/ShadersWGSL/default.vertex.js +3 -1
  1041. package/ShadersWGSL/default.vertex.js.map +1 -1
  1042. package/ShadersWGSL/depth.fragment.js +3 -1
  1043. package/ShadersWGSL/depth.fragment.js.map +1 -1
  1044. package/ShadersWGSL/depth.vertex.js +3 -1
  1045. package/ShadersWGSL/depth.vertex.js.map +1 -1
  1046. package/ShadersWGSL/depthBoxBlur.fragment.js +3 -1
  1047. package/ShadersWGSL/depthBoxBlur.fragment.js.map +1 -1
  1048. package/ShadersWGSL/depthOfFieldMerge.fragment.js +3 -1
  1049. package/ShadersWGSL/depthOfFieldMerge.fragment.js.map +1 -1
  1050. package/ShadersWGSL/displayPass.fragment.js +3 -1
  1051. package/ShadersWGSL/displayPass.fragment.js.map +1 -1
  1052. package/ShadersWGSL/extractHighlights.fragment.js +3 -1
  1053. package/ShadersWGSL/extractHighlights.fragment.js.map +1 -1
  1054. package/ShadersWGSL/filter.fragment.js +3 -1
  1055. package/ShadersWGSL/filter.fragment.js.map +1 -1
  1056. package/ShadersWGSL/fluidRenderingBilateralBlur.fragment.js +3 -1
  1057. package/ShadersWGSL/fluidRenderingBilateralBlur.fragment.js.map +1 -1
  1058. package/ShadersWGSL/fluidRenderingParticleDepth.fragment.js +3 -1
  1059. package/ShadersWGSL/fluidRenderingParticleDepth.fragment.js.map +1 -1
  1060. package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js +3 -1
  1061. package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js.map +1 -1
  1062. package/ShadersWGSL/fluidRenderingParticleDiffuse.fragment.js +3 -1
  1063. package/ShadersWGSL/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
  1064. package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js +3 -1
  1065. package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
  1066. package/ShadersWGSL/fluidRenderingParticleThickness.fragment.js +3 -1
  1067. package/ShadersWGSL/fluidRenderingParticleThickness.fragment.js.map +1 -1
  1068. package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js +3 -1
  1069. package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js.map +1 -1
  1070. package/ShadersWGSL/fluidRenderingRender.fragment.js +3 -1
  1071. package/ShadersWGSL/fluidRenderingRender.fragment.js.map +1 -1
  1072. package/ShadersWGSL/fluidRenderingStandardBlur.fragment.js +3 -1
  1073. package/ShadersWGSL/fluidRenderingStandardBlur.fragment.js.map +1 -1
  1074. package/ShadersWGSL/fxaa.fragment.js +3 -1
  1075. package/ShadersWGSL/fxaa.fragment.js.map +1 -1
  1076. package/ShadersWGSL/fxaa.vertex.js +3 -1
  1077. package/ShadersWGSL/fxaa.vertex.js.map +1 -1
  1078. package/ShadersWGSL/gaussianSplatting.fragment.js +3 -1
  1079. package/ShadersWGSL/gaussianSplatting.fragment.js.map +1 -1
  1080. package/ShadersWGSL/gaussianSplatting.vertex.js +3 -1
  1081. package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
  1082. package/ShadersWGSL/geometry.fragment.js +3 -1
  1083. package/ShadersWGSL/geometry.fragment.js.map +1 -1
  1084. package/ShadersWGSL/geometry.vertex.js +3 -1
  1085. package/ShadersWGSL/geometry.vertex.js.map +1 -1
  1086. package/ShadersWGSL/glowBlurPostProcess.fragment.js +3 -1
  1087. package/ShadersWGSL/glowBlurPostProcess.fragment.js.map +1 -1
  1088. package/ShadersWGSL/glowMapGeneration.fragment.js +3 -1
  1089. package/ShadersWGSL/glowMapGeneration.fragment.js.map +1 -1
  1090. package/ShadersWGSL/glowMapGeneration.vertex.js +3 -1
  1091. package/ShadersWGSL/glowMapGeneration.vertex.js.map +1 -1
  1092. package/ShadersWGSL/glowMapMerge.fragment.js +3 -1
  1093. package/ShadersWGSL/glowMapMerge.fragment.js.map +1 -1
  1094. package/ShadersWGSL/glowMapMerge.vertex.js +3 -1
  1095. package/ShadersWGSL/glowMapMerge.vertex.js.map +1 -1
  1096. package/ShadersWGSL/gpuUpdateParticles.compute.js +3 -1
  1097. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  1098. package/ShadersWGSL/grain.fragment.js +3 -1
  1099. package/ShadersWGSL/grain.fragment.js.map +1 -1
  1100. package/ShadersWGSL/greasedLine.fragment.js +3 -1
  1101. package/ShadersWGSL/greasedLine.fragment.js.map +1 -1
  1102. package/ShadersWGSL/greasedLine.vertex.js +3 -1
  1103. package/ShadersWGSL/greasedLine.vertex.js.map +1 -1
  1104. package/ShadersWGSL/hdrFiltering.fragment.js +3 -1
  1105. package/ShadersWGSL/hdrFiltering.fragment.js.map +1 -1
  1106. package/ShadersWGSL/hdrFiltering.vertex.js +3 -1
  1107. package/ShadersWGSL/hdrFiltering.vertex.js.map +1 -1
  1108. package/ShadersWGSL/hdrIrradianceFiltering.fragment.js +3 -1
  1109. package/ShadersWGSL/hdrIrradianceFiltering.fragment.js.map +1 -1
  1110. package/ShadersWGSL/hdrIrradianceFiltering.vertex.js +3 -1
  1111. package/ShadersWGSL/hdrIrradianceFiltering.vertex.js.map +1 -1
  1112. package/ShadersWGSL/highlights.fragment.js +3 -1
  1113. package/ShadersWGSL/highlights.fragment.js.map +1 -1
  1114. package/ShadersWGSL/iblCdfDebug.fragment.js +3 -1
  1115. package/ShadersWGSL/iblCdfDebug.fragment.js.map +1 -1
  1116. package/ShadersWGSL/iblCdfx.fragment.js +3 -1
  1117. package/ShadersWGSL/iblCdfx.fragment.js.map +1 -1
  1118. package/ShadersWGSL/iblCdfy.fragment.js +3 -1
  1119. package/ShadersWGSL/iblCdfy.fragment.js.map +1 -1
  1120. package/ShadersWGSL/iblCombineVoxelGrids.fragment.js +3 -1
  1121. package/ShadersWGSL/iblCombineVoxelGrids.fragment.js.map +1 -1
  1122. package/ShadersWGSL/iblGenerateVoxelMip.fragment.js +3 -1
  1123. package/ShadersWGSL/iblGenerateVoxelMip.fragment.js.map +1 -1
  1124. package/ShadersWGSL/iblIcdf.fragment.js +3 -1
  1125. package/ShadersWGSL/iblIcdf.fragment.js.map +1 -1
  1126. package/ShadersWGSL/iblScaledLuminance.fragment.js +3 -1
  1127. package/ShadersWGSL/iblScaledLuminance.fragment.js.map +1 -1
  1128. package/ShadersWGSL/iblShadowAccumulation.fragment.js +3 -1
  1129. package/ShadersWGSL/iblShadowAccumulation.fragment.js.map +1 -1
  1130. package/ShadersWGSL/iblShadowDebug.fragment.js +3 -1
  1131. package/ShadersWGSL/iblShadowDebug.fragment.js.map +1 -1
  1132. package/ShadersWGSL/iblShadowGBufferDebug.fragment.js +3 -1
  1133. package/ShadersWGSL/iblShadowGBufferDebug.fragment.js.map +1 -1
  1134. package/ShadersWGSL/iblShadowSpatialBlur.fragment.js +3 -1
  1135. package/ShadersWGSL/iblShadowSpatialBlur.fragment.js.map +1 -1
  1136. package/ShadersWGSL/iblShadowVoxelTracing.fragment.js +3 -1
  1137. package/ShadersWGSL/iblShadowVoxelTracing.fragment.js.map +1 -1
  1138. package/ShadersWGSL/iblShadowsCombine.fragment.js +3 -1
  1139. package/ShadersWGSL/iblShadowsCombine.fragment.js.map +1 -1
  1140. package/ShadersWGSL/iblVoxelGrid.fragment.js +3 -1
  1141. package/ShadersWGSL/iblVoxelGrid.fragment.js.map +1 -1
  1142. package/ShadersWGSL/iblVoxelGrid.vertex.js +3 -1
  1143. package/ShadersWGSL/iblVoxelGrid.vertex.js.map +1 -1
  1144. package/ShadersWGSL/iblVoxelGrid2dArrayDebug.fragment.js +3 -1
  1145. package/ShadersWGSL/iblVoxelGrid2dArrayDebug.fragment.js.map +1 -1
  1146. package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js +3 -1
  1147. package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js.map +1 -1
  1148. package/ShadersWGSL/iblVoxelSlabDebug.fragment.js +3 -1
  1149. package/ShadersWGSL/iblVoxelSlabDebug.fragment.js.map +1 -1
  1150. package/ShadersWGSL/iblVoxelSlabDebug.vertex.js +3 -1
  1151. package/ShadersWGSL/iblVoxelSlabDebug.vertex.js.map +1 -1
  1152. package/ShadersWGSL/imageProcessing.fragment.js +4 -2
  1153. package/ShadersWGSL/imageProcessing.fragment.js.map +1 -1
  1154. package/ShadersWGSL/kernelBlur.fragment.js +3 -1
  1155. package/ShadersWGSL/kernelBlur.fragment.js.map +1 -1
  1156. package/ShadersWGSL/kernelBlur.vertex.js +3 -1
  1157. package/ShadersWGSL/kernelBlur.vertex.js.map +1 -1
  1158. package/ShadersWGSL/layer.fragment.js +3 -1
  1159. package/ShadersWGSL/layer.fragment.js.map +1 -1
  1160. package/ShadersWGSL/layer.vertex.js +3 -1
  1161. package/ShadersWGSL/layer.vertex.js.map +1 -1
  1162. package/ShadersWGSL/lensFlare.fragment.js +3 -1
  1163. package/ShadersWGSL/lensFlare.fragment.js.map +1 -1
  1164. package/ShadersWGSL/lensFlare.vertex.js +3 -1
  1165. package/ShadersWGSL/lensFlare.vertex.js.map +1 -1
  1166. package/ShadersWGSL/line.fragment.js +3 -1
  1167. package/ShadersWGSL/line.fragment.js.map +1 -1
  1168. package/ShadersWGSL/line.vertex.js +3 -1
  1169. package/ShadersWGSL/line.vertex.js.map +1 -1
  1170. package/ShadersWGSL/lod.fragment.js +3 -1
  1171. package/ShadersWGSL/lod.fragment.js.map +1 -1
  1172. package/ShadersWGSL/lodCube.fragment.js +3 -1
  1173. package/ShadersWGSL/lodCube.fragment.js.map +1 -1
  1174. package/ShadersWGSL/meshUVSpaceRenderer.fragment.js +3 -1
  1175. package/ShadersWGSL/meshUVSpaceRenderer.fragment.js.map +1 -1
  1176. package/ShadersWGSL/meshUVSpaceRenderer.vertex.js +3 -1
  1177. package/ShadersWGSL/meshUVSpaceRenderer.vertex.js.map +1 -1
  1178. package/ShadersWGSL/meshUVSpaceRendererFinaliser.fragment.js +3 -1
  1179. package/ShadersWGSL/meshUVSpaceRendererFinaliser.fragment.js.map +1 -1
  1180. package/ShadersWGSL/meshUVSpaceRendererFinaliser.vertex.js +3 -1
  1181. package/ShadersWGSL/meshUVSpaceRendererFinaliser.vertex.js.map +1 -1
  1182. package/ShadersWGSL/meshUVSpaceRendererMasker.fragment.js +3 -1
  1183. package/ShadersWGSL/meshUVSpaceRendererMasker.fragment.js.map +1 -1
  1184. package/ShadersWGSL/meshUVSpaceRendererMasker.vertex.js +3 -1
  1185. package/ShadersWGSL/meshUVSpaceRendererMasker.vertex.js.map +1 -1
  1186. package/ShadersWGSL/motionBlur.fragment.js +4 -2
  1187. package/ShadersWGSL/motionBlur.fragment.js.map +1 -1
  1188. package/ShadersWGSL/oitBackBlend.fragment.js +3 -1
  1189. package/ShadersWGSL/oitBackBlend.fragment.js.map +1 -1
  1190. package/ShadersWGSL/oitFinal.fragment.js +3 -1
  1191. package/ShadersWGSL/oitFinal.fragment.js.map +1 -1
  1192. package/ShadersWGSL/outline.fragment.js +3 -1
  1193. package/ShadersWGSL/outline.fragment.js.map +1 -1
  1194. package/ShadersWGSL/outline.vertex.js +3 -1
  1195. package/ShadersWGSL/outline.vertex.js.map +1 -1
  1196. package/ShadersWGSL/particles.fragment.js +3 -1
  1197. package/ShadersWGSL/particles.fragment.js.map +1 -1
  1198. package/ShadersWGSL/particles.vertex.js +3 -1
  1199. package/ShadersWGSL/particles.vertex.js.map +1 -1
  1200. package/ShadersWGSL/pass.fragment.js +3 -1
  1201. package/ShadersWGSL/pass.fragment.js.map +1 -1
  1202. package/ShadersWGSL/passCube.fragment.js +3 -1
  1203. package/ShadersWGSL/passCube.fragment.js.map +1 -1
  1204. package/ShadersWGSL/pbr.fragment.js +6 -1
  1205. package/ShadersWGSL/pbr.fragment.js.map +1 -1
  1206. package/ShadersWGSL/pbr.vertex.js +3 -1
  1207. package/ShadersWGSL/pbr.vertex.js.map +1 -1
  1208. package/ShadersWGSL/picking.fragment.js +3 -1
  1209. package/ShadersWGSL/picking.fragment.js.map +1 -1
  1210. package/ShadersWGSL/picking.vertex.js +3 -1
  1211. package/ShadersWGSL/picking.vertex.js.map +1 -1
  1212. package/ShadersWGSL/postprocess.vertex.js +3 -1
  1213. package/ShadersWGSL/postprocess.vertex.js.map +1 -1
  1214. package/ShadersWGSL/procedural.vertex.js +3 -1
  1215. package/ShadersWGSL/procedural.vertex.js.map +1 -1
  1216. package/ShadersWGSL/rgbdDecode.fragment.js +3 -1
  1217. package/ShadersWGSL/rgbdDecode.fragment.js.map +1 -1
  1218. package/ShadersWGSL/rgbdEncode.fragment.js +3 -1
  1219. package/ShadersWGSL/rgbdEncode.fragment.js.map +1 -1
  1220. package/ShadersWGSL/rsmFullGlobalIllumination.fragment.js +3 -1
  1221. package/ShadersWGSL/rsmFullGlobalIllumination.fragment.js.map +1 -1
  1222. package/ShadersWGSL/rsmGlobalIllumination.fragment.js +3 -1
  1223. package/ShadersWGSL/rsmGlobalIllumination.fragment.js.map +1 -1
  1224. package/ShadersWGSL/screenSpaceReflection2.fragment.js +4 -2
  1225. package/ShadersWGSL/screenSpaceReflection2.fragment.js.map +1 -1
  1226. package/ShadersWGSL/screenSpaceReflection2Blur.fragment.js +3 -1
  1227. package/ShadersWGSL/screenSpaceReflection2Blur.fragment.js.map +1 -1
  1228. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js +3 -1
  1229. package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
  1230. package/ShadersWGSL/shadowMap.fragment.js +3 -1
  1231. package/ShadersWGSL/shadowMap.fragment.js.map +1 -1
  1232. package/ShadersWGSL/shadowMap.vertex.js +3 -1
  1233. package/ShadersWGSL/shadowMap.vertex.js.map +1 -1
  1234. package/ShadersWGSL/sharpen.fragment.js +3 -1
  1235. package/ShadersWGSL/sharpen.fragment.js.map +1 -1
  1236. package/ShadersWGSL/sprites.fragment.js +3 -1
  1237. package/ShadersWGSL/sprites.fragment.js.map +1 -1
  1238. package/ShadersWGSL/sprites.vertex.js +3 -1
  1239. package/ShadersWGSL/sprites.vertex.js.map +1 -1
  1240. package/ShadersWGSL/ssao2.fragment.js +3 -1
  1241. package/ShadersWGSL/ssao2.fragment.js.map +1 -1
  1242. package/ShadersWGSL/ssaoCombine.fragment.js +3 -1
  1243. package/ShadersWGSL/ssaoCombine.fragment.js.map +1 -1
  1244. package/ShadersWGSL/subSurfaceScattering.fragment.d.ts +9 -0
  1245. package/ShadersWGSL/subSurfaceScattering.fragment.js +77 -0
  1246. package/ShadersWGSL/subSurfaceScattering.fragment.js.map +1 -0
  1247. package/ShadersWGSL/taa.fragment.js +3 -1
  1248. package/ShadersWGSL/taa.fragment.js.map +1 -1
  1249. package/ShadersWGSL/tonemap.fragment.js +3 -1
  1250. package/ShadersWGSL/tonemap.fragment.js.map +1 -1
  1251. package/ShadersWGSL/vrDistortionCorrection.fragment.js +3 -1
  1252. package/ShadersWGSL/vrDistortionCorrection.fragment.js.map +1 -1
  1253. package/package.json +1 -1
  1254. package/scene.d.ts +9 -2
  1255. package/scene.js +9 -2
  1256. package/scene.js.map +1 -1
  1257. package/FrameGraph/Node/Blocks/Rendering/cullObjectsBlock.js.map +0 -1
  1258. package/FrameGraph/Tasks/Rendering/cullObjectsTask.js.map +0 -1
  1259. /package/FrameGraph/Tasks/{Rendering → Misc}/cullObjectsTask.d.ts +0 -0
  1260. /package/FrameGraph/Tasks/{Rendering → Misc}/cullObjectsTask.js +0 -0
@@ -8,22 +8,24 @@ export class _VolumeWebAudioSubNode extends _VolumeAudioSubNode {
8
8
  /** @internal */
9
9
  constructor(engine) {
10
10
  super(engine);
11
- this.node = new GainNode(engine.audioContext);
11
+ this._volume = 1;
12
+ this.node = new GainNode(engine._audioContext);
12
13
  }
13
14
  /** @internal */
14
15
  get volume() {
15
- return this.node.gain.value;
16
+ return this._volume;
16
17
  }
17
18
  /** @internal */
18
19
  set volume(value) {
19
- this.node.gain.value = value;
20
+ this._volume = value;
21
+ this.engine._setAudioParam(this.node.gain, value);
20
22
  }
21
23
  /** @internal */
22
- get inNode() {
24
+ get _inNode() {
23
25
  return this.node;
24
26
  }
25
27
  /** @internal */
26
- get outNode() {
28
+ get _outNode() {
27
29
  return this.node;
28
30
  }
29
31
  _connect(node) {
@@ -32,8 +34,8 @@ export class _VolumeWebAudioSubNode extends _VolumeAudioSubNode {
32
34
  return false;
33
35
  }
34
36
  // If the wrapped node is not available now, it will be connected later by the subgraph.
35
- if (node.inNode) {
36
- this.node.connect(node.inNode);
37
+ if (node._inNode) {
38
+ this.node.connect(node._inNode);
37
39
  }
38
40
  return true;
39
41
  }
@@ -42,8 +44,8 @@ export class _VolumeWebAudioSubNode extends _VolumeAudioSubNode {
42
44
  if (!disconnected) {
43
45
  return false;
44
46
  }
45
- if (node.inNode) {
46
- this.node.disconnect(node.inNode);
47
+ if (node._inNode) {
48
+ this.node.disconnect(node._inNode);
47
49
  }
48
50
  return true;
49
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"volumeWebAudioSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAItF,gBAAgB;AAChB,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,MAAuB;IACxE,OAAO,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,gBAAgB;AAChB,MAAM,OAAO,sBAAuB,SAAQ,mBAAmB;IAI3D,gBAAgB;IAChB,YAAmB,MAAuB;QACtC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,gBAAgB;IAChB,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,gBAAgB;IAChB,IAAW,MAAM,CAAC,KAAa;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,gBAAgB;IAChB,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,gBAAgB;IAChB,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAEkB,QAAQ,CAAC,IAAqB;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,wFAAwF;QACxF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEkB,WAAW,CAAC,IAAqB;QAChD,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,gBAAgB;IACT,YAAY;QACf,OAAO,wBAAwB,CAAC;IACpC,CAAC;CACJ","sourcesContent":["import { _VolumeAudioSubNode } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport type { _WebAudioEngine } from \"../webAudioEngine\";\nimport type { IWebAudioInNode, IWebAudioSubNode } from \"../webAudioNode\";\n\n/** @internal */\nexport async function _CreateVolumeAudioSubNodeAsync(engine: _WebAudioEngine): Promise<_VolumeAudioSubNode> {\n return new _VolumeWebAudioSubNode(engine);\n}\n\n/** @internal */\nexport class _VolumeWebAudioSubNode extends _VolumeAudioSubNode implements IWebAudioSubNode {\n /** @internal */\n public readonly node: GainNode;\n\n /** @internal */\n public constructor(engine: _WebAudioEngine) {\n super(engine);\n\n this.node = new GainNode(engine.audioContext);\n }\n\n /** @internal */\n public get volume(): number {\n return this.node.gain.value;\n }\n\n /** @internal */\n public set volume(value: number) {\n this.node.gain.value = value;\n }\n\n /** @internal */\n public get inNode(): AudioNode {\n return this.node;\n }\n\n /** @internal */\n public get outNode(): AudioNode {\n return this.node;\n }\n\n protected override _connect(node: IWebAudioInNode): boolean {\n const connected = super._connect(node);\n\n if (!connected) {\n return false;\n }\n\n // If the wrapped node is not available now, it will be connected later by the subgraph.\n if (node.inNode) {\n this.node.connect(node.inNode);\n }\n\n return true;\n }\n\n protected override _disconnect(node: IWebAudioInNode): boolean {\n const disconnected = super._disconnect(node);\n\n if (!disconnected) {\n return false;\n }\n\n if (node.inNode) {\n this.node.disconnect(node.inNode);\n }\n\n return true;\n }\n\n /** @internal */\n public getClassName(): string {\n return \"_VolumeWebAudioSubNode\";\n }\n}\n"]}
1
+ {"version":3,"file":"volumeWebAudioSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAItF,gBAAgB;AAChB,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,MAAuB;IACxE,OAAO,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,gBAAgB;AAChB,MAAM,OAAO,sBAAuB,SAAQ,mBAAmB;IAS3D,gBAAgB;IAChB,YAAmB,MAAuB;QACtC,KAAK,CAAC,MAAM,CAAC,CAAC;QAVV,YAAO,GAAW,CAAC,CAAC;QAYxB,IAAI,CAAC,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;IAChB,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,gBAAgB;IAChB,IAAW,MAAM,CAAC,KAAa;QAC3B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,gBAAgB;IAChB,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,gBAAgB;IAChB,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAEkB,QAAQ,CAAC,IAAqB;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,wFAAwF;QACxF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEkB,WAAW,CAAC,IAAqB;QAChD,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,gBAAgB;IACT,YAAY;QACf,OAAO,wBAAwB,CAAC;IACpC,CAAC;CACJ","sourcesContent":["import { _VolumeAudioSubNode } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport type { _WebAudioEngine } from \"../webAudioEngine\";\nimport type { IWebAudioInNode, IWebAudioSubNode } from \"../webAudioNode\";\n\n/** @internal */\nexport async function _CreateVolumeAudioSubNodeAsync(engine: _WebAudioEngine): Promise<_VolumeAudioSubNode> {\n return new _VolumeWebAudioSubNode(engine);\n}\n\n/** @internal */\nexport class _VolumeWebAudioSubNode extends _VolumeAudioSubNode implements IWebAudioSubNode {\n private _volume: number = 1;\n\n /** @internal */\n public override readonly engine: _WebAudioEngine;\n\n /** @internal */\n public readonly node: GainNode;\n\n /** @internal */\n public constructor(engine: _WebAudioEngine) {\n super(engine);\n\n this.node = new GainNode(engine._audioContext);\n }\n\n /** @internal */\n public get volume(): number {\n return this._volume;\n }\n\n /** @internal */\n public set volume(value: number) {\n this._volume = value;\n this.engine._setAudioParam(this.node.gain, value);\n }\n\n /** @internal */\n public get _inNode(): AudioNode {\n return this.node;\n }\n\n /** @internal */\n public get _outNode(): AudioNode {\n return this.node;\n }\n\n protected override _connect(node: IWebAudioInNode): boolean {\n const connected = super._connect(node);\n\n if (!connected) {\n return false;\n }\n\n // If the wrapped node is not available now, it will be connected later by the subgraph.\n if (node._inNode) {\n this.node.connect(node._inNode);\n }\n\n return true;\n }\n\n protected override _disconnect(node: IWebAudioInNode): boolean {\n const disconnected = super._disconnect(node);\n\n if (!disconnected) {\n return false;\n }\n\n if (node._inNode) {\n this.node.disconnect(node._inNode);\n }\n\n return true;\n }\n\n /** @internal */\n public getClassName(): string {\n return \"_VolumeWebAudioSubNode\";\n }\n}\n"]}
@@ -15,7 +15,7 @@ export declare class _WebAudioAnalyzerSubNode extends _AudioAnalyzerSubNode impl
15
15
  get fftSize(): AudioAnalyzerFFTSizeType;
16
16
  set fftSize(value: AudioAnalyzerFFTSizeType);
17
17
  /** @internal */
18
- get inNode(): AudioNode;
18
+ get _inNode(): AudioNode;
19
19
  /** @internal */
20
20
  get minDecibels(): number;
21
21
  set minDecibels(value: number);
@@ -11,7 +11,7 @@ export class _WebAudioAnalyzerSubNode extends _AudioAnalyzerSubNode {
11
11
  super(engine);
12
12
  this._byteFrequencyData = null;
13
13
  this._floatFrequencyData = null;
14
- this._analyzerNode = new AnalyserNode(engine.audioContext);
14
+ this._analyzerNode = new AnalyserNode(engine._audioContext);
15
15
  }
16
16
  /** @internal */
17
17
  get fftSize() {
@@ -25,7 +25,7 @@ export class _WebAudioAnalyzerSubNode extends _AudioAnalyzerSubNode {
25
25
  this._clearArrays();
26
26
  }
27
27
  /** @internal */
28
- get inNode() {
28
+ get _inNode() {
29
29
  return this._analyzerNode;
30
30
  }
31
31
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"webAudioAnalyzerSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport { _AudioAnalyzerSubNode } from \"../../abstractAudio/subNodes/audioAnalyzerSubNode\";\nimport type { AudioAnalyzerFFTSizeType } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport { _GetEmptyByteFrequencyData, _GetEmptyFloatFrequencyData } from \"../../abstractAudio/subProperties/audioAnalyzer\";\nimport type { _WebAudioEngine } from \"../webAudioEngine\";\nimport type { IWebAudioInNode } from \"../webAudioNode\";\n\n/** @internal */\nexport async function _CreateAudioAnalyzerSubNodeAsync(engine: _WebAudioEngine): Promise<_AudioAnalyzerSubNode> {\n return new _WebAudioAnalyzerSubNode(engine);\n}\n\n/** @internal */\nexport class _WebAudioAnalyzerSubNode extends _AudioAnalyzerSubNode implements IWebAudioInNode {\n private readonly _analyzerNode: AnalyserNode;\n private _byteFrequencyData: Nullable<Uint8Array> = null;\n private _floatFrequencyData: Nullable<Float32Array> = null;\n\n /** @internal */\n public constructor(engine: _WebAudioEngine) {\n super(engine);\n\n this._analyzerNode = new AnalyserNode(engine.audioContext);\n }\n\n /** @internal */\n public get fftSize(): AudioAnalyzerFFTSizeType {\n return this._analyzerNode.fftSize as AudioAnalyzerFFTSizeType;\n }\n\n public set fftSize(value: AudioAnalyzerFFTSizeType) {\n if (value === this._analyzerNode.fftSize) {\n return;\n }\n\n this._analyzerNode.fftSize = value;\n\n this._clearArrays();\n }\n\n /** @internal */\n public get inNode(): AudioNode {\n return this._analyzerNode;\n }\n\n /** @internal */\n public get minDecibels(): number {\n return this._analyzerNode.minDecibels;\n }\n\n public set minDecibels(value: number) {\n this._analyzerNode.minDecibels = value;\n }\n\n /** @internal */\n public get maxDecibels(): number {\n return this._analyzerNode.maxDecibels;\n }\n\n public set maxDecibels(value: number) {\n this._analyzerNode.maxDecibels = value;\n }\n\n /** @internal */\n public get smoothing(): number {\n return this._analyzerNode.smoothingTimeConstant;\n }\n\n public set smoothing(value: number) {\n this._analyzerNode.smoothingTimeConstant = value;\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._clearArrays();\n this._byteFrequencyData = null;\n this._floatFrequencyData = null;\n\n this._analyzerNode.disconnect();\n }\n\n /** @internal */\n public getClassName(): string {\n return \"_WebAudioAnalyzerSubNode\";\n }\n\n /** @internal */\n public getByteFrequencyData(): Uint8Array {\n if (!this._byteFrequencyData || this._byteFrequencyData.length === 0) {\n this._byteFrequencyData = new Uint8Array(this._analyzerNode.frequencyBinCount);\n }\n this._analyzerNode.getByteFrequencyData(this._byteFrequencyData);\n return this._byteFrequencyData;\n }\n\n /** @internal */\n public getFloatFrequencyData(): Float32Array {\n if (!this._floatFrequencyData || this._floatFrequencyData.length === 0) {\n this._floatFrequencyData = new Float32Array(this._analyzerNode.frequencyBinCount);\n }\n this._analyzerNode.getFloatFrequencyData(this._floatFrequencyData);\n return this._floatFrequencyData;\n }\n\n private _clearArrays(): void {\n this._byteFrequencyData?.set(_GetEmptyByteFrequencyData());\n this._floatFrequencyData?.set(_GetEmptyFloatFrequencyData());\n }\n}\n"]}
1
+ {"version":3,"file":"webAudioAnalyzerSubNode.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport { _AudioAnalyzerSubNode } from \"../../abstractAudio/subNodes/audioAnalyzerSubNode\";\nimport type { AudioAnalyzerFFTSizeType } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport { _GetEmptyByteFrequencyData, _GetEmptyFloatFrequencyData } from \"../../abstractAudio/subProperties/audioAnalyzer\";\nimport type { _WebAudioEngine } from \"../webAudioEngine\";\nimport type { IWebAudioInNode } from \"../webAudioNode\";\n\n/** @internal */\nexport async function _CreateAudioAnalyzerSubNodeAsync(engine: _WebAudioEngine): Promise<_AudioAnalyzerSubNode> {\n return new _WebAudioAnalyzerSubNode(engine);\n}\n\n/** @internal */\nexport class _WebAudioAnalyzerSubNode extends _AudioAnalyzerSubNode implements IWebAudioInNode {\n private readonly _analyzerNode: AnalyserNode;\n private _byteFrequencyData: Nullable<Uint8Array> = null;\n private _floatFrequencyData: Nullable<Float32Array> = null;\n\n /** @internal */\n public constructor(engine: _WebAudioEngine) {\n super(engine);\n\n this._analyzerNode = new AnalyserNode(engine._audioContext);\n }\n\n /** @internal */\n public get fftSize(): AudioAnalyzerFFTSizeType {\n return this._analyzerNode.fftSize as AudioAnalyzerFFTSizeType;\n }\n\n public set fftSize(value: AudioAnalyzerFFTSizeType) {\n if (value === this._analyzerNode.fftSize) {\n return;\n }\n\n this._analyzerNode.fftSize = value;\n\n this._clearArrays();\n }\n\n /** @internal */\n public get _inNode(): AudioNode {\n return this._analyzerNode;\n }\n\n /** @internal */\n public get minDecibels(): number {\n return this._analyzerNode.minDecibels;\n }\n\n public set minDecibels(value: number) {\n this._analyzerNode.minDecibels = value;\n }\n\n /** @internal */\n public get maxDecibels(): number {\n return this._analyzerNode.maxDecibels;\n }\n\n public set maxDecibels(value: number) {\n this._analyzerNode.maxDecibels = value;\n }\n\n /** @internal */\n public get smoothing(): number {\n return this._analyzerNode.smoothingTimeConstant;\n }\n\n public set smoothing(value: number) {\n this._analyzerNode.smoothingTimeConstant = value;\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._clearArrays();\n this._byteFrequencyData = null;\n this._floatFrequencyData = null;\n\n this._analyzerNode.disconnect();\n }\n\n /** @internal */\n public getClassName(): string {\n return \"_WebAudioAnalyzerSubNode\";\n }\n\n /** @internal */\n public getByteFrequencyData(): Uint8Array {\n if (!this._byteFrequencyData || this._byteFrequencyData.length === 0) {\n this._byteFrequencyData = new Uint8Array(this._analyzerNode.frequencyBinCount);\n }\n this._analyzerNode.getByteFrequencyData(this._byteFrequencyData);\n return this._byteFrequencyData;\n }\n\n /** @internal */\n public getFloatFrequencyData(): Float32Array {\n if (!this._floatFrequencyData || this._floatFrequencyData.length === 0) {\n this._floatFrequencyData = new Float32Array(this._analyzerNode.frequencyBinCount);\n }\n this._analyzerNode.getFloatFrequencyData(this._floatFrequencyData);\n return this._floatFrequencyData;\n }\n\n private _clearArrays(): void {\n this._byteFrequencyData?.set(_GetEmptyByteFrequencyData());\n this._floatFrequencyData?.set(_GetEmptyFloatFrequencyData());\n }\n}\n"]}
@@ -13,16 +13,16 @@ export interface IWebAudioBaseSubGraphOptions extends IAudioAnalyzerOptions, IVo
13
13
  /** @internal */
14
14
  export declare abstract class _WebAudioBaseSubGraph extends _AbstractAudioSubGraph {
15
15
  protected _owner: IWebAudioSuperNode;
16
- protected _outNode: Nullable<AudioNode>;
16
+ protected _outputNode: Nullable<AudioNode>;
17
17
  /** @internal */
18
18
  constructor(owner: IWebAudioSuperNode);
19
19
  /** @internal */
20
20
  init(options: Partial<IWebAudioBaseSubGraphOptions>): Promise<void>;
21
21
  protected abstract readonly _downstreamNodes: Nullable<Set<AbstractAudioNode>>;
22
22
  /** @internal */
23
- get inNode(): Nullable<AudioNode>;
23
+ get _inNode(): Nullable<AudioNode>;
24
24
  /** @internal */
25
- get outNode(): Nullable<AudioNode>;
25
+ get _outNode(): Nullable<AudioNode>;
26
26
  protected _createSubNode(name: string): Promise<_AbstractAudioSubNode>;
27
27
  protected _onSubNodesChanged(): void;
28
28
  }
@@ -9,7 +9,7 @@ export class _WebAudioBaseSubGraph extends _AbstractAudioSubGraph {
9
9
  /** @internal */
10
10
  constructor(owner) {
11
11
  super();
12
- this._outNode = null;
12
+ this._outputNode = null;
13
13
  this._owner = owner;
14
14
  }
15
15
  /** @internal */
@@ -35,26 +35,26 @@ export class _WebAudioBaseSubGraph extends _AbstractAudioSubGraph {
35
35
  if (volumeNode.getClassName() !== "_VolumeWebAudioSubNode") {
36
36
  throw new Error("Not a WebAudio subnode.");
37
37
  }
38
- this._outNode = volumeNode.node;
38
+ this._outputNode = volumeNode.node;
39
39
  // Connect the new wrapped WebAudio node to the wrapped downstream WebAudio nodes.
40
40
  // The wrapper nodes are unaware of this change.
41
- if (this._outNode && this._downstreamNodes) {
41
+ if (this._outputNode && this._downstreamNodes) {
42
42
  const it = this._downstreamNodes.values();
43
43
  for (let next = it.next(); !next.done; next = it.next()) {
44
- const inNode = next.value.inNode;
44
+ const inNode = next.value._inNode;
45
45
  if (inNode) {
46
- this._outNode.connect(inNode);
46
+ this._outputNode.connect(inNode);
47
47
  }
48
48
  }
49
49
  }
50
50
  }
51
51
  /** @internal */
52
- get inNode() {
53
- return this._outNode;
52
+ get _inNode() {
53
+ return this._outputNode;
54
54
  }
55
55
  /** @internal */
56
- get outNode() {
57
- return this._outNode;
56
+ get _outNode() {
57
+ return this._outputNode;
58
58
  }
59
59
  _createSubNode(name) {
60
60
  switch (name) {
@@ -1 +1 @@
1
- {"version":3,"file":"webAudioBaseSubGraph.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport type { AbstractAudioNode } from \"../../abstractAudio/abstractAudioNode\";\nimport { _AbstractAudioSubGraph } from \"../../abstractAudio/subNodes/abstractAudioSubGraph\";\nimport type { _AbstractAudioSubNode } from \"../../abstractAudio/subNodes/abstractAudioSubNode\";\nimport { _GetAudioAnalyzerSubNode } from \"../../abstractAudio/subNodes/audioAnalyzerSubNode\";\nimport { AudioSubNode } from \"../../abstractAudio/subNodes/audioSubNode\";\nimport type { IVolumeAudioOptions } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport { _GetVolumeAudioSubNode } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport type { IAudioAnalyzerOptions } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport { _HasAudioAnalyzerOptions } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport type { IWebAudioInNode, IWebAudioSuperNode } from \"../webAudioNode\";\nimport type { _VolumeWebAudioSubNode } from \"./volumeWebAudioSubNode\";\nimport { _CreateVolumeAudioSubNodeAsync } from \"./volumeWebAudioSubNode\";\nimport { _CreateAudioAnalyzerSubNodeAsync } from \"./webAudioAnalyzerSubNode\";\n\n/**\n * Options for creating a WebAudioBaseSubGraph.\n */\nexport interface IWebAudioBaseSubGraphOptions extends IAudioAnalyzerOptions, IVolumeAudioOptions {}\n\n/** @internal */\nexport abstract class _WebAudioBaseSubGraph extends _AbstractAudioSubGraph {\n protected _owner: IWebAudioSuperNode;\n protected _outNode: Nullable<AudioNode> = null;\n\n /** @internal */\n public constructor(owner: IWebAudioSuperNode) {\n super();\n\n this._owner = owner;\n }\n\n /** @internal */\n public async init(options: Partial<IWebAudioBaseSubGraphOptions>): Promise<void> {\n const hasAnalyzerOptions = _HasAudioAnalyzerOptions(options);\n\n if (hasAnalyzerOptions) {\n await this.createAndAddSubNode(AudioSubNode.ANALYZER);\n }\n\n await this.createAndAddSubNode(AudioSubNode.VOLUME);\n\n await this._createSubNodePromisesResolved();\n\n if (hasAnalyzerOptions) {\n const analyzerNode = _GetAudioAnalyzerSubNode(this);\n if (!analyzerNode) {\n throw new Error(\"No analyzer subnode.\");\n }\n\n analyzerNode.setOptions(options);\n }\n\n const volumeNode = _GetVolumeAudioSubNode(this);\n if (!volumeNode) {\n throw new Error(\"No volume subnode.\");\n }\n\n volumeNode.setOptions(options);\n\n if (volumeNode.getClassName() !== \"_VolumeWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n\n this._outNode = (volumeNode as _VolumeWebAudioSubNode).node;\n\n // Connect the new wrapped WebAudio node to the wrapped downstream WebAudio nodes.\n // The wrapper nodes are unaware of this change.\n if (this._outNode && this._downstreamNodes) {\n const it = this._downstreamNodes.values();\n for (let next = it.next(); !next.done; next = it.next()) {\n const inNode = (next.value as IWebAudioInNode).inNode;\n if (inNode) {\n this._outNode.connect(inNode);\n }\n }\n }\n }\n\n protected abstract readonly _downstreamNodes: Nullable<Set<AbstractAudioNode>>;\n\n /** @internal */\n public get inNode(): Nullable<AudioNode> {\n return this._outNode;\n }\n\n /** @internal */\n public get outNode(): Nullable<AudioNode> {\n return this._outNode;\n }\n\n protected _createSubNode(name: string): Promise<_AbstractAudioSubNode> {\n switch (name) {\n case AudioSubNode.ANALYZER:\n return _CreateAudioAnalyzerSubNodeAsync(this._owner.engine);\n case AudioSubNode.VOLUME:\n return _CreateVolumeAudioSubNodeAsync(this._owner.engine);\n default:\n throw new Error(`Unknown subnode name: ${name}`);\n }\n }\n\n protected _onSubNodesChanged(): void {\n const analyzerNode = _GetAudioAnalyzerSubNode(this);\n const volumeNode = _GetVolumeAudioSubNode(this);\n\n if (analyzerNode && volumeNode) {\n volumeNode.connect(analyzerNode);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"webAudioBaseSubGraph.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport type { AbstractAudioNode } from \"../../abstractAudio/abstractAudioNode\";\nimport { _AbstractAudioSubGraph } from \"../../abstractAudio/subNodes/abstractAudioSubGraph\";\nimport type { _AbstractAudioSubNode } from \"../../abstractAudio/subNodes/abstractAudioSubNode\";\nimport { _GetAudioAnalyzerSubNode } from \"../../abstractAudio/subNodes/audioAnalyzerSubNode\";\nimport { AudioSubNode } from \"../../abstractAudio/subNodes/audioSubNode\";\nimport type { IVolumeAudioOptions } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport { _GetVolumeAudioSubNode } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport type { IAudioAnalyzerOptions } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport { _HasAudioAnalyzerOptions } from \"../../abstractAudio/subProperties/abstractAudioAnalyzer\";\nimport type { IWebAudioInNode, IWebAudioSuperNode } from \"../webAudioNode\";\nimport type { _VolumeWebAudioSubNode } from \"./volumeWebAudioSubNode\";\nimport { _CreateVolumeAudioSubNodeAsync } from \"./volumeWebAudioSubNode\";\nimport { _CreateAudioAnalyzerSubNodeAsync } from \"./webAudioAnalyzerSubNode\";\n\n/**\n * Options for creating a WebAudioBaseSubGraph.\n */\nexport interface IWebAudioBaseSubGraphOptions extends IAudioAnalyzerOptions, IVolumeAudioOptions {}\n\n/** @internal */\nexport abstract class _WebAudioBaseSubGraph extends _AbstractAudioSubGraph {\n protected _owner: IWebAudioSuperNode;\n protected _outputNode: Nullable<AudioNode> = null;\n\n /** @internal */\n public constructor(owner: IWebAudioSuperNode) {\n super();\n\n this._owner = owner;\n }\n\n /** @internal */\n public async init(options: Partial<IWebAudioBaseSubGraphOptions>): Promise<void> {\n const hasAnalyzerOptions = _HasAudioAnalyzerOptions(options);\n\n if (hasAnalyzerOptions) {\n await this.createAndAddSubNode(AudioSubNode.ANALYZER);\n }\n\n await this.createAndAddSubNode(AudioSubNode.VOLUME);\n\n await this._createSubNodePromisesResolved();\n\n if (hasAnalyzerOptions) {\n const analyzerNode = _GetAudioAnalyzerSubNode(this);\n if (!analyzerNode) {\n throw new Error(\"No analyzer subnode.\");\n }\n\n analyzerNode.setOptions(options);\n }\n\n const volumeNode = _GetVolumeAudioSubNode(this);\n if (!volumeNode) {\n throw new Error(\"No volume subnode.\");\n }\n\n volumeNode.setOptions(options);\n\n if (volumeNode.getClassName() !== \"_VolumeWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n\n this._outputNode = (volumeNode as _VolumeWebAudioSubNode).node;\n\n // Connect the new wrapped WebAudio node to the wrapped downstream WebAudio nodes.\n // The wrapper nodes are unaware of this change.\n if (this._outputNode && this._downstreamNodes) {\n const it = this._downstreamNodes.values();\n for (let next = it.next(); !next.done; next = it.next()) {\n const inNode = (next.value as IWebAudioInNode)._inNode;\n if (inNode) {\n this._outputNode.connect(inNode);\n }\n }\n }\n }\n\n protected abstract readonly _downstreamNodes: Nullable<Set<AbstractAudioNode>>;\n\n /** @internal */\n public get _inNode(): Nullable<AudioNode> {\n return this._outputNode;\n }\n\n /** @internal */\n public get _outNode(): Nullable<AudioNode> {\n return this._outputNode;\n }\n\n protected _createSubNode(name: string): Promise<_AbstractAudioSubNode> {\n switch (name) {\n case AudioSubNode.ANALYZER:\n return _CreateAudioAnalyzerSubNodeAsync(this._owner.engine);\n case AudioSubNode.VOLUME:\n return _CreateVolumeAudioSubNodeAsync(this._owner.engine);\n default:\n throw new Error(`Unknown subnode name: ${name}`);\n }\n }\n\n protected _onSubNodesChanged(): void {\n const analyzerNode = _GetAudioAnalyzerSubNode(this);\n const volumeNode = _GetVolumeAudioSubNode(this);\n\n if (analyzerNode && volumeNode) {\n volumeNode.connect(analyzerNode);\n }\n }\n}\n"]}
@@ -12,11 +12,11 @@ export interface IWebAudioBusAndSoundSubGraphOptions extends ISpatialAudioOption
12
12
  export declare abstract class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {
13
13
  private _rootNode;
14
14
  protected abstract readonly _upstreamNodes: Nullable<Set<AbstractAudioNode>>;
15
- protected _inNode: Nullable<AudioNode>;
15
+ protected _inputNode: Nullable<AudioNode>;
16
16
  /** @internal */
17
17
  init(options: Partial<IWebAudioBusAndSoundSubGraphOptions>): Promise<void>;
18
18
  /** @internal */
19
- get inNode(): Nullable<AudioNode>;
19
+ get _inNode(): Nullable<AudioNode>;
20
20
  protected _createSubNode(name: string): Promise<_AbstractAudioSubNode>;
21
21
  protected _onSubNodesChanged(): void;
22
22
  }
@@ -11,7 +11,7 @@ export class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {
11
11
  constructor() {
12
12
  super(...arguments);
13
13
  this._rootNode = null;
14
- this._inNode = null;
14
+ this._inputNode = null;
15
15
  }
16
16
  /** @internal */
17
17
  async init(options) {
@@ -33,8 +33,8 @@ export class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {
33
33
  }
34
34
  }
35
35
  /** @internal */
36
- get inNode() {
37
- return this._inNode;
36
+ get _inNode() {
37
+ return this._inputNode;
38
38
  }
39
39
  _createSubNode(name) {
40
40
  try {
@@ -78,9 +78,9 @@ export class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {
78
78
  }
79
79
  }
80
80
  if (spatialNode && stereoNode) {
81
- this._rootNode = new GainNode(this._owner.engine.audioContext);
82
- this._rootNode.connect(spatialNode.outNode);
83
- this._rootNode.connect(stereoNode.outNode);
81
+ this._rootNode = new GainNode(this._owner.engine._audioContext);
82
+ this._rootNode.connect(spatialNode._outNode);
83
+ this._rootNode.connect(stereoNode._outNode);
84
84
  }
85
85
  else {
86
86
  this._rootNode?.disconnect();
@@ -103,22 +103,22 @@ export class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {
103
103
  }
104
104
  inNode = inSubNode?.node ?? null;
105
105
  }
106
- if (this._inNode !== inNode) {
106
+ if (this._inputNode !== inNode) {
107
107
  // Disconnect the wrapped upstream WebAudio nodes from the old wrapped WebAudio node.
108
108
  // The wrapper nodes are unaware of this change.
109
- if (this._inNode && this._upstreamNodes) {
109
+ if (this._inputNode && this._upstreamNodes) {
110
110
  const it = this._upstreamNodes.values();
111
111
  for (let next = it.next(); !next.done; next = it.next()) {
112
- next.value.outNode?.disconnect(this._inNode);
112
+ next.value._outNode?.disconnect(this._inputNode);
113
113
  }
114
114
  }
115
- this._inNode = inNode;
115
+ this._inputNode = inNode;
116
116
  // Connect the wrapped upstream WebAudio nodes to the new wrapped WebAudio node.
117
117
  // The wrapper nodes are unaware of this change.
118
118
  if (inNode && this._upstreamNodes) {
119
119
  const it = this._upstreamNodes.values();
120
120
  for (let next = it.next(); !next.done; next = it.next()) {
121
- next.value.outNode?.connect(inNode);
121
+ next.value._outNode?.connect(inNode);
122
122
  }
123
123
  }
124
124
  }
@@ -1 +1 @@
1
- {"version":3,"file":"webAudioBusAndSoundSubGraph.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport type { AbstractAudioNode } from \"../../abstractAudio/abstractAudioNode\";\nimport type { _AbstractAudioSubNode } from \"../../abstractAudio/subNodes/abstractAudioSubNode\";\nimport { AudioSubNode } from \"../../abstractAudio/subNodes/audioSubNode\";\nimport { _GetSpatialAudioSubNode } from \"../../abstractAudio/subNodes/spatialAudioSubNode\";\nimport { _GetStereoAudioSubNode } from \"../../abstractAudio/subNodes/stereoAudioSubNode\";\nimport type { IVolumeAudioOptions } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport { _GetVolumeAudioSubNode } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport type { ISpatialAudioOptions } from \"../../abstractAudio/subProperties/abstractSpatialAudio\";\nimport { _HasSpatialAudioOptions } from \"../../abstractAudio/subProperties/abstractSpatialAudio\";\nimport type { IStereoAudioOptions } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport { _HasStereoAudioOptions } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport type { IWebAudioOutNode, IWebAudioSubNode } from \"../webAudioNode\";\nimport type { _SpatialWebAudioSubNode } from \"./spatialWebAudioSubNode\";\nimport { _CreateSpatialAudioSubNodeAsync } from \"./spatialWebAudioSubNode\";\nimport type { _StereoWebAudioSubNode } from \"./stereoWebAudioSubNode\";\nimport { _CreateStereoAudioSubNodeAsync } from \"./stereoWebAudioSubNode\";\nimport type { _VolumeWebAudioSubNode } from \"./volumeWebAudioSubNode\";\nimport { _WebAudioBaseSubGraph } from \"./webAudioBaseSubGraph\";\n\n/** @internal */\nexport interface IWebAudioBusAndSoundSubGraphOptions extends ISpatialAudioOptions, IStereoAudioOptions, IVolumeAudioOptions {}\n\n/** @internal */\nexport abstract class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {\n private _rootNode: Nullable<GainNode> = null;\n protected abstract readonly _upstreamNodes: Nullable<Set<AbstractAudioNode>>;\n\n protected _inNode: Nullable<AudioNode> = null;\n\n /** @internal */\n public override async init(options: Partial<IWebAudioBusAndSoundSubGraphOptions>): Promise<void> {\n await super.init(options);\n\n let hasSpatialOptions = false;\n let hasStereoOptions = false;\n\n if ((hasSpatialOptions = _HasSpatialAudioOptions(options))) {\n await this.createAndAddSubNode(AudioSubNode.SPATIAL);\n }\n if ((hasStereoOptions = _HasStereoAudioOptions(options))) {\n await this.createAndAddSubNode(AudioSubNode.STEREO);\n }\n\n await this._createSubNodePromisesResolved();\n\n if (hasSpatialOptions) {\n _GetSpatialAudioSubNode(this)?.setOptions(options);\n }\n if (hasStereoOptions) {\n _GetStereoAudioSubNode(this)?.setOptions(options);\n }\n }\n\n /** @internal */\n public override get inNode(): Nullable<AudioNode> {\n return this._inNode;\n }\n\n protected override _createSubNode(name: string): Promise<_AbstractAudioSubNode> {\n try {\n const node = super._createSubNode(name);\n return node;\n } catch (e) {}\n\n switch (name) {\n case AudioSubNode.SPATIAL:\n return _CreateSpatialAudioSubNodeAsync(this._owner.engine);\n case AudioSubNode.STEREO:\n return _CreateStereoAudioSubNodeAsync(this._owner.engine);\n default:\n throw new Error(`Unknown subnode name: ${name}`);\n }\n }\n\n protected override _onSubNodesChanged(): void {\n super._onSubNodesChanged();\n\n const spatialNode = _GetSpatialAudioSubNode(this);\n const stereoNode = _GetStereoAudioSubNode(this);\n const volumeNode = _GetVolumeAudioSubNode(this);\n\n if (spatialNode && spatialNode.getClassName() !== \"_SpatialWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n if (stereoNode && stereoNode.getClassName() !== \"_StereoWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n if (volumeNode && volumeNode.getClassName() !== \"_VolumeWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n\n if (spatialNode) {\n spatialNode.disconnectAll();\n\n if (volumeNode) {\n spatialNode.connect(volumeNode);\n }\n }\n\n if (stereoNode) {\n stereoNode.disconnectAll();\n\n if (volumeNode) {\n stereoNode.connect(volumeNode);\n }\n }\n\n if (spatialNode && stereoNode) {\n this._rootNode = new GainNode(this._owner.engine.audioContext);\n this._rootNode.connect((spatialNode as _SpatialWebAudioSubNode).outNode);\n this._rootNode.connect((stereoNode as _StereoWebAudioSubNode).outNode);\n } else {\n this._rootNode?.disconnect();\n this._rootNode = null;\n }\n\n let inSubNode: Nullable<IWebAudioSubNode> = null;\n\n let inNode: Nullable<AudioNode> = null;\n\n if (this._rootNode) {\n inNode = this._rootNode;\n } else {\n if (spatialNode) {\n inSubNode = spatialNode as _SpatialWebAudioSubNode;\n } else if (stereoNode) {\n inSubNode = stereoNode as _StereoWebAudioSubNode;\n } else if (volumeNode) {\n inSubNode = volumeNode as _VolumeWebAudioSubNode;\n }\n\n inNode = inSubNode?.node ?? null;\n }\n\n if (this._inNode !== inNode) {\n // Disconnect the wrapped upstream WebAudio nodes from the old wrapped WebAudio node.\n // The wrapper nodes are unaware of this change.\n if (this._inNode && this._upstreamNodes) {\n const it = this._upstreamNodes.values();\n for (let next = it.next(); !next.done; next = it.next()) {\n (next.value as IWebAudioOutNode).outNode?.disconnect(this._inNode);\n }\n }\n\n this._inNode = inNode;\n\n // Connect the wrapped upstream WebAudio nodes to the new wrapped WebAudio node.\n // The wrapper nodes are unaware of this change.\n if (inNode && this._upstreamNodes) {\n const it = this._upstreamNodes.values();\n for (let next = it.next(); !next.done; next = it.next()) {\n (next.value as IWebAudioOutNode).outNode?.connect(inNode);\n }\n }\n }\n }\n}\n"]}
1
+ {"version":3,"file":"webAudioBusAndSoundSubGraph.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../../types\";\nimport type { AbstractAudioNode } from \"../../abstractAudio/abstractAudioNode\";\nimport type { _AbstractAudioSubNode } from \"../../abstractAudio/subNodes/abstractAudioSubNode\";\nimport { AudioSubNode } from \"../../abstractAudio/subNodes/audioSubNode\";\nimport { _GetSpatialAudioSubNode } from \"../../abstractAudio/subNodes/spatialAudioSubNode\";\nimport { _GetStereoAudioSubNode } from \"../../abstractAudio/subNodes/stereoAudioSubNode\";\nimport type { IVolumeAudioOptions } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport { _GetVolumeAudioSubNode } from \"../../abstractAudio/subNodes/volumeAudioSubNode\";\nimport type { ISpatialAudioOptions } from \"../../abstractAudio/subProperties/abstractSpatialAudio\";\nimport { _HasSpatialAudioOptions } from \"../../abstractAudio/subProperties/abstractSpatialAudio\";\nimport type { IStereoAudioOptions } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport { _HasStereoAudioOptions } from \"../../abstractAudio/subProperties/abstractStereoAudio\";\nimport type { IWebAudioOutNode, IWebAudioSubNode } from \"../webAudioNode\";\nimport type { _SpatialWebAudioSubNode } from \"./spatialWebAudioSubNode\";\nimport { _CreateSpatialAudioSubNodeAsync } from \"./spatialWebAudioSubNode\";\nimport type { _StereoWebAudioSubNode } from \"./stereoWebAudioSubNode\";\nimport { _CreateStereoAudioSubNodeAsync } from \"./stereoWebAudioSubNode\";\nimport type { _VolumeWebAudioSubNode } from \"./volumeWebAudioSubNode\";\nimport { _WebAudioBaseSubGraph } from \"./webAudioBaseSubGraph\";\n\n/** @internal */\nexport interface IWebAudioBusAndSoundSubGraphOptions extends ISpatialAudioOptions, IStereoAudioOptions, IVolumeAudioOptions {}\n\n/** @internal */\nexport abstract class _WebAudioBusAndSoundSubGraph extends _WebAudioBaseSubGraph {\n private _rootNode: Nullable<GainNode> = null;\n protected abstract readonly _upstreamNodes: Nullable<Set<AbstractAudioNode>>;\n\n protected _inputNode: Nullable<AudioNode> = null;\n\n /** @internal */\n public override async init(options: Partial<IWebAudioBusAndSoundSubGraphOptions>): Promise<void> {\n await super.init(options);\n\n let hasSpatialOptions = false;\n let hasStereoOptions = false;\n\n if ((hasSpatialOptions = _HasSpatialAudioOptions(options))) {\n await this.createAndAddSubNode(AudioSubNode.SPATIAL);\n }\n if ((hasStereoOptions = _HasStereoAudioOptions(options))) {\n await this.createAndAddSubNode(AudioSubNode.STEREO);\n }\n\n await this._createSubNodePromisesResolved();\n\n if (hasSpatialOptions) {\n _GetSpatialAudioSubNode(this)?.setOptions(options);\n }\n if (hasStereoOptions) {\n _GetStereoAudioSubNode(this)?.setOptions(options);\n }\n }\n\n /** @internal */\n public override get _inNode(): Nullable<AudioNode> {\n return this._inputNode;\n }\n\n protected override _createSubNode(name: string): Promise<_AbstractAudioSubNode> {\n try {\n const node = super._createSubNode(name);\n return node;\n } catch (e) {}\n\n switch (name) {\n case AudioSubNode.SPATIAL:\n return _CreateSpatialAudioSubNodeAsync(this._owner.engine);\n case AudioSubNode.STEREO:\n return _CreateStereoAudioSubNodeAsync(this._owner.engine);\n default:\n throw new Error(`Unknown subnode name: ${name}`);\n }\n }\n\n protected override _onSubNodesChanged(): void {\n super._onSubNodesChanged();\n\n const spatialNode = _GetSpatialAudioSubNode(this);\n const stereoNode = _GetStereoAudioSubNode(this);\n const volumeNode = _GetVolumeAudioSubNode(this);\n\n if (spatialNode && spatialNode.getClassName() !== \"_SpatialWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n if (stereoNode && stereoNode.getClassName() !== \"_StereoWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n if (volumeNode && volumeNode.getClassName() !== \"_VolumeWebAudioSubNode\") {\n throw new Error(\"Not a WebAudio subnode.\");\n }\n\n if (spatialNode) {\n spatialNode.disconnectAll();\n\n if (volumeNode) {\n spatialNode.connect(volumeNode);\n }\n }\n\n if (stereoNode) {\n stereoNode.disconnectAll();\n\n if (volumeNode) {\n stereoNode.connect(volumeNode);\n }\n }\n\n if (spatialNode && stereoNode) {\n this._rootNode = new GainNode(this._owner.engine._audioContext);\n this._rootNode.connect((spatialNode as _SpatialWebAudioSubNode)._outNode);\n this._rootNode.connect((stereoNode as _StereoWebAudioSubNode)._outNode);\n } else {\n this._rootNode?.disconnect();\n this._rootNode = null;\n }\n\n let inSubNode: Nullable<IWebAudioSubNode> = null;\n\n let inNode: Nullable<AudioNode> = null;\n\n if (this._rootNode) {\n inNode = this._rootNode;\n } else {\n if (spatialNode) {\n inSubNode = spatialNode as _SpatialWebAudioSubNode;\n } else if (stereoNode) {\n inSubNode = stereoNode as _StereoWebAudioSubNode;\n } else if (volumeNode) {\n inSubNode = volumeNode as _VolumeWebAudioSubNode;\n }\n\n inNode = inSubNode?.node ?? null;\n }\n\n if (this._inputNode !== inNode) {\n // Disconnect the wrapped upstream WebAudio nodes from the old wrapped WebAudio node.\n // The wrapper nodes are unaware of this change.\n if (this._inputNode && this._upstreamNodes) {\n const it = this._upstreamNodes.values();\n for (let next = it.next(); !next.done; next = it.next()) {\n (next.value as IWebAudioOutNode)._outNode?.disconnect(this._inputNode);\n }\n }\n\n this._inputNode = inNode;\n\n // Connect the wrapped upstream WebAudio nodes to the new wrapped WebAudio node.\n // The wrapper nodes are unaware of this change.\n if (inNode && this._upstreamNodes) {\n const it = this._upstreamNodes.values();\n for (let next = it.next(); !next.done; next = it.next()) {\n (next.value as IWebAudioOutNode)._outNode?.connect(inNode);\n }\n }\n }\n }\n}\n"]}
@@ -26,7 +26,8 @@ class _SpatialWebAudioListener extends _SpatialAudioListener {
26
26
  this.rotation = Vector3.Zero();
27
27
  /** @internal */
28
28
  this.rotationQuaternion = new Quaternion();
29
- this._audioContext = engine.audioContext;
29
+ this.engine = engine;
30
+ this._audioContext = engine._audioContext;
30
31
  this._updaterComponent = new _SpatialWebAudioUpdaterComponent(this, autoUpdate, minUpdateTime);
31
32
  }
32
33
  /** @internal */
@@ -59,9 +60,9 @@ class _SpatialWebAudioListener extends _SpatialAudioListener {
59
60
  return;
60
61
  }
61
62
  const listener = this._audioContext.listener;
62
- listener.positionX.value = this.position.x;
63
- listener.positionY.value = this.position.y;
64
- listener.positionZ.value = this.position.z;
63
+ this.engine._setAudioParam(listener.positionX, this.position.x);
64
+ this.engine._setAudioParam(listener.positionY, this.position.y);
65
+ this.engine._setAudioParam(listener.positionZ, this.position.z);
65
66
  this._lastPosition.copyFrom(this.position);
66
67
  }
67
68
  /** @internal */
@@ -81,13 +82,13 @@ class _SpatialWebAudioListener extends _SpatialAudioListener {
81
82
  const listener = this._audioContext.listener;
82
83
  // NB: The WebAudio API is right-handed.
83
84
  Vector3.TransformNormalToRef(Vector3.RightHandedForwardReadOnly, TmpMatrix, TmpVector);
84
- listener.forwardX.value = TmpVector.x;
85
- listener.forwardY.value = TmpVector.y;
86
- listener.forwardZ.value = TmpVector.z;
85
+ this.engine._setAudioParam(listener.forwardX, TmpVector.x);
86
+ this.engine._setAudioParam(listener.forwardY, TmpVector.y);
87
+ this.engine._setAudioParam(listener.forwardZ, TmpVector.z);
87
88
  Vector3.TransformNormalToRef(Vector3.Up(), TmpMatrix, TmpVector);
88
- listener.upX.value = TmpVector.x;
89
- listener.upY.value = TmpVector.y;
90
- listener.upZ.value = TmpVector.z;
89
+ this.engine._setAudioParam(listener.upX, TmpVector.x);
90
+ this.engine._setAudioParam(listener.upY, TmpVector.y);
91
+ this.engine._setAudioParam(listener.upZ, TmpVector.z);
91
92
  }
92
93
  }
93
94
  //# sourceMappingURL=spatialWebAudioListener.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"spatialWebAudioListener.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subProperties/spatialWebAudioListener.ts"],"names":[],"mappings":"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","sourcesContent":["import { Matrix, Quaternion, Vector3 } from \"../../../Maths/math.vector\";\nimport { _SpatialAudioListener } from \"../../abstractAudio/subProperties/spatialAudioListener\";\nimport { _SpatialWebAudioUpdaterComponent } from \"../components/spatialWebAudioUpdaterComponent\";\nimport type { _WebAudioEngine } from \"../webAudioEngine\";\n\nconst TmpMatrix = Matrix.Zero();\nconst TmpQuaternion = new Quaternion();\nconst TmpVector = Vector3.Zero();\n\n/** @internal */\nexport function _CreateSpatialAudioListener(engine: _WebAudioEngine, autoUpdate: boolean, minUpdateTime: number): _SpatialAudioListener {\n return new _SpatialWebAudioListener(engine, autoUpdate, minUpdateTime);\n}\n\n/**\n * This sub property is not backed by a sub node and all properties are set directly on the audio context listener.\n *\n * @internal\n */\nclass _SpatialWebAudioListener extends _SpatialAudioListener {\n private _audioContext: AudioContext;\n private _lastPosition: Vector3 = Vector3.Zero();\n private _lastRotation: Vector3 = Vector3.Zero();\n private _lastRotationQuaternion: Quaternion = new Quaternion();\n private _updaterComponent: _SpatialWebAudioUpdaterComponent;\n\n /** @internal */\n public readonly position: Vector3 = Vector3.Zero();\n /** @internal */\n public readonly rotation: Vector3 = Vector3.Zero();\n /** @internal */\n public readonly rotationQuaternion: Quaternion = new Quaternion();\n\n /** @internal */\n public constructor(engine: _WebAudioEngine, autoUpdate: boolean, minUpdateTime: number) {\n super();\n\n this._audioContext = engine.audioContext;\n this._updaterComponent = new _SpatialWebAudioUpdaterComponent(this, autoUpdate, minUpdateTime);\n }\n\n /** @internal */\n public get minUpdateTime(): number {\n return this._updaterComponent.minUpdateTime;\n }\n\n /** @internal */\n public set minUpdateTime(value: number) {\n this._updaterComponent.minUpdateTime = value;\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._updaterComponent.dispose();\n this._updaterComponent = null!;\n }\n\n /** @internal */\n public update(): void {\n if (this.isAttached) {\n this._attacherComponent?.update();\n } else {\n this._updatePosition();\n this._updateRotation();\n }\n }\n\n /** @internal */\n public _updatePosition(): void {\n if (this._lastPosition.equalsWithEpsilon(this.position)) {\n return;\n }\n\n const listener = this._audioContext.listener;\n listener.positionX.value = this.position.x;\n listener.positionY.value = this.position.y;\n listener.positionZ.value = this.position.z;\n\n this._lastPosition.copyFrom(this.position);\n }\n\n /** @internal */\n public _updateRotation(): void {\n if (!this._lastRotationQuaternion.equalsWithEpsilon(this.rotationQuaternion)) {\n TmpQuaternion.copyFrom(this.rotationQuaternion);\n this._lastRotationQuaternion.copyFrom(this.rotationQuaternion);\n } else if (!this._lastRotation.equalsWithEpsilon(this.rotation)) {\n Quaternion.FromEulerAnglesToRef(this.rotation.x, this.rotation.y, this.rotation.z, TmpQuaternion);\n this._lastRotation.copyFrom(this.rotation);\n } else {\n return;\n }\n\n Matrix.FromQuaternionToRef(TmpQuaternion, TmpMatrix);\n const listener = this._audioContext.listener;\n\n // NB: The WebAudio API is right-handed.\n Vector3.TransformNormalToRef(Vector3.RightHandedForwardReadOnly, TmpMatrix, TmpVector);\n listener.forwardX.value = TmpVector.x;\n listener.forwardY.value = TmpVector.y;\n listener.forwardZ.value = TmpVector.z;\n\n Vector3.TransformNormalToRef(Vector3.Up(), TmpMatrix, TmpVector);\n listener.upX.value = TmpVector.x;\n listener.upY.value = TmpVector.y;\n listener.upZ.value = TmpVector.z;\n }\n}\n"]}
1
+ {"version":3,"file":"spatialWebAudioListener.js","sourceRoot":"","sources":["../../../../../../dev/core/src/AudioV2/webAudio/subProperties/spatialWebAudioListener.ts"],"names":[],"mappings":"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","sourcesContent":["import { Matrix, Quaternion, Vector3 } from \"../../../Maths/math.vector\";\nimport { _SpatialAudioListener } from \"../../abstractAudio/subProperties/spatialAudioListener\";\nimport { _SpatialWebAudioUpdaterComponent } from \"../components/spatialWebAudioUpdaterComponent\";\nimport type { _WebAudioEngine } from \"../webAudioEngine\";\n\nconst TmpMatrix = Matrix.Zero();\nconst TmpQuaternion = new Quaternion();\nconst TmpVector = Vector3.Zero();\n\n/** @internal */\nexport function _CreateSpatialAudioListener(engine: _WebAudioEngine, autoUpdate: boolean, minUpdateTime: number): _SpatialAudioListener {\n return new _SpatialWebAudioListener(engine, autoUpdate, minUpdateTime);\n}\n\n/**\n * This sub property is not backed by a sub node and all properties are set directly on the audio context listener.\n *\n * @internal\n */\nclass _SpatialWebAudioListener extends _SpatialAudioListener {\n private _audioContext: AudioContext;\n private _lastPosition: Vector3 = Vector3.Zero();\n private _lastRotation: Vector3 = Vector3.Zero();\n private _lastRotationQuaternion: Quaternion = new Quaternion();\n private _updaterComponent: _SpatialWebAudioUpdaterComponent;\n\n /** @internal */\n public readonly engine: _WebAudioEngine;\n\n /** @internal */\n public readonly position: Vector3 = Vector3.Zero();\n /** @internal */\n public readonly rotation: Vector3 = Vector3.Zero();\n /** @internal */\n public readonly rotationQuaternion: Quaternion = new Quaternion();\n\n /** @internal */\n public constructor(engine: _WebAudioEngine, autoUpdate: boolean, minUpdateTime: number) {\n super();\n\n this.engine = engine;\n\n this._audioContext = engine._audioContext;\n this._updaterComponent = new _SpatialWebAudioUpdaterComponent(this, autoUpdate, minUpdateTime);\n }\n\n /** @internal */\n public get minUpdateTime(): number {\n return this._updaterComponent.minUpdateTime;\n }\n\n /** @internal */\n public set minUpdateTime(value: number) {\n this._updaterComponent.minUpdateTime = value;\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._updaterComponent.dispose();\n this._updaterComponent = null!;\n }\n\n /** @internal */\n public update(): void {\n if (this.isAttached) {\n this._attacherComponent?.update();\n } else {\n this._updatePosition();\n this._updateRotation();\n }\n }\n\n /** @internal */\n public _updatePosition(): void {\n if (this._lastPosition.equalsWithEpsilon(this.position)) {\n return;\n }\n\n const listener = this._audioContext.listener;\n\n this.engine._setAudioParam(listener.positionX, this.position.x);\n this.engine._setAudioParam(listener.positionY, this.position.y);\n this.engine._setAudioParam(listener.positionZ, this.position.z);\n\n this._lastPosition.copyFrom(this.position);\n }\n\n /** @internal */\n public _updateRotation(): void {\n if (!this._lastRotationQuaternion.equalsWithEpsilon(this.rotationQuaternion)) {\n TmpQuaternion.copyFrom(this.rotationQuaternion);\n this._lastRotationQuaternion.copyFrom(this.rotationQuaternion);\n } else if (!this._lastRotation.equalsWithEpsilon(this.rotation)) {\n Quaternion.FromEulerAnglesToRef(this.rotation.x, this.rotation.y, this.rotation.z, TmpQuaternion);\n this._lastRotation.copyFrom(this.rotation);\n } else {\n return;\n }\n\n Matrix.FromQuaternionToRef(TmpQuaternion, TmpMatrix);\n const listener = this._audioContext.listener;\n\n // NB: The WebAudio API is right-handed.\n Vector3.TransformNormalToRef(Vector3.RightHandedForwardReadOnly, TmpMatrix, TmpVector);\n this.engine._setAudioParam(listener.forwardX, TmpVector.x);\n this.engine._setAudioParam(listener.forwardY, TmpVector.y);\n this.engine._setAudioParam(listener.forwardZ, TmpVector.z);\n\n Vector3.TransformNormalToRef(Vector3.Up(), TmpMatrix, TmpVector);\n this.engine._setAudioParam(listener.upX, TmpVector.x);\n this.engine._setAudioParam(listener.upY, TmpVector.y);\n this.engine._setAudioParam(listener.upZ, TmpVector.z);\n }\n}\n"]}
@@ -5,7 +5,7 @@ import type { _SpatialAudio } from "../abstractAudio/subProperties/spatialAudio"
5
5
  import { _StereoAudio } from "../abstractAudio/subProperties/stereoAudio";
6
6
  import { _WebAudioBusAndSoundSubGraph } from "./subNodes/webAudioBusAndSoundSubGraph";
7
7
  import type { _WebAudioEngine } from "./webAudioEngine";
8
- import type { IWebAudioSuperNode } from "./webAudioNode";
8
+ import type { IWebAudioInNode, IWebAudioSuperNode } from "./webAudioNode";
9
9
  /** @internal */
10
10
  export declare class _WebAudioBus extends AudioBus implements IWebAudioSuperNode {
11
11
  private _spatial;
@@ -16,23 +16,23 @@ export declare class _WebAudioBus extends AudioBus implements IWebAudioSuperNode
16
16
  /** @internal */
17
17
  readonly engine: _WebAudioEngine;
18
18
  /** @internal */
19
- readonly audioContext: AudioContext;
20
- /** @internal */
21
19
  constructor(name: string, engine: _WebAudioEngine, options: Partial<IAudioBusOptions>);
22
20
  /** @internal */
23
- init(options: Partial<IAudioBusOptions>): Promise<void>;
21
+ _init(options: Partial<IAudioBusOptions>): Promise<void>;
24
22
  /** @internal */
25
23
  dispose(): void;
26
24
  /** @internal */
27
- get inNode(): Nullable<AudioNode>;
25
+ get _inNode(): Nullable<AudioNode>;
28
26
  /** @internal */
29
- get outNode(): Nullable<AudioNode>;
27
+ get _outNode(): Nullable<AudioNode>;
30
28
  /** @internal */
31
29
  get spatial(): _SpatialAudio;
32
30
  /** @internal */
33
31
  get stereo(): _StereoAudio;
34
32
  /** @internal */
35
33
  getClassName(): string;
34
+ protected _connect(node: IWebAudioInNode): boolean;
35
+ protected _disconnect(node: IWebAudioInNode): boolean;
36
36
  private _initSpatialProperty;
37
37
  private static _SubGraph;
38
38
  }
@@ -19,10 +19,9 @@ export class _WebAudioBus extends AudioBus {
19
19
  this._spatialMinUpdateTime = options.spatialMinUpdateTime;
20
20
  }
21
21
  this._subGraph = new _WebAudioBus._SubGraph(this);
22
- this.audioContext = engine.audioContext;
23
22
  }
24
23
  /** @internal */
25
- async init(options) {
24
+ async _init(options) {
26
25
  if (options.outBus) {
27
26
  this.outBus = options.outBus;
28
27
  }
@@ -34,22 +33,22 @@ export class _WebAudioBus extends AudioBus {
34
33
  if (_HasSpatialAudioOptions(options)) {
35
34
  this._initSpatialProperty();
36
35
  }
37
- this.engine.addNode(this);
36
+ this.engine._addNode(this);
38
37
  }
39
38
  /** @internal */
40
39
  dispose() {
41
40
  super.dispose();
42
41
  this._spatial = null;
43
42
  this._stereo = null;
44
- this.engine.removeNode(this);
43
+ this.engine._removeNode(this);
45
44
  }
46
45
  /** @internal */
47
- get inNode() {
48
- return this._subGraph.inNode;
46
+ get _inNode() {
47
+ return this._subGraph._inNode;
49
48
  }
50
49
  /** @internal */
51
- get outNode() {
52
- return this._subGraph.outNode;
50
+ get _outNode() {
51
+ return this._subGraph._outNode;
53
52
  }
54
53
  /** @internal */
55
54
  get spatial() {
@@ -66,6 +65,26 @@ export class _WebAudioBus extends AudioBus {
66
65
  getClassName() {
67
66
  return "_WebAudioBus";
68
67
  }
68
+ _connect(node) {
69
+ const connected = super._connect(node);
70
+ if (!connected) {
71
+ return false;
72
+ }
73
+ if (node._inNode) {
74
+ this._outNode?.connect(node._inNode);
75
+ }
76
+ return true;
77
+ }
78
+ _disconnect(node) {
79
+ const disconnected = super._disconnect(node);
80
+ if (!disconnected) {
81
+ return false;
82
+ }
83
+ if (node._inNode) {
84
+ this._outNode?.disconnect(node._inNode);
85
+ }
86
+ return true;
87
+ }
69
88
  _initSpatialProperty() {
70
89
  if (!this._spatial) {
71
90
  this._spatial = new _SpatialWebAudio(this._subGraph, this._spatialAutoUpdate, this._spatialMinUpdateTime);
@@ -1 +1 @@
1
- {"version":3,"file":"webAudioBus.js","sourceRoot":"","sources":["../../../../../dev/core/src/AudioV2/webAudio/webAudioBus.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"core/types\";\nimport type { AbstractAudioNode } from \"../abstractAudio/abstractAudioNode\";\nimport type { IAudioBusOptions } from \"../abstractAudio/audioBus\";\nimport { AudioBus } from \"../abstractAudio/audioBus\";\nimport { _HasSpatialAudioOptions } from \"../abstractAudio/subProperties/abstractSpatialAudio\";\nimport type { _SpatialAudio } from \"../abstractAudio/subProperties/spatialAudio\";\nimport { _StereoAudio } from \"../abstractAudio/subProperties/stereoAudio\";\nimport { _WebAudioBusAndSoundSubGraph } from \"./subNodes/webAudioBusAndSoundSubGraph\";\nimport { _SpatialWebAudio } from \"./subProperties/spatialWebAudio\";\nimport type { _WebAudioEngine } from \"./webAudioEngine\";\nimport type { IWebAudioSuperNode } from \"./webAudioNode\";\n\n/** @internal */\nexport class _WebAudioBus extends AudioBus implements IWebAudioSuperNode {\n private _spatial: Nullable<_SpatialAudio> = null;\n private readonly _spatialAutoUpdate: boolean = true;\n private readonly _spatialMinUpdateTime: number = 0;\n private _stereo: Nullable<_StereoAudio> = null;\n\n protected _subGraph: _WebAudioBusAndSoundSubGraph;\n\n /** @internal */\n public override readonly engine: _WebAudioEngine;\n\n /** @internal */\n public readonly audioContext: AudioContext;\n\n /** @internal */\n public constructor(name: string, engine: _WebAudioEngine, options: Partial<IAudioBusOptions>) {\n super(name, engine);\n\n if (typeof options.spatialAutoUpdate === \"boolean\") {\n this._spatialAutoUpdate = options.spatialAutoUpdate;\n }\n\n if (typeof options.spatialMinUpdateTime === \"number\") {\n this._spatialMinUpdateTime = options.spatialMinUpdateTime;\n }\n\n this._subGraph = new _WebAudioBus._SubGraph(this);\n\n this.audioContext = engine.audioContext;\n }\n\n /** @internal */\n public async init(options: Partial<IAudioBusOptions>): Promise<void> {\n if (options.outBus) {\n this.outBus = options.outBus;\n } else {\n await this.engine.isReadyPromise;\n this.outBus = this.engine.defaultMainBus;\n }\n\n await this._subGraph.init(options);\n\n if (_HasSpatialAudioOptions(options)) {\n this._initSpatialProperty();\n }\n\n this.engine.addNode(this);\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._spatial = null;\n this._stereo = null;\n\n this.engine.removeNode(this);\n }\n\n /** @internal */\n public get inNode() {\n return this._subGraph.inNode;\n }\n\n /** @internal */\n public get outNode() {\n return this._subGraph.outNode;\n }\n\n /** @internal */\n public override get spatial(): _SpatialAudio {\n if (this._spatial) {\n return this._spatial;\n }\n return this._initSpatialProperty();\n }\n\n /** @internal */\n public override get stereo(): _StereoAudio {\n return this._stereo ?? (this._stereo = new _StereoAudio(this._subGraph));\n }\n\n /** @internal */\n public getClassName(): string {\n return \"_WebAudioBus\";\n }\n\n private _initSpatialProperty(): _SpatialAudio {\n if (!this._spatial) {\n this._spatial = new _SpatialWebAudio(this._subGraph, this._spatialAutoUpdate, this._spatialMinUpdateTime);\n }\n\n return this._spatial;\n }\n\n private static _SubGraph = class extends _WebAudioBusAndSoundSubGraph {\n protected override _owner: _WebAudioBus;\n\n protected get _downstreamNodes(): Nullable<Set<AbstractAudioNode>> {\n return this._owner._downstreamNodes ?? null;\n }\n\n protected get _upstreamNodes(): Nullable<Set<AbstractAudioNode>> {\n return this._owner._upstreamNodes ?? null;\n }\n };\n}\n"]}
1
+ {"version":3,"file":"webAudioBus.js","sourceRoot":"","sources":["../../../../../dev/core/src/AudioV2/webAudio/webAudioBus.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"core/types\";\nimport type { AbstractAudioNode } from \"../abstractAudio/abstractAudioNode\";\nimport type { IAudioBusOptions } from \"../abstractAudio/audioBus\";\nimport { AudioBus } from \"../abstractAudio/audioBus\";\nimport { _HasSpatialAudioOptions } from \"../abstractAudio/subProperties/abstractSpatialAudio\";\nimport type { _SpatialAudio } from \"../abstractAudio/subProperties/spatialAudio\";\nimport { _StereoAudio } from \"../abstractAudio/subProperties/stereoAudio\";\nimport { _WebAudioBusAndSoundSubGraph } from \"./subNodes/webAudioBusAndSoundSubGraph\";\nimport { _SpatialWebAudio } from \"./subProperties/spatialWebAudio\";\nimport type { _WebAudioEngine } from \"./webAudioEngine\";\nimport type { IWebAudioInNode, IWebAudioSuperNode } from \"./webAudioNode\";\n\n/** @internal */\nexport class _WebAudioBus extends AudioBus implements IWebAudioSuperNode {\n private _spatial: Nullable<_SpatialAudio> = null;\n private readonly _spatialAutoUpdate: boolean = true;\n private readonly _spatialMinUpdateTime: number = 0;\n private _stereo: Nullable<_StereoAudio> = null;\n\n protected _subGraph: _WebAudioBusAndSoundSubGraph;\n\n /** @internal */\n public override readonly engine: _WebAudioEngine;\n\n /** @internal */\n public constructor(name: string, engine: _WebAudioEngine, options: Partial<IAudioBusOptions>) {\n super(name, engine);\n\n if (typeof options.spatialAutoUpdate === \"boolean\") {\n this._spatialAutoUpdate = options.spatialAutoUpdate;\n }\n\n if (typeof options.spatialMinUpdateTime === \"number\") {\n this._spatialMinUpdateTime = options.spatialMinUpdateTime;\n }\n\n this._subGraph = new _WebAudioBus._SubGraph(this);\n }\n\n /** @internal */\n public async _init(options: Partial<IAudioBusOptions>): Promise<void> {\n if (options.outBus) {\n this.outBus = options.outBus;\n } else {\n await this.engine.isReadyPromise;\n this.outBus = this.engine.defaultMainBus;\n }\n\n await this._subGraph.init(options);\n\n if (_HasSpatialAudioOptions(options)) {\n this._initSpatialProperty();\n }\n\n this.engine._addNode(this);\n }\n\n /** @internal */\n public override dispose(): void {\n super.dispose();\n\n this._spatial = null;\n this._stereo = null;\n\n this.engine._removeNode(this);\n }\n\n /** @internal */\n public get _inNode() {\n return this._subGraph._inNode;\n }\n\n /** @internal */\n public get _outNode() {\n return this._subGraph._outNode;\n }\n\n /** @internal */\n public override get spatial(): _SpatialAudio {\n if (this._spatial) {\n return this._spatial;\n }\n return this._initSpatialProperty();\n }\n\n /** @internal */\n public override get stereo(): _StereoAudio {\n return this._stereo ?? (this._stereo = new _StereoAudio(this._subGraph));\n }\n\n /** @internal */\n public getClassName(): string {\n return \"_WebAudioBus\";\n }\n\n protected override _connect(node: IWebAudioInNode): boolean {\n const connected = super._connect(node);\n\n if (!connected) {\n return false;\n }\n\n if (node._inNode) {\n this._outNode?.connect(node._inNode);\n }\n\n return true;\n }\n\n protected override _disconnect(node: IWebAudioInNode): boolean {\n const disconnected = super._disconnect(node);\n\n if (!disconnected) {\n return false;\n }\n\n if (node._inNode) {\n this._outNode?.disconnect(node._inNode);\n }\n\n return true;\n }\n\n private _initSpatialProperty(): _SpatialAudio {\n if (!this._spatial) {\n this._spatial = new _SpatialWebAudio(this._subGraph, this._spatialAutoUpdate, this._spatialMinUpdateTime);\n }\n\n return this._spatial;\n }\n\n private static _SubGraph = class extends _WebAudioBusAndSoundSubGraph {\n protected override _owner: _WebAudioBus;\n\n protected get _downstreamNodes(): Nullable<Set<AbstractAudioNode>> {\n return this._owner._downstreamNodes ?? null;\n }\n\n protected get _upstreamNodes(): Nullable<Set<AbstractAudioNode>> {\n return this._owner._upstreamNodes ?? null;\n }\n };\n}\n"]}