@babylonjs/core 6.24.0 → 6.25.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 (378) hide show
  1. package/Buffers/buffer.align.d.ts +25 -0
  2. package/Buffers/buffer.align.js +120 -0
  3. package/Buffers/buffer.align.js.map +1 -0
  4. package/Buffers/buffer.d.ts +15 -3
  5. package/Buffers/buffer.js +27 -7
  6. package/Buffers/buffer.js.map +1 -1
  7. package/Buffers/index.d.ts +1 -0
  8. package/Buffers/index.js +1 -0
  9. package/Buffers/index.js.map +1 -1
  10. package/Cameras/Inputs/BaseCameraPointersInput.js +0 -3
  11. package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
  12. package/Cameras/Inputs/flyCameraMouseInput.js +1 -4
  13. package/Cameras/Inputs/flyCameraMouseInput.js.map +1 -1
  14. package/Cameras/Inputs/freeCameraMouseInput.js +0 -6
  15. package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
  16. package/Cameras/RigModes/index.d.ts +0 -1
  17. package/Cameras/RigModes/index.js +0 -1
  18. package/Cameras/RigModes/index.js.map +1 -1
  19. package/Cameras/RigModes/vrRigMode.js +1 -1
  20. package/Cameras/RigModes/vrRigMode.js.map +1 -1
  21. package/Cameras/VR/index.d.ts +0 -1
  22. package/Cameras/VR/index.js +0 -1
  23. package/Cameras/VR/index.js.map +1 -1
  24. package/Cameras/VR/vrExperienceHelper.d.ts +7 -66
  25. package/Cameras/VR/vrExperienceHelper.js +17 -702
  26. package/Cameras/VR/vrExperienceHelper.js.map +1 -1
  27. package/Cameras/camera.d.ts +15 -20
  28. package/Cameras/camera.js +41 -36
  29. package/Cameras/camera.js.map +1 -1
  30. package/Cameras/targetCamera.js +1 -1
  31. package/Cameras/targetCamera.js.map +1 -1
  32. package/Debug/debugLayer.js +2 -2
  33. package/Debug/debugLayer.js.map +1 -1
  34. package/Engines/Extensions/index.d.ts +0 -1
  35. package/Engines/Extensions/index.js +0 -1
  36. package/Engines/Extensions/index.js.map +1 -1
  37. package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +4 -0
  38. package/Engines/WebGL/webGLRenderTargetWrapper.js +4 -0
  39. package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
  40. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +8 -7
  41. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  42. package/Engines/WebGPU/webgpuCacheSampler.js +1 -1
  43. package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
  44. package/Engines/WebGPU/webgpuTintWASM.js +4 -10
  45. package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
  46. package/Engines/constants.d.ts +0 -4
  47. package/Engines/constants.js +0 -4
  48. package/Engines/constants.js.map +1 -1
  49. package/Engines/engine.d.ts +38 -258
  50. package/Engines/engine.js +0 -65
  51. package/Engines/engine.js.map +1 -1
  52. package/Engines/engineFactory.js +9 -14
  53. package/Engines/engineFactory.js.map +1 -1
  54. package/Engines/engineFeatures.d.ts +2 -0
  55. package/Engines/engineFeatures.js.map +1 -1
  56. package/Engines/nativeEngine.js +1 -0
  57. package/Engines/nativeEngine.js.map +1 -1
  58. package/Engines/nullEngine.js +1 -0
  59. package/Engines/nullEngine.js.map +1 -1
  60. package/Engines/thinEngine.d.ts +22 -5
  61. package/Engines/thinEngine.js +55 -22
  62. package/Engines/thinEngine.js.map +1 -1
  63. package/Engines/webgpuEngine.d.ts +1 -0
  64. package/Engines/webgpuEngine.js +9 -14
  65. package/Engines/webgpuEngine.js.map +1 -1
  66. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.d.ts +9 -8
  67. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js +34 -16
  68. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js.map +1 -1
  69. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.d.ts +4 -3
  70. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js +14 -6
  71. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js.map +1 -1
  72. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.d.ts +19 -14
  73. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js +64 -27
  74. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js.map +1 -1
  75. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.d.ts +39 -41
  76. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js +152 -74
  77. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js.map +1 -1
  78. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.d.ts +13 -12
  79. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js +42 -21
  80. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js.map +1 -1
  81. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.d.ts +17 -13
  82. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js +62 -26
  83. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js.map +1 -1
  84. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.d.ts +13 -9
  85. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js +46 -18
  86. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js.map +1 -1
  87. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.d.ts +4 -1
  88. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js +6 -2
  89. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js.map +1 -1
  90. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.d.ts +3 -1
  91. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js +7 -2
  92. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js.map +1 -1
  93. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.d.ts +5 -3
  94. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js +10 -5
  95. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js.map +1 -1
  96. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.d.ts +4 -1
  97. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js +6 -2
  98. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js.map +1 -1
  99. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.d.ts +3 -1
  100. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js +7 -2
  101. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js.map +1 -1
  102. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.d.ts +3 -1
  103. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js +7 -2
  104. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js.map +1 -1
  105. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.d.ts +4 -1
  106. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js +6 -2
  107. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js.map +1 -1
  108. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +6 -2
  109. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +12 -3
  110. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -1
  111. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.d.ts +5 -3
  112. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +11 -6
  113. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
  114. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +1 -0
  115. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +7 -2
  116. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -1
  117. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.d.ts +1 -0
  118. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js +7 -2
  119. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js.map +1 -1
  120. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.d.ts +3 -1
  121. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js +7 -2
  122. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js.map +1 -1
  123. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.d.ts +3 -1
  124. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js +8 -3
  125. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js.map +1 -1
  126. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.d.ts +3 -1
  127. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js +7 -2
  128. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js.map +1 -1
  129. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.d.ts +3 -1
  130. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js +7 -2
  131. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js.map +1 -1
  132. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.d.ts +3 -1
  133. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js +7 -2
  134. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js.map +1 -1
  135. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.d.ts +3 -1
  136. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js +7 -2
  137. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js.map +1 -1
  138. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.d.ts +3 -1
  139. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js +7 -2
  140. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js.map +1 -1
  141. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.d.ts +3 -1
  142. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js +7 -2
  143. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js.map +1 -1
  144. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.d.ts +3 -1
  145. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js +7 -2
  146. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js.map +1 -1
  147. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.d.ts +3 -1
  148. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js +7 -2
  149. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js.map +1 -1
  150. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.d.ts +3 -1
  151. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js +7 -2
  152. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js.map +1 -1
  153. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.d.ts +6 -3
  154. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js +22 -16
  155. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js.map +1 -1
  156. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.d.ts +7 -4
  157. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js +15 -10
  158. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js.map +1 -1
  159. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.d.ts +3 -1
  160. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js +7 -2
  161. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js.map +1 -1
  162. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.d.ts +3 -1
  163. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js +8 -3
  164. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js.map +1 -1
  165. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.d.ts +7 -4
  166. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js +14 -7
  167. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js.map +1 -1
  168. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.d.ts +5 -3
  169. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js +9 -4
  170. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js.map +1 -1
  171. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +3 -1
  172. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +7 -2
  173. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -1
  174. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.d.ts +3 -1
  175. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js +8 -3
  176. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js.map +1 -1
  177. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.d.ts +3 -1
  178. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js +7 -2
  179. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js.map +1 -1
  180. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +3 -1
  181. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +7 -2
  182. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
  183. package/FlowGraph/flowGraph.d.ts +41 -3
  184. package/FlowGraph/flowGraph.js +135 -0
  185. package/FlowGraph/flowGraph.js.map +1 -1
  186. package/FlowGraph/flowGraphAsyncExecutionBlock.d.ts +2 -1
  187. package/FlowGraph/flowGraphAsyncExecutionBlock.js +2 -2
  188. package/FlowGraph/flowGraphAsyncExecutionBlock.js.map +1 -1
  189. package/FlowGraph/flowGraphBlock.d.ts +15 -3
  190. package/FlowGraph/flowGraphBlock.js +50 -7
  191. package/FlowGraph/flowGraphBlock.js.map +1 -1
  192. package/FlowGraph/flowGraphConnection.d.ts +34 -4
  193. package/FlowGraph/flowGraphConnection.js +49 -3
  194. package/FlowGraph/flowGraphConnection.js.map +1 -1
  195. package/FlowGraph/flowGraphContext.d.ts +25 -5
  196. package/FlowGraph/flowGraphContext.js +86 -4
  197. package/FlowGraph/flowGraphContext.js.map +1 -1
  198. package/FlowGraph/flowGraphCoordinator.d.ts +7 -1
  199. package/FlowGraph/flowGraphCoordinator.js +18 -2
  200. package/FlowGraph/flowGraphCoordinator.js.map +1 -1
  201. package/FlowGraph/flowGraphDataConnection.d.ts +4 -11
  202. package/FlowGraph/flowGraphDataConnection.js +16 -14
  203. package/FlowGraph/flowGraphDataConnection.js.map +1 -1
  204. package/FlowGraph/flowGraphExecutionBlock.d.ts +8 -3
  205. package/FlowGraph/flowGraphExecutionBlock.js +37 -6
  206. package/FlowGraph/flowGraphExecutionBlock.js.map +1 -1
  207. package/FlowGraph/flowGraphRichTypes.d.ts +5 -9
  208. package/FlowGraph/flowGraphRichTypes.js +29 -44
  209. package/FlowGraph/flowGraphRichTypes.js.map +1 -1
  210. package/FlowGraph/flowGraphSignalConnection.js +2 -0
  211. package/FlowGraph/flowGraphSignalConnection.js.map +1 -1
  212. package/FlowGraph/flowGraphVariableDefinitions.d.ts +22 -2
  213. package/FlowGraph/flowGraphVariableDefinitions.js +29 -0
  214. package/FlowGraph/flowGraphVariableDefinitions.js.map +1 -1
  215. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +2 -1
  216. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +2 -2
  217. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -1
  218. package/Gamepads/gamepadManager.js +0 -5
  219. package/Gamepads/gamepadManager.js.map +1 -1
  220. package/Gamepads/index.d.ts +0 -1
  221. package/Gamepads/index.js +0 -2
  222. package/Gamepads/index.js.map +1 -1
  223. package/Gizmos/gizmo.js +1 -4
  224. package/Gizmos/gizmo.js.map +1 -1
  225. package/Materials/GreasedLine/greasedLineMaterialDefaults.d.ts +24 -0
  226. package/Materials/GreasedLine/greasedLineMaterialDefaults.js +19 -0
  227. package/Materials/GreasedLine/greasedLineMaterialDefaults.js.map +1 -0
  228. package/Materials/GreasedLine/greasedLineMaterialInterfaces.d.ts +243 -0
  229. package/Materials/GreasedLine/greasedLineMaterialInterfaces.js +55 -0
  230. package/Materials/GreasedLine/greasedLineMaterialInterfaces.js.map +1 -0
  231. package/Materials/GreasedLine/greasedLinePluginMaterial.d.ts +253 -0
  232. package/Materials/{greasedLinePluginMaterial.js → GreasedLine/greasedLinePluginMaterial.js} +148 -205
  233. package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -0
  234. package/Materials/{greasedLineSimpleMaterial.d.ts → GreasedLine/greasedLineSimpleMaterial.d.ts} +20 -48
  235. package/Materials/{greasedLineSimpleMaterial.js → GreasedLine/greasedLineSimpleMaterial.js} +74 -91
  236. package/Materials/GreasedLine/greasedLineSimpleMaterial.js.map +1 -0
  237. package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +1 -1
  238. package/Materials/Node/Blocks/Input/prePassTextureBlock.js.map +1 -1
  239. package/Materials/Node/nodeMaterial.js +2 -2
  240. package/Materials/Node/nodeMaterial.js.map +1 -1
  241. package/Materials/Textures/texture.js +1 -0
  242. package/Materials/Textures/texture.js.map +1 -1
  243. package/Materials/index.d.ts +4 -1
  244. package/Materials/index.js +4 -1
  245. package/Materials/index.js.map +1 -1
  246. package/Materials/shadowDepthWrapper.d.ts +1 -0
  247. package/Materials/shadowDepthWrapper.js +17 -4
  248. package/Materials/shadowDepthWrapper.js.map +1 -1
  249. package/Maths/math.vector.d.ts +32 -22
  250. package/Maths/math.vector.js +54 -43
  251. package/Maths/math.vector.js.map +1 -1
  252. package/Meshes/Builders/greasedLineBuilder.d.ts +7 -6
  253. package/Meshes/Builders/greasedLineBuilder.js +65 -31
  254. package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
  255. package/Meshes/Compression/dracoCompression.js +7 -7
  256. package/Meshes/Compression/dracoCompression.js.map +1 -1
  257. package/Meshes/Compression/meshoptCompression.js +2 -2
  258. package/Meshes/Compression/meshoptCompression.js.map +1 -1
  259. package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +216 -0
  260. package/Meshes/GreasedLine/greasedLineBaseMesh.js +247 -0
  261. package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -0
  262. package/Meshes/GreasedLine/greasedLineMesh.d.ts +93 -0
  263. package/Meshes/{greasedLineMesh.js → GreasedLine/greasedLineMesh.js} +29 -223
  264. package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -0
  265. package/Meshes/GreasedLine/greasedLineRibbonMesh.d.ts +107 -0
  266. package/Meshes/GreasedLine/greasedLineRibbonMesh.js +462 -0
  267. package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -0
  268. package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.d.ts +1 -1
  269. package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.js.map +1 -1
  270. package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +9 -2
  271. package/Meshes/Node/Blocks/Sources/meshBlock.js +17 -5
  272. package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -1
  273. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.d.ts +15 -0
  274. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js +50 -1
  275. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js.map +1 -1
  276. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js +5 -5
  277. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js.map +1 -1
  278. package/Meshes/Node/nodeGeometry.d.ts +1 -2
  279. package/Meshes/Node/nodeGeometry.js +5 -6
  280. package/Meshes/Node/nodeGeometry.js.map +1 -1
  281. package/Meshes/Node/nodeGeometryBlock.d.ts +1 -2
  282. package/Meshes/Node/nodeGeometryBlock.js +1 -2
  283. package/Meshes/Node/nodeGeometryBlock.js.map +1 -1
  284. package/Meshes/geometry.js +6 -12
  285. package/Meshes/geometry.js.map +1 -1
  286. package/Meshes/index.d.ts +3 -1
  287. package/Meshes/index.js +3 -1
  288. package/Meshes/index.js.map +1 -1
  289. package/Meshes/instancedMesh.js +9 -9
  290. package/Meshes/instancedMesh.js.map +1 -1
  291. package/Meshes/mesh.d.ts +4 -0
  292. package/Meshes/mesh.js +10 -1
  293. package/Meshes/mesh.js.map +1 -1
  294. package/Misc/basis.js +4 -4
  295. package/Misc/basis.js.map +1 -1
  296. package/Misc/deepCopier.js +3 -0
  297. package/Misc/deepCopier.js.map +1 -1
  298. package/Misc/fileTools.d.ts +2 -0
  299. package/Misc/fileTools.js +12 -3
  300. package/Misc/fileTools.js.map +1 -1
  301. package/Misc/greasedLineTools.d.ts +52 -5
  302. package/Misc/greasedLineTools.js +180 -10
  303. package/Misc/greasedLineTools.js.map +1 -1
  304. package/Misc/khronosTextureContainer2.js +21 -24
  305. package/Misc/khronosTextureContainer2.js.map +1 -1
  306. package/Misc/tools.d.ts +42 -2
  307. package/Misc/tools.js +102 -2
  308. package/Misc/tools.js.map +1 -1
  309. package/Particles/solidParticleSystem.d.ts +1 -1
  310. package/Particles/solidParticleSystem.js +2 -2
  311. package/Particles/solidParticleSystem.js.map +1 -1
  312. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +9 -2
  313. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
  314. package/PostProcesses/motionBlurPostProcess.js +4 -1
  315. package/PostProcesses/motionBlurPostProcess.js.map +1 -1
  316. package/PostProcesses/postProcess.js +1 -6
  317. package/PostProcesses/postProcess.js.map +1 -1
  318. package/Rendering/geometryBufferRenderer.js +4 -0
  319. package/Rendering/geometryBufferRenderer.js.map +1 -1
  320. package/Shaders/ShadersInclude/bonesDeclaration.js +1 -1
  321. package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
  322. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +1 -2
  323. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  324. package/Shaders/greasedLine.fragment.js +2 -5
  325. package/Shaders/greasedLine.fragment.js.map +1 -1
  326. package/Shaders/greasedLine.vertex.js +15 -4
  327. package/Shaders/greasedLine.vertex.js.map +1 -1
  328. package/XR/webXRDefaultExperience.d.ts +1 -1
  329. package/XR/webXRDefaultExperience.js +1 -1
  330. package/XR/webXRDefaultExperience.js.map +1 -1
  331. package/package.json +1 -1
  332. package/scene.d.ts +17 -10
  333. package/scene.js +25 -30
  334. package/scene.js.map +1 -1
  335. package/Cameras/RigModes/webVRRigMode.d.ts +0 -5
  336. package/Cameras/RigModes/webVRRigMode.js +0 -34
  337. package/Cameras/RigModes/webVRRigMode.js.map +0 -1
  338. package/Cameras/VR/webVRCamera.d.ts +0 -316
  339. package/Cameras/VR/webVRCamera.js +0 -618
  340. package/Cameras/VR/webVRCamera.js.map +0 -1
  341. package/Engines/Extensions/engine.webVR.d.ts +0 -91
  342. package/Engines/Extensions/engine.webVR.js +0 -195
  343. package/Engines/Extensions/engine.webVR.js.map +0 -1
  344. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.d.ts +0 -23
  345. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js +0 -18
  346. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js.map +0 -1
  347. package/Gamepads/Controllers/daydreamController.d.ts +0 -38
  348. package/Gamepads/Controllers/daydreamController.js +0 -70
  349. package/Gamepads/Controllers/daydreamController.js.map +0 -1
  350. package/Gamepads/Controllers/gearVRController.d.ts +0 -39
  351. package/Gamepads/Controllers/gearVRController.js +0 -79
  352. package/Gamepads/Controllers/gearVRController.js.map +0 -1
  353. package/Gamepads/Controllers/genericController.d.ts +0 -34
  354. package/Gamepads/Controllers/genericController.js +0 -48
  355. package/Gamepads/Controllers/genericController.js.map +0 -1
  356. package/Gamepads/Controllers/index.d.ts +0 -8
  357. package/Gamepads/Controllers/index.js +0 -9
  358. package/Gamepads/Controllers/index.js.map +0 -1
  359. package/Gamepads/Controllers/oculusTouchController.d.ts +0 -78
  360. package/Gamepads/Controllers/oculusTouchController.js +0 -196
  361. package/Gamepads/Controllers/oculusTouchController.js.map +0 -1
  362. package/Gamepads/Controllers/poseEnabledController.d.ts +0 -219
  363. package/Gamepads/Controllers/poseEnabledController.js +0 -293
  364. package/Gamepads/Controllers/poseEnabledController.js.map +0 -1
  365. package/Gamepads/Controllers/viveController.d.ts +0 -52
  366. package/Gamepads/Controllers/viveController.js +0 -115
  367. package/Gamepads/Controllers/viveController.js.map +0 -1
  368. package/Gamepads/Controllers/webVRController.d.ts +0 -85
  369. package/Gamepads/Controllers/webVRController.js +0 -122
  370. package/Gamepads/Controllers/webVRController.js.map +0 -1
  371. package/Gamepads/Controllers/windowsMotionController.d.ts +0 -212
  372. package/Gamepads/Controllers/windowsMotionController.js +0 -519
  373. package/Gamepads/Controllers/windowsMotionController.js.map +0 -1
  374. package/Materials/greasedLinePluginMaterial.d.ts +0 -496
  375. package/Materials/greasedLinePluginMaterial.js.map +0 -1
  376. package/Materials/greasedLineSimpleMaterial.js.map +0 -1
  377. package/Meshes/greasedLineMesh.d.ts +0 -204
  378. package/Meshes/greasedLineMesh.js.map +0 -1
@@ -1,53 +1,54 @@
1
1
  import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock";
2
2
  import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock";
3
+ import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
3
4
  /**
4
5
  * @experimental
5
6
  * Performs a bitwise AND operation on two numbers.
6
7
  */
7
8
  export declare class FlowGraphBitwiseAndBlock extends FlowGraphBinaryOperationBlock<number, number, number> {
8
- constructor();
9
+ constructor(config?: IFlowGraphBlockConfiguration);
9
10
  }
10
11
  /**
11
12
  * @experimental
12
13
  * Performs a bitwise OR operation on two numbers.
13
14
  */
14
15
  export declare class FlowGraphBitwiseOrBlock extends FlowGraphBinaryOperationBlock<number, number, number> {
15
- constructor();
16
+ constructor(config?: IFlowGraphBlockConfiguration);
16
17
  }
17
18
  /**
18
19
  * @experimental
19
20
  * Performs a bitwise XOR operation on two numbers.
20
21
  */
21
22
  export declare class FlowGraphBitwiseXorBlock extends FlowGraphBinaryOperationBlock<number, number, number> {
22
- constructor();
23
+ constructor(config?: IFlowGraphBlockConfiguration);
23
24
  }
24
25
  /**
25
26
  * @experimental
26
27
  * Performs a bitwise NOT operation on a number.
27
28
  */
28
29
  export declare class FlowGraphBitwiseNotBlock extends FlowGraphUnaryOperationBlock<number, number> {
29
- constructor();
30
+ constructor(config?: IFlowGraphBlockConfiguration);
30
31
  }
31
32
  /**
32
33
  * @experimental
33
34
  * Left shifts a number by a specified amount.
34
35
  */
35
36
  export declare class FlowGraphBitwiseLeftShiftBlock extends FlowGraphBinaryOperationBlock<number, number, number> {
36
- constructor();
37
+ constructor(config?: IFlowGraphBlockConfiguration);
37
38
  }
38
39
  /**
39
40
  * @experimental
40
41
  * Right shifts a number by a specified amount.
41
42
  */
42
43
  export declare class FlowGraphBitwiseRightShiftBlock extends FlowGraphBinaryOperationBlock<number, number, number> {
43
- constructor();
44
+ constructor(config?: IFlowGraphBlockConfiguration);
44
45
  }
45
46
  /**
46
47
  * @experimental
47
48
  * Counts the leading zero bits of a number
48
49
  */
49
50
  export declare class FlowGraphCountLeadingZerosBlock extends FlowGraphUnaryOperationBlock<number, number> {
50
- constructor();
51
+ constructor(config?: IFlowGraphBlockConfiguration);
51
52
  }
52
53
  /**
53
54
  * @experimental
@@ -55,5 +56,5 @@ export declare class FlowGraphCountLeadingZerosBlock extends FlowGraphUnaryOpera
55
56
  */
56
57
  export declare class FlowGraphCountTrailingZerosBlock extends FlowGraphUnaryOperationBlock<number, number> {
57
58
  private _ctrz;
58
- constructor();
59
+ constructor(config?: IFlowGraphBlockConfiguration);
59
60
  }
@@ -1,69 +1,86 @@
1
1
  import { RichTypeNumber } from "../../../flowGraphRichTypes.js";
2
2
  import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock.js";
3
3
  import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock.js";
4
+ import { RegisterClass } from "../../../../Misc/typeStore.js";
5
+ const PREFIX = "FGBitwise";
6
+ const AND = "AndBlock";
7
+ const OR = "OrBlock";
8
+ const XOR = "XorBlock";
9
+ const NOT = "NotBlock";
10
+ const LSHIFT = "LeftShiftBlock";
11
+ const RSHIFT = "RightShiftBlock";
12
+ const CLZ = "CountLeadingZerosBlock";
13
+ const CTZ = "CountTrailingZerosBlock";
4
14
  /**
5
15
  * @experimental
6
16
  * Performs a bitwise AND operation on two numbers.
7
17
  */
8
18
  export class FlowGraphBitwiseAndBlock extends FlowGraphBinaryOperationBlock {
9
- constructor() {
10
- super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left & right);
19
+ constructor(config) {
20
+ super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left & right, `${PREFIX}${AND}`, config);
11
21
  }
12
22
  }
23
+ RegisterClass(`${PREFIX}${AND}`, FlowGraphBitwiseAndBlock);
13
24
  /**
14
25
  * @experimental
15
26
  * Performs a bitwise OR operation on two numbers.
16
27
  */
17
28
  export class FlowGraphBitwiseOrBlock extends FlowGraphBinaryOperationBlock {
18
- constructor() {
19
- super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left | right);
29
+ constructor(config) {
30
+ super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left | right, `${PREFIX}${OR}`, config);
20
31
  }
21
32
  }
33
+ RegisterClass(`${PREFIX}${OR}`, FlowGraphBitwiseOrBlock);
22
34
  /**
23
35
  * @experimental
24
36
  * Performs a bitwise XOR operation on two numbers.
25
37
  */
26
38
  export class FlowGraphBitwiseXorBlock extends FlowGraphBinaryOperationBlock {
27
- constructor() {
28
- super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left ^ right);
39
+ constructor(config) {
40
+ super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left ^ right, `${PREFIX}${XOR}`, config);
29
41
  }
30
42
  }
43
+ RegisterClass(`${PREFIX}${XOR}`, FlowGraphBitwiseXorBlock);
31
44
  /**
32
45
  * @experimental
33
46
  * Performs a bitwise NOT operation on a number.
34
47
  */
35
48
  export class FlowGraphBitwiseNotBlock extends FlowGraphUnaryOperationBlock {
36
- constructor() {
37
- super(RichTypeNumber, RichTypeNumber, (value) => ~value);
49
+ constructor(config) {
50
+ super(RichTypeNumber, RichTypeNumber, (value) => ~value, `${PREFIX}${NOT}`, config);
38
51
  }
39
52
  }
53
+ RegisterClass(`${PREFIX}${NOT}`, FlowGraphBitwiseNotBlock);
40
54
  /**
41
55
  * @experimental
42
56
  * Left shifts a number by a specified amount.
43
57
  */
44
58
  export class FlowGraphBitwiseLeftShiftBlock extends FlowGraphBinaryOperationBlock {
45
- constructor() {
46
- super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left << right);
59
+ constructor(config) {
60
+ super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left << right, `${PREFIX}${LSHIFT}`, config);
47
61
  }
48
62
  }
63
+ RegisterClass(`${PREFIX}${LSHIFT}`, FlowGraphBitwiseLeftShiftBlock);
49
64
  /**
50
65
  * @experimental
51
66
  * Right shifts a number by a specified amount.
52
67
  */
53
68
  export class FlowGraphBitwiseRightShiftBlock extends FlowGraphBinaryOperationBlock {
54
- constructor() {
55
- super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left >> right);
69
+ constructor(config) {
70
+ super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left >> right, `${PREFIX}${RSHIFT}`, config);
56
71
  }
57
72
  }
73
+ RegisterClass(`${PREFIX}${RSHIFT}`, FlowGraphBitwiseRightShiftBlock);
58
74
  /**
59
75
  * @experimental
60
76
  * Counts the leading zero bits of a number
61
77
  */
62
78
  export class FlowGraphCountLeadingZerosBlock extends FlowGraphUnaryOperationBlock {
63
- constructor() {
64
- super(RichTypeNumber, RichTypeNumber, (value) => Math.clz32(value));
79
+ constructor(config) {
80
+ super(RichTypeNumber, RichTypeNumber, (value) => Math.clz32(value), `${PREFIX}${CLZ}`, config);
65
81
  }
66
82
  }
83
+ RegisterClass(`${PREFIX}${CLZ}`, FlowGraphCountLeadingZerosBlock);
67
84
  /**
68
85
  * @experimental
69
86
  * Counts the trailing zero bits of a number
@@ -79,8 +96,9 @@ export class FlowGraphCountTrailingZerosBlock extends FlowGraphUnaryOperationBlo
79
96
  integer &= -integer; // equivalent to `int = int & (~int + 1)`
80
97
  return 31 - Math.clz32(integer);
81
98
  }
82
- constructor() {
83
- super(RichTypeNumber, RichTypeNumber, (value) => this._ctrz(value));
99
+ constructor(config) {
100
+ super(RichTypeNumber, RichTypeNumber, (value) => this._ctrz(value), `${PREFIX}${CTZ}`, config);
84
101
  }
85
102
  }
103
+ RegisterClass(`${PREFIX}${CTZ}`, FlowGraphCountTrailingZerosBlock);
86
104
  //# sourceMappingURL=flowGraphBitwiseBlocks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphBitwiseBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAE/E;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,6BAAqD;IAC/F;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACzF,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,uBAAwB,SAAQ,6BAAqD;IAC9F;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACzF,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,6BAAqD;IAC/F;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACzF,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,4BAA4C;IACtF;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,8BAA+B,SAAQ,6BAAqD;IACrG;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAC1F,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,+BAAgC,SAAQ,6BAAqD;IACtG;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAC1F,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,+BAAgC,SAAQ,4BAA4C;IAC7F;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,gCAAiC,SAAQ,4BAA4C;IAC9F,+IAA+I;IACvI,KAAK,CAAC,OAAe;QACzB,OAAO,MAAM,CAAC,CAAC,CAAC,mBAAmB;QACnC,IAAI,OAAO,KAAK,CAAC,EAAE;YACf,6CAA6C;YAC7C,OAAO,EAAE,CAAC;SACb;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,yCAAyC;QAC9D,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;QACI,KAAK,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;CACJ","sourcesContent":["import { RichTypeNumber } from \"../../../flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise AND operation on two numbers.\r\n */\r\nexport class FlowGraphBitwiseAndBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left & right);\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise OR operation on two numbers.\r\n */\r\nexport class FlowGraphBitwiseOrBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left | right);\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise XOR operation on two numbers.\r\n */\r\nexport class FlowGraphBitwiseXorBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left ^ right);\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise NOT operation on a number.\r\n */\r\nexport class FlowGraphBitwiseNotBlock extends FlowGraphUnaryOperationBlock<number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, (value) => ~value);\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Left shifts a number by a specified amount.\r\n */\r\nexport class FlowGraphBitwiseLeftShiftBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left << right);\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Right shifts a number by a specified amount.\r\n */\r\nexport class FlowGraphBitwiseRightShiftBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left >> right);\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Counts the leading zero bits of a number\r\n */\r\nexport class FlowGraphCountLeadingZerosBlock extends FlowGraphUnaryOperationBlock<number, number> {\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, (value) => Math.clz32(value));\r\n }\r\n}\r\n\r\n/**\r\n * @experimental\r\n * Counts the trailing zero bits of a number\r\n */\r\nexport class FlowGraphCountTrailingZerosBlock extends FlowGraphUnaryOperationBlock<number, number> {\r\n // from: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32#implementing_count_leading_ones_and_beyond\r\n private _ctrz(integer: number) {\r\n integer >>>= 0; // coerce to Uint32\r\n if (integer === 0) {\r\n // skipping this step would make it return -1\r\n return 32;\r\n }\r\n integer &= -integer; // equivalent to `int = int & (~int + 1)`\r\n return 31 - Math.clz32(integer);\r\n }\r\n\r\n constructor() {\r\n super(RichTypeNumber, RichTypeNumber, (value) => this._ctrz(value));\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphBitwiseBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.ts"],"names":[],"mappings":"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","sourcesContent":["import { RichTypeNumber } from \"../../../flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\n\r\nconst PREFIX = \"FGBitwise\";\r\nconst AND = \"AndBlock\";\r\nconst OR = \"OrBlock\";\r\nconst XOR = \"XorBlock\";\r\nconst NOT = \"NotBlock\";\r\nconst LSHIFT = \"LeftShiftBlock\";\r\nconst RSHIFT = \"RightShiftBlock\";\r\nconst CLZ = \"CountLeadingZerosBlock\";\r\nconst CTZ = \"CountTrailingZerosBlock\";\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise AND operation on two numbers.\r\n */\r\nexport class FlowGraphBitwiseAndBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left & right, `${PREFIX}${AND}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${AND}`, FlowGraphBitwiseAndBlock);\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise OR operation on two numbers.\r\n */\r\nexport class FlowGraphBitwiseOrBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left | right, `${PREFIX}${OR}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${OR}`, FlowGraphBitwiseOrBlock);\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise XOR operation on two numbers.\r\n */\r\nexport class FlowGraphBitwiseXorBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left ^ right, `${PREFIX}${XOR}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${XOR}`, FlowGraphBitwiseXorBlock);\r\n\r\n/**\r\n * @experimental\r\n * Performs a bitwise NOT operation on a number.\r\n */\r\nexport class FlowGraphBitwiseNotBlock extends FlowGraphUnaryOperationBlock<number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, (value) => ~value, `${PREFIX}${NOT}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${NOT}`, FlowGraphBitwiseNotBlock);\r\n\r\n/**\r\n * @experimental\r\n * Left shifts a number by a specified amount.\r\n */\r\nexport class FlowGraphBitwiseLeftShiftBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left << right, `${PREFIX}${LSHIFT}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${LSHIFT}`, FlowGraphBitwiseLeftShiftBlock);\r\n\r\n/**\r\n * @experimental\r\n * Right shifts a number by a specified amount.\r\n */\r\nexport class FlowGraphBitwiseRightShiftBlock extends FlowGraphBinaryOperationBlock<number, number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, RichTypeNumber, (left, right) => left >> right, `${PREFIX}${RSHIFT}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${RSHIFT}`, FlowGraphBitwiseRightShiftBlock);\r\n\r\n/**\r\n * @experimental\r\n * Counts the leading zero bits of a number\r\n */\r\nexport class FlowGraphCountLeadingZerosBlock extends FlowGraphUnaryOperationBlock<number, number> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, (value) => Math.clz32(value), `${PREFIX}${CLZ}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${CLZ}`, FlowGraphCountLeadingZerosBlock);\r\n\r\n/**\r\n * @experimental\r\n * Counts the trailing zero bits of a number\r\n */\r\nexport class FlowGraphCountTrailingZerosBlock extends FlowGraphUnaryOperationBlock<number, number> {\r\n // from: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32#implementing_count_leading_ones_and_beyond\r\n private _ctrz(integer: number) {\r\n integer >>>= 0; // coerce to Uint32\r\n if (integer === 0) {\r\n // skipping this step would make it return -1\r\n return 32;\r\n }\r\n integer &= -integer; // equivalent to `int = int & (~int + 1)`\r\n return 31 - Math.clz32(integer);\r\n }\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeNumber, RichTypeNumber, (value) => this._ctrz(value), `${PREFIX}${CTZ}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${CTZ}`, FlowGraphCountTrailingZerosBlock);\r\n"]}
@@ -1,23 +1,24 @@
1
1
  import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock";
2
2
  import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock";
3
+ import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
3
4
  /**
4
5
  * Performs an AND operation on two boolean values.
5
6
  * @experimental
6
7
  */
7
8
  export declare class FlowGraphLogicAndBlock extends FlowGraphBinaryOperationBlock<boolean, boolean, boolean> {
8
- constructor();
9
+ constructor(config: IFlowGraphBlockConfiguration);
9
10
  }
10
11
  /**
11
12
  * Performs an OR operation on two boolean values.
12
13
  * @experimental
13
14
  */
14
15
  export declare class FlowGraphLogicOrBlock extends FlowGraphBinaryOperationBlock<boolean, boolean, boolean> {
15
- constructor();
16
+ constructor(config: IFlowGraphBlockConfiguration);
16
17
  }
17
18
  /**
18
19
  * Performs a NOT operation on a boolean value
19
20
  * @experimental
20
21
  */
21
22
  export declare class FlowGraphLogicNotBlock extends FlowGraphUnaryOperationBlock<boolean, boolean> {
22
- constructor();
23
+ constructor(config: IFlowGraphBlockConfiguration);
23
24
  }
@@ -1,31 +1,39 @@
1
1
  import { RichTypeBoolean } from "../../../flowGraphRichTypes.js";
2
2
  import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock.js";
3
3
  import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock.js";
4
+ import { RegisterClass } from "../../../../Misc/typeStore.js";
5
+ const PREFIX = "FGLogic";
6
+ const AND = "AndBlock";
7
+ const OR = "OrBlock";
8
+ const NOT = "NotBlock";
4
9
  /**
5
10
  * Performs an AND operation on two boolean values.
6
11
  * @experimental
7
12
  */
8
13
  export class FlowGraphLogicAndBlock extends FlowGraphBinaryOperationBlock {
9
- constructor() {
10
- super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left && right);
14
+ constructor(config) {
15
+ super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left && right, `${PREFIX}${AND}`, config);
11
16
  }
12
17
  }
18
+ RegisterClass(`${PREFIX}${AND}`, FlowGraphLogicAndBlock);
13
19
  /**
14
20
  * Performs an OR operation on two boolean values.
15
21
  * @experimental
16
22
  */
17
23
  export class FlowGraphLogicOrBlock extends FlowGraphBinaryOperationBlock {
18
- constructor() {
19
- super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left || right);
24
+ constructor(config) {
25
+ super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left || right, `${PREFIX}${OR}`, config);
20
26
  }
21
27
  }
28
+ RegisterClass(`${PREFIX}${OR}`, FlowGraphLogicOrBlock);
22
29
  /**
23
30
  * Performs a NOT operation on a boolean value
24
31
  * @experimental
25
32
  */
26
33
  export class FlowGraphLogicNotBlock extends FlowGraphUnaryOperationBlock {
27
- constructor() {
28
- super(RichTypeBoolean, RichTypeBoolean, (value) => !value);
34
+ constructor(config) {
35
+ super(RichTypeBoolean, RichTypeBoolean, (value) => !value, `${PREFIX}${NOT}`, config);
29
36
  }
30
37
  }
38
+ RegisterClass(`${PREFIX}${NOT}`, FlowGraphLogicNotBlock);
31
39
  //# sourceMappingURL=flowGraphLogicBlocks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphLogicBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uCAA0C;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAE/E;;;GAGG;AACH,MAAM,OAAO,sBAAuB,SAAQ,6BAAwD;IAChG;QACI,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAC7F,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,qBAAsB,SAAQ,6BAAwD;IAC/F;QACI,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;IAC7F,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,OAAO,sBAAuB,SAAQ,4BAA8C;IACtF;QACI,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;CACJ","sourcesContent":["import { RichTypeBoolean } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\n\r\n/**\r\n * Performs an AND operation on two boolean values.\r\n * @experimental\r\n */\r\nexport class FlowGraphLogicAndBlock extends FlowGraphBinaryOperationBlock<boolean, boolean, boolean> {\r\n constructor() {\r\n super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left && right);\r\n }\r\n}\r\n\r\n/**\r\n * Performs an OR operation on two boolean values.\r\n * @experimental\r\n */\r\nexport class FlowGraphLogicOrBlock extends FlowGraphBinaryOperationBlock<boolean, boolean, boolean> {\r\n constructor() {\r\n super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left || right);\r\n }\r\n}\r\n\r\n/**\r\n * Performs a NOT operation on a boolean value\r\n * @experimental\r\n */\r\nexport class FlowGraphLogicNotBlock extends FlowGraphUnaryOperationBlock<boolean, boolean> {\r\n constructor() {\r\n super(RichTypeBoolean, RichTypeBoolean, (value) => !value);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphLogicBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uCAA0C;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,MAAM,GAAG,SAAS,CAAC;AACzB,MAAM,GAAG,GAAG,UAAU,CAAC;AACvB,MAAM,EAAE,GAAG,SAAS,CAAC;AACrB,MAAM,GAAG,GAAG,UAAU,CAAC;AAEvB;;;GAGG;AACH,MAAM,OAAO,sBAAuB,SAAQ,6BAAwD;IAChG,YAAY,MAAoC;QAC5C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,GAAG,MAAM,GAAG,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACxH,CAAC;CACJ;AACD,aAAa,CAAC,GAAG,MAAM,GAAG,GAAG,EAAE,EAAE,sBAAsB,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,qBAAsB,SAAQ,6BAAwD;IAC/F,YAAY,MAAoC;QAC5C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,EAAE,GAAG,MAAM,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACvH,CAAC;CACJ;AACD,aAAa,CAAC,GAAG,MAAM,GAAG,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAC;AAEvD;;;GAGG;AACH,MAAM,OAAO,sBAAuB,SAAQ,4BAA8C;IACtF,YAAY,MAAoC;QAC5C,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,MAAM,GAAG,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1F,CAAC;CACJ;AACD,aAAa,CAAC,GAAG,MAAM,GAAG,GAAG,EAAE,EAAE,sBAAsB,CAAC,CAAC","sourcesContent":["import { RichTypeBoolean } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\n\r\nconst PREFIX = \"FGLogic\";\r\nconst AND = \"AndBlock\";\r\nconst OR = \"OrBlock\";\r\nconst NOT = \"NotBlock\";\r\n\r\n/**\r\n * Performs an AND operation on two boolean values.\r\n * @experimental\r\n */\r\nexport class FlowGraphLogicAndBlock extends FlowGraphBinaryOperationBlock<boolean, boolean, boolean> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left && right, `${PREFIX}${AND}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${AND}`, FlowGraphLogicAndBlock);\r\n\r\n/**\r\n * Performs an OR operation on two boolean values.\r\n * @experimental\r\n */\r\nexport class FlowGraphLogicOrBlock extends FlowGraphBinaryOperationBlock<boolean, boolean, boolean> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeBoolean, RichTypeBoolean, RichTypeBoolean, (left, right) => left || right, `${PREFIX}${OR}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${OR}`, FlowGraphLogicOrBlock);\r\n\r\n/**\r\n * Performs a NOT operation on a boolean value\r\n * @experimental\r\n */\r\nexport class FlowGraphLogicNotBlock extends FlowGraphUnaryOperationBlock<boolean, boolean> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeBoolean, RichTypeBoolean, (value) => !value, `${PREFIX}${NOT}`, config);\r\n }\r\n}\r\nRegisterClass(`${PREFIX}${NOT}`, FlowGraphLogicNotBlock);\r\n"]}
@@ -1,6 +1,7 @@
1
1
  import { Matrix, Quaternion, Vector3 } from "../../../../Maths/math.vector";
2
2
  import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock";
3
3
  import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock";
4
+ import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
4
5
  import { FlowGraphBlock } from "../../../flowGraphBlock";
5
6
  import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
6
7
  import type { FlowGraphContext } from "../../../flowGraphContext";
@@ -10,7 +11,8 @@ import type { TransformNode } from "../../../../Meshes/transformNode";
10
11
  * @experimental
11
12
  */
12
13
  export declare class FlowGraphAddMatrixBlock extends FlowGraphBinaryOperationBlock<Matrix, Matrix, Matrix> {
13
- constructor();
14
+ private _cachedMatrix;
15
+ constructor(config?: IFlowGraphBlockConfiguration);
14
16
  }
15
17
  /**
16
18
  * Adds a matrix and a number together.
@@ -19,7 +21,7 @@ export declare class FlowGraphAddMatrixBlock extends FlowGraphBinaryOperationBlo
19
21
  export declare class FlowGraphAddMatrixAndNumberBlock extends FlowGraphBinaryOperationBlock<Matrix, number, Matrix> {
20
22
  private _cachedArray;
21
23
  private _cachedMatrix;
22
- constructor();
24
+ constructor(config?: IFlowGraphBlockConfiguration);
23
25
  }
24
26
  /**
25
27
  * Subtracts two matrices.
@@ -27,7 +29,7 @@ export declare class FlowGraphAddMatrixAndNumberBlock extends FlowGraphBinaryOpe
27
29
  */
28
30
  export declare class FlowGraphSubtractMatrixBlock extends FlowGraphBinaryOperationBlock<Matrix, Matrix, Matrix> {
29
31
  private _cachedMatrix;
30
- constructor();
32
+ constructor(config?: IFlowGraphBlockConfiguration);
31
33
  }
32
34
  /**
33
35
  * Subtracts a matrix and a number together.
@@ -36,7 +38,7 @@ export declare class FlowGraphSubtractMatrixBlock extends FlowGraphBinaryOperati
36
38
  export declare class FlowGraphSubtractMatrixAndNumberBlock extends FlowGraphBinaryOperationBlock<Matrix, number, Matrix> {
37
39
  private _cachedArray;
38
40
  private _cachedMatrix;
39
- constructor();
41
+ constructor(config?: IFlowGraphBlockConfiguration);
40
42
  }
41
43
  /**
42
44
  * Multiplies two matrices together.
@@ -44,7 +46,7 @@ export declare class FlowGraphSubtractMatrixAndNumberBlock extends FlowGraphBina
44
46
  */
45
47
  export declare class FlowGraphMultiplyMatrixBlock extends FlowGraphBinaryOperationBlock<Matrix, Matrix, Matrix> {
46
48
  private _cachedMatrix;
47
- constructor();
49
+ constructor(config?: IFlowGraphBlockConfiguration);
48
50
  }
49
51
  /**
50
52
  * Divides two matrices.
@@ -52,7 +54,7 @@ export declare class FlowGraphMultiplyMatrixBlock extends FlowGraphBinaryOperati
52
54
  */
53
55
  export declare class FlowGraphDivideMatrixBlock extends FlowGraphBinaryOperationBlock<Matrix, Matrix, Matrix> {
54
56
  private _cachedResultMatrix;
55
- constructor();
57
+ constructor(config?: IFlowGraphBlockConfiguration);
56
58
  }
57
59
  /**
58
60
  * Divides a matrix and a number together.
@@ -61,7 +63,7 @@ export declare class FlowGraphDivideMatrixBlock extends FlowGraphBinaryOperation
61
63
  export declare class FlowGraphDivideMatrixAndNumberBlock extends FlowGraphBinaryOperationBlock<Matrix, number, Matrix> {
62
64
  private _cachedArray;
63
65
  private _cachedMatrix;
64
- constructor();
66
+ constructor(config?: IFlowGraphBlockConfiguration);
65
67
  }
66
68
  /**
67
69
  * Scales a matrix by a number.
@@ -69,7 +71,7 @@ export declare class FlowGraphDivideMatrixAndNumberBlock extends FlowGraphBinary
69
71
  */
70
72
  export declare class FlowGraphScaleMatrixBlock extends FlowGraphBinaryOperationBlock<Matrix, number, Matrix> {
71
73
  private _cachedMatrix;
72
- constructor();
74
+ constructor(config?: IFlowGraphBlockConfiguration);
73
75
  }
74
76
  /**
75
77
  * Clamps each value in a matrix between a minimum and maximum value.
@@ -94,8 +96,9 @@ export declare class FlowGraphClampMatrixBlock extends FlowGraphBlock {
94
96
  readonly max: FlowGraphDataConnection<number>;
95
97
  private _cachedArray;
96
98
  private _cachedMatrix;
97
- constructor();
99
+ constructor(config?: IFlowGraphBlockConfiguration);
98
100
  _updateOutputs(_context: FlowGraphContext): void;
101
+ getClassName(): string;
99
102
  }
100
103
  /**
101
104
  * Decomposes a matrix into its translation, rotation and scale components.
@@ -121,11 +124,12 @@ export declare class FlowGraphDecomposeMatrixBlock extends FlowGraphBlock {
121
124
  private _cachedTranslation;
122
125
  private _cachedRotation;
123
126
  private _cachedScale;
124
- constructor();
127
+ constructor(config?: IFlowGraphBlockConfiguration);
125
128
  _updateOutputs(_context: FlowGraphContext): void;
129
+ getClassName(): string;
126
130
  }
127
131
  /**
128
- * Decomposes a matrix into its translation, rotation and scale components.
132
+ * Composes a matrix from its translation, rotation and scale components.
129
133
  * @experimental
130
134
  */
131
135
  export declare class FlowGraphComposeMatrixBlock extends FlowGraphBlock {
@@ -146,8 +150,9 @@ export declare class FlowGraphComposeMatrixBlock extends FlowGraphBlock {
146
150
  */
147
151
  readonly scale: FlowGraphDataConnection<Vector3>;
148
152
  private _cachedMatrix;
149
- constructor();
153
+ constructor(config?: IFlowGraphBlockConfiguration);
150
154
  _updateOutputs(_context: FlowGraphContext): void;
155
+ getClassName(): string;
151
156
  }
152
157
  /**
153
158
  * Converts a quaternion to a rotation matrix.
@@ -155,7 +160,7 @@ export declare class FlowGraphComposeMatrixBlock extends FlowGraphBlock {
155
160
  */
156
161
  export declare class FlowGraphQuaternionToRotationMatrixBlock extends FlowGraphUnaryOperationBlock<Quaternion, Matrix> {
157
162
  private _cachedMatrix;
158
- constructor();
163
+ constructor(config?: IFlowGraphBlockConfiguration);
159
164
  }
160
165
  /**
161
166
  * Given the Transform Nodes A and B, gives the matrix required
@@ -163,5 +168,5 @@ export declare class FlowGraphQuaternionToRotationMatrixBlock extends FlowGraphU
163
168
  */
164
169
  export declare class FlowGraphGetTransformationMatrixBlock extends FlowGraphBinaryOperationBlock<TransformNode, TransformNode, Matrix> {
165
170
  private _cachedResult;
166
- constructor();
171
+ constructor(config?: IFlowGraphBlockConfiguration);
167
172
  }