@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.
- package/Buffers/buffer.align.d.ts +25 -0
- package/Buffers/buffer.align.js +120 -0
- package/Buffers/buffer.align.js.map +1 -0
- package/Buffers/buffer.d.ts +15 -3
- package/Buffers/buffer.js +27 -7
- package/Buffers/buffer.js.map +1 -1
- package/Buffers/index.d.ts +1 -0
- package/Buffers/index.js +1 -0
- package/Buffers/index.js.map +1 -1
- package/Cameras/Inputs/BaseCameraPointersInput.js +0 -3
- package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
- package/Cameras/Inputs/flyCameraMouseInput.js +1 -4
- package/Cameras/Inputs/flyCameraMouseInput.js.map +1 -1
- package/Cameras/Inputs/freeCameraMouseInput.js +0 -6
- package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
- package/Cameras/RigModes/index.d.ts +0 -1
- package/Cameras/RigModes/index.js +0 -1
- package/Cameras/RigModes/index.js.map +1 -1
- package/Cameras/RigModes/vrRigMode.js +1 -1
- package/Cameras/RigModes/vrRigMode.js.map +1 -1
- package/Cameras/VR/index.d.ts +0 -1
- package/Cameras/VR/index.js +0 -1
- package/Cameras/VR/index.js.map +1 -1
- package/Cameras/VR/vrExperienceHelper.d.ts +7 -66
- package/Cameras/VR/vrExperienceHelper.js +17 -702
- package/Cameras/VR/vrExperienceHelper.js.map +1 -1
- package/Cameras/camera.d.ts +15 -20
- package/Cameras/camera.js +41 -36
- package/Cameras/camera.js.map +1 -1
- package/Cameras/targetCamera.js +1 -1
- package/Cameras/targetCamera.js.map +1 -1
- package/Debug/debugLayer.js +2 -2
- package/Debug/debugLayer.js.map +1 -1
- package/Engines/Extensions/index.d.ts +0 -1
- package/Engines/Extensions/index.js +0 -1
- package/Engines/Extensions/index.js.map +1 -1
- package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +4 -0
- package/Engines/WebGL/webGLRenderTargetWrapper.js +4 -0
- package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js +8 -7
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.js +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
- package/Engines/WebGPU/webgpuTintWASM.js +4 -10
- package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
- package/Engines/constants.d.ts +0 -4
- package/Engines/constants.js +0 -4
- package/Engines/constants.js.map +1 -1
- package/Engines/engine.d.ts +38 -258
- package/Engines/engine.js +0 -65
- package/Engines/engine.js.map +1 -1
- package/Engines/engineFactory.js +9 -14
- package/Engines/engineFactory.js.map +1 -1
- package/Engines/engineFeatures.d.ts +2 -0
- package/Engines/engineFeatures.js.map +1 -1
- package/Engines/nativeEngine.js +1 -0
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/nullEngine.js +1 -0
- package/Engines/nullEngine.js.map +1 -1
- package/Engines/thinEngine.d.ts +22 -5
- package/Engines/thinEngine.js +55 -22
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.d.ts +1 -0
- package/Engines/webgpuEngine.js +9 -14
- package/Engines/webgpuEngine.js.map +1 -1
- package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.d.ts +9 -8
- package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js +34 -16
- package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.d.ts +4 -3
- package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js +14 -6
- package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.d.ts +19 -14
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js +64 -27
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.d.ts +39 -41
- package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js +152 -74
- package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.d.ts +13 -12
- package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js +42 -21
- package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.d.ts +17 -13
- package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js +62 -26
- package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.d.ts +13 -9
- package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js +46 -18
- package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.d.ts +4 -1
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js +6 -2
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js +7 -2
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.d.ts +5 -3
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js +10 -5
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.d.ts +4 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js +6 -2
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js +7 -2
- package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js +7 -2
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.d.ts +4 -1
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js +6 -2
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +6 -2
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +12 -3
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.d.ts +5 -3
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +11 -6
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +1 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +7 -2
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.d.ts +1 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js +7 -2
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js +8 -3
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.d.ts +6 -3
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js +22 -16
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.d.ts +7 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js +15 -10
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js +8 -3
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.d.ts +7 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js +14 -7
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.d.ts +5 -3
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js +9 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js +8 -3
- package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +3 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +7 -2
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
- package/FlowGraph/flowGraph.d.ts +41 -3
- package/FlowGraph/flowGraph.js +135 -0
- package/FlowGraph/flowGraph.js.map +1 -1
- package/FlowGraph/flowGraphAsyncExecutionBlock.d.ts +2 -1
- package/FlowGraph/flowGraphAsyncExecutionBlock.js +2 -2
- package/FlowGraph/flowGraphAsyncExecutionBlock.js.map +1 -1
- package/FlowGraph/flowGraphBlock.d.ts +15 -3
- package/FlowGraph/flowGraphBlock.js +50 -7
- package/FlowGraph/flowGraphBlock.js.map +1 -1
- package/FlowGraph/flowGraphConnection.d.ts +34 -4
- package/FlowGraph/flowGraphConnection.js +49 -3
- package/FlowGraph/flowGraphConnection.js.map +1 -1
- package/FlowGraph/flowGraphContext.d.ts +25 -5
- package/FlowGraph/flowGraphContext.js +86 -4
- package/FlowGraph/flowGraphContext.js.map +1 -1
- package/FlowGraph/flowGraphCoordinator.d.ts +7 -1
- package/FlowGraph/flowGraphCoordinator.js +18 -2
- package/FlowGraph/flowGraphCoordinator.js.map +1 -1
- package/FlowGraph/flowGraphDataConnection.d.ts +4 -11
- package/FlowGraph/flowGraphDataConnection.js +16 -14
- package/FlowGraph/flowGraphDataConnection.js.map +1 -1
- package/FlowGraph/flowGraphExecutionBlock.d.ts +8 -3
- package/FlowGraph/flowGraphExecutionBlock.js +37 -6
- package/FlowGraph/flowGraphExecutionBlock.js.map +1 -1
- package/FlowGraph/flowGraphRichTypes.d.ts +5 -9
- package/FlowGraph/flowGraphRichTypes.js +29 -44
- package/FlowGraph/flowGraphRichTypes.js.map +1 -1
- package/FlowGraph/flowGraphSignalConnection.js +2 -0
- package/FlowGraph/flowGraphSignalConnection.js.map +1 -1
- package/FlowGraph/flowGraphVariableDefinitions.d.ts +22 -2
- package/FlowGraph/flowGraphVariableDefinitions.js +29 -0
- package/FlowGraph/flowGraphVariableDefinitions.js.map +1 -1
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +2 -1
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +2 -2
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -1
- package/Gamepads/gamepadManager.js +0 -5
- package/Gamepads/gamepadManager.js.map +1 -1
- package/Gamepads/index.d.ts +0 -1
- package/Gamepads/index.js +0 -2
- package/Gamepads/index.js.map +1 -1
- package/Gizmos/gizmo.js +1 -4
- package/Gizmos/gizmo.js.map +1 -1
- package/Materials/GreasedLine/greasedLineMaterialDefaults.d.ts +24 -0
- package/Materials/GreasedLine/greasedLineMaterialDefaults.js +19 -0
- package/Materials/GreasedLine/greasedLineMaterialDefaults.js.map +1 -0
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.d.ts +243 -0
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.js +55 -0
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.js.map +1 -0
- package/Materials/GreasedLine/greasedLinePluginMaterial.d.ts +253 -0
- package/Materials/{greasedLinePluginMaterial.js → GreasedLine/greasedLinePluginMaterial.js} +148 -205
- package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -0
- package/Materials/{greasedLineSimpleMaterial.d.ts → GreasedLine/greasedLineSimpleMaterial.d.ts} +20 -48
- package/Materials/{greasedLineSimpleMaterial.js → GreasedLine/greasedLineSimpleMaterial.js} +74 -91
- package/Materials/GreasedLine/greasedLineSimpleMaterial.js.map +1 -0
- package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +1 -1
- package/Materials/Node/Blocks/Input/prePassTextureBlock.js.map +1 -1
- package/Materials/Node/nodeMaterial.js +2 -2
- package/Materials/Node/nodeMaterial.js.map +1 -1
- package/Materials/Textures/texture.js +1 -0
- package/Materials/Textures/texture.js.map +1 -1
- package/Materials/index.d.ts +4 -1
- package/Materials/index.js +4 -1
- package/Materials/index.js.map +1 -1
- package/Materials/shadowDepthWrapper.d.ts +1 -0
- package/Materials/shadowDepthWrapper.js +17 -4
- package/Materials/shadowDepthWrapper.js.map +1 -1
- package/Maths/math.vector.d.ts +32 -22
- package/Maths/math.vector.js +54 -43
- package/Maths/math.vector.js.map +1 -1
- package/Meshes/Builders/greasedLineBuilder.d.ts +7 -6
- package/Meshes/Builders/greasedLineBuilder.js +65 -31
- package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
- package/Meshes/Compression/dracoCompression.js +7 -7
- package/Meshes/Compression/dracoCompression.js.map +1 -1
- package/Meshes/Compression/meshoptCompression.js +2 -2
- package/Meshes/Compression/meshoptCompression.js.map +1 -1
- package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +216 -0
- package/Meshes/GreasedLine/greasedLineBaseMesh.js +247 -0
- package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -0
- package/Meshes/GreasedLine/greasedLineMesh.d.ts +93 -0
- package/Meshes/{greasedLineMesh.js → GreasedLine/greasedLineMesh.js} +29 -223
- package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -0
- package/Meshes/GreasedLine/greasedLineRibbonMesh.d.ts +107 -0
- package/Meshes/GreasedLine/greasedLineRibbonMesh.js +462 -0
- package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -0
- package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.d.ts +1 -1
- package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +9 -2
- package/Meshes/Node/Blocks/Sources/meshBlock.js +17 -5
- package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.d.ts +15 -0
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js +50 -1
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js +5 -5
- package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js.map +1 -1
- package/Meshes/Node/nodeGeometry.d.ts +1 -2
- package/Meshes/Node/nodeGeometry.js +5 -6
- package/Meshes/Node/nodeGeometry.js.map +1 -1
- package/Meshes/Node/nodeGeometryBlock.d.ts +1 -2
- package/Meshes/Node/nodeGeometryBlock.js +1 -2
- package/Meshes/Node/nodeGeometryBlock.js.map +1 -1
- package/Meshes/geometry.js +6 -12
- package/Meshes/geometry.js.map +1 -1
- package/Meshes/index.d.ts +3 -1
- package/Meshes/index.js +3 -1
- package/Meshes/index.js.map +1 -1
- package/Meshes/instancedMesh.js +9 -9
- package/Meshes/instancedMesh.js.map +1 -1
- package/Meshes/mesh.d.ts +4 -0
- package/Meshes/mesh.js +10 -1
- package/Meshes/mesh.js.map +1 -1
- package/Misc/basis.js +4 -4
- package/Misc/basis.js.map +1 -1
- package/Misc/deepCopier.js +3 -0
- package/Misc/deepCopier.js.map +1 -1
- package/Misc/fileTools.d.ts +2 -0
- package/Misc/fileTools.js +12 -3
- package/Misc/fileTools.js.map +1 -1
- package/Misc/greasedLineTools.d.ts +52 -5
- package/Misc/greasedLineTools.js +180 -10
- package/Misc/greasedLineTools.js.map +1 -1
- package/Misc/khronosTextureContainer2.js +21 -24
- package/Misc/khronosTextureContainer2.js.map +1 -1
- package/Misc/tools.d.ts +42 -2
- package/Misc/tools.js +102 -2
- package/Misc/tools.js.map +1 -1
- package/Particles/solidParticleSystem.d.ts +1 -1
- package/Particles/solidParticleSystem.js +2 -2
- package/Particles/solidParticleSystem.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +9 -2
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
- package/PostProcesses/motionBlurPostProcess.js +4 -1
- package/PostProcesses/motionBlurPostProcess.js.map +1 -1
- package/PostProcesses/postProcess.js +1 -6
- package/PostProcesses/postProcess.js.map +1 -1
- package/Rendering/geometryBufferRenderer.js +4 -0
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Shaders/ShadersInclude/bonesDeclaration.js +1 -1
- package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +1 -2
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/Shaders/greasedLine.fragment.js +2 -5
- package/Shaders/greasedLine.fragment.js.map +1 -1
- package/Shaders/greasedLine.vertex.js +15 -4
- package/Shaders/greasedLine.vertex.js.map +1 -1
- package/XR/webXRDefaultExperience.d.ts +1 -1
- package/XR/webXRDefaultExperience.js +1 -1
- package/XR/webXRDefaultExperience.js.map +1 -1
- package/package.json +1 -1
- package/scene.d.ts +17 -10
- package/scene.js +25 -30
- package/scene.js.map +1 -1
- package/Cameras/RigModes/webVRRigMode.d.ts +0 -5
- package/Cameras/RigModes/webVRRigMode.js +0 -34
- package/Cameras/RigModes/webVRRigMode.js.map +0 -1
- package/Cameras/VR/webVRCamera.d.ts +0 -316
- package/Cameras/VR/webVRCamera.js +0 -618
- package/Cameras/VR/webVRCamera.js.map +0 -1
- package/Engines/Extensions/engine.webVR.d.ts +0 -91
- package/Engines/Extensions/engine.webVR.js +0 -195
- package/Engines/Extensions/engine.webVR.js.map +0 -1
- package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.d.ts +0 -23
- package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js +0 -18
- package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js.map +0 -1
- package/Gamepads/Controllers/daydreamController.d.ts +0 -38
- package/Gamepads/Controllers/daydreamController.js +0 -70
- package/Gamepads/Controllers/daydreamController.js.map +0 -1
- package/Gamepads/Controllers/gearVRController.d.ts +0 -39
- package/Gamepads/Controllers/gearVRController.js +0 -79
- package/Gamepads/Controllers/gearVRController.js.map +0 -1
- package/Gamepads/Controllers/genericController.d.ts +0 -34
- package/Gamepads/Controllers/genericController.js +0 -48
- package/Gamepads/Controllers/genericController.js.map +0 -1
- package/Gamepads/Controllers/index.d.ts +0 -8
- package/Gamepads/Controllers/index.js +0 -9
- package/Gamepads/Controllers/index.js.map +0 -1
- package/Gamepads/Controllers/oculusTouchController.d.ts +0 -78
- package/Gamepads/Controllers/oculusTouchController.js +0 -196
- package/Gamepads/Controllers/oculusTouchController.js.map +0 -1
- package/Gamepads/Controllers/poseEnabledController.d.ts +0 -219
- package/Gamepads/Controllers/poseEnabledController.js +0 -293
- package/Gamepads/Controllers/poseEnabledController.js.map +0 -1
- package/Gamepads/Controllers/viveController.d.ts +0 -52
- package/Gamepads/Controllers/viveController.js +0 -115
- package/Gamepads/Controllers/viveController.js.map +0 -1
- package/Gamepads/Controllers/webVRController.d.ts +0 -85
- package/Gamepads/Controllers/webVRController.js +0 -122
- package/Gamepads/Controllers/webVRController.js.map +0 -1
- package/Gamepads/Controllers/windowsMotionController.d.ts +0 -212
- package/Gamepads/Controllers/windowsMotionController.js +0 -519
- package/Gamepads/Controllers/windowsMotionController.js.map +0 -1
- package/Materials/greasedLinePluginMaterial.d.ts +0 -496
- package/Materials/greasedLinePluginMaterial.js.map +0 -1
- package/Materials/greasedLineSimpleMaterial.js.map +0 -1
- package/Meshes/greasedLineMesh.d.ts +0 -204
- package/Meshes/greasedLineMesh.js.map +0 -1
|
@@ -1,57 +1,58 @@
|
|
|
1
1
|
import { Vector2 } from "../../../../Maths/math.vector";
|
|
2
2
|
import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock";
|
|
3
3
|
import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock";
|
|
4
|
-
import type {
|
|
4
|
+
import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
|
|
5
5
|
import { FlowGraphBlock } from "../../../flowGraphBlock";
|
|
6
|
+
import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
|
|
6
7
|
import type { FlowGraphContext } from "../../../flowGraphContext";
|
|
7
8
|
/**
|
|
8
9
|
* Adds two vectors together.
|
|
9
10
|
* @experimental
|
|
10
11
|
*/
|
|
11
12
|
export declare class FlowGraphAddVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {
|
|
12
|
-
constructor();
|
|
13
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
13
14
|
}
|
|
14
15
|
/**
|
|
15
16
|
* Subtracts two vectors.
|
|
16
17
|
* @experimental
|
|
17
18
|
*/
|
|
18
19
|
export declare class FlowGraphSubtractVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {
|
|
19
|
-
constructor();
|
|
20
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
20
21
|
}
|
|
21
22
|
/**
|
|
22
23
|
* Multiplies two vectors together.
|
|
23
24
|
* @experimental
|
|
24
25
|
*/
|
|
25
26
|
export declare class FlowGraphMultiplyVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {
|
|
26
|
-
constructor();
|
|
27
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
27
28
|
}
|
|
28
29
|
/**
|
|
29
30
|
* Divides two vectors.
|
|
30
31
|
* @experimental
|
|
31
32
|
*/
|
|
32
33
|
export declare class FlowGraphDivideVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {
|
|
33
|
-
constructor();
|
|
34
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
34
35
|
}
|
|
35
36
|
/**
|
|
36
|
-
* Scales a vector by a
|
|
37
|
+
* Scales a vector by a given factor.
|
|
37
38
|
* @experimental
|
|
38
39
|
*/
|
|
39
40
|
export declare class FlowGraphScaleVector2Block extends FlowGraphBinaryOperationBlock<Vector2, number, Vector2> {
|
|
40
|
-
constructor();
|
|
41
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
41
42
|
}
|
|
42
43
|
/**
|
|
43
44
|
* Gets the length of a vector.
|
|
44
45
|
* @experimental
|
|
45
46
|
*/
|
|
46
47
|
export declare class FlowGraphLengthVector2Block extends FlowGraphUnaryOperationBlock<Vector2, number> {
|
|
47
|
-
constructor();
|
|
48
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
48
49
|
}
|
|
49
50
|
/**
|
|
50
51
|
* Normalizes a vector.
|
|
51
52
|
* @experimental
|
|
52
53
|
*/
|
|
53
54
|
export declare class FlowGraphNormalizeVector2Block extends FlowGraphUnaryOperationBlock<Vector2, Vector2> {
|
|
54
|
-
constructor();
|
|
55
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
55
56
|
}
|
|
56
57
|
/**
|
|
57
58
|
* Creates a vector from two components.
|
|
@@ -70,7 +71,7 @@ export declare class FlowGraphCreateVector2Block extends FlowGraphBlock {
|
|
|
70
71
|
*/
|
|
71
72
|
readonly vector: FlowGraphDataConnection<Vector2>;
|
|
72
73
|
private _cachedVector;
|
|
73
|
-
constructor();
|
|
74
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
74
75
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
75
76
|
}
|
|
76
77
|
/**
|
|
@@ -89,7 +90,7 @@ export declare class FlowGraphSplitVector2Block extends FlowGraphBlock {
|
|
|
89
90
|
* Output connection: The y component of the vector.
|
|
90
91
|
*/
|
|
91
92
|
readonly y: FlowGraphDataConnection<number>;
|
|
92
|
-
constructor();
|
|
93
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
93
94
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
94
95
|
}
|
|
95
96
|
/**
|
|
@@ -109,6 +110,6 @@ export declare class FlowGraphRotate2dVector2Block extends FlowGraphBlock {
|
|
|
109
110
|
*/
|
|
110
111
|
readonly output: FlowGraphDataConnection<Vector2>;
|
|
111
112
|
private _cachedVector;
|
|
112
|
-
constructor();
|
|
113
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
113
114
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
114
115
|
}
|
|
@@ -3,79 +3,95 @@ import { Vector2 } from "../../../../Maths/math.vector.js";
|
|
|
3
3
|
import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock.js";
|
|
4
4
|
import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock.js";
|
|
5
5
|
import { FlowGraphBlock } from "../../../flowGraphBlock.js";
|
|
6
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
7
|
+
const ADDNAME = "FGAddVector2Block";
|
|
6
8
|
/**
|
|
7
9
|
* Adds two vectors together.
|
|
8
10
|
* @experimental
|
|
9
11
|
*/
|
|
10
12
|
export class FlowGraphAddVector2Block extends FlowGraphBinaryOperationBlock {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.add(right));
|
|
13
|
+
constructor(config) {
|
|
14
|
+
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.add(right), ADDNAME, config);
|
|
13
15
|
}
|
|
14
16
|
}
|
|
17
|
+
RegisterClass(ADDNAME, FlowGraphAddVector2Block);
|
|
18
|
+
const SUBNAME = "FGSubtractVector2Block";
|
|
15
19
|
/**
|
|
16
20
|
* Subtracts two vectors.
|
|
17
21
|
* @experimental
|
|
18
22
|
*/
|
|
19
23
|
export class FlowGraphSubtractVector2Block extends FlowGraphBinaryOperationBlock {
|
|
20
|
-
constructor() {
|
|
21
|
-
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.subtract(right));
|
|
24
|
+
constructor(config) {
|
|
25
|
+
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.subtract(right), SUBNAME, config);
|
|
22
26
|
}
|
|
23
27
|
}
|
|
28
|
+
RegisterClass(SUBNAME, FlowGraphSubtractVector2Block);
|
|
29
|
+
const MULNAME = "FGMultiplyVector2Block";
|
|
24
30
|
/**
|
|
25
31
|
* Multiplies two vectors together.
|
|
26
32
|
* @experimental
|
|
27
33
|
*/
|
|
28
34
|
export class FlowGraphMultiplyVector2Block extends FlowGraphBinaryOperationBlock {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.multiply(right));
|
|
35
|
+
constructor(config) {
|
|
36
|
+
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.multiply(right), MULNAME, config);
|
|
31
37
|
}
|
|
32
38
|
}
|
|
39
|
+
RegisterClass(MULNAME, FlowGraphMultiplyVector2Block);
|
|
40
|
+
const DIVNAME = "FGDivideVector2Block";
|
|
33
41
|
/**
|
|
34
42
|
* Divides two vectors.
|
|
35
43
|
* @experimental
|
|
36
44
|
*/
|
|
37
45
|
export class FlowGraphDivideVector2Block extends FlowGraphBinaryOperationBlock {
|
|
38
|
-
constructor() {
|
|
39
|
-
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.divide(right));
|
|
46
|
+
constructor(config) {
|
|
47
|
+
super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.divide(right), DIVNAME, config);
|
|
40
48
|
}
|
|
41
49
|
}
|
|
50
|
+
RegisterClass(DIVNAME, FlowGraphDivideVector2Block);
|
|
51
|
+
const SCALENAME = "FGScaleVector2Block";
|
|
42
52
|
/**
|
|
43
|
-
* Scales a vector by a
|
|
53
|
+
* Scales a vector by a given factor.
|
|
44
54
|
* @experimental
|
|
45
55
|
*/
|
|
46
56
|
export class FlowGraphScaleVector2Block extends FlowGraphBinaryOperationBlock {
|
|
47
|
-
constructor() {
|
|
48
|
-
super(RichTypeVector2, RichTypeNumber, RichTypeVector2, (left, right) => left.scale(right));
|
|
57
|
+
constructor(config) {
|
|
58
|
+
super(RichTypeVector2, RichTypeNumber, RichTypeVector2, (left, right) => left.scale(right), SCALENAME, config);
|
|
49
59
|
}
|
|
50
60
|
}
|
|
61
|
+
RegisterClass(SCALENAME, FlowGraphScaleVector2Block);
|
|
62
|
+
const LENNAME = "FGLengthVector2Block";
|
|
51
63
|
/**
|
|
52
64
|
* Gets the length of a vector.
|
|
53
65
|
* @experimental
|
|
54
66
|
*/
|
|
55
67
|
export class FlowGraphLengthVector2Block extends FlowGraphUnaryOperationBlock {
|
|
56
|
-
constructor() {
|
|
57
|
-
super(RichTypeVector2, RichTypeNumber, (value) => value.length());
|
|
68
|
+
constructor(config) {
|
|
69
|
+
super(RichTypeVector2, RichTypeNumber, (value) => value.length(), LENNAME, config);
|
|
58
70
|
}
|
|
59
71
|
}
|
|
72
|
+
RegisterClass(LENNAME, FlowGraphLengthVector2Block);
|
|
73
|
+
const NORMALIZENAME = "FGNormalizeVector2Block";
|
|
60
74
|
/**
|
|
61
75
|
* Normalizes a vector.
|
|
62
76
|
* @experimental
|
|
63
77
|
*/
|
|
64
78
|
export class FlowGraphNormalizeVector2Block extends FlowGraphUnaryOperationBlock {
|
|
65
|
-
constructor() {
|
|
79
|
+
constructor(config) {
|
|
66
80
|
super(RichTypeVector2, RichTypeVector2, (value) => {
|
|
67
81
|
const copy = value.clone();
|
|
68
82
|
copy.normalize();
|
|
69
83
|
return copy;
|
|
70
|
-
});
|
|
84
|
+
}, NORMALIZENAME, config);
|
|
71
85
|
}
|
|
72
86
|
}
|
|
87
|
+
RegisterClass(NORMALIZENAME, FlowGraphNormalizeVector2Block);
|
|
88
|
+
const CREATENAME = "FGCreateVector2Block";
|
|
73
89
|
/**
|
|
74
90
|
* Creates a vector from two components.
|
|
75
91
|
*/
|
|
76
92
|
export class FlowGraphCreateVector2Block extends FlowGraphBlock {
|
|
77
|
-
constructor() {
|
|
78
|
-
super();
|
|
93
|
+
constructor(config) {
|
|
94
|
+
super(config);
|
|
79
95
|
this._cachedVector = Vector2.Zero();
|
|
80
96
|
this.x = this._registerDataInput("x", RichTypeNumber);
|
|
81
97
|
this.y = this._registerDataInput("y", RichTypeNumber);
|
|
@@ -87,12 +103,14 @@ export class FlowGraphCreateVector2Block extends FlowGraphBlock {
|
|
|
87
103
|
this.vector.setValue(this._cachedVector, _context);
|
|
88
104
|
}
|
|
89
105
|
}
|
|
106
|
+
RegisterClass(CREATENAME, FlowGraphCreateVector2Block);
|
|
107
|
+
const SPLITNAME = "FGSplitVector2Block";
|
|
90
108
|
/**
|
|
91
109
|
* Split a vector into its components.
|
|
92
110
|
*/
|
|
93
111
|
export class FlowGraphSplitVector2Block extends FlowGraphBlock {
|
|
94
|
-
constructor() {
|
|
95
|
-
super();
|
|
112
|
+
constructor(config) {
|
|
113
|
+
super(config);
|
|
96
114
|
this.vector = this._registerDataInput("vector", RichTypeVector2);
|
|
97
115
|
this.x = this._registerDataOutput("x", RichTypeNumber);
|
|
98
116
|
this.y = this._registerDataOutput("y", RichTypeNumber);
|
|
@@ -103,12 +121,14 @@ export class FlowGraphSplitVector2Block extends FlowGraphBlock {
|
|
|
103
121
|
this.y.setValue(vector.y, _context);
|
|
104
122
|
}
|
|
105
123
|
}
|
|
124
|
+
RegisterClass(SPLITNAME, FlowGraphSplitVector2Block);
|
|
125
|
+
const ROTATENAME = "FGRotate2dVector2Block";
|
|
106
126
|
/**
|
|
107
127
|
* Rotates a vector by a given angle.
|
|
108
128
|
*/
|
|
109
129
|
export class FlowGraphRotate2dVector2Block extends FlowGraphBlock {
|
|
110
|
-
constructor() {
|
|
111
|
-
super();
|
|
130
|
+
constructor(config) {
|
|
131
|
+
super(config);
|
|
112
132
|
this._cachedVector = Vector2.Zero();
|
|
113
133
|
this.input = this._registerDataInput("input", RichTypeVector2);
|
|
114
134
|
this.angle = this._registerDataInput("angle", RichTypeNumber);
|
|
@@ -122,4 +142,5 @@ export class FlowGraphRotate2dVector2Block extends FlowGraphBlock {
|
|
|
122
142
|
this.output.setValue(this._cachedVector, _context);
|
|
123
143
|
}
|
|
124
144
|
}
|
|
145
|
+
RegisterClass(ROTATENAME, FlowGraphRotate2dVector2Block);
|
|
125
146
|
//# sourceMappingURL=flowGraphVector2MathBlocks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowGraphVector2MathBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.ts"],"names":[],"mappings":"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","sourcesContent":["import { RichTypeNumber, RichTypeVector2 } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { Vector2 } from \"../../../../Maths/math.vector\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\nimport { FlowGraphBlock } from \"../../../flowGraphBlock\";\r\nimport type { FlowGraphContext } from \"../../../flowGraphContext\";\r\n\r\n/**\r\n * Adds two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphAddVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.add(right));\r\n }\r\n}\r\n\r\n/**\r\n * Subtracts two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphSubtractVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.subtract(right));\r\n }\r\n}\r\n\r\n/**\r\n * Multiplies two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphMultiplyVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.multiply(right));\r\n }\r\n}\r\n\r\n/**\r\n * Divides two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDivideVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.divide(right));\r\n }\r\n}\r\n\r\n/**\r\n * Scales a vector by a number.\r\n * @experimental\r\n */\r\nexport class FlowGraphScaleVector2Block extends FlowGraphBinaryOperationBlock<Vector2, number, Vector2> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeNumber, RichTypeVector2, (left, right) => left.scale(right));\r\n }\r\n}\r\n\r\n/**\r\n * Gets the length of a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphLengthVector2Block extends FlowGraphUnaryOperationBlock<Vector2, number> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeNumber, (value) => value.length());\r\n }\r\n}\r\n\r\n/**\r\n * Normalizes a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphNormalizeVector2Block extends FlowGraphUnaryOperationBlock<Vector2, Vector2> {\r\n constructor() {\r\n super(RichTypeVector2, RichTypeVector2, (value: Vector2) => {\r\n const copy: Vector2 = value.clone();\r\n copy.normalize();\r\n return copy;\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Creates a vector from two components.\r\n */\r\nexport class FlowGraphCreateVector2Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The created vector.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector2>;\r\n\r\n private _cachedVector: Vector2 = Vector2.Zero();\r\n\r\n constructor() {\r\n super();\r\n\r\n this.x = this._registerDataInput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.vector = this._registerDataOutput(\"vector\", RichTypeVector2);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this._cachedVector.x = this.x.getValue(_context);\r\n this._cachedVector.y = this.y.getValue(_context);\r\n this.vector.setValue(this._cachedVector, _context);\r\n }\r\n}\r\n\r\n/**\r\n * Split a vector into its components.\r\n */\r\nexport class FlowGraphSplitVector2Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to split.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector2>;\r\n /**\r\n * Output connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n\r\n constructor() {\r\n super();\r\n\r\n this.vector = this._registerDataInput(\"vector\", RichTypeVector2);\r\n this.x = this._registerDataOutput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataOutput(\"y\", RichTypeNumber);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const vector = this.vector.getValue(_context);\r\n this.x.setValue(vector.x, _context);\r\n this.y.setValue(vector.y, _context);\r\n }\r\n}\r\n\r\n/**\r\n * Rotates a vector by a given angle.\r\n */\r\nexport class FlowGraphRotate2dVector2Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to rotate.\r\n */\r\n public readonly input: FlowGraphDataConnection<Vector2>;\r\n /**\r\n * Input connection: The angle to rotate by.\r\n */\r\n public readonly angle: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The rotated vector.\r\n */\r\n public readonly output: FlowGraphDataConnection<Vector2>;\r\n\r\n private _cachedVector: Vector2 = Vector2.Zero();\r\n\r\n constructor() {\r\n super();\r\n this.input = this._registerDataInput(\"input\", RichTypeVector2);\r\n this.angle = this._registerDataInput(\"angle\", RichTypeNumber);\r\n this.output = this._registerDataOutput(\"output\", RichTypeVector2);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const input = this.input.getValue(_context);\r\n const angle = this.angle.getValue(_context);\r\n this._cachedVector.x = input.x * Math.cos(angle) - input.y * Math.sin(angle);\r\n this._cachedVector.y = input.x * Math.sin(angle) + input.y * Math.cos(angle);\r\n this.output.setValue(this._cachedVector, _context);\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"flowGraphVector2MathBlocks.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.ts"],"names":[],"mappings":"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","sourcesContent":["import { RichTypeNumber, RichTypeVector2 } from \"core/FlowGraph/flowGraphRichTypes\";\r\nimport { Vector2 } from \"../../../../Maths/math.vector\";\r\nimport { FlowGraphBinaryOperationBlock } from \"../flowGraphBinaryOperationBlock\";\r\nimport { FlowGraphUnaryOperationBlock } from \"../flowGraphUnaryOperationBlock\";\r\nimport type { IFlowGraphBlockConfiguration } from \"../../../flowGraphBlock\";\r\nimport { FlowGraphBlock } from \"../../../flowGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport type { FlowGraphDataConnection } from \"../../../flowGraphDataConnection\";\r\nimport type { FlowGraphContext } from \"../../../flowGraphContext\";\r\n\r\nconst ADDNAME = \"FGAddVector2Block\";\r\n/**\r\n * Adds two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphAddVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.add(right), ADDNAME, config);\r\n }\r\n}\r\nRegisterClass(ADDNAME, FlowGraphAddVector2Block);\r\n\r\nconst SUBNAME = \"FGSubtractVector2Block\";\r\n/**\r\n * Subtracts two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphSubtractVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.subtract(right), SUBNAME, config);\r\n }\r\n}\r\nRegisterClass(SUBNAME, FlowGraphSubtractVector2Block);\r\n\r\nconst MULNAME = \"FGMultiplyVector2Block\";\r\n/**\r\n * Multiplies two vectors together.\r\n * @experimental\r\n */\r\nexport class FlowGraphMultiplyVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.multiply(right), MULNAME, config);\r\n }\r\n}\r\nRegisterClass(MULNAME, FlowGraphMultiplyVector2Block);\r\n\r\nconst DIVNAME = \"FGDivideVector2Block\";\r\n/**\r\n * Divides two vectors.\r\n * @experimental\r\n */\r\nexport class FlowGraphDivideVector2Block extends FlowGraphBinaryOperationBlock<Vector2, Vector2, Vector2> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector2, RichTypeVector2, RichTypeVector2, (left, right) => left.divide(right), DIVNAME, config);\r\n }\r\n}\r\nRegisterClass(DIVNAME, FlowGraphDivideVector2Block);\r\n\r\nconst SCALENAME = \"FGScaleVector2Block\";\r\n/**\r\n * Scales a vector by a given factor.\r\n * @experimental\r\n */\r\nexport class FlowGraphScaleVector2Block extends FlowGraphBinaryOperationBlock<Vector2, number, Vector2> {\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector2, RichTypeNumber, RichTypeVector2, (left, right) => left.scale(right), SCALENAME, config);\r\n }\r\n}\r\nRegisterClass(SCALENAME, FlowGraphScaleVector2Block);\r\n\r\nconst LENNAME = \"FGLengthVector2Block\";\r\n/**\r\n * Gets the length of a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphLengthVector2Block extends FlowGraphUnaryOperationBlock<Vector2, number> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(RichTypeVector2, RichTypeNumber, (value) => value.length(), LENNAME, config);\r\n }\r\n}\r\nRegisterClass(LENNAME, FlowGraphLengthVector2Block);\r\n\r\nconst NORMALIZENAME = \"FGNormalizeVector2Block\";\r\n/**\r\n * Normalizes a vector.\r\n * @experimental\r\n */\r\nexport class FlowGraphNormalizeVector2Block extends FlowGraphUnaryOperationBlock<Vector2, Vector2> {\r\n constructor(config: IFlowGraphBlockConfiguration) {\r\n super(\r\n RichTypeVector2,\r\n RichTypeVector2,\r\n (value: Vector2) => {\r\n const copy: Vector2 = value.clone();\r\n copy.normalize();\r\n return copy;\r\n },\r\n NORMALIZENAME,\r\n config\r\n );\r\n }\r\n}\r\nRegisterClass(NORMALIZENAME, FlowGraphNormalizeVector2Block);\r\n\r\nconst CREATENAME = \"FGCreateVector2Block\";\r\n/**\r\n * Creates a vector from two components.\r\n */\r\nexport class FlowGraphCreateVector2Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Input connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The created vector.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector2>;\r\n\r\n private _cachedVector: Vector2 = Vector2.Zero();\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.x = this._registerDataInput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataInput(\"y\", RichTypeNumber);\r\n this.vector = this._registerDataOutput(\"vector\", RichTypeVector2);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n this._cachedVector.x = this.x.getValue(_context);\r\n this._cachedVector.y = this.y.getValue(_context);\r\n this.vector.setValue(this._cachedVector, _context);\r\n }\r\n}\r\nRegisterClass(CREATENAME, FlowGraphCreateVector2Block);\r\n\r\nconst SPLITNAME = \"FGSplitVector2Block\";\r\n/**\r\n * Split a vector into its components.\r\n */\r\nexport class FlowGraphSplitVector2Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to split.\r\n */\r\n public readonly vector: FlowGraphDataConnection<Vector2>;\r\n /**\r\n * Output connection: The x component of the vector.\r\n */\r\n public readonly x: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The y component of the vector.\r\n */\r\n public readonly y: FlowGraphDataConnection<number>;\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n\r\n this.vector = this._registerDataInput(\"vector\", RichTypeVector2);\r\n this.x = this._registerDataOutput(\"x\", RichTypeNumber);\r\n this.y = this._registerDataOutput(\"y\", RichTypeNumber);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const vector = this.vector.getValue(_context);\r\n this.x.setValue(vector.x, _context);\r\n this.y.setValue(vector.y, _context);\r\n }\r\n}\r\nRegisterClass(SPLITNAME, FlowGraphSplitVector2Block);\r\n\r\nconst ROTATENAME = \"FGRotate2dVector2Block\";\r\n/**\r\n * Rotates a vector by a given angle.\r\n */\r\nexport class FlowGraphRotate2dVector2Block extends FlowGraphBlock {\r\n /**\r\n * Input connection: The vector to rotate.\r\n */\r\n public readonly input: FlowGraphDataConnection<Vector2>;\r\n /**\r\n * Input connection: The angle to rotate by.\r\n */\r\n public readonly angle: FlowGraphDataConnection<number>;\r\n /**\r\n * Output connection: The rotated vector.\r\n */\r\n public readonly output: FlowGraphDataConnection<Vector2>;\r\n\r\n private _cachedVector: Vector2 = Vector2.Zero();\r\n\r\n constructor(config?: IFlowGraphBlockConfiguration) {\r\n super(config);\r\n this.input = this._registerDataInput(\"input\", RichTypeVector2);\r\n this.angle = this._registerDataInput(\"angle\", RichTypeNumber);\r\n this.output = this._registerDataOutput(\"output\", RichTypeVector2);\r\n }\r\n\r\n public _updateOutputs(_context: FlowGraphContext): void {\r\n const input = this.input.getValue(_context);\r\n const angle = this.angle.getValue(_context);\r\n this._cachedVector.x = input.x * Math.cos(angle) - input.y * Math.sin(angle);\r\n this._cachedVector.y = input.x * Math.sin(angle) + input.y * Math.cos(angle);\r\n this.output.setValue(this._cachedVector, _context);\r\n }\r\n}\r\nRegisterClass(ROTATENAME, FlowGraphRotate2dVector2Block);\r\n"]}
|
|
@@ -2,6 +2,7 @@ import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock"
|
|
|
2
2
|
import type { Matrix } from "../../../../Maths/math.vector";
|
|
3
3
|
import { Vector3 } from "../../../../Maths/math.vector";
|
|
4
4
|
import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock";
|
|
5
|
+
import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock";
|
|
5
6
|
import { FlowGraphBlock } from "../../../flowGraphBlock";
|
|
6
7
|
import type { FlowGraphContext } from "../../../flowGraphContext";
|
|
7
8
|
import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
|
|
@@ -10,63 +11,63 @@ import type { FlowGraphDataConnection } from "../../../flowGraphDataConnection";
|
|
|
10
11
|
* @experimental
|
|
11
12
|
*/
|
|
12
13
|
export declare class FlowGraphAddVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {
|
|
13
|
-
constructor();
|
|
14
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
17
|
* Subtract two vectors.
|
|
17
18
|
* @experimental
|
|
18
19
|
*/
|
|
19
20
|
export declare class FlowGraphSubtractVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {
|
|
20
|
-
constructor();
|
|
21
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
21
22
|
}
|
|
22
23
|
/**
|
|
23
24
|
* Multiply two vectors together.
|
|
24
25
|
* @experimental
|
|
25
26
|
*/
|
|
26
27
|
export declare class FlowGraphMultiplyVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {
|
|
27
|
-
constructor();
|
|
28
|
+
constructor(config: IFlowGraphBlockConfiguration);
|
|
28
29
|
}
|
|
29
30
|
/**
|
|
30
31
|
* Divide two vectors.
|
|
31
32
|
* @experimental
|
|
32
33
|
*/
|
|
33
34
|
export declare class FlowGraphDivideVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {
|
|
34
|
-
constructor();
|
|
35
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
35
36
|
}
|
|
36
37
|
/**
|
|
37
38
|
* Scale a vector by a number.
|
|
38
39
|
* @experimental
|
|
39
40
|
*/
|
|
40
41
|
export declare class FlowGraphScaleVector3Block extends FlowGraphBinaryOperationBlock<Vector3, number, Vector3> {
|
|
41
|
-
constructor();
|
|
42
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
42
43
|
}
|
|
43
44
|
/**
|
|
44
45
|
* Get the length of a vector.
|
|
45
46
|
* @experimental
|
|
46
47
|
*/
|
|
47
48
|
export declare class FlowGraphLengthVector3Block extends FlowGraphUnaryOperationBlock<Vector3, number> {
|
|
48
|
-
constructor();
|
|
49
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
49
50
|
}
|
|
50
51
|
/**
|
|
51
52
|
* Normalize a vector.
|
|
52
53
|
* @experimental
|
|
53
54
|
*/
|
|
54
55
|
export declare class FlowGraphNormalizeVector3Block extends FlowGraphUnaryOperationBlock<Vector3, Vector3> {
|
|
55
|
-
constructor();
|
|
56
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
56
57
|
}
|
|
57
58
|
/**
|
|
58
59
|
* Get the dot product of two vectors.
|
|
59
60
|
* @experimental
|
|
60
61
|
*/
|
|
61
62
|
export declare class FlowGraphDotVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, number> {
|
|
62
|
-
constructor();
|
|
63
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* Get the cross product of two vectors.
|
|
66
67
|
* @experimental
|
|
67
68
|
*/
|
|
68
69
|
export declare class FlowGraphCrossVector3Block extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> {
|
|
69
|
-
constructor();
|
|
70
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
70
71
|
}
|
|
71
72
|
/**
|
|
72
73
|
* Create a vector from its components.
|
|
@@ -90,8 +91,9 @@ export declare class FlowGraphCreateVector3Block extends FlowGraphBlock {
|
|
|
90
91
|
*/
|
|
91
92
|
readonly vector: FlowGraphDataConnection<Vector3>;
|
|
92
93
|
private _cachedVector;
|
|
93
|
-
constructor();
|
|
94
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
94
95
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
96
|
+
getClassName(): string;
|
|
95
97
|
}
|
|
96
98
|
/**
|
|
97
99
|
* Split a vector into its components.
|
|
@@ -114,8 +116,9 @@ export declare class FlowGraphSplitVector3Block extends FlowGraphBlock {
|
|
|
114
116
|
* Input connection: The z component of the vector.
|
|
115
117
|
*/
|
|
116
118
|
readonly z: FlowGraphDataConnection<number>;
|
|
117
|
-
constructor();
|
|
119
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
118
120
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
121
|
+
getClassName(): string;
|
|
119
122
|
}
|
|
120
123
|
/**
|
|
121
124
|
* Rotates a vector by a given angle.
|
|
@@ -138,8 +141,9 @@ export declare class FlowGraphRotate3dVector3Block extends FlowGraphBlock {
|
|
|
138
141
|
*/
|
|
139
142
|
readonly output: FlowGraphDataConnection<Vector3>;
|
|
140
143
|
private _cachedQuaternion;
|
|
141
|
-
constructor();
|
|
144
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
142
145
|
_updateOutputs(_context: FlowGraphContext): void;
|
|
146
|
+
getClassName(): string;
|
|
143
147
|
}
|
|
144
148
|
/**
|
|
145
149
|
* Transforms a vector by a given matrix.
|
|
@@ -147,5 +151,5 @@ export declare class FlowGraphRotate3dVector3Block extends FlowGraphBlock {
|
|
|
147
151
|
*/
|
|
148
152
|
export declare class FlowGraphTransformVector3Block extends FlowGraphBinaryOperationBlock<Matrix, Vector3, Vector3> {
|
|
149
153
|
private _cachedResult;
|
|
150
|
-
constructor();
|
|
154
|
+
constructor(config?: IFlowGraphBlockConfiguration);
|
|
151
155
|
}
|
|
@@ -3,94 +3,114 @@ import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock.
|
|
|
3
3
|
import { Quaternion, Vector3 } from "../../../../Maths/math.vector.js";
|
|
4
4
|
import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock.js";
|
|
5
5
|
import { FlowGraphBlock } from "../../../flowGraphBlock.js";
|
|
6
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
7
|
+
const ADDNAME = "FGAddVector3Block";
|
|
6
8
|
/**
|
|
7
9
|
* Add two vectors together.
|
|
8
10
|
* @experimental
|
|
9
11
|
*/
|
|
10
12
|
export class FlowGraphAddVector3Block extends FlowGraphBinaryOperationBlock {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.add(right));
|
|
13
|
+
constructor(config) {
|
|
14
|
+
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.add(right), ADDNAME, config);
|
|
13
15
|
}
|
|
14
16
|
}
|
|
17
|
+
RegisterClass(ADDNAME, FlowGraphAddVector3Block);
|
|
18
|
+
const SUBNAME = "FGSubtractVector3Block";
|
|
15
19
|
/**
|
|
16
20
|
* Subtract two vectors.
|
|
17
21
|
* @experimental
|
|
18
22
|
*/
|
|
19
23
|
export class FlowGraphSubtractVector3Block extends FlowGraphBinaryOperationBlock {
|
|
20
|
-
constructor() {
|
|
21
|
-
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.subtract(right));
|
|
24
|
+
constructor(config) {
|
|
25
|
+
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.subtract(right), SUBNAME, config);
|
|
22
26
|
}
|
|
23
27
|
}
|
|
28
|
+
RegisterClass(SUBNAME, FlowGraphSubtractVector3Block);
|
|
29
|
+
const MULNAME = "FGMultiplyVector3Block";
|
|
24
30
|
/**
|
|
25
31
|
* Multiply two vectors together.
|
|
26
32
|
* @experimental
|
|
27
33
|
*/
|
|
28
34
|
export class FlowGraphMultiplyVector3Block extends FlowGraphBinaryOperationBlock {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.multiply(right));
|
|
35
|
+
constructor(config) {
|
|
36
|
+
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.multiply(right), MULNAME, config);
|
|
31
37
|
}
|
|
32
38
|
}
|
|
39
|
+
RegisterClass(MULNAME, FlowGraphMultiplyVector3Block);
|
|
40
|
+
const DIVNAME = "FGDivideVector3Block";
|
|
33
41
|
/**
|
|
34
42
|
* Divide two vectors.
|
|
35
43
|
* @experimental
|
|
36
44
|
*/
|
|
37
45
|
export class FlowGraphDivideVector3Block extends FlowGraphBinaryOperationBlock {
|
|
38
|
-
constructor() {
|
|
39
|
-
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.divide(right));
|
|
46
|
+
constructor(config) {
|
|
47
|
+
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => left.divide(right), DIVNAME, config);
|
|
40
48
|
}
|
|
41
49
|
}
|
|
50
|
+
RegisterClass(DIVNAME, FlowGraphDivideVector3Block);
|
|
51
|
+
const SCALNAME = "FGScaleVector3Block";
|
|
42
52
|
/**
|
|
43
53
|
* Scale a vector by a number.
|
|
44
54
|
* @experimental
|
|
45
55
|
*/
|
|
46
56
|
export class FlowGraphScaleVector3Block extends FlowGraphBinaryOperationBlock {
|
|
47
|
-
constructor() {
|
|
48
|
-
super(RichTypeVector3, RichTypeNumber, RichTypeVector3, (left, right) => left.scale(right));
|
|
57
|
+
constructor(config) {
|
|
58
|
+
super(RichTypeVector3, RichTypeNumber, RichTypeVector3, (left, right) => left.scale(right), SCALNAME, config);
|
|
49
59
|
}
|
|
50
60
|
}
|
|
61
|
+
RegisterClass(SCALNAME, FlowGraphScaleVector3Block);
|
|
62
|
+
const LENNAME = "FGLengthVector3Block";
|
|
51
63
|
/**
|
|
52
64
|
* Get the length of a vector.
|
|
53
65
|
* @experimental
|
|
54
66
|
*/
|
|
55
67
|
export class FlowGraphLengthVector3Block extends FlowGraphUnaryOperationBlock {
|
|
56
|
-
constructor() {
|
|
57
|
-
super(RichTypeVector3, RichTypeNumber, (value) => value.length());
|
|
68
|
+
constructor(config) {
|
|
69
|
+
super(RichTypeVector3, RichTypeNumber, (value) => value.length(), LENNAME, config);
|
|
58
70
|
}
|
|
59
71
|
}
|
|
72
|
+
RegisterClass(LENNAME, FlowGraphLengthVector3Block);
|
|
73
|
+
const NORMNAME = "FGNormalizeVector3Block";
|
|
60
74
|
/**
|
|
61
75
|
* Normalize a vector.
|
|
62
76
|
* @experimental
|
|
63
77
|
*/
|
|
64
78
|
export class FlowGraphNormalizeVector3Block extends FlowGraphUnaryOperationBlock {
|
|
65
|
-
constructor() {
|
|
66
|
-
super(RichTypeVector3, RichTypeVector3, (value) => value.normalizeToNew());
|
|
79
|
+
constructor(config) {
|
|
80
|
+
super(RichTypeVector3, RichTypeVector3, (value) => value.normalizeToNew(), NORMNAME, config);
|
|
67
81
|
}
|
|
68
82
|
}
|
|
83
|
+
RegisterClass(NORMNAME, FlowGraphNormalizeVector3Block);
|
|
84
|
+
const DOTNAME = "FGDotVector3Block";
|
|
69
85
|
/**
|
|
70
86
|
* Get the dot product of two vectors.
|
|
71
87
|
* @experimental
|
|
72
88
|
*/
|
|
73
89
|
export class FlowGraphDotVector3Block extends FlowGraphBinaryOperationBlock {
|
|
74
|
-
constructor() {
|
|
75
|
-
super(RichTypeVector3, RichTypeVector3, RichTypeNumber, (left, right) => Vector3.Dot(left, right));
|
|
90
|
+
constructor(config) {
|
|
91
|
+
super(RichTypeVector3, RichTypeVector3, RichTypeNumber, (left, right) => Vector3.Dot(left, right), DOTNAME, config);
|
|
76
92
|
}
|
|
77
93
|
}
|
|
94
|
+
RegisterClass(DOTNAME, FlowGraphDotVector3Block);
|
|
95
|
+
const CROSSNAME = "FGCrossVector3Block";
|
|
78
96
|
/**
|
|
79
97
|
* Get the cross product of two vectors.
|
|
80
98
|
* @experimental
|
|
81
99
|
*/
|
|
82
100
|
export class FlowGraphCrossVector3Block extends FlowGraphBinaryOperationBlock {
|
|
83
|
-
constructor() {
|
|
84
|
-
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.Cross(left, right));
|
|
101
|
+
constructor(config) {
|
|
102
|
+
super(RichTypeVector3, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.Cross(left, right), CROSSNAME, config);
|
|
85
103
|
}
|
|
86
104
|
}
|
|
105
|
+
RegisterClass(CROSSNAME, FlowGraphCrossVector3Block);
|
|
106
|
+
const CREATENAME = "FGCreateVector3Block";
|
|
87
107
|
/**
|
|
88
108
|
* Create a vector from its components.
|
|
89
109
|
* @experimental
|
|
90
110
|
*/
|
|
91
111
|
export class FlowGraphCreateVector3Block extends FlowGraphBlock {
|
|
92
|
-
constructor() {
|
|
93
|
-
super();
|
|
112
|
+
constructor(config) {
|
|
113
|
+
super(config);
|
|
94
114
|
this._cachedVector = Vector3.Zero();
|
|
95
115
|
this.x = this._registerDataInput("x", RichTypeNumber);
|
|
96
116
|
this.y = this._registerDataInput("y", RichTypeNumber);
|
|
@@ -103,14 +123,19 @@ export class FlowGraphCreateVector3Block extends FlowGraphBlock {
|
|
|
103
123
|
this._cachedVector.z = this.z.getValue(_context);
|
|
104
124
|
this.vector.setValue(this._cachedVector, _context);
|
|
105
125
|
}
|
|
126
|
+
getClassName() {
|
|
127
|
+
return CREATENAME;
|
|
128
|
+
}
|
|
106
129
|
}
|
|
130
|
+
RegisterClass(CREATENAME, FlowGraphCreateVector3Block);
|
|
131
|
+
const SPLITNAME = "FGSplitVector3Block";
|
|
107
132
|
/**
|
|
108
133
|
* Split a vector into its components.
|
|
109
134
|
* @experimental
|
|
110
135
|
*/
|
|
111
136
|
export class FlowGraphSplitVector3Block extends FlowGraphBlock {
|
|
112
|
-
constructor() {
|
|
113
|
-
super();
|
|
137
|
+
constructor(config) {
|
|
138
|
+
super(config);
|
|
114
139
|
this.vector = this._registerDataInput("vector", RichTypeVector3);
|
|
115
140
|
this.x = this._registerDataOutput("x", RichTypeNumber);
|
|
116
141
|
this.y = this._registerDataOutput("y", RichTypeNumber);
|
|
@@ -122,13 +147,18 @@ export class FlowGraphSplitVector3Block extends FlowGraphBlock {
|
|
|
122
147
|
this.y.setValue(vector.y, _context);
|
|
123
148
|
this.z.setValue(vector.z, _context);
|
|
124
149
|
}
|
|
150
|
+
getClassName() {
|
|
151
|
+
return SPLITNAME;
|
|
152
|
+
}
|
|
125
153
|
}
|
|
154
|
+
RegisterClass(SPLITNAME, FlowGraphSplitVector3Block);
|
|
155
|
+
const ROTATENAME = "FGRotateVector3Block";
|
|
126
156
|
/**
|
|
127
157
|
* Rotates a vector by a given angle.
|
|
128
158
|
*/
|
|
129
159
|
export class FlowGraphRotate3dVector3Block extends FlowGraphBlock {
|
|
130
|
-
constructor() {
|
|
131
|
-
super();
|
|
160
|
+
constructor(config) {
|
|
161
|
+
super(config);
|
|
132
162
|
this._cachedQuaternion = new Quaternion();
|
|
133
163
|
this.input = this._registerDataInput("input", RichTypeVector3);
|
|
134
164
|
this.angle = this._registerDataInput("angle", RichTypeNumber);
|
|
@@ -140,15 +170,21 @@ export class FlowGraphRotate3dVector3Block extends FlowGraphBlock {
|
|
|
140
170
|
const output = this.output.getValue(_context);
|
|
141
171
|
input.applyRotationQuaternionToRef(rot, output);
|
|
142
172
|
}
|
|
173
|
+
getClassName() {
|
|
174
|
+
return ROTATENAME;
|
|
175
|
+
}
|
|
143
176
|
}
|
|
177
|
+
RegisterClass(ROTATENAME, FlowGraphRotate3dVector3Block);
|
|
178
|
+
const TRANSFORMNAME = "FGTransformVector3Block";
|
|
144
179
|
/**
|
|
145
180
|
* Transforms a vector by a given matrix.
|
|
146
181
|
* @experimental
|
|
147
182
|
*/
|
|
148
183
|
export class FlowGraphTransformVector3Block extends FlowGraphBinaryOperationBlock {
|
|
149
|
-
constructor() {
|
|
150
|
-
super(RichTypeMatrix, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.TransformCoordinatesToRef(right, left, this._cachedResult));
|
|
184
|
+
constructor(config) {
|
|
185
|
+
super(RichTypeMatrix, RichTypeVector3, RichTypeVector3, (left, right) => Vector3.TransformCoordinatesToRef(right, left, this._cachedResult), TRANSFORMNAME, config);
|
|
151
186
|
this._cachedResult = Vector3.Zero();
|
|
152
187
|
}
|
|
153
188
|
}
|
|
189
|
+
RegisterClass(TRANSFORMNAME, FlowGraphTransformVector3Block);
|
|
154
190
|
//# sourceMappingURL=flowGraphVector3MathBlocks.js.map
|