@babylonjs/core 5.0.0-beta.3 → 5.0.0-beta.7

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 (675) hide show
  1. package/Actions/actionManager.d.ts +1 -1
  2. package/Actions/actionManager.js +5 -1
  3. package/Actions/actionManager.js.map +1 -1
  4. package/Audio/analyser.d.ts +2 -1
  5. package/Audio/analyser.js +5 -0
  6. package/Audio/analyser.js.map +1 -1
  7. package/Audio/audioSceneComponent.d.ts +1 -1
  8. package/Audio/audioSceneComponent.js +5 -0
  9. package/Audio/audioSceneComponent.js.map +1 -1
  10. package/Audio/sound.d.ts +1 -1
  11. package/Audio/sound.js +8 -1
  12. package/Audio/sound.js.map +1 -1
  13. package/Audio/soundTrack.d.ts +2 -1
  14. package/Audio/soundTrack.js +5 -0
  15. package/Audio/soundTrack.js.map +1 -1
  16. package/BakedVertexAnimation/bakedVertexAnimationManager.d.ts +1 -1
  17. package/BakedVertexAnimation/bakedVertexAnimationManager.js +5 -0
  18. package/BakedVertexAnimation/bakedVertexAnimationManager.js.map +1 -1
  19. package/Behaviors/Meshes/baseSixDofDragBehavior.js +29 -26
  20. package/Behaviors/Meshes/baseSixDofDragBehavior.js.map +1 -1
  21. package/Behaviors/Meshes/pointerDragBehavior.js +2 -0
  22. package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
  23. package/Bones/bone.d.ts +2 -1
  24. package/Bones/bone.js +28 -18
  25. package/Bones/bone.js.map +1 -1
  26. package/Bones/skeleton.js +3 -3
  27. package/Bones/skeleton.js.map +1 -1
  28. package/Buffers/buffer.d.ts +4 -0
  29. package/Buffers/buffer.js +13 -3
  30. package/Buffers/buffer.js.map +1 -1
  31. package/Cameras/Inputs/freeCameraMouseInput.d.ts +1 -0
  32. package/Cameras/Inputs/freeCameraMouseInput.js +6 -3
  33. package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
  34. package/Cameras/Inputs/freeCameraTouchInput.js +2 -4
  35. package/Cameras/Inputs/freeCameraTouchInput.js.map +1 -1
  36. package/Cameras/Stereoscopic/anaglyphArcRotateCamera.d.ts +1 -1
  37. package/Cameras/Stereoscopic/anaglyphArcRotateCamera.js.map +1 -1
  38. package/Cameras/Stereoscopic/anaglyphFreeCamera.d.ts +1 -1
  39. package/Cameras/Stereoscopic/anaglyphFreeCamera.js.map +1 -1
  40. package/Cameras/Stereoscopic/anaglyphGamepadCamera.d.ts +1 -1
  41. package/Cameras/Stereoscopic/anaglyphGamepadCamera.js.map +1 -1
  42. package/Cameras/Stereoscopic/anaglyphUniversalCamera.d.ts +1 -1
  43. package/Cameras/Stereoscopic/anaglyphUniversalCamera.js.map +1 -1
  44. package/Cameras/Stereoscopic/stereoscopicArcRotateCamera.d.ts +1 -1
  45. package/Cameras/Stereoscopic/stereoscopicArcRotateCamera.js.map +1 -1
  46. package/Cameras/Stereoscopic/stereoscopicFreeCamera.d.ts +1 -1
  47. package/Cameras/Stereoscopic/stereoscopicFreeCamera.js.map +1 -1
  48. package/Cameras/Stereoscopic/stereoscopicGamepadCamera.d.ts +1 -1
  49. package/Cameras/Stereoscopic/stereoscopicGamepadCamera.js.map +1 -1
  50. package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.d.ts +1 -1
  51. package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.js.map +1 -1
  52. package/Cameras/Stereoscopic/stereoscopicUniversalCamera.d.ts +1 -1
  53. package/Cameras/Stereoscopic/stereoscopicUniversalCamera.js.map +1 -1
  54. package/Cameras/VR/vrDeviceOrientationArcRotateCamera.d.ts +1 -1
  55. package/Cameras/VR/vrDeviceOrientationArcRotateCamera.js.map +1 -1
  56. package/Cameras/VR/vrDeviceOrientationFreeCamera.d.ts +1 -1
  57. package/Cameras/VR/vrDeviceOrientationFreeCamera.js.map +1 -1
  58. package/Cameras/VR/vrDeviceOrientationGamepadCamera.d.ts +1 -1
  59. package/Cameras/VR/vrDeviceOrientationGamepadCamera.js.map +1 -1
  60. package/Cameras/VR/vrExperienceHelper.d.ts +1 -0
  61. package/Cameras/VR/vrExperienceHelper.js +1 -0
  62. package/Cameras/VR/vrExperienceHelper.js.map +1 -1
  63. package/Cameras/VR/webVRCamera.d.ts +2 -1
  64. package/Cameras/VR/webVRCamera.js +3 -2
  65. package/Cameras/VR/webVRCamera.js.map +1 -1
  66. package/Cameras/arcRotateCamera.d.ts +1 -1
  67. package/Cameras/arcRotateCamera.js.map +1 -1
  68. package/Cameras/camera.d.ts +1 -1
  69. package/Cameras/camera.js +1 -1
  70. package/Cameras/camera.js.map +1 -1
  71. package/Cameras/deviceOrientationCamera.d.ts +1 -1
  72. package/Cameras/deviceOrientationCamera.js.map +1 -1
  73. package/Cameras/flyCamera.d.ts +1 -1
  74. package/Cameras/flyCamera.js.map +1 -1
  75. package/Cameras/followCamera.d.ts +1 -1
  76. package/Cameras/followCamera.js.map +1 -1
  77. package/Cameras/freeCamera.d.ts +1 -1
  78. package/Cameras/freeCamera.js.map +1 -1
  79. package/Cameras/gamepadCamera.d.ts +1 -1
  80. package/Cameras/gamepadCamera.js.map +1 -1
  81. package/Cameras/targetCamera.d.ts +1 -1
  82. package/Cameras/targetCamera.js.map +1 -1
  83. package/Cameras/touchCamera.d.ts +1 -1
  84. package/Cameras/touchCamera.js.map +1 -1
  85. package/Cameras/universalCamera.d.ts +1 -1
  86. package/Cameras/universalCamera.js.map +1 -1
  87. package/Cameras/virtualJoysticksCamera.d.ts +1 -1
  88. package/Cameras/virtualJoysticksCamera.js.map +1 -1
  89. package/Collisions/collider.d.ts +1 -1
  90. package/Collisions/collider.js +48 -2
  91. package/Collisions/collider.js.map +1 -1
  92. package/Compute/computeEffect.js +2 -2
  93. package/Compute/computeEffect.js.map +1 -1
  94. package/Culling/Octrees/octreeSceneComponent.d.ts +1 -1
  95. package/Culling/Octrees/octreeSceneComponent.js +5 -0
  96. package/Culling/Octrees/octreeSceneComponent.js.map +1 -1
  97. package/Culling/ray.d.ts +6 -4
  98. package/Culling/ray.js +31 -10
  99. package/Culling/ray.js.map +1 -1
  100. package/Debug/axesViewer.d.ts +1 -1
  101. package/Debug/axesViewer.js +5 -0
  102. package/Debug/axesViewer.js.map +1 -1
  103. package/Debug/debugLayer.d.ts +1 -1
  104. package/Debug/debugLayer.js +6 -2
  105. package/Debug/debugLayer.js.map +1 -1
  106. package/Debug/physicsViewer.d.ts +1 -1
  107. package/Debug/physicsViewer.js +3 -0
  108. package/Debug/physicsViewer.js.map +1 -1
  109. package/DeviceInput/Helpers/eventFactory.d.ts +1 -1
  110. package/DeviceInput/Helpers/eventFactory.js +2 -5
  111. package/DeviceInput/Helpers/eventFactory.js.map +1 -1
  112. package/DeviceInput/InputDevices/deviceEnums.d.ts +55 -2
  113. package/DeviceInput/InputDevices/deviceEnums.js +54 -0
  114. package/DeviceInput/InputDevices/deviceEnums.js.map +1 -1
  115. package/DeviceInput/InputDevices/deviceSource.d.ts +35 -0
  116. package/DeviceInput/InputDevices/deviceSource.js +38 -0
  117. package/DeviceInput/InputDevices/deviceSource.js.map +1 -0
  118. package/DeviceInput/InputDevices/deviceSourceManager.d.ts +14 -72
  119. package/DeviceInput/InputDevices/deviceSourceManager.js +10 -180
  120. package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
  121. package/DeviceInput/InputDevices/deviceTypes.d.ts +2 -2
  122. package/DeviceInput/InputDevices/deviceTypes.js.map +1 -1
  123. package/DeviceInput/{Interfaces → InputDevices}/inputInterfaces.d.ts +1 -5
  124. package/DeviceInput/{Interfaces → InputDevices}/inputInterfaces.js +0 -0
  125. package/DeviceInput/InputDevices/inputInterfaces.js.map +1 -0
  126. package/DeviceInput/InputDevices/internalDeviceSourceManager.d.ts +46 -0
  127. package/DeviceInput/InputDevices/internalDeviceSourceManager.js +144 -0
  128. package/DeviceInput/InputDevices/internalDeviceSourceManager.js.map +1 -0
  129. package/DeviceInput/{Implementations → InputDevices}/nativeDeviceInputSystem.d.ts +3 -7
  130. package/DeviceInput/{Implementations → InputDevices}/nativeDeviceInputSystem.js +11 -16
  131. package/DeviceInput/InputDevices/nativeDeviceInputSystem.js.map +1 -0
  132. package/DeviceInput/{Implementations → InputDevices}/webDeviceInputSystem.d.ts +11 -15
  133. package/DeviceInput/{Implementations → InputDevices}/webDeviceInputSystem.js +121 -146
  134. package/DeviceInput/InputDevices/webDeviceInputSystem.js.map +1 -0
  135. package/DeviceInput/index.d.ts +1 -5
  136. package/DeviceInput/index.js +1 -5
  137. package/DeviceInput/index.js.map +1 -1
  138. package/Engines/Extensions/engine.cubeTexture.d.ts +1 -1
  139. package/Engines/Extensions/engine.cubeTexture.js +6 -2
  140. package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
  141. package/Engines/Extensions/engine.multiview.d.ts +5 -0
  142. package/Engines/Extensions/engine.multiview.js +4 -1
  143. package/Engines/Extensions/engine.multiview.js.map +1 -1
  144. package/Engines/Native/nativeInterfaces.d.ts +3 -2
  145. package/Engines/Native/nativeInterfaces.js.map +1 -1
  146. package/Engines/Processors/Expressions/shaderDefineExpression.js +1 -1
  147. package/Engines/Processors/Expressions/shaderDefineExpression.js.map +1 -1
  148. package/Engines/Processors/shaderCodeInliner.js +13 -13
  149. package/Engines/Processors/shaderCodeInliner.js.map +1 -1
  150. package/Engines/WebGPU/Extensions/engine.cubeTexture.js +4 -1
  151. package/Engines/WebGPU/Extensions/engine.cubeTexture.js.map +1 -1
  152. package/Engines/WebGPU/webgpuCacheBindGroups.js +9 -9
  153. package/Engines/WebGPU/webgpuCacheBindGroups.js.map +1 -1
  154. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +1 -1
  155. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  156. package/Engines/WebGPU/webgpuComputeContext.js +1 -1
  157. package/Engines/WebGPU/webgpuComputeContext.js.map +1 -1
  158. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +13 -13
  159. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  160. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +30 -30
  161. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  162. package/Engines/WebGPU/webgpuTextureHelper.js +13 -6
  163. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  164. package/Engines/engine.d.ts +2 -6
  165. package/Engines/engine.js +1 -5
  166. package/Engines/engine.js.map +1 -1
  167. package/Engines/engineCapabilities.d.ts +4 -0
  168. package/Engines/engineCapabilities.js.map +1 -1
  169. package/Engines/nativeEngine.d.ts +1 -0
  170. package/Engines/nativeEngine.js +39 -12
  171. package/Engines/nativeEngine.js.map +1 -1
  172. package/Engines/nullEngine.js +3 -1
  173. package/Engines/nullEngine.js.map +1 -1
  174. package/Engines/renderTargetWrapper.d.ts +8 -0
  175. package/Engines/renderTargetWrapper.js +20 -0
  176. package/Engines/renderTargetWrapper.js.map +1 -1
  177. package/Engines/thinEngine.d.ts +17 -1
  178. package/Engines/thinEngine.js +50 -20
  179. package/Engines/thinEngine.js.map +1 -1
  180. package/Engines/webgpuEngine.d.ts +0 -4
  181. package/Engines/webgpuEngine.js +7 -14
  182. package/Engines/webgpuEngine.js.map +1 -1
  183. package/Gamepads/Controllers/daydreamController.js +1 -1
  184. package/Gamepads/Controllers/daydreamController.js.map +1 -1
  185. package/Gamepads/Controllers/oculusTouchController.js +2 -2
  186. package/Gamepads/Controllers/oculusTouchController.js.map +1 -1
  187. package/Gamepads/Controllers/webVRController.d.ts +1 -0
  188. package/Gamepads/Controllers/webVRController.js +1 -0
  189. package/Gamepads/Controllers/webVRController.js.map +1 -1
  190. package/Gamepads/gamepadManager.js +1 -1
  191. package/Gamepads/gamepadManager.js.map +1 -1
  192. package/Gizmos/gizmoManager.d.ts +2 -0
  193. package/Gizmos/gizmoManager.js +28 -24
  194. package/Gizmos/gizmoManager.js.map +1 -1
  195. package/Helpers/sceneHelpers.d.ts +1 -0
  196. package/Helpers/sceneHelpers.js.map +1 -1
  197. package/Inputs/scene.inputManager.d.ts +2 -2
  198. package/Inputs/scene.inputManager.js +11 -13
  199. package/Inputs/scene.inputManager.js.map +1 -1
  200. package/Instrumentation/sceneInstrumentation.js +2 -2
  201. package/Instrumentation/sceneInstrumentation.js.map +1 -1
  202. package/Layers/effectLayer.d.ts +1 -1
  203. package/Layers/effectLayer.js +1 -1
  204. package/Layers/effectLayer.js.map +1 -1
  205. package/Layers/effectLayerSceneComponent.d.ts +1 -1
  206. package/Layers/effectLayerSceneComponent.js +7 -3
  207. package/Layers/effectLayerSceneComponent.js.map +1 -1
  208. package/Layers/glowLayer.d.ts +1 -1
  209. package/Layers/glowLayer.js.map +1 -1
  210. package/Layers/highlightLayer.d.ts +1 -1
  211. package/Layers/highlightLayer.js +2 -1
  212. package/Layers/highlightLayer.js.map +1 -1
  213. package/Layers/layer.d.ts +2 -2
  214. package/Layers/layer.js.map +1 -1
  215. package/Layers/layerSceneComponent.d.ts +1 -1
  216. package/Layers/layerSceneComponent.js +7 -3
  217. package/Layers/layerSceneComponent.js.map +1 -1
  218. package/Lights/Shadows/cascadedShadowGenerator.js +2 -2
  219. package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
  220. package/Lights/Shadows/shadowGenerator.js +2 -2
  221. package/Lights/Shadows/shadowGenerator.js.map +1 -1
  222. package/Loading/Plugins/babylonFileLoader.js +115 -29
  223. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  224. package/Loading/loadingScreen.js +8 -8
  225. package/Loading/loadingScreen.js.map +1 -1
  226. package/Loading/sceneLoader.js +3 -3
  227. package/Loading/sceneLoader.js.map +1 -1
  228. package/Materials/Background/backgroundMaterial.d.ts +1 -1
  229. package/Materials/Background/backgroundMaterial.js.map +1 -1
  230. package/Materials/Node/Blocks/Dual/clipPlanesBlock.d.ts +37 -0
  231. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js +117 -0
  232. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js.map +1 -0
  233. package/Materials/Node/Blocks/Dual/currentScreenBlock.js +12 -12
  234. package/Materials/Node/Blocks/Dual/currentScreenBlock.js.map +1 -1
  235. package/Materials/Node/Blocks/Dual/fogBlock.js +5 -5
  236. package/Materials/Node/Blocks/Dual/fogBlock.js.map +1 -1
  237. package/Materials/Node/Blocks/Dual/imageSourceBlock.js +13 -13
  238. package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
  239. package/Materials/Node/Blocks/Dual/index.d.ts +1 -0
  240. package/Materials/Node/Blocks/Dual/index.js +1 -0
  241. package/Materials/Node/Blocks/Dual/index.js.map +1 -1
  242. package/Materials/Node/Blocks/Dual/lightBlock.js +10 -10
  243. package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
  244. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +28 -28
  245. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  246. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +1 -1
  247. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
  248. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +7 -7
  249. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
  250. package/Materials/Node/Blocks/Dual/textureBlock.js +32 -32
  251. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  252. package/Materials/Node/Blocks/Fragment/derivativeBlock.js +2 -2
  253. package/Materials/Node/Blocks/Fragment/derivativeBlock.js.map +1 -1
  254. package/Materials/Node/Blocks/Fragment/discardBlock.js +1 -1
  255. package/Materials/Node/Blocks/Fragment/discardBlock.js.map +1 -1
  256. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js +1 -1
  257. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js.map +1 -1
  258. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +10 -10
  259. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
  260. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js +7 -7
  261. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js.map +1 -1
  262. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +12 -12
  263. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  264. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js +1 -1
  265. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js.map +1 -1
  266. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js +7 -7
  267. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js.map +1 -1
  268. package/Materials/Node/Blocks/Fragment/twirlBlock.js +4 -4
  269. package/Materials/Node/Blocks/Fragment/twirlBlock.js.map +1 -1
  270. package/Materials/Node/Blocks/Input/inputBlock.d.ts +2 -1
  271. package/Materials/Node/Blocks/Input/inputBlock.js +29 -24
  272. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  273. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +5 -5
  274. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  275. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +5 -5
  276. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  277. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +33 -33
  278. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  279. package/Materials/Node/Blocks/PBR/reflectionBlock.js +11 -11
  280. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  281. package/Materials/Node/Blocks/PBR/refractionBlock.js +11 -11
  282. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  283. package/Materials/Node/Blocks/PBR/sheenBlock.js +3 -3
  284. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  285. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +1 -1
  286. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  287. package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.js +1 -1
  288. package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.js.map +1 -1
  289. package/Materials/Node/Blocks/Particle/particleRampGradientBlock.js +1 -1
  290. package/Materials/Node/Blocks/Particle/particleRampGradientBlock.js.map +1 -1
  291. package/Materials/Node/Blocks/Particle/particleTextureBlock.js +7 -7
  292. package/Materials/Node/Blocks/Particle/particleTextureBlock.js.map +1 -1
  293. package/Materials/Node/Blocks/Vertex/bonesBlock.js +3 -3
  294. package/Materials/Node/Blocks/Vertex/bonesBlock.js.map +1 -1
  295. package/Materials/Node/Blocks/Vertex/instancesBlock.js +3 -3
  296. package/Materials/Node/Blocks/Vertex/instancesBlock.js.map +1 -1
  297. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js +5 -5
  298. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js.map +1 -1
  299. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +16 -16
  300. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
  301. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js +1 -1
  302. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js.map +1 -1
  303. package/Materials/Node/Blocks/addBlock.js +1 -1
  304. package/Materials/Node/Blocks/addBlock.js.map +1 -1
  305. package/Materials/Node/Blocks/arcTan2Block.js +1 -1
  306. package/Materials/Node/Blocks/arcTan2Block.js.map +1 -1
  307. package/Materials/Node/Blocks/clampBlock.js +3 -3
  308. package/Materials/Node/Blocks/clampBlock.js.map +1 -1
  309. package/Materials/Node/Blocks/cloudBlock.js +7 -7
  310. package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
  311. package/Materials/Node/Blocks/colorMergerBlock.js +8 -8
  312. package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
  313. package/Materials/Node/Blocks/colorSplitterBlock.js +5 -5
  314. package/Materials/Node/Blocks/colorSplitterBlock.js.map +1 -1
  315. package/Materials/Node/Blocks/conditionalBlock.js +10 -10
  316. package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
  317. package/Materials/Node/Blocks/crossBlock.js +1 -1
  318. package/Materials/Node/Blocks/crossBlock.js.map +1 -1
  319. package/Materials/Node/Blocks/customBlock.js +1 -1
  320. package/Materials/Node/Blocks/customBlock.js.map +1 -1
  321. package/Materials/Node/Blocks/desaturateBlock.js +4 -4
  322. package/Materials/Node/Blocks/desaturateBlock.js.map +1 -1
  323. package/Materials/Node/Blocks/distanceBlock.js +1 -1
  324. package/Materials/Node/Blocks/distanceBlock.js.map +1 -1
  325. package/Materials/Node/Blocks/divideBlock.js +1 -1
  326. package/Materials/Node/Blocks/divideBlock.js.map +1 -1
  327. package/Materials/Node/Blocks/dotBlock.js +1 -1
  328. package/Materials/Node/Blocks/dotBlock.js.map +1 -1
  329. package/Materials/Node/Blocks/elbowBlock.d.ts +27 -0
  330. package/Materials/Node/Blocks/elbowBlock.js +60 -0
  331. package/Materials/Node/Blocks/elbowBlock.js.map +1 -0
  332. package/Materials/Node/Blocks/fresnelBlock.js +2 -2
  333. package/Materials/Node/Blocks/fresnelBlock.js.map +1 -1
  334. package/Materials/Node/Blocks/gradientBlock.js +8 -8
  335. package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
  336. package/Materials/Node/Blocks/index.d.ts +1 -0
  337. package/Materials/Node/Blocks/index.js +1 -0
  338. package/Materials/Node/Blocks/index.js.map +1 -1
  339. package/Materials/Node/Blocks/lengthBlock.js +1 -1
  340. package/Materials/Node/Blocks/lengthBlock.js.map +1 -1
  341. package/Materials/Node/Blocks/lerpBlock.js +1 -1
  342. package/Materials/Node/Blocks/lerpBlock.js.map +1 -1
  343. package/Materials/Node/Blocks/matrixBuilderBlock.js +1 -1
  344. package/Materials/Node/Blocks/matrixBuilderBlock.js.map +1 -1
  345. package/Materials/Node/Blocks/maxBlock.js +1 -1
  346. package/Materials/Node/Blocks/maxBlock.js.map +1 -1
  347. package/Materials/Node/Blocks/minBlock.js +1 -1
  348. package/Materials/Node/Blocks/minBlock.js.map +1 -1
  349. package/Materials/Node/Blocks/modBlock.js +1 -1
  350. package/Materials/Node/Blocks/modBlock.js.map +1 -1
  351. package/Materials/Node/Blocks/multiplyBlock.js +1 -1
  352. package/Materials/Node/Blocks/multiplyBlock.js.map +1 -1
  353. package/Materials/Node/Blocks/nLerpBlock.js +1 -1
  354. package/Materials/Node/Blocks/nLerpBlock.js.map +1 -1
  355. package/Materials/Node/Blocks/negateBlock.js +1 -1
  356. package/Materials/Node/Blocks/negateBlock.js.map +1 -1
  357. package/Materials/Node/Blocks/normalBlendBlock.js +5 -5
  358. package/Materials/Node/Blocks/normalBlendBlock.js.map +1 -1
  359. package/Materials/Node/Blocks/normalizeBlock.js +1 -1
  360. package/Materials/Node/Blocks/normalizeBlock.js.map +1 -1
  361. package/Materials/Node/Blocks/oneMinusBlock.js +1 -1
  362. package/Materials/Node/Blocks/oneMinusBlock.js.map +1 -1
  363. package/Materials/Node/Blocks/posterizeBlock.js +1 -1
  364. package/Materials/Node/Blocks/posterizeBlock.js.map +1 -1
  365. package/Materials/Node/Blocks/powBlock.js +1 -1
  366. package/Materials/Node/Blocks/powBlock.js.map +1 -1
  367. package/Materials/Node/Blocks/randomNumberBlock.js +2 -2
  368. package/Materials/Node/Blocks/randomNumberBlock.js.map +1 -1
  369. package/Materials/Node/Blocks/reciprocalBlock.js +1 -1
  370. package/Materials/Node/Blocks/reciprocalBlock.js.map +1 -1
  371. package/Materials/Node/Blocks/reflectBlock.js +1 -1
  372. package/Materials/Node/Blocks/reflectBlock.js.map +1 -1
  373. package/Materials/Node/Blocks/refractBlock.js +1 -1
  374. package/Materials/Node/Blocks/refractBlock.js.map +1 -1
  375. package/Materials/Node/Blocks/remapBlock.js +3 -3
  376. package/Materials/Node/Blocks/remapBlock.js.map +1 -1
  377. package/Materials/Node/Blocks/replaceColorBlock.js +3 -3
  378. package/Materials/Node/Blocks/replaceColorBlock.js.map +1 -1
  379. package/Materials/Node/Blocks/rotate2dBlock.js +1 -1
  380. package/Materials/Node/Blocks/rotate2dBlock.js.map +1 -1
  381. package/Materials/Node/Blocks/scaleBlock.js +1 -1
  382. package/Materials/Node/Blocks/scaleBlock.js.map +1 -1
  383. package/Materials/Node/Blocks/simplexPerlin3DBlock.js +1 -1
  384. package/Materials/Node/Blocks/simplexPerlin3DBlock.js.map +1 -1
  385. package/Materials/Node/Blocks/smoothStepBlock.js +1 -1
  386. package/Materials/Node/Blocks/smoothStepBlock.js.map +1 -1
  387. package/Materials/Node/Blocks/stepBlock.js +1 -1
  388. package/Materials/Node/Blocks/stepBlock.js.map +1 -1
  389. package/Materials/Node/Blocks/subtractBlock.js +1 -1
  390. package/Materials/Node/Blocks/subtractBlock.js.map +1 -1
  391. package/Materials/Node/Blocks/transformBlock.js +13 -13
  392. package/Materials/Node/Blocks/transformBlock.js.map +1 -1
  393. package/Materials/Node/Blocks/trigonometryBlock.js +2 -2
  394. package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
  395. package/Materials/Node/Blocks/vectorMergerBlock.js +22 -22
  396. package/Materials/Node/Blocks/vectorMergerBlock.js.map +1 -1
  397. package/Materials/Node/Blocks/vectorSplitterBlock.js +8 -8
  398. package/Materials/Node/Blocks/vectorSplitterBlock.js.map +1 -1
  399. package/Materials/Node/Blocks/viewDirectionBlock.js +1 -1
  400. package/Materials/Node/Blocks/viewDirectionBlock.js.map +1 -1
  401. package/Materials/Node/Blocks/voronoiNoiseBlock.js +5 -5
  402. package/Materials/Node/Blocks/voronoiNoiseBlock.js.map +1 -1
  403. package/Materials/Node/Blocks/waveBlock.js +3 -3
  404. package/Materials/Node/Blocks/waveBlock.js.map +1 -1
  405. package/Materials/Node/Blocks/worleyNoise3DBlock.js +5 -5
  406. package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
  407. package/Materials/Node/Enums/nodeMaterialSystemValues.d.ts +3 -1
  408. package/Materials/Node/Enums/nodeMaterialSystemValues.js +2 -0
  409. package/Materials/Node/Enums/nodeMaterialSystemValues.js.map +1 -1
  410. package/Materials/Node/nodeMaterial.d.ts +4 -0
  411. package/Materials/Node/nodeMaterial.js +22 -11
  412. package/Materials/Node/nodeMaterial.js.map +1 -1
  413. package/Materials/Node/nodeMaterialBlock.js +12 -12
  414. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  415. package/Materials/Node/nodeMaterialBuildState.js +24 -24
  416. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  417. package/Materials/Node/nodeMaterialBuildStateSharedData.js +1 -1
  418. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  419. package/Materials/PBR/pbrBaseMaterial.d.ts +2 -1
  420. package/Materials/PBR/pbrBaseMaterial.js +4 -3
  421. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  422. package/Materials/PBR/pbrBaseSimpleMaterial.d.ts +1 -1
  423. package/Materials/PBR/pbrBaseSimpleMaterial.js.map +1 -1
  424. package/Materials/PBR/pbrMaterial.d.ts +1 -1
  425. package/Materials/PBR/pbrMaterial.js +2 -3
  426. package/Materials/PBR/pbrMaterial.js.map +1 -1
  427. package/Materials/PBR/pbrMetallicRoughnessMaterial.d.ts +1 -1
  428. package/Materials/PBR/pbrMetallicRoughnessMaterial.js.map +1 -1
  429. package/Materials/PBR/pbrSpecularGlossinessMaterial.d.ts +1 -1
  430. package/Materials/PBR/pbrSpecularGlossinessMaterial.js.map +1 -1
  431. package/Materials/Textures/Loaders/ddsTextureLoader.js +8 -1
  432. package/Materials/Textures/Loaders/ddsTextureLoader.js.map +1 -1
  433. package/Materials/Textures/Loaders/ktxTextureLoader.js +2 -2
  434. package/Materials/Textures/Loaders/ktxTextureLoader.js.map +1 -1
  435. package/Materials/Textures/MultiviewRenderTarget.d.ts +2 -1
  436. package/Materials/Textures/MultiviewRenderTarget.js +10 -2
  437. package/Materials/Textures/MultiviewRenderTarget.js.map +1 -1
  438. package/Materials/Textures/Procedurals/proceduralTexture.js +1 -1
  439. package/Materials/Textures/Procedurals/proceduralTexture.js.map +1 -1
  440. package/Materials/Textures/baseTexture.d.ts +1 -1
  441. package/Materials/Textures/baseTexture.js.map +1 -1
  442. package/Materials/Textures/equiRectangularCubeTexture.js +1 -1
  443. package/Materials/Textures/equiRectangularCubeTexture.js.map +1 -1
  444. package/Materials/Textures/internalTexture.d.ts +2 -0
  445. package/Materials/Textures/internalTexture.js +2 -0
  446. package/Materials/Textures/internalTexture.js.map +1 -1
  447. package/Materials/Textures/mirrorTexture.d.ts +2 -2
  448. package/Materials/Textures/mirrorTexture.js +7 -3
  449. package/Materials/Textures/mirrorTexture.js.map +1 -1
  450. package/Materials/Textures/multiRenderTarget.d.ts +1 -1
  451. package/Materials/Textures/multiRenderTarget.js.map +1 -1
  452. package/Materials/Textures/prePassRenderTarget.d.ts +1 -1
  453. package/Materials/Textures/prePassRenderTarget.js.map +1 -1
  454. package/Materials/Textures/refractionTexture.d.ts +1 -1
  455. package/Materials/Textures/refractionTexture.js +2 -2
  456. package/Materials/Textures/refractionTexture.js.map +1 -1
  457. package/Materials/Textures/renderTargetTexture.d.ts +1 -1
  458. package/Materials/Textures/renderTargetTexture.js +2 -2
  459. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  460. package/Materials/Textures/texture.d.ts +1 -1
  461. package/Materials/Textures/texture.js.map +1 -1
  462. package/Materials/Textures/videoTexture.js +1 -0
  463. package/Materials/Textures/videoTexture.js.map +1 -1
  464. package/Materials/effect.js +3 -3
  465. package/Materials/effect.js.map +1 -1
  466. package/Materials/material.d.ts +3 -1
  467. package/Materials/material.js +11 -3
  468. package/Materials/material.js.map +1 -1
  469. package/Materials/materialHelper.js +9 -1
  470. package/Materials/materialHelper.js.map +1 -1
  471. package/Materials/materialPluginManager.js +3 -3
  472. package/Materials/materialPluginManager.js.map +1 -1
  473. package/Materials/multiMaterial.d.ts +3 -1
  474. package/Materials/multiMaterial.js +13 -11
  475. package/Materials/multiMaterial.js.map +1 -1
  476. package/Materials/pushMaterial.d.ts +1 -1
  477. package/Materials/pushMaterial.js.map +1 -1
  478. package/Materials/shaderMaterial.js +8 -4
  479. package/Materials/shaderMaterial.js.map +1 -1
  480. package/Materials/shadowDepthWrapper.d.ts +1 -1
  481. package/Materials/shadowDepthWrapper.js +3 -3
  482. package/Materials/shadowDepthWrapper.js.map +1 -1
  483. package/Materials/standardMaterial.d.ts +2 -6
  484. package/Materials/standardMaterial.js +5 -10
  485. package/Materials/standardMaterial.js.map +1 -1
  486. package/Maths/math.size.js +1 -1
  487. package/Maths/math.size.js.map +1 -1
  488. package/Maths/math.vector.d.ts +4 -2
  489. package/Maths/math.vector.js +34 -32
  490. package/Maths/math.vector.js.map +1 -1
  491. package/Meshes/Builders/cylinderBuilder.d.ts +1 -1
  492. package/Meshes/Builders/cylinderBuilder.js +1 -1
  493. package/Meshes/Builders/cylinderBuilder.js.map +1 -1
  494. package/Meshes/Builders/linesBuilder.js.map +1 -1
  495. package/Meshes/Compression/dracoCompression.d.ts +3 -0
  496. package/Meshes/Compression/dracoCompression.js +23 -7
  497. package/Meshes/Compression/dracoCompression.js.map +1 -1
  498. package/Meshes/abstractMesh.d.ts +6 -0
  499. package/Meshes/abstractMesh.js +18 -2
  500. package/Meshes/abstractMesh.js.map +1 -1
  501. package/Meshes/geometry.d.ts +1 -1
  502. package/Meshes/geometry.js +7 -3
  503. package/Meshes/geometry.js.map +1 -1
  504. package/Meshes/groundMesh.d.ts +1 -1
  505. package/Meshes/groundMesh.js.map +1 -1
  506. package/Meshes/mesh.js +21 -6
  507. package/Meshes/mesh.js.map +1 -1
  508. package/Meshes/mesh.lts.d.ts +1 -1
  509. package/Meshes/mesh.lts.js.map +1 -1
  510. package/Meshes/mesh.vertexData.d.ts +1 -1
  511. package/Meshes/mesh.vertexData.js +2 -2
  512. package/Meshes/mesh.vertexData.js.map +1 -1
  513. package/Meshes/polygonMesh.js +2 -2
  514. package/Meshes/polygonMesh.js.map +1 -1
  515. package/Meshes/subMesh.js +1 -2
  516. package/Meshes/subMesh.js.map +1 -1
  517. package/Meshes/subMesh.project.js +1 -2
  518. package/Meshes/subMesh.project.js.map +1 -1
  519. package/Meshes/thinInstanceMesh.js +5 -0
  520. package/Meshes/thinInstanceMesh.js.map +1 -1
  521. package/Meshes/trailMesh.d.ts +1 -1
  522. package/Meshes/trailMesh.js.map +1 -1
  523. package/Meshes/transformNode.js +40 -13
  524. package/Meshes/transformNode.js.map +1 -1
  525. package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.d.ts +5 -0
  526. package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.js +13 -2
  527. package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.js.map +1 -1
  528. package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js +6 -12
  529. package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js.map +1 -1
  530. package/Misc/PerformanceViewer/performanceViewerCollector.js +6 -6
  531. package/Misc/PerformanceViewer/performanceViewerCollector.js.map +1 -1
  532. package/Misc/assetsManager.d.ts +2 -1
  533. package/Misc/assetsManager.js +15 -1
  534. package/Misc/assetsManager.js.map +1 -1
  535. package/Misc/basis.js +1 -1
  536. package/Misc/basis.js.map +1 -1
  537. package/Misc/brdfTextureTools.js +4 -1
  538. package/Misc/brdfTextureTools.js.map +1 -1
  539. package/Misc/dds.js +7 -0
  540. package/Misc/dds.js.map +1 -1
  541. package/Misc/devTools.js +1 -1
  542. package/Misc/devTools.js.map +1 -1
  543. package/Misc/environmentTextureTools.js +2 -2
  544. package/Misc/environmentTextureTools.js.map +1 -1
  545. package/Misc/fileTools.js +4 -4
  546. package/Misc/fileTools.js.map +1 -1
  547. package/Misc/index.d.ts +1 -0
  548. package/Misc/index.js +1 -0
  549. package/Misc/index.js.map +1 -1
  550. package/Misc/khronosTextureContainer2.js +4 -3
  551. package/Misc/khronosTextureContainer2.js.map +1 -1
  552. package/Misc/reflector.js +6 -6
  553. package/Misc/reflector.js.map +1 -1
  554. package/Misc/tools.js +15 -13
  555. package/Misc/tools.js.map +1 -1
  556. package/Misc/uniqueIdGenerator.js +1 -1
  557. package/Misc/uniqueIdGenerator.js.map +1 -1
  558. package/Offline/database.js +1 -1
  559. package/Offline/database.js.map +1 -1
  560. package/Particles/baseParticleSystem.d.ts +4 -1
  561. package/Particles/baseParticleSystem.js +20 -5
  562. package/Particles/baseParticleSystem.js.map +1 -1
  563. package/Particles/gpuParticleSystem.js +2 -1
  564. package/Particles/gpuParticleSystem.js.map +1 -1
  565. package/Particles/particleHelper.js +2 -2
  566. package/Particles/particleHelper.js.map +1 -1
  567. package/Physics/Plugins/ammoJSPlugin.d.ts +5 -1
  568. package/Physics/Plugins/ammoJSPlugin.js +16 -11
  569. package/Physics/Plugins/ammoJSPlugin.js.map +1 -1
  570. package/Physics/physicsEngine.d.ts +1 -0
  571. package/Physics/physicsEngine.js +3 -1
  572. package/Physics/physicsEngine.js.map +1 -1
  573. package/Physics/physicsImpostor.d.ts +2 -2
  574. package/Physics/physicsImpostor.js.map +1 -1
  575. package/PostProcesses/blurPostProcess.js +5 -5
  576. package/PostProcesses/blurPostProcess.js.map +1 -1
  577. package/PostProcesses/imageProcessingPostProcess.js +1 -1
  578. package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
  579. package/PostProcesses/postProcess.js +1 -1
  580. package/PostProcesses/postProcess.js.map +1 -1
  581. package/PostProcesses/postProcessManager.js +2 -2
  582. package/PostProcesses/postProcessManager.js.map +1 -1
  583. package/Probes/reflectionProbe.js +2 -2
  584. package/Probes/reflectionProbe.js.map +1 -1
  585. package/Rendering/depthPeelingRenderer.js +3 -3
  586. package/Rendering/depthPeelingRenderer.js.map +1 -1
  587. package/Rendering/geometryBufferRenderer.js +8 -8
  588. package/Rendering/geometryBufferRenderer.js.map +1 -1
  589. package/Rendering/outlineRenderer.js +1 -1
  590. package/Rendering/outlineRenderer.js.map +1 -1
  591. package/Rendering/utilityLayerRenderer.js +4 -0
  592. package/Rendering/utilityLayerRenderer.js.map +1 -1
  593. package/Shaders/ShadersInclude/instancesDeclaration.js +1 -1
  594. package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
  595. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +1 -1
  596. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  597. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +1 -1
  598. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  599. package/Shaders/ShadersInclude/prePassVertex.js +1 -1
  600. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  601. package/Shaders/color.fragment.js +1 -1
  602. package/Shaders/color.fragment.js.map +1 -1
  603. package/Shaders/color.vertex.js +1 -1
  604. package/Shaders/color.vertex.js.map +1 -1
  605. package/Shaders/default.fragment.js +1 -1
  606. package/Shaders/default.fragment.js.map +1 -1
  607. package/Shaders/default.vertex.js +1 -1
  608. package/Shaders/default.vertex.js.map +1 -1
  609. package/Shaders/geometry.vertex.js +1 -1
  610. package/Shaders/geometry.vertex.js.map +1 -1
  611. package/Shaders/pbr.vertex.js +1 -1
  612. package/Shaders/pbr.vertex.js.map +1 -1
  613. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +1 -1
  614. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
  615. package/ShadersWGSL/gpuUpdateParticles.compute.js +1 -1
  616. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  617. package/Sprites/spriteManager.js +9 -10
  618. package/Sprites/spriteManager.js.map +1 -1
  619. package/Sprites/spriteMap.js +2 -2
  620. package/Sprites/spriteMap.js.map +1 -1
  621. package/Sprites/spriteRenderer.js +1 -1
  622. package/Sprites/spriteRenderer.js.map +1 -1
  623. package/XR/features/WebXRControllerPointerSelection.js +15 -9
  624. package/XR/features/WebXRControllerPointerSelection.js.map +1 -1
  625. package/XR/features/WebXRDOMOverlay.js +1 -1
  626. package/XR/features/WebXRDOMOverlay.js.map +1 -1
  627. package/XR/features/WebXRHandTracking.js +30 -30
  628. package/XR/features/WebXRHandTracking.js.map +1 -1
  629. package/XR/features/WebXRImageTracking.js +2 -2
  630. package/XR/features/WebXRImageTracking.js.map +1 -1
  631. package/XR/features/WebXRLayers.d.ts +28 -5
  632. package/XR/features/WebXRLayers.js +54 -20
  633. package/XR/features/WebXRLayers.js.map +1 -1
  634. package/XR/features/WebXRNearInteraction.d.ts +35 -3
  635. package/XR/features/WebXRNearInteraction.js +201 -40
  636. package/XR/features/WebXRNearInteraction.js.map +1 -1
  637. package/XR/motionController/webXRAbstractMotionController.js +1 -1
  638. package/XR/motionController/webXRAbstractMotionController.js.map +1 -1
  639. package/XR/motionController/webXRMotionControllerManager.js +2 -2
  640. package/XR/motionController/webXRMotionControllerManager.js.map +1 -1
  641. package/XR/motionController/webXRProfiledMotionController.js +1 -1
  642. package/XR/motionController/webXRProfiledMotionController.js.map +1 -1
  643. package/XR/webXRCamera.js +17 -4
  644. package/XR/webXRCamera.js.map +1 -1
  645. package/XR/webXRDefaultExperience.js +3 -0
  646. package/XR/webXRDefaultExperience.js.map +1 -1
  647. package/XR/webXREnterExitUI.js +2 -2
  648. package/XR/webXREnterExitUI.js.map +1 -1
  649. package/XR/webXRExperienceHelper.js +3 -2
  650. package/XR/webXRExperienceHelper.js.map +1 -1
  651. package/XR/webXRFeaturesManager.js +6 -6
  652. package/XR/webXRFeaturesManager.js.map +1 -1
  653. package/XR/webXRInputSource.js +3 -3
  654. package/XR/webXRInputSource.js.map +1 -1
  655. package/XR/webXRRenderTargetTextureProvider.d.ts +3 -2
  656. package/XR/webXRRenderTargetTextureProvider.js +37 -18
  657. package/XR/webXRRenderTargetTextureProvider.js.map +1 -1
  658. package/XR/webXRSessionManager.d.ts +1 -0
  659. package/XR/webXRSessionManager.js +6 -1
  660. package/XR/webXRSessionManager.js.map +1 -1
  661. package/assetContainer.d.ts +1 -1
  662. package/assetContainer.js +4 -0
  663. package/assetContainer.js.map +1 -1
  664. package/node.d.ts +1 -1
  665. package/node.js.map +1 -1
  666. package/package.json +22 -13
  667. package/scene.d.ts +5 -2
  668. package/scene.js +31 -5
  669. package/scene.js.map +1 -1
  670. package/DeviceInput/Implementations/nativeDeviceInputSystem.js.map +0 -1
  671. package/DeviceInput/Implementations/webDeviceInputSystem.js.map +0 -1
  672. package/DeviceInput/Interfaces/inputInterfaces.js.map +0 -1
  673. package/DeviceInput/deviceInputSystem.d.ts +0 -60
  674. package/DeviceInput/deviceInputSystem.js +0 -84
  675. package/DeviceInput/deviceInputSystem.js.map +0 -1
@@ -44,13 +44,14 @@ var BabylonFileLoaderConfiguration = /** @class */ (function () {
44
44
  }());
45
45
  export { BabylonFileLoaderConfiguration };
46
46
  var tempIndexContainer = {};
47
- var parseMaterialById = function (id, parsedData, scene, rootUrl) {
47
+ var tempMaterialIndexContainer = {};
48
+ var parseMaterialByPredicate = function (predicate, parsedData, scene, rootUrl) {
48
49
  if (!parsedData.materials) {
49
50
  return null;
50
51
  }
51
52
  for (var index = 0, cache = parsedData.materials.length; index < cache; index++) {
52
53
  var parsedMaterial = parsedData.materials[index];
53
- if (parsedMaterial.id === id) {
54
+ if (predicate(parsedMaterial)) {
54
55
  return Material.Parse(parsedMaterial, scene, rootUrl);
55
56
  }
56
57
  }
@@ -114,6 +115,12 @@ var findParent = function (parentId, scene) {
114
115
  var parent = tempIndexContainer[parentId];
115
116
  return parent;
116
117
  };
118
+ var findMaterial = function (materialId, scene) {
119
+ if (typeof materialId !== "number") {
120
+ return scene.getLastMaterialById(materialId, true);
121
+ }
122
+ return tempMaterialIndexContainer[materialId];
123
+ };
117
124
  var loadAssetContainer = function (scene, data, rootUrl, onError, addToScene) {
118
125
  if (addToScene === void 0) { addToScene = false; }
119
126
  var container = new AssetContainer(scene);
@@ -214,6 +221,7 @@ var loadAssetContainer = function (scene, data, rootUrl, onError, addToScene) {
214
221
  var parsedMaterial = parsedData.materials[index];
215
222
  var mat = Material.Parse(parsedMaterial, scene, rootUrl);
216
223
  if (mat) {
224
+ tempMaterialIndexContainer[parsedMaterial.uniqueId || parsedMaterial.id] = mat;
217
225
  container.materials.push(mat);
218
226
  mat._parentContainer = container;
219
227
  log += (index === 0 ? "\n\tMaterials:" : "");
@@ -233,6 +241,7 @@ var loadAssetContainer = function (scene, data, rootUrl, onError, addToScene) {
233
241
  for (index = 0, cache = parsedData.multiMaterials.length; index < cache; index++) {
234
242
  var parsedMultiMaterial = parsedData.multiMaterials[index];
235
243
  var mmat = MultiMaterial.ParseMultiMaterial(parsedMultiMaterial, scene);
244
+ tempMaterialIndexContainer[parsedMultiMaterial.uniqueId || parsedMultiMaterial.id] = mmat;
236
245
  container.multiMaterials.push(mmat);
237
246
  mmat._parentContainer = container;
238
247
  log += (index === 0 ? "\n\tMultiMaterials:" : "");
@@ -384,6 +393,20 @@ var loadAssetContainer = function (scene, data, rootUrl, onError, addToScene) {
384
393
  loadDetailLevels(scene, mesh);
385
394
  }
386
395
  }
396
+ // link multimats with materials
397
+ scene.multiMaterials.forEach(function (multimat) {
398
+ multimat._waitingSubMaterialsUniqueIds.forEach(function (subMaterial) {
399
+ multimat.subMaterials.push(findMaterial(subMaterial, scene));
400
+ });
401
+ multimat._waitingSubMaterialsUniqueIds = [];
402
+ });
403
+ // link meshes with materials
404
+ scene.meshes.forEach(function (mesh) {
405
+ if (mesh._waitingMaterialId !== null) {
406
+ mesh.material = findMaterial(mesh._waitingMaterialId, scene);
407
+ mesh._waitingMaterialId = null;
408
+ }
409
+ });
387
410
  // link skeleton transform nodes
388
411
  for (index = 0, cache = scene.skeletons.length; index < cache; index++) {
389
412
  var skeleton = scene.skeletons[index];
@@ -485,6 +508,7 @@ SceneLoader.RegisterPlugin({
485
508
  return false;
486
509
  },
487
510
  importMesh: function (meshesNames, scene, data, rootUrl, meshes, particleSystems, skeletons, onError) {
511
+ var _a;
488
512
  // Entire method running in try block, so ALWAYS logs as far as it got, only actually writes details
489
513
  // when SceneLoader.debugLogging = true (default), or exception encountered.
490
514
  // Everything stored in var log instead of writing separate lines to support only writing in exception,
@@ -501,13 +525,23 @@ SceneLoader.RegisterPlugin({
501
525
  meshesNames = [meshesNames];
502
526
  }
503
527
  var hierarchyIds = new Array();
528
+ // Transform nodes (the overall idea is to load all of them as this is super fast and then get rid of the ones we don't need)
529
+ var loadedTransformNodes = [];
530
+ if (parsedData.transformNodes !== undefined && parsedData.transformNodes !== null) {
531
+ for (index = 0, cache = parsedData.transformNodes.length; index < cache; index++) {
532
+ var parsedTransformNode = parsedData.transformNodes[index];
533
+ loadedTransformNodes.push(TransformNode.Parse(parsedTransformNode, scene, rootUrl));
534
+ }
535
+ }
504
536
  if (parsedData.meshes !== undefined && parsedData.meshes !== null) {
505
537
  var loadedSkeletonsIds = [];
506
538
  var loadedMaterialsIds = [];
539
+ var loadedMaterialsUniqueIds = [];
540
+ var loadedMorphTargetsIds = [];
507
541
  var index;
508
542
  var cache;
509
- for (index = 0, cache = parsedData.meshes.length; index < cache; index++) {
510
- var parsedMesh = parsedData.meshes[index];
543
+ var _loop_1 = function () {
544
+ parsedMesh = parsedData.meshes[index];
511
545
  if (meshesNames === null || isDescendantOf(parsedMesh, meshesNames, hierarchyIds)) {
512
546
  if (meshesNames !== null) {
513
547
  // Remove found mesh name from list.
@@ -518,7 +552,7 @@ SceneLoader.RegisterPlugin({
518
552
  //does the file contain geometries?
519
553
  if (parsedData.geometries !== undefined && parsedData.geometries !== null) {
520
554
  //find the correct geometry and add it to the scene
521
- var found = false;
555
+ found = false;
522
556
  ["boxes", "spheres", "cylinders", "toruses", "grounds", "planes", "torusKnots", "vertexData"].forEach(function (geometryType) {
523
557
  if (found === true || !parsedData.geometries[geometryType] || !(Array.isArray(parsedData.geometries[geometryType]))) {
524
558
  return;
@@ -542,22 +576,31 @@ SceneLoader.RegisterPlugin({
542
576
  }
543
577
  }
544
578
  // Material ?
545
- if (parsedMesh.materialId) {
546
- var materialFound = (loadedMaterialsIds.indexOf(parsedMesh.materialId) !== -1);
579
+ if (parsedMesh.materialUniqueId || parsedMesh.materialId) {
580
+ // if we have a unique ID, look up and store in loadedMaterialsUniqueIds, else use loadedMaterialsIds
581
+ var materialArray_1 = parsedMesh.materialUniqueId ? loadedMaterialsUniqueIds : loadedMaterialsIds;
582
+ materialFound = (materialArray_1.indexOf(parsedMesh.materialUniqueId || parsedMesh.materialId) !== -1);
547
583
  if (materialFound === false && parsedData.multiMaterials !== undefined && parsedData.multiMaterials !== null) {
584
+ // Loads a submaterial of a multimaterial
585
+ var loadSubMaterial_1 = function (subMatId, predicate) {
586
+ materialArray_1.push(subMatId);
587
+ var mat = parseMaterialByPredicate(predicate, parsedData, scene, rootUrl);
588
+ if (mat) {
589
+ log += "\n\tMaterial " + mat.toString(fullDetails);
590
+ }
591
+ };
548
592
  for (var multimatIndex = 0, multimatCache = parsedData.multiMaterials.length; multimatIndex < multimatCache; multimatIndex++) {
549
593
  var parsedMultiMaterial = parsedData.multiMaterials[multimatIndex];
550
- if (parsedMultiMaterial.id === parsedMesh.materialId) {
551
- for (var matIndex = 0, matCache = parsedMultiMaterial.materials.length; matIndex < matCache; matIndex++) {
552
- var subMatId = parsedMultiMaterial.materials[matIndex];
553
- loadedMaterialsIds.push(subMatId);
554
- var mat = parseMaterialById(subMatId, parsedData, scene, rootUrl);
555
- if (mat) {
556
- log += "\n\tMaterial " + mat.toString(fullDetails);
557
- }
594
+ if ((parsedMesh.materialUniqueId && parsedMultiMaterial.uniqueId === parsedMesh.materialUniqueId) || parsedMultiMaterial.id === parsedMesh.materialId) {
595
+ if (parsedMultiMaterial.materialsUniqueIds) { // if the materials inside the multimat are stored by unique id
596
+ parsedMultiMaterial.materialsUniqueIds.forEach(function (subMatId) { return loadSubMaterial_1(subMatId, function (parsedMaterial) { return parsedMaterial.uniqueId === subMatId; }); });
597
+ }
598
+ else { // if the mats are stored by id instead
599
+ parsedMultiMaterial.materials.forEach(function (subMatId) { return loadSubMaterial_1(subMatId, function (parsedMaterial) { return parsedMaterial.id === subMatId; }); });
558
600
  }
559
- loadedMaterialsIds.push(parsedMultiMaterial.id);
560
- var mmat = MultiMaterial.ParseMultiMaterial(parsedMultiMaterial, scene);
601
+ materialArray_1.push(parsedMultiMaterial.uniqueId || parsedMultiMaterial.id);
602
+ mmat = MultiMaterial.ParseMultiMaterial(parsedMultiMaterial, scene);
603
+ tempMaterialIndexContainer[parsedMultiMaterial.uniqueId || parsedMultiMaterial.id] = mmat;
561
604
  if (mmat) {
562
605
  materialFound = true;
563
606
  log += "\n\tMulti-Material " + mmat.toString(fullDetails);
@@ -567,8 +610,8 @@ SceneLoader.RegisterPlugin({
567
610
  }
568
611
  }
569
612
  if (materialFound === false) {
570
- loadedMaterialsIds.push(parsedMesh.materialId);
571
- var mat = parseMaterialById(parsedMesh.materialId, parsedData, scene, rootUrl);
613
+ materialArray_1.push(parsedMesh.materialUniqueId || parsedMesh.materialId);
614
+ mat = parseMaterialByPredicate(function (parsedMaterial) { return (parsedMesh.MaterialUniqueId && parsedMaterial.uniqueId === parsedMesh.materialUniqueId || parsedMaterial.id === parsedMesh.materialId); }, parsedData, scene, rootUrl);
572
615
  if (!mat) {
573
616
  Logger.Warn("Material not found for mesh " + parsedMesh.id);
574
617
  }
@@ -579,12 +622,12 @@ SceneLoader.RegisterPlugin({
579
622
  }
580
623
  // Skeleton ?
581
624
  if (parsedMesh.skeletonId > -1 && parsedData.skeletons !== undefined && parsedData.skeletons !== null) {
582
- var skeletonAlreadyLoaded = (loadedSkeletonsIds.indexOf(parsedMesh.skeletonId) > -1);
583
- if (skeletonAlreadyLoaded === false) {
625
+ skeletonAlreadyLoaded = (loadedSkeletonsIds.indexOf(parsedMesh.skeletonId) > -1);
626
+ if (!skeletonAlreadyLoaded) {
584
627
  for (var skeletonIndex = 0, skeletonCache = parsedData.skeletons.length; skeletonIndex < skeletonCache; skeletonIndex++) {
585
- var parsedSkeleton = parsedData.skeletons[skeletonIndex];
628
+ parsedSkeleton = parsedData.skeletons[skeletonIndex];
586
629
  if (parsedSkeleton.id === parsedMesh.skeletonId) {
587
- var skeleton = Skeleton.Parse(parsedSkeleton, scene);
630
+ skeleton = Skeleton.Parse(parsedSkeleton, scene);
588
631
  skeletons.push(skeleton);
589
632
  loadedSkeletonsIds.push(parsedSkeleton.id);
590
633
  log += "\n\tSkeleton " + skeleton.toString(fullDetails);
@@ -593,29 +636,72 @@ SceneLoader.RegisterPlugin({
593
636
  }
594
637
  }
595
638
  // Morph targets ?
596
- if (parsedData.morphTargetManagers !== undefined && parsedData.morphTargetManagers !== null) {
597
- for (var _i = 0, _a = parsedData.morphTargetManagers; _i < _a.length; _i++) {
598
- var managerData = _a[_i];
599
- MorphTargetManager.Parse(managerData, scene);
639
+ if (parsedMesh.morphTargetManagerId > -1 && parsedData.morphTargetManagers !== undefined && parsedData.morphTargetManagers !== null) {
640
+ morphTargetAlreadyLoaded = (loadedMorphTargetsIds.indexOf(parsedMesh.morphTargetManagerId) > -1);
641
+ if (!morphTargetAlreadyLoaded) {
642
+ for (var morphTargetIndex = 0, morphTargetCache = parsedData.morphTargetManagers.length; morphTargetIndex < morphTargetCache; morphTargetIndex++) {
643
+ parsedMorphTarget = parsedData.morphTargetManagers[morphTargetIndex];
644
+ if (parsedMorphTarget.id === parsedMesh.morphTargetManagerId) {
645
+ morphTarget = MorphTargetManager.Parse(parsedMorphTarget, scene);
646
+ loadedMorphTargetsIds.push(morphTarget.uniqueId);
647
+ log += "\n\Morph target " + morphTarget.toString();
648
+ }
649
+ }
600
650
  }
601
651
  }
602
- var mesh = Mesh.Parse(parsedMesh, scene, rootUrl);
652
+ mesh = Mesh.Parse(parsedMesh, scene, rootUrl);
603
653
  meshes.push(mesh);
604
654
  log += "\n\tMesh " + mesh.toString(fullDetails);
605
655
  }
656
+ };
657
+ var parsedMesh, found, materialFound, mmat, mat, skeletonAlreadyLoaded, parsedSkeleton, skeleton, morphTargetAlreadyLoaded, parsedMorphTarget, morphTarget, mesh;
658
+ for (index = 0, cache = parsedData.meshes.length; index < cache; index++) {
659
+ _loop_1();
606
660
  }
661
+ // link multimats with materials
662
+ scene.multiMaterials.forEach(function (multimat) {
663
+ multimat._waitingSubMaterialsUniqueIds.forEach(function (subMaterial) {
664
+ multimat.subMaterials.push(findMaterial(subMaterial, scene));
665
+ });
666
+ multimat._waitingSubMaterialsUniqueIds = [];
667
+ });
668
+ // link meshes with materials
669
+ scene.meshes.forEach(function (mesh) {
670
+ if (mesh._waitingMaterialId !== null) {
671
+ mesh.material = findMaterial(mesh._waitingMaterialId, scene);
672
+ mesh._waitingMaterialId = null;
673
+ }
674
+ });
607
675
  // Connecting parents and lods
676
+ for (index = 0, cache = scene.transformNodes.length; index < cache; index++) {
677
+ var transformNode = scene.transformNodes[index];
678
+ if (transformNode._waitingParentId !== null) {
679
+ transformNode.parent = scene.getLastEntryById(transformNode._waitingParentId);
680
+ transformNode._waitingParentId = null;
681
+ }
682
+ }
608
683
  var currentMesh;
609
684
  for (index = 0, cache = scene.meshes.length; index < cache; index++) {
610
685
  currentMesh = scene.meshes[index];
611
- if (currentMesh._waitingParentId !== null) {
686
+ if (currentMesh._waitingParentId) {
612
687
  currentMesh.parent = scene.getLastEntryById(currentMesh._waitingParentId);
688
+ if (((_a = currentMesh.parent) === null || _a === void 0 ? void 0 : _a.getClassName()) === "TransformNode") {
689
+ var loadedTransformNodeIndex = loadedTransformNodes.indexOf(currentMesh.parent);
690
+ if (loadedTransformNodeIndex > -1) {
691
+ loadedTransformNodes.splice(loadedTransformNodeIndex, 1);
692
+ }
693
+ }
613
694
  currentMesh._waitingParentId = null;
614
695
  }
615
696
  if (currentMesh._waitingData.lods) {
616
697
  loadDetailLevels(scene, currentMesh);
617
698
  }
618
699
  }
700
+ // Remove unused transform nodes
701
+ for (var _i = 0, loadedTransformNodes_1 = loadedTransformNodes; _i < loadedTransformNodes_1.length; _i++) {
702
+ var transformNode_1 = loadedTransformNodes_1[_i];
703
+ transformNode_1.dispose();
704
+ }
619
705
  // link skeleton transform nodes
620
706
  for (index = 0, cache = scene.skeletons.length; index < cache; index++) {
621
707
  var skeleton = scene.skeletons[index];