@babylonjs/core 6.24.0 → 6.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) 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/Engines/Extensions/index.d.ts +0 -1
  33. package/Engines/Extensions/index.js +0 -1
  34. package/Engines/Extensions/index.js.map +1 -1
  35. package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +4 -0
  36. package/Engines/WebGL/webGLRenderTargetWrapper.js +4 -0
  37. package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
  38. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +8 -7
  39. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  40. package/Engines/WebGPU/webgpuCacheSampler.js +1 -1
  41. package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
  42. package/Engines/constants.d.ts +0 -4
  43. package/Engines/constants.js +0 -4
  44. package/Engines/constants.js.map +1 -1
  45. package/Engines/engine.d.ts +38 -258
  46. package/Engines/engine.js +0 -65
  47. package/Engines/engine.js.map +1 -1
  48. package/Engines/engineFactory.js +9 -14
  49. package/Engines/engineFactory.js.map +1 -1
  50. package/Engines/engineFeatures.d.ts +2 -0
  51. package/Engines/engineFeatures.js.map +1 -1
  52. package/Engines/nativeEngine.js +1 -0
  53. package/Engines/nativeEngine.js.map +1 -1
  54. package/Engines/nullEngine.js +1 -0
  55. package/Engines/nullEngine.js.map +1 -1
  56. package/Engines/thinEngine.d.ts +22 -5
  57. package/Engines/thinEngine.js +55 -22
  58. package/Engines/thinEngine.js.map +1 -1
  59. package/Engines/webgpuEngine.d.ts +1 -0
  60. package/Engines/webgpuEngine.js +4 -2
  61. package/Engines/webgpuEngine.js.map +1 -1
  62. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.d.ts +9 -8
  63. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js +34 -16
  64. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js.map +1 -1
  65. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.d.ts +4 -3
  66. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js +14 -6
  67. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js.map +1 -1
  68. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.d.ts +19 -14
  69. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js +64 -27
  70. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js.map +1 -1
  71. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.d.ts +39 -41
  72. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js +152 -74
  73. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js.map +1 -1
  74. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.d.ts +12 -12
  75. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js +42 -21
  76. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js.map +1 -1
  77. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.d.ts +17 -14
  78. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js +62 -26
  79. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js.map +1 -1
  80. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.d.ts +13 -10
  81. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js +46 -18
  82. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js.map +1 -1
  83. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.d.ts +4 -1
  84. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js +6 -2
  85. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js.map +1 -1
  86. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.d.ts +3 -1
  87. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js +7 -2
  88. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js.map +1 -1
  89. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.d.ts +5 -3
  90. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js +10 -5
  91. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js.map +1 -1
  92. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.d.ts +4 -1
  93. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js +6 -2
  94. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js.map +1 -1
  95. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.d.ts +3 -1
  96. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js +7 -2
  97. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js.map +1 -1
  98. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.d.ts +3 -1
  99. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js +7 -2
  100. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js.map +1 -1
  101. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.d.ts +4 -1
  102. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js +6 -2
  103. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js.map +1 -1
  104. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +6 -2
  105. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +12 -3
  106. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -1
  107. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.d.ts +5 -3
  108. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +11 -6
  109. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
  110. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +1 -0
  111. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +7 -2
  112. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -1
  113. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.d.ts +1 -0
  114. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js +7 -2
  115. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js.map +1 -1
  116. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.d.ts +3 -1
  117. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js +7 -2
  118. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js.map +1 -1
  119. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.d.ts +3 -1
  120. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js +8 -3
  121. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js.map +1 -1
  122. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.d.ts +3 -1
  123. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js +7 -2
  124. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js.map +1 -1
  125. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.d.ts +3 -1
  126. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js +7 -2
  127. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js.map +1 -1
  128. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.d.ts +3 -1
  129. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js +7 -2
  130. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js.map +1 -1
  131. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.d.ts +3 -1
  132. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js +7 -2
  133. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js.map +1 -1
  134. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.d.ts +3 -1
  135. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js +7 -2
  136. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js.map +1 -1
  137. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.d.ts +3 -1
  138. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js +7 -2
  139. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js.map +1 -1
  140. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.d.ts +3 -1
  141. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js +7 -2
  142. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js.map +1 -1
  143. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.d.ts +3 -1
  144. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js +7 -2
  145. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js.map +1 -1
  146. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.d.ts +3 -1
  147. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js +7 -2
  148. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js.map +1 -1
  149. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.d.ts +6 -3
  150. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js +22 -16
  151. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js.map +1 -1
  152. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.d.ts +7 -4
  153. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js +15 -10
  154. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js.map +1 -1
  155. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.d.ts +3 -1
  156. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js +7 -2
  157. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js.map +1 -1
  158. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.d.ts +3 -1
  159. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js +8 -3
  160. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js.map +1 -1
  161. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.d.ts +7 -4
  162. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js +14 -7
  163. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js.map +1 -1
  164. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.d.ts +5 -3
  165. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js +9 -4
  166. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js.map +1 -1
  167. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +3 -1
  168. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +7 -2
  169. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -1
  170. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.d.ts +3 -1
  171. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js +8 -3
  172. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js.map +1 -1
  173. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.d.ts +3 -1
  174. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js +7 -2
  175. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js.map +1 -1
  176. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +3 -1
  177. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +7 -2
  178. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
  179. package/FlowGraph/flowGraph.d.ts +41 -3
  180. package/FlowGraph/flowGraph.js +135 -0
  181. package/FlowGraph/flowGraph.js.map +1 -1
  182. package/FlowGraph/flowGraphAsyncExecutionBlock.d.ts +2 -1
  183. package/FlowGraph/flowGraphAsyncExecutionBlock.js +2 -2
  184. package/FlowGraph/flowGraphAsyncExecutionBlock.js.map +1 -1
  185. package/FlowGraph/flowGraphBlock.d.ts +15 -3
  186. package/FlowGraph/flowGraphBlock.js +50 -7
  187. package/FlowGraph/flowGraphBlock.js.map +1 -1
  188. package/FlowGraph/flowGraphConnection.d.ts +34 -4
  189. package/FlowGraph/flowGraphConnection.js +49 -3
  190. package/FlowGraph/flowGraphConnection.js.map +1 -1
  191. package/FlowGraph/flowGraphContext.d.ts +25 -5
  192. package/FlowGraph/flowGraphContext.js +86 -4
  193. package/FlowGraph/flowGraphContext.js.map +1 -1
  194. package/FlowGraph/flowGraphCoordinator.d.ts +7 -1
  195. package/FlowGraph/flowGraphCoordinator.js +18 -2
  196. package/FlowGraph/flowGraphCoordinator.js.map +1 -1
  197. package/FlowGraph/flowGraphDataConnection.d.ts +4 -11
  198. package/FlowGraph/flowGraphDataConnection.js +16 -14
  199. package/FlowGraph/flowGraphDataConnection.js.map +1 -1
  200. package/FlowGraph/flowGraphExecutionBlock.d.ts +8 -3
  201. package/FlowGraph/flowGraphExecutionBlock.js +37 -6
  202. package/FlowGraph/flowGraphExecutionBlock.js.map +1 -1
  203. package/FlowGraph/flowGraphRichTypes.d.ts +5 -9
  204. package/FlowGraph/flowGraphRichTypes.js +29 -44
  205. package/FlowGraph/flowGraphRichTypes.js.map +1 -1
  206. package/FlowGraph/flowGraphSignalConnection.js +2 -0
  207. package/FlowGraph/flowGraphSignalConnection.js.map +1 -1
  208. package/FlowGraph/flowGraphVariableDefinitions.d.ts +22 -2
  209. package/FlowGraph/flowGraphVariableDefinitions.js +29 -0
  210. package/FlowGraph/flowGraphVariableDefinitions.js.map +1 -1
  211. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +2 -1
  212. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +2 -2
  213. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -1
  214. package/Gamepads/gamepadManager.js +0 -5
  215. package/Gamepads/gamepadManager.js.map +1 -1
  216. package/Gamepads/index.d.ts +0 -1
  217. package/Gamepads/index.js +0 -2
  218. package/Gamepads/index.js.map +1 -1
  219. package/Gizmos/gizmo.js +1 -4
  220. package/Gizmos/gizmo.js.map +1 -1
  221. package/Materials/GreasedLine/greasedLineMaterialDefaults.d.ts +24 -0
  222. package/Materials/GreasedLine/greasedLineMaterialDefaults.js +19 -0
  223. package/Materials/GreasedLine/greasedLineMaterialDefaults.js.map +1 -0
  224. package/Materials/GreasedLine/greasedLineMaterialInterfaces.d.ts +243 -0
  225. package/Materials/GreasedLine/greasedLineMaterialInterfaces.js +55 -0
  226. package/Materials/GreasedLine/greasedLineMaterialInterfaces.js.map +1 -0
  227. package/Materials/GreasedLine/greasedLinePluginMaterial.d.ts +253 -0
  228. package/Materials/{greasedLinePluginMaterial.js → GreasedLine/greasedLinePluginMaterial.js} +148 -205
  229. package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -0
  230. package/Materials/{greasedLineSimpleMaterial.d.ts → GreasedLine/greasedLineSimpleMaterial.d.ts} +20 -48
  231. package/Materials/{greasedLineSimpleMaterial.js → GreasedLine/greasedLineSimpleMaterial.js} +74 -91
  232. package/Materials/GreasedLine/greasedLineSimpleMaterial.js.map +1 -0
  233. package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +1 -1
  234. package/Materials/Node/Blocks/Input/prePassTextureBlock.js.map +1 -1
  235. package/Materials/Textures/texture.js +1 -0
  236. package/Materials/Textures/texture.js.map +1 -1
  237. package/Materials/index.d.ts +4 -1
  238. package/Materials/index.js +4 -1
  239. package/Materials/index.js.map +1 -1
  240. package/Maths/math.vector.d.ts +32 -22
  241. package/Maths/math.vector.js +54 -43
  242. package/Maths/math.vector.js.map +1 -1
  243. package/Meshes/Builders/greasedLineBuilder.d.ts +7 -6
  244. package/Meshes/Builders/greasedLineBuilder.js +65 -31
  245. package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
  246. package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +216 -0
  247. package/Meshes/GreasedLine/greasedLineBaseMesh.js +247 -0
  248. package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -0
  249. package/Meshes/GreasedLine/greasedLineMesh.d.ts +92 -0
  250. package/Meshes/{greasedLineMesh.js → GreasedLine/greasedLineMesh.js} +29 -223
  251. package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -0
  252. package/Meshes/GreasedLine/greasedLineRibbonMesh.d.ts +107 -0
  253. package/Meshes/GreasedLine/greasedLineRibbonMesh.js +462 -0
  254. package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -0
  255. package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +9 -2
  256. package/Meshes/Node/Blocks/Sources/meshBlock.js +17 -5
  257. package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -1
  258. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.d.ts +15 -0
  259. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js +50 -1
  260. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js.map +1 -1
  261. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js +5 -5
  262. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js.map +1 -1
  263. package/Meshes/Node/nodeGeometry.d.ts +1 -2
  264. package/Meshes/Node/nodeGeometry.js +3 -4
  265. package/Meshes/Node/nodeGeometry.js.map +1 -1
  266. package/Meshes/Node/nodeGeometryBlock.d.ts +1 -2
  267. package/Meshes/Node/nodeGeometryBlock.js +1 -2
  268. package/Meshes/Node/nodeGeometryBlock.js.map +1 -1
  269. package/Meshes/geometry.js +6 -12
  270. package/Meshes/geometry.js.map +1 -1
  271. package/Meshes/index.d.ts +3 -1
  272. package/Meshes/index.js +3 -1
  273. package/Meshes/index.js.map +1 -1
  274. package/Meshes/mesh.d.ts +4 -0
  275. package/Meshes/mesh.js +7 -0
  276. package/Meshes/mesh.js.map +1 -1
  277. package/Misc/deepCopier.js +3 -0
  278. package/Misc/deepCopier.js.map +1 -1
  279. package/Misc/greasedLineTools.d.ts +52 -5
  280. package/Misc/greasedLineTools.js +180 -10
  281. package/Misc/greasedLineTools.js.map +1 -1
  282. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +9 -2
  283. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
  284. package/PostProcesses/motionBlurPostProcess.js +4 -1
  285. package/PostProcesses/motionBlurPostProcess.js.map +1 -1
  286. package/PostProcesses/postProcess.js +1 -6
  287. package/PostProcesses/postProcess.js.map +1 -1
  288. package/Rendering/geometryBufferRenderer.js +4 -0
  289. package/Rendering/geometryBufferRenderer.js.map +1 -1
  290. package/Shaders/greasedLine.fragment.js +2 -5
  291. package/Shaders/greasedLine.fragment.js.map +1 -1
  292. package/Shaders/greasedLine.vertex.js +15 -4
  293. package/Shaders/greasedLine.vertex.js.map +1 -1
  294. package/XR/webXRDefaultExperience.d.ts +1 -1
  295. package/XR/webXRDefaultExperience.js +1 -1
  296. package/XR/webXRDefaultExperience.js.map +1 -1
  297. package/package.json +1 -1
  298. package/scene.d.ts +17 -10
  299. package/scene.js +25 -30
  300. package/scene.js.map +1 -1
  301. package/Cameras/RigModes/webVRRigMode.d.ts +0 -5
  302. package/Cameras/RigModes/webVRRigMode.js +0 -34
  303. package/Cameras/RigModes/webVRRigMode.js.map +0 -1
  304. package/Cameras/VR/webVRCamera.d.ts +0 -316
  305. package/Cameras/VR/webVRCamera.js +0 -618
  306. package/Cameras/VR/webVRCamera.js.map +0 -1
  307. package/Engines/Extensions/engine.webVR.d.ts +0 -91
  308. package/Engines/Extensions/engine.webVR.js +0 -195
  309. package/Engines/Extensions/engine.webVR.js.map +0 -1
  310. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.d.ts +0 -23
  311. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js +0 -18
  312. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js.map +0 -1
  313. package/Gamepads/Controllers/daydreamController.d.ts +0 -38
  314. package/Gamepads/Controllers/daydreamController.js +0 -70
  315. package/Gamepads/Controllers/daydreamController.js.map +0 -1
  316. package/Gamepads/Controllers/gearVRController.d.ts +0 -39
  317. package/Gamepads/Controllers/gearVRController.js +0 -79
  318. package/Gamepads/Controllers/gearVRController.js.map +0 -1
  319. package/Gamepads/Controllers/genericController.d.ts +0 -34
  320. package/Gamepads/Controllers/genericController.js +0 -48
  321. package/Gamepads/Controllers/genericController.js.map +0 -1
  322. package/Gamepads/Controllers/index.d.ts +0 -8
  323. package/Gamepads/Controllers/index.js +0 -9
  324. package/Gamepads/Controllers/index.js.map +0 -1
  325. package/Gamepads/Controllers/oculusTouchController.d.ts +0 -78
  326. package/Gamepads/Controllers/oculusTouchController.js +0 -196
  327. package/Gamepads/Controllers/oculusTouchController.js.map +0 -1
  328. package/Gamepads/Controllers/poseEnabledController.d.ts +0 -219
  329. package/Gamepads/Controllers/poseEnabledController.js +0 -293
  330. package/Gamepads/Controllers/poseEnabledController.js.map +0 -1
  331. package/Gamepads/Controllers/viveController.d.ts +0 -52
  332. package/Gamepads/Controllers/viveController.js +0 -115
  333. package/Gamepads/Controllers/viveController.js.map +0 -1
  334. package/Gamepads/Controllers/webVRController.d.ts +0 -85
  335. package/Gamepads/Controllers/webVRController.js +0 -122
  336. package/Gamepads/Controllers/webVRController.js.map +0 -1
  337. package/Gamepads/Controllers/windowsMotionController.d.ts +0 -212
  338. package/Gamepads/Controllers/windowsMotionController.js +0 -519
  339. package/Gamepads/Controllers/windowsMotionController.js.map +0 -1
  340. package/Materials/greasedLinePluginMaterial.d.ts +0 -496
  341. package/Materials/greasedLinePluginMaterial.js.map +0 -1
  342. package/Materials/greasedLineSimpleMaterial.js.map +0 -1
  343. package/Meshes/greasedLineMesh.d.ts +0 -204
  344. package/Meshes/greasedLineMesh.js.map +0 -1
@@ -3,6 +3,7 @@ import type { FlowGraphContext } from "../../flowGraphContext";
3
3
  import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
4
4
  import { Vector3 } from "../../../Maths/math.vector";
5
5
  import type { TransformNode } from "../../../Meshes/transformNode";
6
+ import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
6
7
  /**
7
8
  * @experimental
8
9
  * This blocks transforms a vector from one coordinate system to another.
@@ -27,6 +28,7 @@ export declare class FlowGraphCoordinateTransformBlock extends FlowGraphBlock {
27
28
  /**
28
29
  * Creates a new FlowGraphCoordinateTransformBlock
29
30
  */
30
- constructor();
31
+ constructor(config?: IFlowGraphBlockConfiguration);
31
32
  _updateOutputs(_context: FlowGraphContext): void;
33
+ getClassName(): string;
32
34
  }
@@ -1,6 +1,7 @@
1
1
  import { FlowGraphBlock } from "../../flowGraphBlock.js";
2
2
  import { RichTypeAny, RichTypeVector3 } from "../../flowGraphRichTypes.js";
3
3
  import { TmpVectors, Vector3 } from "../../../Maths/math.vector.js";
4
+ import { RegisterClass } from "../../../Misc/typeStore.js";
4
5
  /**
5
6
  * @experimental
6
7
  * This blocks transforms a vector from one coordinate system to another.
@@ -9,8 +10,8 @@ export class FlowGraphCoordinateTransformBlock extends FlowGraphBlock {
9
10
  /**
10
11
  * Creates a new FlowGraphCoordinateTransformBlock
11
12
  */
12
- constructor() {
13
- super();
13
+ constructor(config) {
14
+ super(config);
14
15
  this.sourceSystem = this._registerDataInput("sourceSystem", RichTypeAny);
15
16
  this.destinationSystem = this._registerDataInput("destinationSystem", RichTypeAny);
16
17
  this.inputCoordinates = this._registerDataInput("inputCoordinates", RichTypeVector3);
@@ -33,5 +34,9 @@ export class FlowGraphCoordinateTransformBlock extends FlowGraphBlock {
33
34
  const outputCoordinatesValue = this.outputCoordinates.getValue(_context);
34
35
  Vector3.TransformCoordinatesToRef(inputCoordinatesValue, sourceToDestination, outputCoordinatesValue);
35
36
  }
37
+ getClassName() {
38
+ return "FGCoordinateTransformBlock";
39
+ }
36
40
  }
41
+ RegisterClass("FGCoordinateTransformBlock", FlowGraphCoordinateTransformBlock);
37
42
  //# sourceMappingURL=flowGraphCoordinateTransformBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphCoordinateTransformBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAGjE;;;GAGG;AACH,MAAM,OAAO,iCAAkC,SAAQ,cAAc;IAkBjE;;OAEG;IACH;QACI,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QACzE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;QACnF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;QACrF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC5F,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/D,MAAM,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzE,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEvE,qDAAqD;QACrD,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACvD,0DAA0D;QAC1D,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,cAAc,EAAE,CAAC;QACjE,MAAM,uBAAuB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAChF,0DAA0D;QAC1D,uBAAuB,CAAC,MAAM,EAAE,CAAC;QAEjC,MAAM,mBAAmB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjD,0EAA0E;QAC1E,uBAAuB,CAAC,aAAa,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACxE,MAAM,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEzE,OAAO,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IAC1G,CAAC;CACJ","sourcesContent":["import { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeAny, RichTypeVector3 } from \"../../flowGraphRichTypes\";\r\nimport { TmpVectors, Vector3 } from \"../../../Maths/math.vector\";\r\nimport type { TransformNode } from \"../../../Meshes/transformNode\";\r\n\r\n/**\r\n * @experimental\r\n * This blocks transforms a vector from one coordinate system to another.\r\n */\r\nexport class FlowGraphCoordinateTransformBlock extends FlowGraphBlock {\r\n /**\r\n * Input connection: The source coordinate system.\r\n */\r\n public readonly sourceSystem: FlowGraphDataConnection<TransformNode>;\r\n /**\r\n * Input connection: The destination coordinate system.\r\n */\r\n public readonly destinationSystem: FlowGraphDataConnection<TransformNode>;\r\n /**\r\n * Input connection: The coordinates to transform.\r\n */\r\n public readonly inputCoordinates: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Output connection: The transformed coordinates.\r\n */\r\n public readonly outputCoordinates: FlowGraphDataConnection<Vector3>;\r\n\r\n /**\r\n * Creates a new FlowGraphCoordinateTransformBlock\r\n */\r\n constructor() {\r\n super();\r\n\r\n this.sourceSystem = this._registerDataInput(\"sourceSystem\", RichTypeAny);\r\n this.destinationSystem = this._registerDataInput(\"destinationSystem\", RichTypeAny);\r\n this.inputCoordinates = this._registerDataInput(\"inputCoordinates\", RichTypeVector3);\r\n this.outputCoordinates = this._registerDataOutput(\"outputCoordinates\", RichTypeVector3);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const sourceSystemValue = this.sourceSystem.getValue(_context);\r\n const destinationSystemValue = this.destinationSystem.getValue(_context);\r\n const inputCoordinatesValue = this.inputCoordinates.getValue(_context);\r\n\r\n // takes coordinates from source space to world space\r\n const sourceWorld = sourceSystemValue.getWorldMatrix();\r\n // takes coordinates from destination space to world space\r\n const destinationWorld = destinationSystemValue.getWorldMatrix();\r\n const destinationWorldInverse = TmpVectors.Matrix[0].copyFrom(destinationWorld);\r\n // takes coordinates from world space to destination space\r\n destinationWorldInverse.invert();\r\n\r\n const sourceToDestination = TmpVectors.Matrix[1];\r\n // takes coordinates from source space to world space to destination space\r\n destinationWorldInverse.multiplyToRef(sourceWorld, sourceToDestination);\r\n const outputCoordinatesValue = this.outputCoordinates.getValue(_context);\r\n\r\n Vector3.TransformCoordinatesToRef(inputCoordinatesValue, sourceToDestination, outputCoordinatesValue);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphCoordinateTransformBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;;GAGG;AACH,MAAM,OAAO,iCAAkC,SAAQ,cAAc;IAkBjE;;OAEG;IACH,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QACzE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;QACnF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;QACrF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC5F,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/D,MAAM,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzE,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEvE,qDAAqD;QACrD,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACvD,0DAA0D;QAC1D,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,cAAc,EAAE,CAAC;QACjE,MAAM,uBAAuB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAChF,0DAA0D;QAC1D,uBAAuB,CAAC,MAAM,EAAE,CAAC;QAEjC,MAAM,mBAAmB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjD,0EAA0E;QAC1E,uBAAuB,CAAC,aAAa,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACxE,MAAM,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEzE,OAAO,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IAC1G,CAAC;IAEM,YAAY;QACf,OAAO,4BAA4B,CAAC;IACxC,CAAC;CACJ;AACD,aAAa,CAAC,4BAA4B,EAAE,iCAAiC,CAAC,CAAC","sourcesContent":["import { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeAny, RichTypeVector3 } from \"../../flowGraphRichTypes\";\r\nimport { TmpVectors, Vector3 } from \"../../../Maths/math.vector\";\r\nimport type { TransformNode } from \"../../../Meshes/transformNode\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * This blocks transforms a vector from one coordinate system to another.\r\n */\r\nexport class FlowGraphCoordinateTransformBlock extends FlowGraphBlock {\r\n /**\r\n * Input connection: The source coordinate system.\r\n */\r\n public readonly sourceSystem: FlowGraphDataConnection<TransformNode>;\r\n /**\r\n * Input connection: The destination coordinate system.\r\n */\r\n public readonly destinationSystem: FlowGraphDataConnection<TransformNode>;\r\n /**\r\n * Input connection: The coordinates to transform.\r\n */\r\n public readonly inputCoordinates: FlowGraphDataConnection<Vector3>;\r\n /**\r\n * Output connection: The transformed coordinates.\r\n */\r\n public readonly outputCoordinates: FlowGraphDataConnection<Vector3>;\r\n\r\n /**\r\n * Creates a new FlowGraphCoordinateTransformBlock\r\n */\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.sourceSystem = this._registerDataInput(\"sourceSystem\", RichTypeAny);\r\n this.destinationSystem = this._registerDataInput(\"destinationSystem\", RichTypeAny);\r\n this.inputCoordinates = this._registerDataInput(\"inputCoordinates\", RichTypeVector3);\r\n this.outputCoordinates = this._registerDataOutput(\"outputCoordinates\", RichTypeVector3);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const sourceSystemValue = this.sourceSystem.getValue(_context);\r\n const destinationSystemValue = this.destinationSystem.getValue(_context);\r\n const inputCoordinatesValue = this.inputCoordinates.getValue(_context);\r\n\r\n // takes coordinates from source space to world space\r\n const sourceWorld = sourceSystemValue.getWorldMatrix();\r\n // takes coordinates from destination space to world space\r\n const destinationWorld = destinationSystemValue.getWorldMatrix();\r\n const destinationWorldInverse = TmpVectors.Matrix[0].copyFrom(destinationWorld);\r\n // takes coordinates from world space to destination space\r\n destinationWorldInverse.invert();\r\n\r\n const sourceToDestination = TmpVectors.Matrix[1];\r\n // takes coordinates from source space to world space to destination space\r\n destinationWorldInverse.multiplyToRef(sourceWorld, sourceToDestination);\r\n const outputCoordinatesValue = this.outputCoordinates.getValue(_context);\r\n\r\n Vector3.TransformCoordinatesToRef(inputCoordinatesValue, sourceToDestination, outputCoordinatesValue);\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGCoordinateTransformBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGCoordinateTransformBlock\", FlowGraphCoordinateTransformBlock);\r\n"]}
@@ -1,4 +1,5 @@
1
1
  import type { FlowGraphContext } from "../../flowGraphContext";
2
+ import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
2
3
  import { FlowGraphBlock } from "../../flowGraphBlock";
3
4
  import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
4
5
  /**
@@ -18,9 +19,10 @@ export declare class FlowGraphGetVariableBlock<T> extends FlowGraphBlock {
18
19
  * Construct a FlowGraphGetVariableBlock.
19
20
  * @param params optional construction parameters
20
21
  */
21
- constructor();
22
+ constructor(config?: IFlowGraphBlockConfiguration);
22
23
  /**
23
24
  * @internal
24
25
  */
25
26
  _updateOutputs(context: FlowGraphContext): void;
27
+ getClassName(): string;
26
28
  }
@@ -1,5 +1,6 @@
1
1
  import { FlowGraphBlock } from "../../flowGraphBlock.js";
2
2
  import { RichTypeString, RichTypeAny } from "../../flowGraphRichTypes.js";
3
+ import { RegisterClass } from "../../../Misc/typeStore.js";
3
4
  /**
4
5
  * A block that gets the value of a variable.
5
6
  * @experimental
@@ -9,8 +10,8 @@ export class FlowGraphGetVariableBlock extends FlowGraphBlock {
9
10
  * Construct a FlowGraphGetVariableBlock.
10
11
  * @param params optional construction parameters
11
12
  */
12
- constructor() {
13
- super();
13
+ constructor(config) {
14
+ super(config);
14
15
  this.variableName = this._registerDataInput("variableName", RichTypeString);
15
16
  this.output = this._registerDataOutput("output", RichTypeAny);
16
17
  }
@@ -23,5 +24,9 @@ export class FlowGraphGetVariableBlock extends FlowGraphBlock {
23
24
  this.output.setValue(context.getVariable(variableNameValue), context);
24
25
  }
25
26
  }
27
+ getClassName() {
28
+ return "FGGetVariableBlock";
29
+ }
26
30
  }
31
+ RegisterClass("FGGetVariableBlock", FlowGraphGetVariableBlock);
27
32
  //# sourceMappingURL=flowGraphGetVariableBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphGetVariableBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvE;;;GAGG;AACH,MAAM,OAAO,yBAA6B,SAAQ,cAAc;IAU5D;;;OAGG;IACH;QACI,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAC5E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACI,cAAc,CAAC,OAAyB;QAC3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE;YACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAAC;SACzE;IACL,CAAC;CACJ","sourcesContent":["import type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeString, RichTypeAny } from \"../../flowGraphRichTypes\";\r\n\r\n/**\r\n * A block that gets the value of a variable.\r\n * @experimental\r\n */\r\nexport class FlowGraphGetVariableBlock<T> extends FlowGraphBlock {\r\n /**\r\n * Input connection: The name of the variable to get.\r\n */\r\n public readonly variableName: FlowGraphDataConnection<string>;\r\n /**\r\n * Output connection: The value of the variable.\r\n */\r\n public readonly output: FlowGraphDataConnection<T>;\r\n\r\n /**\r\n * Construct a FlowGraphGetVariableBlock.\r\n * @param params optional construction parameters\r\n */\r\n constructor() {\r\n super();\r\n\r\n this.variableName = this._registerDataInput(\"variableName\", RichTypeString);\r\n this.output = this._registerDataOutput(\"output\", RichTypeAny);\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _updateOutputs(context: FlowGraphContext): void {\r\n const variableNameValue = this.variableName.getValue(context);\r\n if (context.hasVariable(variableNameValue)) {\r\n this.output.setValue(context.getVariable(variableNameValue), context);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphGetVariableBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD;;;GAGG;AACH,MAAM,OAAO,yBAA6B,SAAQ,cAAc;IAU5D;;;OAGG;IACH,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAC5E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACI,cAAc,CAAC,OAAyB;QAC3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE;YACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAAC;SACzE;IACL,CAAC;IAEM,YAAY;QACf,OAAO,oBAAoB,CAAC;IAChC,CAAC;CACJ;AACD,aAAa,CAAC,oBAAoB,EAAE,yBAAyB,CAAC,CAAC","sourcesContent":["import type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeString, RichTypeAny } from \"../../flowGraphRichTypes\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n\r\n/**\r\n * A block that gets the value of a variable.\r\n * @experimental\r\n */\r\nexport class FlowGraphGetVariableBlock<T> extends FlowGraphBlock {\r\n /**\r\n * Input connection: The name of the variable to get.\r\n */\r\n public readonly variableName: FlowGraphDataConnection<string>;\r\n /**\r\n * Output connection: The value of the variable.\r\n */\r\n public readonly output: FlowGraphDataConnection<T>;\r\n\r\n /**\r\n * Construct a FlowGraphGetVariableBlock.\r\n * @param params optional construction parameters\r\n */\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.variableName = this._registerDataInput(\"variableName\", RichTypeString);\r\n this.output = this._registerDataOutput(\"output\", RichTypeAny);\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _updateOutputs(context: FlowGraphContext): void {\r\n const variableNameValue = this.variableName.getValue(context);\r\n if (context.hasVariable(variableNameValue)) {\r\n this.output.setValue(context.getVariable(variableNameValue), context);\r\n }\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGGetVariableBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGGetVariableBlock\", FlowGraphGetVariableBlock);\r\n"]}
@@ -1,4 +1,5 @@
1
1
  import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
2
+ import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
2
3
  import { FlowGraphBlock } from "../../flowGraphBlock";
3
4
  import type { RichType } from "../../flowGraphRichTypes";
4
5
  import type { FlowGraphContext } from "../../flowGraphContext";
@@ -8,8 +9,10 @@ import type { FlowGraphContext } from "../../flowGraphContext";
8
9
  */
9
10
  export declare class FlowGraphUnaryOperationBlock<InputT, ResultT> extends FlowGraphBlock {
10
11
  private _operation;
12
+ private _className;
11
13
  input: FlowGraphDataConnection<InputT>;
12
14
  output: FlowGraphDataConnection<ResultT>;
13
- constructor(inputRichType: RichType<InputT>, resultRichType: RichType<ResultT>, _operation: (input: InputT) => ResultT);
15
+ constructor(inputRichType: RichType<InputT>, resultRichType: RichType<ResultT>, _operation: (input: InputT) => ResultT, _className: string, config?: IFlowGraphBlockConfiguration);
14
16
  _updateOutputs(_context: FlowGraphContext): void;
17
+ getClassName(): string;
15
18
  }
@@ -4,14 +4,18 @@ import { FlowGraphBlock } from "../../flowGraphBlock.js";
4
4
  * The base block for all unary operation blocks. Receives an input of type InputT, and outputs a value of type ResultT.
5
5
  */
6
6
  export class FlowGraphUnaryOperationBlock extends FlowGraphBlock {
7
- constructor(inputRichType, resultRichType, _operation) {
8
- super();
7
+ constructor(inputRichType, resultRichType, _operation, _className, config) {
8
+ super(config);
9
9
  this._operation = _operation;
10
+ this._className = _className;
10
11
  this.input = this._registerDataInput("input", inputRichType);
11
12
  this.output = this._registerDataOutput("resultOutput", resultRichType);
12
13
  }
13
14
  _updateOutputs(_context) {
14
15
  this.output.setValue(this._operation(this.input.getValue(_context)), _context);
15
16
  }
17
+ getClassName() {
18
+ return this._className;
19
+ }
16
20
  }
17
21
  //# sourceMappingURL=flowGraphUnaryOperationBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphUnaryOperationBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD;;;GAGG;AACH,MAAM,OAAO,4BAA8C,SAAQ,cAAc;IAI7E,YAAY,aAA+B,EAAE,cAAiC,EAAU,UAAsC;QAC1H,KAAK,EAAE,CAAC;QAD4E,eAAU,GAAV,UAAU,CAA4B;QAE1H,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC3E,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACnF,CAAC;CACJ","sourcesContent":["import type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { RichType } from \"../../flowGraphRichTypes\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\n\r\n/**\r\n * @experimental\r\n * The base block for all unary operation blocks. Receives an input of type InputT, and outputs a value of type ResultT.\r\n */\r\nexport class FlowGraphUnaryOperationBlock<InputT, ResultT> extends FlowGraphBlock {\r\n input: FlowGraphDataConnection<InputT>;\r\n output: FlowGraphDataConnection<ResultT>;\r\n\r\n constructor(inputRichType: RichType<InputT>, resultRichType: RichType<ResultT>, private _operation: (input: InputT) => ResultT) {\r\n super();\r\n this.input = this._registerDataInput(\"input\", inputRichType);\r\n this.output = this._registerDataOutput(\"resultOutput\", resultRichType);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this.output.setValue(this._operation(this.input.getValue(_context)), _context);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphUnaryOperationBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD;;;GAGG;AACH,MAAM,OAAO,4BAA8C,SAAQ,cAAc;IAI7E,YACI,aAA+B,EAC/B,cAAiC,EACzB,UAAsC,EACtC,UAAkB,EAC1B,MAAqC;QAErC,KAAK,CAAC,MAAM,CAAC,CAAC;QAJN,eAAU,GAAV,UAAU,CAA4B;QACtC,eAAU,GAAV,UAAU,CAAQ;QAI1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC3E,CAAC;IAEM,cAAc,CAAC,QAA0B;QAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACnF,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ","sourcesContent":["import type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { FlowGraphBlock } from \"../../flowGraphBlock\";\r\nimport type { RichType } from \"../../flowGraphRichTypes\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\n\r\n/**\r\n * @experimental\r\n * The base block for all unary operation blocks. Receives an input of type InputT, and outputs a value of type ResultT.\r\n */\r\nexport class FlowGraphUnaryOperationBlock<InputT, ResultT> extends FlowGraphBlock {\r\n input: FlowGraphDataConnection<InputT>;\r\n output: FlowGraphDataConnection<ResultT>;\r\n\r\n constructor(\r\n inputRichType: RichType<InputT>,\r\n resultRichType: RichType<ResultT>,\r\n private _operation: (input: InputT) => ResultT,\r\n private _className: string,\r\n config?: IFlowGraphBlockConfiguration\r\n ) {\r\n super(config);\r\n this.input = this._registerDataInput(\"input\", inputRichType);\r\n this.output = this._registerDataOutput(\"resultOutput\", resultRichType);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this.output.setValue(this._operation(this.input.getValue(_context)), _context);\r\n }\r\n\r\n public getClassName(): string {\r\n return this._className;\r\n }\r\n}\r\n"]}
@@ -1,9 +1,10 @@
1
1
  import { FlowGraphEventBlock } from "../../flowGraphEventBlock";
2
2
  import type { FlowGraphContext } from "../../flowGraphContext.js";
3
+ import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
3
4
  /**
4
5
  * @experimental
5
6
  */
6
- export interface IFlowGraphMeshPickParams {
7
+ export interface IFlowGraphMeshPickEventBlockConfiguration extends IFlowGraphBlockConfiguration {
7
8
  meshVariableName: string;
8
9
  }
9
10
  /**
@@ -11,8 +12,10 @@ export interface IFlowGraphMeshPickParams {
11
12
  * A block that activates when a mesh is picked.
12
13
  */
13
14
  export declare class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock {
15
+ config: IFlowGraphMeshPickEventBlockConfiguration;
14
16
  private _meshVariableName;
15
- constructor(params: IFlowGraphMeshPickParams);
17
+ constructor(config: IFlowGraphMeshPickEventBlockConfiguration);
18
+ configure(): void;
16
19
  /**
17
20
  * @internal
18
21
  */
@@ -22,4 +25,5 @@ export declare class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock {
22
25
  * @internal
23
26
  */
24
27
  _cancelPendingTasks(context: FlowGraphContext): void;
28
+ getClassName(): string;
25
29
  }
@@ -1,13 +1,18 @@
1
1
  import { FlowGraphEventBlock } from "../../flowGraphEventBlock.js";
2
2
  import { PointerEventTypes } from "../../../Events/pointerEvents.js";
3
+ import { RegisterClass } from "../../../Misc/typeStore.js";
3
4
  /**
4
5
  * @experimental
5
6
  * A block that activates when a mesh is picked.
6
7
  */
7
8
  export class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock {
8
- constructor(params) {
9
- super();
10
- this._meshVariableName = params.meshVariableName;
9
+ constructor(config) {
10
+ super(config);
11
+ this.config = config;
12
+ }
13
+ configure() {
14
+ super.configure();
15
+ this._meshVariableName = this.config.meshVariableName;
11
16
  }
12
17
  /**
13
18
  * @internal
@@ -43,5 +48,9 @@ export class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock {
43
48
  context._deleteExecutionVariable(this, "meshPickObserver");
44
49
  context._deleteExecutionVariable(this, "meshDisposeObserver");
45
50
  }
51
+ getClassName() {
52
+ return "FGMeshPickEventBlock";
53
+ }
46
54
  }
55
+ RegisterClass("FGMeshPickEventBlock", FlowGraphMeshPickEventBlock);
47
56
  //# sourceMappingURL=flowGraphMeshPickEventBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphMeshPickEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AASlE;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,mBAAmB;IAGhE,YAAmB,MAAgC;QAC/C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACrD,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,OAAyB;QACjD,IAAI,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAC3E,IAAI,CAAC,YAAY,EAAE;YACf,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAiB,CAAC;YACzE,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;;gBACnE,IAAI,WAAW,CAAC,IAAI,KAAK,iBAAiB,CAAC,WAAW,IAAI,CAAA,MAAA,WAAW,CAAC,QAAQ,0CAAE,UAAU,MAAK,IAAI,EAAE;oBACjG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBAC1B;YACL,CAAC,CAAC,CAAC;YACH,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5E,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;YACtE,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,EAAE,eAAe,CAAC,CAAC;SAC/E;IACL,CAAC;IAEM,UAAU,CAAC,OAAyB;QACvC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAyB;QAChD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAiB,CAAC;QACzE,MAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAC7E,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;QAEnF,IAAI,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAEjD,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAC3D,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAClE,CAAC;CACJ","sourcesContent":["import type { AbstractMesh } from \"../../../Meshes/abstractMesh\";\r\nimport { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport { PointerEventTypes } from \"../../../Events/pointerEvents\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\n\r\n/**\r\n * @experimental\r\n */\r\nexport interface IFlowGraphMeshPickParams {\r\n meshVariableName: string;\r\n}\r\n/**\r\n * @experimental\r\n * A block that activates when a mesh is picked.\r\n */\r\nexport class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock {\r\n private _meshVariableName: string;\r\n\r\n public constructor(params: IFlowGraphMeshPickParams) {\r\n super();\r\n this._meshVariableName = params.meshVariableName;\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n let pickObserver = context._getExecutionVariable(this, \"meshPickObserver\");\r\n if (!pickObserver) {\r\n const mesh = context.getVariable(this._meshVariableName) as AbstractMesh;\r\n pickObserver = mesh.getScene().onPointerObservable.add((pointerInfo) => {\r\n if (pointerInfo.type === PointerEventTypes.POINTERPICK && pointerInfo.pickInfo?.pickedMesh === mesh) {\r\n this._execute(context);\r\n }\r\n });\r\n const disposeObserver = mesh.onDisposeObservable.add(() => this._onDispose);\r\n context._setExecutionVariable(this, \"meshPickObserver\", pickObserver);\r\n context._setExecutionVariable(this, \"meshDisposeObserver\", disposeObserver);\r\n }\r\n }\r\n\r\n public _onDispose(context: FlowGraphContext) {\r\n this._cancelPendingTasks(context);\r\n context._removePendingBlock(this);\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _cancelPendingTasks(context: FlowGraphContext): void {\r\n const mesh = context.getVariable(this._meshVariableName) as AbstractMesh;\r\n const pickObserver = context._getExecutionVariable(this, \"meshPickObserver\");\r\n const disposeObserver = context._getExecutionVariable(this, \"meshDisposeObserver\");\r\n\r\n mesh.getScene().onPointerObservable.remove(pickObserver);\r\n mesh.onDisposeObservable.remove(disposeObserver);\r\n\r\n context._deleteExecutionVariable(this, \"meshPickObserver\");\r\n context._deleteExecutionVariable(this, \"meshDisposeObserver\");\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphMeshPickEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAOxD;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,mBAAmB;IAGhE,YAA0B,MAAiD;QACvE,KAAK,CAAC,MAAM,CAAC,CAAC;QADQ,WAAM,GAAN,MAAM,CAA2C;IAE3E,CAAC;IAEM,SAAS;QACZ,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,OAAyB;QACjD,IAAI,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAC3E,IAAI,CAAC,YAAY,EAAE;YACf,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAiB,CAAC;YACzE,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;;gBACnE,IAAI,WAAW,CAAC,IAAI,KAAK,iBAAiB,CAAC,WAAW,IAAI,CAAA,MAAA,WAAW,CAAC,QAAQ,0CAAE,UAAU,MAAK,IAAI,EAAE;oBACjG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBAC1B;YACL,CAAC,CAAC,CAAC;YACH,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5E,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;YACtE,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,EAAE,eAAe,CAAC,CAAC;SAC/E;IACL,CAAC;IAEM,UAAU,CAAC,OAAyB;QACvC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAyB;QAChD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAiB,CAAC;QACzE,MAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAC7E,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;QAEnF,IAAI,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAEjD,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAC3D,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAClE,CAAC;IAEM,YAAY;QACf,OAAO,sBAAsB,CAAC;IAClC,CAAC;CACJ;AACD,aAAa,CAAC,sBAAsB,EAAE,2BAA2B,CAAC,CAAC","sourcesContent":["import type { AbstractMesh } from \"../../../Meshes/abstractMesh\";\r\nimport { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport { PointerEventTypes } from \"../../../Events/pointerEvents\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n */\r\nexport interface IFlowGraphMeshPickEventBlockConfiguration extends IFlowGraphBlockConfiguration {\r\n meshVariableName: string;\r\n}\r\n/**\r\n * @experimental\r\n * A block that activates when a mesh is picked.\r\n */\r\nexport class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock {\r\n private _meshVariableName: string;\r\n\r\n public constructor(public config: IFlowGraphMeshPickEventBlockConfiguration) {\r\n super(config);\r\n }\r\n\r\n public configure() {\r\n super.configure();\r\n this._meshVariableName = this.config.meshVariableName;\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n let pickObserver = context._getExecutionVariable(this, \"meshPickObserver\");\r\n if (!pickObserver) {\r\n const mesh = context.getVariable(this._meshVariableName) as AbstractMesh;\r\n pickObserver = mesh.getScene().onPointerObservable.add((pointerInfo) => {\r\n if (pointerInfo.type === PointerEventTypes.POINTERPICK && pointerInfo.pickInfo?.pickedMesh === mesh) {\r\n this._execute(context);\r\n }\r\n });\r\n const disposeObserver = mesh.onDisposeObservable.add(() => this._onDispose);\r\n context._setExecutionVariable(this, \"meshPickObserver\", pickObserver);\r\n context._setExecutionVariable(this, \"meshDisposeObserver\", disposeObserver);\r\n }\r\n }\r\n\r\n public _onDispose(context: FlowGraphContext) {\r\n this._cancelPendingTasks(context);\r\n context._removePendingBlock(this);\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _cancelPendingTasks(context: FlowGraphContext): void {\r\n const mesh = context.getVariable(this._meshVariableName) as AbstractMesh;\r\n const pickObserver = context._getExecutionVariable(this, \"meshPickObserver\");\r\n const disposeObserver = context._getExecutionVariable(this, \"meshDisposeObserver\");\r\n\r\n mesh.getScene().onPointerObservable.remove(pickObserver);\r\n mesh.onDisposeObservable.remove(disposeObserver);\r\n\r\n context._deleteExecutionVariable(this, \"meshPickObserver\");\r\n context._deleteExecutionVariable(this, \"meshDisposeObserver\");\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGMeshPickEventBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGMeshPickEventBlock\", FlowGraphMeshPickEventBlock);\r\n"]}
@@ -1,11 +1,12 @@
1
1
  import type { FlowGraphContext } from "../../flowGraphContext";
2
2
  import { FlowGraphEventBlock } from "../../flowGraphEventBlock";
3
3
  import type { FlowGraphDataConnection } from "../../flowGraphDataConnection";
4
+ import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock";
4
5
  /**
5
6
  * @experimental
6
7
  * Parameters used to create a FlowGraphReceiveCustomEventBlock.
7
8
  */
8
- export interface IFlowGraphReceiveCustomEventBlockParameters {
9
+ export interface IFlowGraphReceiveCustomEventBlockConfiguration extends IFlowGraphBlockConfiguration {
9
10
  eventId: string;
10
11
  }
11
12
  /**
@@ -13,13 +14,14 @@ export interface IFlowGraphReceiveCustomEventBlockParameters {
13
14
  * A block that receives a custom event. It saves the data sent in the eventData output.
14
15
  */
15
16
  export declare class FlowGraphReceiveCustomEventBlock extends FlowGraphEventBlock {
16
- private _params;
17
+ config: IFlowGraphReceiveCustomEventBlockConfiguration;
17
18
  private _eventObserver;
18
19
  /**
19
20
  * Output connection: The data sent with the event.
20
21
  */
21
22
  eventData: FlowGraphDataConnection<any>;
22
- constructor(_params: IFlowGraphReceiveCustomEventBlockParameters);
23
+ constructor(config: IFlowGraphReceiveCustomEventBlockConfiguration);
23
24
  _preparePendingTasks(context: FlowGraphContext): void;
24
25
  _cancelPendingTasks(context: FlowGraphContext): void;
26
+ getClassName(): string;
25
27
  }
@@ -1,31 +1,36 @@
1
1
  import { FlowGraphEventBlock } from "../../flowGraphEventBlock.js";
2
2
  import { Tools } from "../../../Misc/tools.js";
3
3
  import { RichTypeAny } from "../../flowGraphRichTypes.js";
4
+ import { RegisterClass } from "../../../Misc/typeStore.js";
4
5
  /**
5
6
  * @experimental
6
7
  * A block that receives a custom event. It saves the data sent in the eventData output.
7
8
  */
8
9
  export class FlowGraphReceiveCustomEventBlock extends FlowGraphEventBlock {
9
- constructor(_params) {
10
- super();
11
- this._params = _params;
10
+ constructor(config) {
11
+ super(config);
12
+ this.config = config;
12
13
  this.eventData = this._registerDataOutput("eventData", RichTypeAny);
13
14
  }
14
15
  _preparePendingTasks(context) {
15
- const observable = context.graphVariables.eventCoordinator.getCustomEventObservable(this._params.eventId);
16
+ const observable = context.configuration.eventCoordinator.getCustomEventObservable(this.config.eventId);
16
17
  this._eventObserver = observable.add((eventData) => {
17
18
  this.eventData.setValue(eventData, context);
18
19
  this._execute(context);
19
20
  });
20
21
  }
21
22
  _cancelPendingTasks(context) {
22
- const observable = context.graphVariables.eventCoordinator.getCustomEventObservable(this._params.eventId);
23
+ const observable = context.configuration.eventCoordinator.getCustomEventObservable(this.config.eventId);
23
24
  if (observable) {
24
25
  observable.remove(this._eventObserver);
25
26
  }
26
27
  else {
27
- Tools.Warn(`FlowGraphReceiveCustomEventBlock: Missing observable for event ${this._params.eventId}`);
28
+ Tools.Warn(`FlowGraphReceiveCustomEventBlock: Missing observable for event ${this.config.eventId}`);
28
29
  }
29
30
  }
31
+ getClassName() {
32
+ return "FGReceiveCustomEventBlock";
33
+ }
30
34
  }
35
+ RegisterClass("FGReceiveCustomEventBlock", FlowGraphReceiveCustomEventBlock);
31
36
  //# sourceMappingURL=flowGraphReceiveCustomEventBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphReceiveCustomEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAUvD;;;GAGG;AACH,MAAM,OAAO,gCAAiC,SAAQ,mBAAmB;IAQrE,YAAoB,OAAoD;QACpE,KAAK,EAAE,CAAC;QADQ,YAAO,GAAP,OAAO,CAA6C;QAEpE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACxE,CAAC;IACM,oBAAoB,CAAC,OAAyB;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1G,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;YAC/C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IACM,mBAAmB,CAAC,OAAyB;QAChD,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1G,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC1C;aAAM;YACH,KAAK,CAAC,IAAI,CAAC,kEAAkE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;SACxG;IACL,CAAC;CACJ","sourcesContent":["import type { Observer } from \"../../../Misc/observable\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport type { FlowGraphCustomEvent } from \"../../flowGraphCustomEvent\";\r\nimport type { Nullable } from \"../../../types\";\r\nimport { Tools } from \"../../../Misc/tools\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeAny } from \"../../flowGraphRichTypes\";\r\n\r\n/**\r\n * @experimental\r\n * Parameters used to create a FlowGraphReceiveCustomEventBlock.\r\n */\r\nexport interface IFlowGraphReceiveCustomEventBlockParameters {\r\n eventId: string;\r\n}\r\n\r\n/**\r\n * @experimental\r\n * A block that receives a custom event. It saves the data sent in the eventData output.\r\n */\r\nexport class FlowGraphReceiveCustomEventBlock extends FlowGraphEventBlock {\r\n private _eventObserver: Nullable<Observer<FlowGraphCustomEvent>>;\r\n\r\n /**\r\n * Output connection: The data sent with the event.\r\n */\r\n public eventData: FlowGraphDataConnection<any>;\r\n\r\n constructor(private _params: IFlowGraphReceiveCustomEventBlockParameters) {\r\n super();\r\n this.eventData = this._registerDataOutput(\"eventData\", RichTypeAny);\r\n }\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n const observable = context.graphVariables.eventCoordinator.getCustomEventObservable(this._params.eventId);\r\n this._eventObserver = observable.add((eventData) => {\r\n this.eventData.setValue(eventData, context);\r\n this._execute(context);\r\n });\r\n }\r\n public _cancelPendingTasks(context: FlowGraphContext): void {\r\n const observable = context.graphVariables.eventCoordinator.getCustomEventObservable(this._params.eventId);\r\n if (observable) {\r\n observable.remove(this._eventObserver);\r\n } else {\r\n Tools.Warn(`FlowGraphReceiveCustomEventBlock: Missing observable for event ${this._params.eventId}`);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphReceiveCustomEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AASxD;;;GAGG;AACH,MAAM,OAAO,gCAAiC,SAAQ,mBAAmB;IAQrE,YAAmB,MAAsD;QACrE,KAAK,CAAC,MAAM,CAAC,CAAC;QADC,WAAM,GAAN,MAAM,CAAgD;QAErE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACxE,CAAC;IACM,oBAAoB,CAAC,OAAyB;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxG,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;YAC/C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IACM,mBAAmB,CAAC,OAAyB;QAChD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxG,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC1C;aAAM;YACH,KAAK,CAAC,IAAI,CAAC,kEAAkE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;SACvG;IACL,CAAC;IAEM,YAAY;QACf,OAAO,2BAA2B,CAAC;IACvC,CAAC;CACJ;AACD,aAAa,CAAC,2BAA2B,EAAE,gCAAgC,CAAC,CAAC","sourcesContent":["import type { Observer } from \"../../../Misc/observable\";\r\nimport type { FlowGraphContext } from \"../../flowGraphContext\";\r\nimport { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport type { FlowGraphCustomEvent } from \"../../flowGraphCustomEvent\";\r\nimport type { Nullable } from \"../../../types\";\r\nimport { Tools } from \"../../../Misc/tools\";\r\nimport type { FlowGraphDataConnection } from \"../../flowGraphDataConnection\";\r\nimport { RichTypeAny } from \"../../flowGraphRichTypes\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * Parameters used to create a FlowGraphReceiveCustomEventBlock.\r\n */\r\nexport interface IFlowGraphReceiveCustomEventBlockConfiguration extends IFlowGraphBlockConfiguration {\r\n eventId: string;\r\n}\r\n\r\n/**\r\n * @experimental\r\n * A block that receives a custom event. It saves the data sent in the eventData output.\r\n */\r\nexport class FlowGraphReceiveCustomEventBlock extends FlowGraphEventBlock {\r\n private _eventObserver: Nullable<Observer<FlowGraphCustomEvent>>;\r\n\r\n /**\r\n * Output connection: The data sent with the event.\r\n */\r\n public eventData: FlowGraphDataConnection<any>;\r\n\r\n constructor(public config: IFlowGraphReceiveCustomEventBlockConfiguration) {\r\n super(config);\r\n this.eventData = this._registerDataOutput(\"eventData\", RichTypeAny);\r\n }\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n const observable = context.configuration.eventCoordinator.getCustomEventObservable(this.config.eventId);\r\n this._eventObserver = observable.add((eventData) => {\r\n this.eventData.setValue(eventData, context);\r\n this._execute(context);\r\n });\r\n }\r\n public _cancelPendingTasks(context: FlowGraphContext): void {\r\n const observable = context.configuration.eventCoordinator.getCustomEventObservable(this.config.eventId);\r\n if (observable) {\r\n observable.remove(this._eventObserver);\r\n } else {\r\n Tools.Warn(`FlowGraphReceiveCustomEventBlock: Missing observable for event ${this.config.eventId}`);\r\n }\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGReceiveCustomEventBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGReceiveCustomEventBlock\", FlowGraphReceiveCustomEventBlock);\r\n"]}
@@ -13,4 +13,5 @@ export declare class FlowGraphSceneReadyEventBlock extends FlowGraphEventBlock {
13
13
  * @internal
14
14
  */
15
15
  _cancelPendingTasks(context: FlowGraphContext): void;
16
+ getClassName(): string;
16
17
  }
@@ -1,4 +1,5 @@
1
1
  import { FlowGraphEventBlock } from "../../flowGraphEventBlock.js";
2
+ import { RegisterClass } from "../../../Misc/typeStore.js";
2
3
  /**
3
4
  * @experimental
4
5
  * Block that triggers when a scene is ready.
@@ -9,7 +10,7 @@ export class FlowGraphSceneReadyEventBlock extends FlowGraphEventBlock {
9
10
  */
10
11
  _preparePendingTasks(context) {
11
12
  if (!context._getExecutionVariable(this, "sceneReadyObserver")) {
12
- const scene = context.graphVariables.scene;
13
+ const scene = context.configuration.scene;
13
14
  const contextObserver = scene.onReadyObservable.add(() => {
14
15
  this._execute(context);
15
16
  });
@@ -21,9 +22,13 @@ export class FlowGraphSceneReadyEventBlock extends FlowGraphEventBlock {
21
22
  */
22
23
  _cancelPendingTasks(context) {
23
24
  const contextObserver = context._getExecutionVariable(this, "sceneReadyObserver");
24
- const scene = context.graphVariables.scene;
25
+ const scene = context.configuration.scene;
25
26
  scene.onReadyObservable.remove(contextObserver);
26
27
  context._deleteExecutionVariable(this, "sceneReadyObserver");
27
28
  }
29
+ getClassName() {
30
+ return "FGSceneReadyEventBlock";
31
+ }
28
32
  }
33
+ RegisterClass("FGSceneReadyEventBlock", FlowGraphSceneReadyEventBlock);
29
34
  //# sourceMappingURL=flowGraphSceneReadyEventBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphSceneReadyEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE;;;GAGG;AACH,MAAM,OAAO,6BAA8B,SAAQ,mBAAmB;IAClE;;OAEG;IACI,oBAAoB,CAAC,OAAyB;QACjD,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,CAAC,EAAE;YAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;YAC3C,MAAM,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE;gBACrD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;SAC9E;IACL,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAyB;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAClF,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;QAC3C,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAChD,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IACjE,CAAC;CACJ","sourcesContent":["import { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\n\r\n/**\r\n * @experimental\r\n * Block that triggers when a scene is ready.\r\n */\r\nexport class FlowGraphSceneReadyEventBlock extends FlowGraphEventBlock {\r\n /**\r\n * @internal\r\n */\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n if (!context._getExecutionVariable(this, \"sceneReadyObserver\")) {\r\n const scene = context.graphVariables.scene;\r\n const contextObserver = scene.onReadyObservable.add(() => {\r\n this._execute(context);\r\n });\r\n context._setExecutionVariable(this, \"sceneReadyObserver\", contextObserver);\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _cancelPendingTasks(context: FlowGraphContext) {\r\n const contextObserver = context._getExecutionVariable(this, \"sceneReadyObserver\");\r\n const scene = context.graphVariables.scene;\r\n scene.onReadyObservable.remove(contextObserver);\r\n context._deleteExecutionVariable(this, \"sceneReadyObserver\");\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphSceneReadyEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;;GAGG;AACH,MAAM,OAAO,6BAA8B,SAAQ,mBAAmB;IAClE;;OAEG;IACI,oBAAoB,CAAC,OAAyB;QACjD,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,CAAC,EAAE;YAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;YAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE;gBACrD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;SAC9E;IACL,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAyB;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAClF,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;QAC1C,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAChD,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IACjE,CAAC;IAEM,YAAY;QACf,OAAO,wBAAwB,CAAC;IACpC,CAAC;CACJ;AACD,aAAa,CAAC,wBAAwB,EAAE,6BAA6B,CAAC,CAAC","sourcesContent":["import { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * Block that triggers when a scene is ready.\r\n */\r\nexport class FlowGraphSceneReadyEventBlock extends FlowGraphEventBlock {\r\n /**\r\n * @internal\r\n */\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n if (!context._getExecutionVariable(this, \"sceneReadyObserver\")) {\r\n const scene = context.configuration.scene;\r\n const contextObserver = scene.onReadyObservable.add(() => {\r\n this._execute(context);\r\n });\r\n context._setExecutionVariable(this, \"sceneReadyObserver\", contextObserver);\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _cancelPendingTasks(context: FlowGraphContext) {\r\n const contextObserver = context._getExecutionVariable(this, \"sceneReadyObserver\");\r\n const scene = context.configuration.scene;\r\n scene.onReadyObservable.remove(contextObserver);\r\n context._deleteExecutionVariable(this, \"sceneReadyObserver\");\r\n }\r\n\r\n public getClassName() {\r\n return \"FGSceneReadyEventBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGSceneReadyEventBlock\", FlowGraphSceneReadyEventBlock);\r\n"]}
@@ -13,4 +13,5 @@ export declare class FlowGraphSceneTickEventBlock extends FlowGraphEventBlock {
13
13
  * @internal
14
14
  */
15
15
  _cancelPendingTasks(context: FlowGraphContext): void;
16
+ getClassName(): string;
16
17
  }
@@ -1,4 +1,5 @@
1
1
  import { FlowGraphEventBlock } from "../../flowGraphEventBlock.js";
2
+ import { RegisterClass } from "../../../Misc/typeStore.js";
2
3
  /**
3
4
  * @experimental
4
5
  * Block that triggers on scene tick (before each render).
@@ -9,7 +10,7 @@ export class FlowGraphSceneTickEventBlock extends FlowGraphEventBlock {
9
10
  */
10
11
  _preparePendingTasks(context) {
11
12
  if (!context._getExecutionVariable(this, "sceneBeforeRender")) {
12
- const scene = context.graphVariables.scene;
13
+ const scene = context.configuration.scene;
13
14
  const contextObserver = scene.onBeforeRenderObservable.add(() => {
14
15
  this._execute(context);
15
16
  });
@@ -21,9 +22,13 @@ export class FlowGraphSceneTickEventBlock extends FlowGraphEventBlock {
21
22
  */
22
23
  _cancelPendingTasks(context) {
23
24
  const contextObserver = context._getExecutionVariable(this, "sceneBeforeRender");
24
- const scene = context.graphVariables.scene;
25
+ const scene = context.configuration.scene;
25
26
  scene.onBeforeRenderObservable.remove(contextObserver);
26
27
  context._deleteExecutionVariable(this, "sceneBeforeRender");
27
28
  }
29
+ getClassName() {
30
+ return "FGSceneTickEventBlock";
31
+ }
28
32
  }
33
+ RegisterClass("FGSceneTickEventBlock", FlowGraphSceneTickEventBlock);
29
34
  //# sourceMappingURL=flowGraphSceneTickEventBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphSceneTickEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE;;;GAGG;AACH,MAAM,OAAO,4BAA6B,SAAQ,mBAAmB;IACjE;;OAEG;IACI,oBAAoB,CAAC,OAAyB;QACjD,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE;YAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;YAC3C,MAAM,eAAe,GAAG,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,GAAG,EAAE;gBAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC;SAC7E;IACL,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAyB;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;QAC3C,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACvD,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAChE,CAAC;CACJ","sourcesContent":["import { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\n\r\n/**\r\n * @experimental\r\n * Block that triggers on scene tick (before each render).\r\n */\r\nexport class FlowGraphSceneTickEventBlock extends FlowGraphEventBlock {\r\n /**\r\n * @internal\r\n */\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n if (!context._getExecutionVariable(this, \"sceneBeforeRender\")) {\r\n const scene = context.graphVariables.scene;\r\n const contextObserver = scene.onBeforeRenderObservable.add(() => {\r\n this._execute(context);\r\n });\r\n context._setExecutionVariable(this, \"sceneBeforeRender\", contextObserver);\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _cancelPendingTasks(context: FlowGraphContext) {\r\n const contextObserver = context._getExecutionVariable(this, \"sceneBeforeRender\");\r\n const scene = context.graphVariables.scene;\r\n scene.onBeforeRenderObservable.remove(contextObserver);\r\n context._deleteExecutionVariable(this, \"sceneBeforeRender\");\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphSceneTickEventBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;;GAGG;AACH,MAAM,OAAO,4BAA6B,SAAQ,mBAAmB;IACjE;;OAEG;IACI,oBAAoB,CAAC,OAAyB;QACjD,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE;YAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;YAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,GAAG,EAAE;gBAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC;SAC7E;IACL,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAyB;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;QAC1C,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACvD,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAChE,CAAC;IAEM,YAAY;QACf,OAAO,uBAAuB,CAAC;IACnC,CAAC;CACJ;AACD,aAAa,CAAC,uBAAuB,EAAE,4BAA4B,CAAC,CAAC","sourcesContent":["import { FlowGraphEventBlock } from \"../../flowGraphEventBlock\";\r\nimport type { FlowGraphContext } from \"core/FlowGraph/flowGraphContext\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * Block that triggers on scene tick (before each render).\r\n */\r\nexport class FlowGraphSceneTickEventBlock extends FlowGraphEventBlock {\r\n /**\r\n * @internal\r\n */\r\n public _preparePendingTasks(context: FlowGraphContext): void {\r\n if (!context._getExecutionVariable(this, \"sceneBeforeRender\")) {\r\n const scene = context.configuration.scene;\r\n const contextObserver = scene.onBeforeRenderObservable.add(() => {\r\n this._execute(context);\r\n });\r\n context._setExecutionVariable(this, \"sceneBeforeRender\", contextObserver);\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _cancelPendingTasks(context: FlowGraphContext) {\r\n const contextObserver = context._getExecutionVariable(this, \"sceneBeforeRender\");\r\n const scene = context.configuration.scene;\r\n scene.onBeforeRenderObservable.remove(contextObserver);\r\n context._deleteExecutionVariable(this, \"sceneBeforeRender\");\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGSceneTickEventBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGSceneTickEventBlock\", FlowGraphSceneTickEventBlock);\r\n"]}
@@ -2,6 +2,7 @@ import type { FlowGraphContext } from "../../../flowGraphContext";
2
2
  import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
3
3
  import { FlowGraphWithOnDoneExecutionBlock } from "../../../flowGraphWithOnDoneExecutionBlock";
4
4
  import type { Animatable } from "../../../../Animations";
5
+ import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
5
6
  /**
6
7
  * @experimental
7
8
  * Block that stops a running animation
@@ -11,6 +12,7 @@ export declare class FlowGraphPauseAnimationBlock extends FlowGraphWithOnDoneExe
11
12
  *
12
13
  */
13
14
  readonly animationToPause: FlowGraphDataConnection<Animatable>;
14
- constructor();
15
+ constructor(config?: IFlowGraphBlockConfiguration);
15
16
  _execute(context: FlowGraphContext): void;
17
+ getClassName(): string;
16
18
  }
@@ -1,12 +1,13 @@
1
1
  import { FlowGraphWithOnDoneExecutionBlock } from "../../../flowGraphWithOnDoneExecutionBlock.js";
2
2
  import { RichTypeAny } from "../../../flowGraphRichTypes.js";
3
+ import { RegisterClass } from "../../../../Misc/typeStore.js";
3
4
  /**
4
5
  * @experimental
5
6
  * Block that stops a running animation
6
7
  */
7
8
  export class FlowGraphPauseAnimationBlock extends FlowGraphWithOnDoneExecutionBlock {
8
- constructor() {
9
- super();
9
+ constructor(config) {
10
+ super(config);
10
11
  this.animationToPause = this._registerDataInput("animationToPause", RichTypeAny);
11
12
  }
12
13
  _execute(context) {
@@ -14,5 +15,9 @@ export class FlowGraphPauseAnimationBlock extends FlowGraphWithOnDoneExecutionBl
14
15
  animationToPauseValue.pause();
15
16
  this.onDone._activateSignal(context);
16
17
  }
18
+ getClassName() {
19
+ return "FGPauseAnimationBlock";
20
+ }
17
21
  }
22
+ RegisterClass("FGPauseAnimationBlock", FlowGraphPauseAnimationBlock);
18
23
  //# sourceMappingURL=flowGraphPauseAnimationBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowGraphPauseAnimationBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAE/F,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D;;;GAGG;AACH,MAAM,OAAO,4BAA6B,SAAQ,iCAAiC;IAM/E;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IACrF,CAAC;IAEM,QAAQ,CAAC,OAAyB;QACrC,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACtE,qBAAqB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CACJ","sourcesContent":["import type { FlowGraphContext } from \"../../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\nimport { FlowGraphWithOnDoneExecutionBlock } from \"../../../flowGraphWithOnDoneExecutionBlock\";\r\nimport type { Animatable } from \"../../../../Animations\";\r\nimport { RichTypeAny } from \"../../../flowGraphRichTypes\";\r\n\r\n/**\r\n * @experimental\r\n * Block that stops a running animation\r\n */\r\nexport class FlowGraphPauseAnimationBlock extends FlowGraphWithOnDoneExecutionBlock {\r\n /**\r\n *\r\n */\r\n public readonly animationToPause: FlowGraphDataConnection<Animatable>;\r\n\r\n constructor() {\r\n super();\r\n this.animationToPause = this._registerDataInput(\"animationToPause\", RichTypeAny);\r\n }\r\n\r\n public _execute(context: FlowGraphContext): void {\r\n const animationToPauseValue = this.animationToPause.getValue(context);\r\n animationToPauseValue.pause();\r\n this.onDone._activateSignal(context);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"flowGraphPauseAnimationBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAE/F,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D;;;GAGG;AACH,MAAM,OAAO,4BAA6B,SAAQ,iCAAiC;IAM/E,YAAY,MAAqC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IACrF,CAAC;IAEM,QAAQ,CAAC,OAAyB;QACrC,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACtE,qBAAqB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAEM,YAAY;QACf,OAAO,uBAAuB,CAAC;IACnC,CAAC;CACJ;AACD,aAAa,CAAC,uBAAuB,EAAE,4BAA4B,CAAC,CAAC","sourcesContent":["import type { FlowGraphContext } from \"../../../flowGraphContext\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\nimport { FlowGraphWithOnDoneExecutionBlock } from \"../../../flowGraphWithOnDoneExecutionBlock\";\r\nimport type { Animatable } from \"../../../../Animations\";\r\nimport { RichTypeAny } from \"../../../flowGraphRichTypes\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\n/**\r\n * @experimental\r\n * Block that stops a running animation\r\n */\r\nexport class FlowGraphPauseAnimationBlock extends FlowGraphWithOnDoneExecutionBlock {\r\n /**\r\n *\r\n */\r\n public readonly animationToPause: FlowGraphDataConnection<Animatable>;\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n this.animationToPause = this._registerDataInput(\"animationToPause\", RichTypeAny);\r\n }\r\n\r\n public _execute(context: FlowGraphContext): void {\r\n const animationToPauseValue = this.animationToPause.getValue(context);\r\n animationToPauseValue.pause();\r\n this.onDone._activateSignal(context);\r\n }\r\n\r\n public getClassName(): string {\r\n return \"FGPauseAnimationBlock\";\r\n }\r\n}\r\nRegisterClass(\"FGPauseAnimationBlock\", FlowGraphPauseAnimationBlock);\r\n"]}
@@ -3,6 +3,7 @@ import type { Animatable, Animation, IAnimatable } from "../../../../Animations"
3
3
  import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
4
4
  import type { FlowGraphSignalConnection } from "../../../flowGraphSignalConnection";
5
5
  import { FlowGraphAsyncExecutionBlock } from "../../../flowGraphAsyncExecutionBlock";
6
+ import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
6
7
  /**
7
8
  * @experimental
8
9
  * A block that plays an animation on an animatable object.
@@ -40,7 +41,7 @@ export declare class FlowGraphPlayAnimationBlock extends FlowGraphAsyncExecution
40
41
  * Output connection: The animatable that is currently running.
41
42
  */
42
43
  readonly runningAnimatable: FlowGraphDataConnection<Animatable>;
43
- constructor();
44
+ constructor(config?: IFlowGraphBlockConfiguration);
44
45
  /**
45
46
  * @internal
46
47
  * @param context
@@ -53,4 +54,5 @@ export declare class FlowGraphPlayAnimationBlock extends FlowGraphAsyncExecution
53
54
  * Stop any currently running animations.
54
55
  */
55
56
  _cancelPendingTasks(context: FlowGraphContext): void;
57
+ getClassName(): string;
56
58
  }
@@ -1,12 +1,13 @@
1
1
  import { FlowGraphAsyncExecutionBlock } from "../../../flowGraphAsyncExecutionBlock.js";
2
2
  import { RichTypeAny, RichTypeNumber, RichTypeBoolean } from "../../../flowGraphRichTypes.js";
3
+ import { RegisterClass } from "../../../../Misc/typeStore.js";
3
4
  /**
4
5
  * @experimental
5
6
  * A block that plays an animation on an animatable object.
6
7
  */
7
8
  export class FlowGraphPlayAnimationBlock extends FlowGraphAsyncExecutionBlock {
8
- constructor() {
9
- super();
9
+ constructor(config) {
10
+ super(config);
10
11
  this.target = this._registerDataInput("target", RichTypeAny);
11
12
  this.animation = this._registerDataInput("animation", RichTypeAny);
12
13
  this.speed = this._registerDataInput("speed", RichTypeNumber);
@@ -34,7 +35,7 @@ export class FlowGraphPlayAnimationBlock extends FlowGraphAsyncExecutionBlock {
34
35
  existingAnimatable.restart();
35
36
  }
36
37
  else {
37
- const scene = context.graphVariables.scene;
38
+ const scene = context.configuration.scene;
38
39
  const animatable = scene.beginDirectAnimation(targetValue, [animationValue], this.from.getValue(context), this.to.getValue(context), this.loop.getValue(context), this.speed.getValue(context), () => this._onAnimationEnd(animatable, context));
39
40
  this.runningAnimatable.setValue(animatable, context);
40
41
  contextAnimatables.push(animatable);
@@ -67,5 +68,9 @@ export class FlowGraphPlayAnimationBlock extends FlowGraphAsyncExecutionBlock {
67
68
  }
68
69
  context._deleteExecutionVariable(this, "runningAnimatables");
69
70
  }
71
+ getClassName() {
72
+ return "FGPlayAnimationBlock";
73
+ }
70
74
  }
75
+ RegisterClass("FGPlayAnimationBlock", FlowGraphPlayAnimationBlock);
71
76
  //# sourceMappingURL=flowGraphPlayAnimationBlock.js.map