@babylonjs/core 6.14.2 → 6.16.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.
- package/Actions/actionManager.js +8 -3
- package/Actions/actionManager.js.map +1 -1
- package/Behaviors/Cameras/framingBehavior.d.ts +2 -1
- package/Behaviors/Cameras/framingBehavior.js +3 -1
- package/Behaviors/Cameras/framingBehavior.js.map +1 -1
- package/Bones/skeleton.js +1 -0
- package/Bones/skeleton.js.map +1 -1
- package/Compute/computeEffect.js +1 -1
- package/Compute/computeEffect.js.map +1 -1
- package/{Materials/Node/nodeMaterialDecorator.d.ts → Decorators/nodeDecorator.d.ts} +6 -7
- package/{Materials/Node/nodeMaterialDecorator.js → Decorators/nodeDecorator.js} +3 -3
- package/Decorators/nodeDecorator.js.map +1 -0
- package/Engines/Processors/shaderCodeNode.js +1 -1
- package/Engines/Processors/shaderCodeNode.js.map +1 -1
- package/Engines/WebGL/webGL2ShaderProcessors.js +2 -1
- package/Engines/WebGL/webGL2ShaderProcessors.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessor.js +3 -0
- package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +11 -10
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js +3 -3
- package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
- package/Engines/nativeEngine.js +5 -4
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/thinEngine.d.ts +2 -0
- package/Engines/thinEngine.js +35 -4
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.js +12 -2
- package/Engines/webgpuEngine.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphBinaryOpBlocks.d.ts +34 -0
- package/FlowGraph/Blocks/Data/flowGraphBinaryOpBlocks.js +29 -0
- package/FlowGraph/Blocks/Data/flowGraphBinaryOpBlocks.js.map +1 -0
- package/FlowGraph/Blocks/Data/index.d.ts +1 -0
- package/FlowGraph/Blocks/Data/index.js +2 -0
- package/FlowGraph/Blocks/Data/index.js.map +1 -0
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +23 -0
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +51 -0
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +20 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +29 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -0
- package/FlowGraph/Blocks/Event/index.d.ts +2 -0
- package/FlowGraph/Blocks/Event/index.js +3 -0
- package/FlowGraph/Blocks/Event/index.js.map +1 -0
- package/FlowGraph/Blocks/Execution/flowGraphForLoopBlock.d.ts +43 -0
- package/FlowGraph/Blocks/Execution/flowGraphForLoopBlock.js +40 -0
- package/FlowGraph/Blocks/Execution/flowGraphForLoopBlock.js.map +1 -0
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +18 -0
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +21 -0
- package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -0
- package/FlowGraph/Blocks/Execution/index.d.ts +2 -0
- package/FlowGraph/Blocks/Execution/index.js +3 -0
- package/FlowGraph/Blocks/Execution/index.js.map +1 -0
- package/FlowGraph/Blocks/index.d.ts +3 -0
- package/FlowGraph/Blocks/index.js +5 -0
- package/FlowGraph/Blocks/index.js.map +1 -0
- package/FlowGraph/flowGraph.d.ts +34 -0
- package/FlowGraph/flowGraph.js +54 -0
- package/FlowGraph/flowGraph.js.map +1 -0
- package/FlowGraph/flowGraphBlock.d.ts +33 -0
- package/FlowGraph/flowGraphBlock.js +39 -0
- package/FlowGraph/flowGraphBlock.js.map +1 -0
- package/FlowGraph/flowGraphConnection.d.ts +38 -0
- package/FlowGraph/flowGraphConnection.js +40 -0
- package/FlowGraph/flowGraphConnection.js.map +1 -0
- package/FlowGraph/flowGraphDataConnection.d.ts +15 -0
- package/FlowGraph/flowGraphDataConnection.js +30 -0
- package/FlowGraph/flowGraphDataConnection.js.map +1 -0
- package/FlowGraph/flowGraphEventBlock.d.ts +20 -0
- package/FlowGraph/flowGraphEventBlock.js +15 -0
- package/FlowGraph/flowGraphEventBlock.js.map +1 -0
- package/FlowGraph/flowGraphExecutionBlock.d.ts +24 -0
- package/FlowGraph/flowGraphExecutionBlock.js +27 -0
- package/FlowGraph/flowGraphExecutionBlock.js.map +1 -0
- package/FlowGraph/flowGraphSignalConnection.d.ts +14 -0
- package/FlowGraph/flowGraphSignalConnection.js +22 -0
- package/FlowGraph/flowGraphSignalConnection.js.map +1 -0
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +7 -0
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +8 -0
- package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -0
- package/FlowGraph/index.d.ts +6 -0
- package/FlowGraph/index.js +8 -0
- package/FlowGraph/index.js.map +1 -0
- package/Gizmos/lightGizmo.d.ts +5 -0
- package/Gizmos/lightGizmo.js +21 -7
- package/Gizmos/lightGizmo.js.map +1 -1
- package/Gizmos/planeRotationGizmo.d.ts +6 -0
- package/Gizmos/planeRotationGizmo.js +5 -1
- package/Gizmos/planeRotationGizmo.js.map +1 -1
- package/Gizmos/rotationGizmo.d.ts +8 -0
- package/Gizmos/rotationGizmo.js +15 -0
- package/Gizmos/rotationGizmo.js.map +1 -1
- package/Layers/layer.js +1 -1
- package/Layers/layer.js.map +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.d.ts +2 -1
- package/Lights/Shadows/cascadedShadowGenerator.js +4 -3
- package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
- package/Lights/Shadows/shadowGenerator.d.ts +3 -1
- package/Lights/Shadows/shadowGenerator.js +4 -2
- package/Lights/Shadows/shadowGenerator.js.map +1 -1
- package/Lights/directionalLight.d.ts +1 -1
- package/Lights/directionalLight.js.map +1 -1
- package/Lights/hemisphericLight.d.ts +1 -1
- package/Lights/hemisphericLight.js.map +1 -1
- package/Lights/light.d.ts +1 -1
- package/Lights/light.js.map +1 -1
- package/Lights/pointLight.d.ts +1 -1
- package/Lights/pointLight.js.map +1 -1
- package/Lights/spotLight.d.ts +1 -1
- package/Lights/spotLight.js.map +1 -1
- package/Loading/sceneLoader.js +2 -0
- package/Loading/sceneLoader.js.map +1 -1
- package/Materials/Node/Blocks/Dual/currentScreenBlock.js +13 -13
- package/Materials/Node/Blocks/Dual/currentScreenBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/fogBlock.js +6 -6
- package/Materials/Node/Blocks/Dual/fogBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/imageSourceBlock.js +11 -11
- package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/lightBlock.js +16 -16
- package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +27 -27
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +1 -1
- package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +8 -8
- package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/textureBlock.js +28 -28
- package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/TBNBlock.js +3 -5
- package/Materials/Node/Blocks/Fragment/TBNBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/derivativeBlock.js +2 -2
- package/Materials/Node/Blocks/Fragment/derivativeBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/discardBlock.js +1 -1
- package/Materials/Node/Blocks/Fragment/discardBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/fragCoordBlock.js +1 -1
- package/Materials/Node/Blocks/Fragment/fragCoordBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/fragDepthBlock.js +1 -1
- package/Materials/Node/Blocks/Fragment/fragDepthBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +15 -15
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/frontFacingBlock.js +1 -1
- package/Materials/Node/Blocks/Fragment/frontFacingBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js +6 -6
- package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js +13 -13
- package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +13 -13
- package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/screenSizeBlock.js +1 -1
- package/Materials/Node/Blocks/Fragment/screenSizeBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js +5 -5
- package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/shadowMapBlock.js +7 -7
- package/Materials/Node/Blocks/Fragment/shadowMapBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/twirlBlock.js +3 -3
- package/Materials/Node/Blocks/Fragment/twirlBlock.js.map +1 -1
- package/Materials/Node/Blocks/Input/inputBlock.js +11 -11
- package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/anisotropyBlock.js +6 -6
- package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/clearCoatBlock.js +9 -9
- package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/iridescenceBlock.js +1 -1
- package/Materials/Node/Blocks/PBR/iridescenceBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +47 -47
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/reflectionBlock.js +9 -9
- package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/refractionBlock.js +14 -14
- package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/sheenBlock.js +4 -4
- package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +1 -1
- package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
- package/Materials/Node/Blocks/Particle/particleTextureBlock.js +8 -8
- package/Materials/Node/Blocks/Particle/particleTextureBlock.js.map +1 -1
- package/Materials/Node/Blocks/Teleport/index.d.ts +2 -0
- package/Materials/Node/Blocks/Teleport/index.js +3 -0
- package/Materials/Node/Blocks/Teleport/index.js.map +1 -0
- package/Materials/Node/Blocks/Teleport/teleportInBlock.d.ts +42 -0
- package/Materials/Node/Blocks/Teleport/teleportInBlock.js +83 -0
- package/Materials/Node/Blocks/Teleport/teleportInBlock.js.map +1 -0
- package/Materials/Node/Blocks/Teleport/teleportOutBlock.d.ts +59 -0
- package/Materials/Node/Blocks/Teleport/teleportOutBlock.js +122 -0
- package/Materials/Node/Blocks/Teleport/teleportOutBlock.js.map +1 -0
- package/Materials/Node/Blocks/Vertex/bonesBlock.js +5 -5
- package/Materials/Node/Blocks/Vertex/bonesBlock.js.map +1 -1
- package/Materials/Node/Blocks/Vertex/instancesBlock.js +11 -11
- package/Materials/Node/Blocks/Vertex/instancesBlock.js.map +1 -1
- package/Materials/Node/Blocks/Vertex/lightInformationBlock.js +11 -11
- package/Materials/Node/Blocks/Vertex/lightInformationBlock.js.map +1 -1
- package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +39 -39
- package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
- package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js +3 -3
- package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js.map +1 -1
- package/Materials/Node/Blocks/addBlock.js +1 -1
- package/Materials/Node/Blocks/addBlock.js.map +1 -1
- package/Materials/Node/Blocks/arcTan2Block.js +1 -1
- package/Materials/Node/Blocks/arcTan2Block.js.map +1 -1
- package/Materials/Node/Blocks/clampBlock.js +4 -4
- package/Materials/Node/Blocks/clampBlock.js.map +1 -1
- package/Materials/Node/Blocks/cloudBlock.js +7 -7
- package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
- package/Materials/Node/Blocks/colorMergerBlock.js +8 -8
- package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
- package/Materials/Node/Blocks/colorSplitterBlock.js +5 -5
- package/Materials/Node/Blocks/colorSplitterBlock.js.map +1 -1
- package/Materials/Node/Blocks/conditionalBlock.js +10 -10
- package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
- package/Materials/Node/Blocks/crossBlock.js +1 -1
- package/Materials/Node/Blocks/crossBlock.js.map +1 -1
- package/Materials/Node/Blocks/curveBlock.js +5 -5
- package/Materials/Node/Blocks/curveBlock.js.map +1 -1
- package/Materials/Node/Blocks/customBlock.js +4 -4
- package/Materials/Node/Blocks/customBlock.js.map +1 -1
- package/Materials/Node/Blocks/desaturateBlock.js +4 -4
- package/Materials/Node/Blocks/desaturateBlock.js.map +1 -1
- package/Materials/Node/Blocks/distanceBlock.js +1 -1
- package/Materials/Node/Blocks/distanceBlock.js.map +1 -1
- package/Materials/Node/Blocks/divideBlock.js +1 -1
- package/Materials/Node/Blocks/divideBlock.js.map +1 -1
- package/Materials/Node/Blocks/dotBlock.js +1 -1
- package/Materials/Node/Blocks/dotBlock.js.map +1 -1
- package/Materials/Node/Blocks/elbowBlock.js +1 -1
- package/Materials/Node/Blocks/elbowBlock.js.map +1 -1
- package/Materials/Node/Blocks/fresnelBlock.js +1 -1
- package/Materials/Node/Blocks/fresnelBlock.js.map +1 -1
- package/Materials/Node/Blocks/gradientBlock.js +8 -8
- package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
- package/Materials/Node/Blocks/index.d.ts +1 -0
- package/Materials/Node/Blocks/index.js +1 -0
- package/Materials/Node/Blocks/index.js.map +1 -1
- package/Materials/Node/Blocks/lengthBlock.js +1 -1
- package/Materials/Node/Blocks/lengthBlock.js.map +1 -1
- package/Materials/Node/Blocks/lerpBlock.js +1 -1
- package/Materials/Node/Blocks/lerpBlock.js.map +1 -1
- package/Materials/Node/Blocks/matrixBuilderBlock.js +1 -1
- package/Materials/Node/Blocks/matrixBuilderBlock.js.map +1 -1
- package/Materials/Node/Blocks/matrixDeterminantBlock.js +1 -1
- package/Materials/Node/Blocks/matrixDeterminantBlock.js.map +1 -1
- package/Materials/Node/Blocks/matrixTransposeBlock.js +1 -1
- package/Materials/Node/Blocks/matrixTransposeBlock.js.map +1 -1
- package/Materials/Node/Blocks/maxBlock.js +1 -1
- package/Materials/Node/Blocks/maxBlock.js.map +1 -1
- package/Materials/Node/Blocks/meshAttributeExistsBlock.js +7 -7
- package/Materials/Node/Blocks/meshAttributeExistsBlock.js.map +1 -1
- package/Materials/Node/Blocks/minBlock.js +1 -1
- package/Materials/Node/Blocks/minBlock.js.map +1 -1
- package/Materials/Node/Blocks/modBlock.js +1 -1
- package/Materials/Node/Blocks/modBlock.js.map +1 -1
- package/Materials/Node/Blocks/multiplyBlock.js +1 -1
- package/Materials/Node/Blocks/multiplyBlock.js.map +1 -1
- package/Materials/Node/Blocks/nLerpBlock.js +1 -1
- package/Materials/Node/Blocks/nLerpBlock.js.map +1 -1
- package/Materials/Node/Blocks/negateBlock.js +1 -1
- package/Materials/Node/Blocks/negateBlock.js.map +1 -1
- package/Materials/Node/Blocks/normalBlendBlock.js +6 -6
- package/Materials/Node/Blocks/normalBlendBlock.js.map +1 -1
- package/Materials/Node/Blocks/normalizeBlock.js +1 -1
- package/Materials/Node/Blocks/normalizeBlock.js.map +1 -1
- package/Materials/Node/Blocks/oneMinusBlock.js +1 -1
- package/Materials/Node/Blocks/oneMinusBlock.js.map +1 -1
- package/Materials/Node/Blocks/posterizeBlock.js +1 -1
- package/Materials/Node/Blocks/posterizeBlock.js.map +1 -1
- package/Materials/Node/Blocks/powBlock.js +1 -1
- package/Materials/Node/Blocks/powBlock.js.map +1 -1
- package/Materials/Node/Blocks/randomNumberBlock.js +1 -1
- package/Materials/Node/Blocks/randomNumberBlock.js.map +1 -1
- package/Materials/Node/Blocks/reciprocalBlock.js +2 -2
- package/Materials/Node/Blocks/reciprocalBlock.js.map +1 -1
- package/Materials/Node/Blocks/reflectBlock.js +1 -1
- package/Materials/Node/Blocks/reflectBlock.js.map +1 -1
- package/Materials/Node/Blocks/refractBlock.js +1 -1
- package/Materials/Node/Blocks/refractBlock.js.map +1 -1
- package/Materials/Node/Blocks/remapBlock.js +4 -4
- package/Materials/Node/Blocks/remapBlock.js.map +1 -1
- package/Materials/Node/Blocks/replaceColorBlock.js +6 -6
- package/Materials/Node/Blocks/replaceColorBlock.js.map +1 -1
- package/Materials/Node/Blocks/rotate2dBlock.js +1 -1
- package/Materials/Node/Blocks/rotate2dBlock.js.map +1 -1
- package/Materials/Node/Blocks/scaleBlock.js +1 -1
- package/Materials/Node/Blocks/scaleBlock.js.map +1 -1
- package/Materials/Node/Blocks/simplexPerlin3DBlock.js +41 -41
- package/Materials/Node/Blocks/simplexPerlin3DBlock.js.map +1 -1
- package/Materials/Node/Blocks/smoothStepBlock.js +1 -1
- package/Materials/Node/Blocks/smoothStepBlock.js.map +1 -1
- package/Materials/Node/Blocks/stepBlock.js +1 -1
- package/Materials/Node/Blocks/stepBlock.js.map +1 -1
- package/Materials/Node/Blocks/subtractBlock.js +1 -1
- package/Materials/Node/Blocks/subtractBlock.js.map +1 -1
- package/Materials/Node/Blocks/transformBlock.js +13 -14
- package/Materials/Node/Blocks/transformBlock.js.map +1 -1
- package/Materials/Node/Blocks/triPlanarBlock.js +17 -17
- package/Materials/Node/Blocks/triPlanarBlock.js.map +1 -1
- package/Materials/Node/Blocks/trigonometryBlock.js +2 -2
- package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
- package/Materials/Node/Blocks/vectorMergerBlock.js +22 -22
- package/Materials/Node/Blocks/vectorMergerBlock.js.map +1 -1
- package/Materials/Node/Blocks/vectorSplitterBlock.js +8 -8
- package/Materials/Node/Blocks/vectorSplitterBlock.js.map +1 -1
- package/Materials/Node/Blocks/viewDirectionBlock.js +1 -1
- package/Materials/Node/Blocks/viewDirectionBlock.js.map +1 -1
- package/Materials/Node/Blocks/voronoiNoiseBlock.js +5 -5
- package/Materials/Node/Blocks/voronoiNoiseBlock.js.map +1 -1
- package/Materials/Node/Blocks/waveBlock.js +3 -4
- package/Materials/Node/Blocks/waveBlock.js.map +1 -1
- package/Materials/Node/Blocks/worleyNoise3DBlock.js +155 -155
- package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
- package/Materials/Node/index.d.ts +1 -1
- package/Materials/Node/index.js +1 -1
- package/Materials/Node/index.js.map +1 -1
- package/Materials/Node/nodeMaterial.d.ts +1 -0
- package/Materials/Node/nodeMaterial.js +50 -15
- package/Materials/Node/nodeMaterial.js.map +1 -1
- package/Materials/Node/nodeMaterialBlock.d.ts +14 -2
- package/Materials/Node/nodeMaterialBlock.js +34 -11
- package/Materials/Node/nodeMaterialBlock.js.map +1 -1
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js +1 -1
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js.map +1 -1
- package/Materials/Node/nodeMaterialBuildState.js +36 -36
- package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
- package/Materials/Node/nodeMaterialBuildStateSharedData.js +4 -4
- package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
- package/Materials/Textures/Filtering/hdrFiltering.js +1 -0
- package/Materials/Textures/Filtering/hdrFiltering.js.map +1 -1
- package/Materials/effect.js +1 -1
- package/Materials/effect.js.map +1 -1
- package/Materials/effectRenderer.d.ts +4 -0
- package/Materials/effectRenderer.js +8 -2
- package/Materials/effectRenderer.js.map +1 -1
- package/Materials/greasedLinePluginMaterial.d.ts +4 -0
- package/Materials/greasedLinePluginMaterial.js +12 -1
- package/Materials/greasedLinePluginMaterial.js.map +1 -1
- package/Materials/materialPluginManager.js +5 -5
- package/Materials/materialPluginManager.js.map +1 -1
- package/Materials/meshDebugPluginMaterial.d.ts +4 -15
- package/Materials/meshDebugPluginMaterial.js +8 -29
- package/Materials/meshDebugPluginMaterial.js.map +1 -1
- package/Materials/shadowDepthWrapper.js +5 -5
- package/Materials/shadowDepthWrapper.js.map +1 -1
- package/Meshes/Builders/boxBuilder.d.ts +31 -0
- package/Meshes/Builders/boxBuilder.js +65 -1
- package/Meshes/Builders/boxBuilder.js.map +1 -1
- package/Meshes/Builders/capsuleBuilder.js +3 -3
- package/Meshes/Builders/capsuleBuilder.js.map +1 -1
- package/Meshes/Builders/cylinderBuilder.js +2 -2
- package/Meshes/Builders/cylinderBuilder.js.map +1 -1
- package/Meshes/Builders/groundBuilder.js +2 -2
- package/Meshes/Builders/groundBuilder.js.map +1 -1
- package/Meshes/Builders/icoSphereBuilder.js +1 -1
- package/Meshes/Builders/icoSphereBuilder.js.map +1 -1
- package/Meshes/Builders/linesBuilder.d.ts +1 -1
- package/Meshes/Builders/linesBuilder.js +1 -1
- package/Meshes/Builders/linesBuilder.js.map +1 -1
- package/Meshes/Builders/sphereBuilder.js +1 -1
- package/Meshes/Builders/sphereBuilder.js.map +1 -1
- package/Meshes/Builders/torusBuilder.js +1 -1
- package/Meshes/Builders/torusBuilder.js.map +1 -1
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.d.ts +85 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.js +210 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.d.ts +68 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.js +186 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.js.map +1 -0
- package/Meshes/Node/Blocks/IntFloatConverterBlock.d.ts +35 -0
- package/Meshes/Node/Blocks/IntFloatConverterBlock.js +81 -0
- package/Meshes/Node/Blocks/IntFloatConverterBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Matrices/alignBlock.d.ts +31 -0
- package/Meshes/Node/Blocks/Matrices/alignBlock.js +58 -0
- package/Meshes/Node/Blocks/Matrices/alignBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Matrices/rotationXBlock.d.ts +28 -0
- package/Meshes/Node/Blocks/Matrices/rotationXBlock.js +53 -0
- package/Meshes/Node/Blocks/Matrices/rotationXBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Matrices/rotationYBlock.d.ts +28 -0
- package/Meshes/Node/Blocks/Matrices/rotationYBlock.js +53 -0
- package/Meshes/Node/Blocks/Matrices/rotationYBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Matrices/rotationZBlock.d.ts +28 -0
- package/Meshes/Node/Blocks/Matrices/rotationZBlock.js +53 -0
- package/Meshes/Node/Blocks/Matrices/rotationZBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Matrices/scalingBlock.d.ts +28 -0
- package/Meshes/Node/Blocks/Matrices/scalingBlock.js +54 -0
- package/Meshes/Node/Blocks/Matrices/scalingBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Matrices/translationBlock.d.ts +28 -0
- package/Meshes/Node/Blocks/Matrices/translationBlock.js +54 -0
- package/Meshes/Node/Blocks/Matrices/translationBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Set/setColorsBlock.d.ts +44 -0
- package/Meshes/Node/Blocks/Set/setColorsBlock.js +91 -0
- package/Meshes/Node/Blocks/Set/setColorsBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Set/setMaterialIDBlock.d.ts +36 -0
- package/Meshes/Node/Blocks/Set/setMaterialIDBlock.js +84 -0
- package/Meshes/Node/Blocks/Set/setMaterialIDBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Set/setNormalsBlock.d.ts +44 -0
- package/Meshes/Node/Blocks/Set/setNormalsBlock.js +91 -0
- package/Meshes/Node/Blocks/Set/setNormalsBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Set/setPositionsBlock.d.ts +44 -0
- package/Meshes/Node/Blocks/Set/setPositionsBlock.js +82 -0
- package/Meshes/Node/Blocks/Set/setPositionsBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Set/setTangentsBlock.d.ts +44 -0
- package/Meshes/Node/Blocks/Set/setTangentsBlock.js +91 -0
- package/Meshes/Node/Blocks/Set/setTangentsBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Set/setUVsBlock.d.ts +55 -0
- package/Meshes/Node/Blocks/Set/setUVsBlock.js +145 -0
- package/Meshes/Node/Blocks/Set/setUVsBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/boxBlock.d.ts +68 -0
- package/Meshes/Node/Blocks/Sources/boxBlock.js +175 -0
- package/Meshes/Node/Blocks/Sources/boxBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/capsuleBlock.d.ts +52 -0
- package/Meshes/Node/Blocks/Sources/capsuleBlock.js +117 -0
- package/Meshes/Node/Blocks/Sources/capsuleBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/cylinderBlock.d.ts +64 -0
- package/Meshes/Node/Blocks/Sources/cylinderBlock.js +143 -0
- package/Meshes/Node/Blocks/Sources/cylinderBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/discBlock.d.ts +48 -0
- package/Meshes/Node/Blocks/Sources/discBlock.js +104 -0
- package/Meshes/Node/Blocks/Sources/discBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/gridBlock.d.ts +56 -0
- package/Meshes/Node/Blocks/Sources/gridBlock.js +125 -0
- package/Meshes/Node/Blocks/Sources/gridBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/icoSphereBlock.d.ts +56 -0
- package/Meshes/Node/Blocks/Sources/icoSphereBlock.js +120 -0
- package/Meshes/Node/Blocks/Sources/icoSphereBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +38 -0
- package/Meshes/Node/Blocks/Sources/meshBlock.js +78 -0
- package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/planeBlock.d.ts +48 -0
- package/Meshes/Node/Blocks/Sources/planeBlock.js +118 -0
- package/Meshes/Node/Blocks/Sources/planeBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/sphereBlock.d.ts +64 -0
- package/Meshes/Node/Blocks/Sources/sphereBlock.js +136 -0
- package/Meshes/Node/Blocks/Sources/sphereBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Sources/torusBlock.d.ts +48 -0
- package/Meshes/Node/Blocks/Sources/torusBlock.js +104 -0
- package/Meshes/Node/Blocks/Sources/torusBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Teleport/teleportInBlock.d.ts +37 -0
- package/Meshes/Node/Blocks/Teleport/teleportInBlock.js +75 -0
- package/Meshes/Node/Blocks/Teleport/teleportInBlock.js.map +1 -0
- package/Meshes/Node/Blocks/Teleport/teleportOutBlock.d.ts +50 -0
- package/Meshes/Node/Blocks/Teleport/teleportOutBlock.js +105 -0
- package/Meshes/Node/Blocks/Teleport/teleportOutBlock.js.map +1 -0
- package/Meshes/Node/Blocks/computeNormalsBlock.d.ts +26 -0
- package/Meshes/Node/Blocks/computeNormalsBlock.js +49 -0
- package/Meshes/Node/Blocks/computeNormalsBlock.js.map +1 -0
- package/Meshes/Node/Blocks/conditionBlock.d.ts +72 -0
- package/Meshes/Node/Blocks/conditionBlock.js +174 -0
- package/Meshes/Node/Blocks/conditionBlock.js.map +1 -0
- package/Meshes/Node/Blocks/debugBlock.d.ts +34 -0
- package/Meshes/Node/Blocks/debugBlock.js +63 -0
- package/Meshes/Node/Blocks/debugBlock.js.map +1 -0
- package/Meshes/Node/Blocks/geometryElbowBlock.d.ts +31 -0
- package/Meshes/Node/Blocks/geometryElbowBlock.js +53 -0
- package/Meshes/Node/Blocks/geometryElbowBlock.js.map +1 -0
- package/Meshes/Node/Blocks/geometryInputBlock.d.ts +71 -0
- package/Meshes/Node/Blocks/geometryInputBlock.js +218 -0
- package/Meshes/Node/Blocks/geometryInputBlock.js.map +1 -0
- package/Meshes/Node/Blocks/geometryOutputBlock.d.ts +30 -0
- package/Meshes/Node/Blocks/geometryOutputBlock.js +42 -0
- package/Meshes/Node/Blocks/geometryOutputBlock.js.map +1 -0
- package/Meshes/Node/Blocks/geometryTransformBlock.d.ts +53 -0
- package/Meshes/Node/Blocks/geometryTransformBlock.js +134 -0
- package/Meshes/Node/Blocks/geometryTransformBlock.js.map +1 -0
- package/Meshes/Node/Blocks/geometryTrigonometryBlock.d.ts +77 -0
- package/Meshes/Node/Blocks/geometryTrigonometryBlock.js +248 -0
- package/Meshes/Node/Blocks/geometryTrigonometryBlock.js.map +1 -0
- package/Meshes/Node/Blocks/mapRangeBlock.d.ts +42 -0
- package/Meshes/Node/Blocks/mapRangeBlock.js +84 -0
- package/Meshes/Node/Blocks/mapRangeBlock.js.map +1 -0
- package/Meshes/Node/Blocks/mathBlock.d.ts +58 -0
- package/Meshes/Node/Blocks/mathBlock.js +233 -0
- package/Meshes/Node/Blocks/mathBlock.js.map +1 -0
- package/Meshes/Node/Blocks/mergeGeometryBlock.d.ts +55 -0
- package/Meshes/Node/Blocks/mergeGeometryBlock.js +123 -0
- package/Meshes/Node/Blocks/mergeGeometryBlock.js.map +1 -0
- package/Meshes/Node/Blocks/noiseBlock.d.ts +49 -0
- package/Meshes/Node/Blocks/noiseBlock.js +149 -0
- package/Meshes/Node/Blocks/noiseBlock.js.map +1 -0
- package/Meshes/Node/Blocks/normalizeVectorBlock.d.ts +27 -0
- package/Meshes/Node/Blocks/normalizeVectorBlock.js +51 -0
- package/Meshes/Node/Blocks/normalizeVectorBlock.js.map +1 -0
- package/Meshes/Node/Blocks/randomBlock.d.ts +31 -0
- package/Meshes/Node/Blocks/randomBlock.js +99 -0
- package/Meshes/Node/Blocks/randomBlock.js.map +1 -0
- package/Meshes/Node/Blocks/vectorConverterBlock.d.ts +84 -0
- package/Meshes/Node/Blocks/vectorConverterBlock.js +238 -0
- package/Meshes/Node/Blocks/vectorConverterBlock.js.map +1 -0
- package/Meshes/Node/Enums/nodeGeometryConnectionPointTypes.d.ts +27 -0
- package/Meshes/Node/Enums/nodeGeometryConnectionPointTypes.js +29 -0
- package/Meshes/Node/Enums/nodeGeometryConnectionPointTypes.js.map +1 -0
- package/Meshes/Node/Enums/nodeGeometryContextualSources.d.ts +33 -0
- package/Meshes/Node/Enums/nodeGeometryContextualSources.js +35 -0
- package/Meshes/Node/Enums/nodeGeometryContextualSources.js.map +1 -0
- package/Meshes/Node/Interfaces/nodeGeometryExecutionContext.d.ts +25 -0
- package/Meshes/Node/Interfaces/nodeGeometryExecutionContext.js +2 -0
- package/Meshes/Node/Interfaces/nodeGeometryExecutionContext.js.map +1 -0
- package/Meshes/Node/index.d.ts +49 -0
- package/Meshes/Node/index.js +50 -0
- package/Meshes/Node/index.js.map +1 -0
- package/Meshes/Node/nodeGeometry.d.ts +180 -0
- package/Meshes/Node/nodeGeometry.js +529 -0
- package/Meshes/Node/nodeGeometry.js.map +1 -0
- package/Meshes/Node/nodeGeometryBlock.d.ts +166 -0
- package/Meshes/Node/nodeGeometryBlock.js +432 -0
- package/Meshes/Node/nodeGeometryBlock.js.map +1 -0
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.d.ts +176 -0
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.js +305 -0
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.js.map +1 -0
- package/Meshes/Node/nodeGeometryBuildState.d.ts +57 -0
- package/Meshes/Node/nodeGeometryBuildState.js +178 -0
- package/Meshes/Node/nodeGeometryBuildState.js.map +1 -0
- package/Meshes/index.d.ts +1 -0
- package/Meshes/index.js +1 -0
- package/Meshes/index.js.map +1 -1
- package/Meshes/mesh.vertexData.d.ts +37 -2
- package/Meshes/mesh.vertexData.js +425 -95
- package/Meshes/mesh.vertexData.js.map +1 -1
- package/Meshes/meshUVSpaceRenderer.js +1 -0
- package/Meshes/meshUVSpaceRenderer.js.map +1 -1
- package/Particles/IGPUParticleSystemPlatform.d.ts +1 -0
- package/Particles/IGPUParticleSystemPlatform.js.map +1 -1
- package/Particles/computeShaderParticleSystem.d.ts +1 -0
- package/Particles/computeShaderParticleSystem.js +5 -0
- package/Particles/computeShaderParticleSystem.js.map +1 -1
- package/Particles/gpuParticleSystem.js +11 -1
- package/Particles/gpuParticleSystem.js.map +1 -1
- package/Particles/webgl2ParticleSystem.d.ts +1 -0
- package/Particles/webgl2ParticleSystem.js +5 -0
- package/Particles/webgl2ParticleSystem.js.map +1 -1
- package/Physics/v2/IPhysicsEnginePlugin.d.ts +20 -2
- package/Physics/v2/IPhysicsEnginePlugin.js +8 -0
- package/Physics/v2/IPhysicsEnginePlugin.js.map +1 -1
- package/Physics/v2/Plugins/havokPlugin.d.ts +27 -2
- package/Physics/v2/Plugins/havokPlugin.js +98 -11
- package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
- package/Physics/v2/physicsAggregate.d.ts +4 -0
- package/Physics/v2/physicsAggregate.js +3 -0
- package/Physics/v2/physicsAggregate.js.map +1 -1
- package/Physics/v2/physicsBody.d.ts +7 -0
- package/Physics/v2/physicsBody.js +10 -0
- package/Physics/v2/physicsBody.js.map +1 -1
- package/Physics/v2/physicsShape.d.ts +3 -0
- package/Physics/v2/physicsShape.js +11 -0
- package/Physics/v2/physicsShape.js.map +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderEffect.js +6 -4
- package/PostProcesses/RenderPipeline/postProcessRenderEffect.js.map +1 -1
- package/PostProcesses/blurPostProcess.js +5 -5
- package/PostProcesses/blurPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldBlurPostProcess.js +1 -1
- package/PostProcesses/depthOfFieldBlurPostProcess.js.map +1 -1
- package/PostProcesses/imageProcessingPostProcess.js +1 -1
- package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderer.d.ts +0 -1
- package/Rendering/fluidRenderer/fluidRenderer.js +0 -1
- package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
- package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js +16 -8
- package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/backgroundUboDeclaration.js +9 -4
- package/Shaders/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/backgroundVertexDeclaration.js +8 -4
- package/Shaders/ShadersInclude/backgroundVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimation.js +20 -10
- package/Shaders/ShadersInclude/bakedVertexAnimation.js.map +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js +7 -3
- package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bayerDitherFunctions.js +9 -1
- package/Shaders/ShadersInclude/bayerDitherFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/bonesDeclaration.js +13 -6
- package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bonesVertex.js +36 -18
- package/Shaders/ShadersInclude/bonesVertex.js.map +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js +2 -1
- package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js +6 -3
- package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js +4 -2
- package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bumpFragment.js +40 -20
- package/Shaders/ShadersInclude/bumpFragment.js.map +1 -1
- package/Shaders/ShadersInclude/bumpFragmentFunctions.js +11 -1
- package/Shaders/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js +57 -7
- package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/bumpVertex.js +2 -1
- package/Shaders/ShadersInclude/bumpVertex.js.map +1 -1
- package/Shaders/ShadersInclude/bumpVertexDeclaration.js +2 -1
- package/Shaders/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragment.js +20 -7
- package/Shaders/ShadersInclude/clipPlaneFragment.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js +12 -6
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js +12 -6
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertex.js +12 -6
- package/Shaders/ShadersInclude/clipPlaneVertex.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js +12 -6
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js +12 -6
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js.map +1 -1
- package/Shaders/ShadersInclude/decalFragment.js +6 -3
- package/Shaders/ShadersInclude/decalFragment.js.map +1 -1
- package/Shaders/ShadersInclude/decalFragmentDeclaration.js +2 -1
- package/Shaders/ShadersInclude/decalFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/decalVertexDeclaration.js +2 -1
- package/Shaders/ShadersInclude/decalVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +48 -24
- package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/defaultUboDeclaration.js +5 -2
- package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/defaultVertexDeclaration.js +22 -11
- package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/depthPrePass.js +2 -1
- package/Shaders/ShadersInclude/depthPrePass.js.map +1 -1
- package/Shaders/ShadersInclude/diffusionProfile.js +1 -1
- package/Shaders/ShadersInclude/diffusionProfile.js.map +1 -1
- package/Shaders/ShadersInclude/fibonacci.js +4 -1
- package/Shaders/ShadersInclude/fibonacci.js.map +1 -1
- package/Shaders/ShadersInclude/fogFragment.js +6 -3
- package/Shaders/ShadersInclude/fogFragment.js.map +1 -1
- package/Shaders/ShadersInclude/fogFragmentDeclaration.js +9 -1
- package/Shaders/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/fogVertex.js +2 -1
- package/Shaders/ShadersInclude/fogVertex.js.map +1 -1
- package/Shaders/ShadersInclude/fogVertexDeclaration.js +2 -1
- package/Shaders/ShadersInclude/fogVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/fresnelFunction.js +3 -1
- package/Shaders/ShadersInclude/fresnelFunction.js.map +1 -1
- package/Shaders/ShadersInclude/geometryVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/geometryVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/harmonicsFunctions.js +20 -2
- package/Shaders/ShadersInclude/harmonicsFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js +48 -17
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/helperFunctions.js +98 -28
- package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingCompatibility.js +2 -1
- package/Shaders/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingDeclaration.js +18 -9
- package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingFunctions.js +71 -28
- package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/importanceSampling.js +4 -1
- package/Shaders/ShadersInclude/importanceSampling.js.map +1 -1
- package/Shaders/ShadersInclude/instancesDeclaration.js +14 -7
- package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/instancesVertex.js +12 -6
- package/Shaders/ShadersInclude/instancesVertex.js.map +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment.js +9 -4
- package/Shaders/ShadersInclude/kernelBlurFragment.js.map +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment2.js +8 -4
- package/Shaders/ShadersInclude/kernelBlurFragment2.js.map +1 -1
- package/Shaders/ShadersInclude/lightFragment.js +186 -93
- package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
- package/Shaders/ShadersInclude/lightFragmentDeclaration.js +54 -22
- package/Shaders/ShadersInclude/lightFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightUboDeclaration.js +51 -20
- package/Shaders/ShadersInclude/lightUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js +18 -9
- package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightVxUboDeclaration.js +15 -7
- package/Shaders/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightsFragmentFunctions.js +48 -20
- package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/logDepthDeclaration.js +2 -1
- package/Shaders/ShadersInclude/logDepthDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/logDepthFragment.js +2 -1
- package/Shaders/ShadersInclude/logDepthFragment.js.map +1 -1
- package/Shaders/ShadersInclude/logDepthVertex.js +2 -1
- package/Shaders/ShadersInclude/logDepthVertex.js.map +1 -1
- package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js +2 -1
- package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/meshFragmentDeclaration.js +2 -1
- package/Shaders/ShadersInclude/meshFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/meshUboDeclaration.js +5 -2
- package/Shaders/ShadersInclude/meshUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/meshVertexDeclaration.js +2 -1
- package/Shaders/ShadersInclude/meshVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertex.js +16 -8
- package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js +8 -4
- package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js +2 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +7 -2
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/oitDeclaration.js +5 -2
- package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/oitFragment.js +24 -12
- package/Shaders/ShadersInclude/oitFragment.js.map +1 -1
- package/Shaders/ShadersInclude/packingFunctions.js +4 -1
- package/Shaders/ShadersInclude/packingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBRDFFunctions.js +118 -42
- package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +49 -20
- package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +25 -8
- package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +26 -11
- package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +32 -12
- package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockClearcoat.js +194 -84
- package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +12 -6
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +30 -14
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js +56 -28
- package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +18 -9
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js +14 -7
- package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockImageProcessing.js +8 -4
- package/Shaders/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockIridescence.js +36 -15
- package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockLightmapInit.js +8 -4
- package/Shaders/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalFinal.js +8 -4
- package/Shaders/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js +10 -5
- package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance.js +12 -6
- package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance0.js +8 -4
- package/Shaders/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflection.js +197 -77
- package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectivity.js +79 -36
- package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSheen.js +145 -60
- package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js +226 -100
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDebug.js +146 -67
- package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js +34 -8
- package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +53 -22
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +12 -5
- package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +88 -44
- package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +10 -5
- package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +30 -15
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrHelperFunctions.js +27 -8
- package/Shaders/ShadersInclude/pbrHelperFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrIBLFunctions.js +9 -4
- package/Shaders/ShadersInclude/pbrIBLFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrUboDeclaration.js +4 -2
- package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrVertexDeclaration.js +64 -32
- package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pointCloudVertex.js +2 -1
- package/Shaders/ShadersInclude/pointCloudVertex.js.map +1 -1
- package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js +2 -1
- package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/prePassVertex.js +24 -12
- package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
- package/Shaders/ShadersInclude/prePassVertexDeclaration.js +4 -2
- package/Shaders/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/reflectionFunction.js +52 -17
- package/Shaders/ShadersInclude/reflectionFunction.js.map +1 -1
- package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js +2 -1
- package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/samplerFragmentDeclaration.js +4 -2
- package/Shaders/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/samplerVertexDeclaration.js +2 -1
- package/Shaders/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/samplerVertexImplementation.js +18 -6
- package/Shaders/ShadersInclude/samplerVertexImplementation.js.map +1 -1
- package/Shaders/ShadersInclude/sceneFragmentDeclaration.js +6 -3
- package/Shaders/ShadersInclude/sceneFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/sceneUboDeclaration.js +6 -3
- package/Shaders/ShadersInclude/sceneUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/sceneVertexDeclaration.js +6 -3
- package/Shaders/ShadersInclude/sceneVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/screenSpaceRayTrace.js +109 -24
- package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapFragment.js +20 -10
- package/Shaders/ShadersInclude/shadowMapFragment.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js +10 -5
- package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +2 -1
- package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapUboDeclaration.js +2 -1
- package/Shaders/ShadersInclude/shadowMapUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js +8 -4
- package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexMetric.js +12 -6
- package/Shaders/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js +6 -3
- package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +311 -54
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/shadowsVertex.js +14 -7
- package/Shaders/ShadersInclude/shadowsVertex.js.map +1 -1
- package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js +2 -1
- package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/uvAttributeDeclaration.js +2 -1
- package/Shaders/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/uvVariableDeclaration.js +4 -2
- package/Shaders/ShadersInclude/uvVariableDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/vertexColorMixing.js +8 -4
- package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
- package/Shaders/anaglyph.fragment.js +4 -2
- package/Shaders/anaglyph.fragment.js.map +1 -1
- package/Shaders/background.fragment.js +133 -62
- package/Shaders/background.fragment.js.map +1 -1
- package/Shaders/background.vertex.js +63 -30
- package/Shaders/background.vertex.js.map +1 -1
- package/Shaders/blackAndWhite.fragment.js +5 -2
- package/Shaders/blackAndWhite.fragment.js.map +1 -1
- package/Shaders/bloomMerge.fragment.js +5 -2
- package/Shaders/bloomMerge.fragment.js.map +1 -1
- package/Shaders/blur.fragment.js +6 -2
- package/Shaders/blur.fragment.js.map +1 -1
- package/Shaders/boundingBoxRenderer.fragment.js +4 -2
- package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
- package/Shaders/boundingBoxRenderer.vertex.js +12 -6
- package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
- package/Shaders/chromaticAberration.fragment.js +8 -2
- package/Shaders/chromaticAberration.fragment.js.map +1 -1
- package/Shaders/circleOfConfusion.fragment.js +9 -4
- package/Shaders/circleOfConfusion.fragment.js.map +1 -1
- package/Shaders/clearQuad.fragment.js +2 -1
- package/Shaders/clearQuad.fragment.js.map +1 -1
- package/Shaders/clearQuad.vertex.js +11 -4
- package/Shaders/clearQuad.vertex.js.map +1 -1
- package/Shaders/color.fragment.js +10 -5
- package/Shaders/color.fragment.js.map +1 -1
- package/Shaders/color.vertex.js +18 -9
- package/Shaders/color.vertex.js.map +1 -1
- package/Shaders/colorCorrection.fragment.js +10 -2
- package/Shaders/colorCorrection.fragment.js.map +1 -1
- package/Shaders/convolution.fragment.js +23 -2
- package/Shaders/convolution.fragment.js.map +1 -1
- package/Shaders/copyTextureToTexture.fragment.js +12 -5
- package/Shaders/copyTextureToTexture.fragment.js.map +1 -1
- package/Shaders/default.fragment.js +142 -71
- package/Shaders/default.fragment.js.map +1 -1
- package/Shaders/default.vertex.js +58 -29
- package/Shaders/default.vertex.js.map +1 -1
- package/Shaders/depth.fragment.js +24 -11
- package/Shaders/depth.fragment.js.map +1 -1
- package/Shaders/depth.vertex.js +35 -17
- package/Shaders/depth.vertex.js.map +1 -1
- package/Shaders/depthBoxBlur.fragment.js +6 -2
- package/Shaders/depthBoxBlur.fragment.js.map +1 -1
- package/Shaders/depthOfField.fragment.js +28 -3
- package/Shaders/depthOfField.fragment.js.map +1 -1
- package/Shaders/depthOfFieldMerge.fragment.js +17 -8
- package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
- package/Shaders/displayPass.fragment.js +4 -2
- package/Shaders/displayPass.fragment.js.map +1 -1
- package/Shaders/extractHighlights.fragment.js +4 -2
- package/Shaders/extractHighlights.fragment.js.map +1 -1
- package/Shaders/filter.fragment.js +4 -2
- package/Shaders/filter.fragment.js.map +1 -1
- package/Shaders/fluidRenderingBilateralBlur.fragment.js +4 -1
- package/Shaders/fluidRenderingBilateralBlur.fragment.js.map +1 -1
- package/Shaders/fluidRenderingParticleDepth.fragment.js +22 -11
- package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
- package/Shaders/fluidRenderingParticleDepth.vertex.js +10 -5
- package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
- package/Shaders/fluidRenderingParticleDiffuse.fragment.js +2 -1
- package/Shaders/fluidRenderingParticleDiffuse.fragment.js.map +1 -1
- package/Shaders/fluidRenderingParticleDiffuse.vertex.js +0 -1
- package/Shaders/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
- package/Shaders/fluidRenderingParticleThickness.fragment.js +2 -1
- package/Shaders/fluidRenderingParticleThickness.fragment.js.map +1 -1
- package/Shaders/fluidRenderingParticleThickness.vertex.js +2 -1
- package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
- package/Shaders/fluidRenderingRender.fragment.js +76 -35
- package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
- package/Shaders/fluidRenderingStandardBlur.fragment.js +4 -1
- package/Shaders/fluidRenderingStandardBlur.fragment.js.map +1 -1
- package/Shaders/fxaa.fragment.js +47 -6
- package/Shaders/fxaa.fragment.js.map +1 -1
- package/Shaders/fxaa.vertex.js +6 -3
- package/Shaders/fxaa.vertex.js.map +1 -1
- package/Shaders/geometry.fragment.js +85 -42
- package/Shaders/geometry.fragment.js.map +1 -1
- package/Shaders/geometry.vertex.js +91 -45
- package/Shaders/geometry.vertex.js.map +1 -1
- package/Shaders/glowBlurPostProcess.fragment.js +7 -2
- package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
- package/Shaders/glowMapGeneration.fragment.js +46 -22
- package/Shaders/glowMapGeneration.fragment.js.map +1 -1
- package/Shaders/glowMapGeneration.vertex.js +41 -20
- package/Shaders/glowMapGeneration.vertex.js.map +1 -1
- package/Shaders/glowMapMerge.fragment.js +20 -10
- package/Shaders/glowMapMerge.fragment.js.map +1 -1
- package/Shaders/glowMapMerge.vertex.js +6 -3
- package/Shaders/glowMapMerge.vertex.js.map +1 -1
- package/Shaders/gpuRenderParticles.fragment.js +16 -8
- package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
- package/Shaders/gpuRenderParticles.vertex.js +77 -39
- package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
- package/Shaders/gpuUpdateParticles.fragment.js +2 -1
- package/Shaders/gpuUpdateParticles.fragment.js.map +1 -1
- package/Shaders/gpuUpdateParticles.vertex.js +206 -100
- package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
- package/Shaders/grain.fragment.js +5 -2
- package/Shaders/grain.fragment.js.map +1 -1
- package/Shaders/hdrFiltering.fragment.js +1 -1
- package/Shaders/hdrFiltering.fragment.js.map +1 -1
- package/Shaders/hdrFiltering.vertex.js +6 -3
- package/Shaders/hdrFiltering.vertex.js.map +1 -1
- package/Shaders/highlights.fragment.js +4 -2
- package/Shaders/highlights.fragment.js.map +1 -1
- package/Shaders/imageProcessing.fragment.js +12 -6
- package/Shaders/imageProcessing.fragment.js.map +1 -1
- package/Shaders/kernelBlur.fragment.js +24 -11
- package/Shaders/kernelBlur.fragment.js.map +1 -1
- package/Shaders/kernelBlur.vertex.js +10 -5
- package/Shaders/kernelBlur.vertex.js.map +1 -1
- package/Shaders/layer.fragment.js +13 -6
- package/Shaders/layer.fragment.js.map +1 -1
- package/Shaders/layer.vertex.js +6 -3
- package/Shaders/layer.vertex.js.map +1 -1
- package/Shaders/lensFlare.fragment.js +6 -3
- package/Shaders/lensFlare.fragment.js.map +1 -1
- package/Shaders/lensFlare.vertex.js +6 -3
- package/Shaders/lensFlare.vertex.js.map +1 -1
- package/Shaders/lensHighlights.fragment.js +14 -5
- package/Shaders/lensHighlights.fragment.js.map +1 -1
- package/Shaders/line.fragment.js +6 -3
- package/Shaders/line.fragment.js.map +1 -1
- package/Shaders/line.vertex.js +8 -4
- package/Shaders/line.vertex.js.map +1 -1
- package/Shaders/meshUVSpaceRenderer.fragment.js +3 -1
- package/Shaders/meshUVSpaceRenderer.fragment.js.map +1 -1
- package/Shaders/meshUVSpaceRenderer.vertex.js +14 -7
- package/Shaders/meshUVSpaceRenderer.vertex.js.map +1 -1
- package/Shaders/minmaxRedux.fragment.js +21 -8
- package/Shaders/minmaxRedux.fragment.js.map +1 -1
- package/Shaders/motionBlur.fragment.js +35 -14
- package/Shaders/motionBlur.fragment.js.map +1 -1
- package/Shaders/noise.fragment.js +13 -2
- package/Shaders/noise.fragment.js.map +1 -1
- package/Shaders/oitBackBlend.fragment.js +2 -1
- package/Shaders/oitBackBlend.fragment.js.map +1 -1
- package/Shaders/oitFinal.fragment.js +4 -1
- package/Shaders/oitFinal.fragment.js.map +1 -1
- package/Shaders/outline.fragment.js +11 -5
- package/Shaders/outline.fragment.js.map +1 -1
- package/Shaders/outline.vertex.js +27 -13
- package/Shaders/outline.vertex.js.map +1 -1
- package/Shaders/particles.fragment.js +18 -9
- package/Shaders/particles.fragment.js.map +1 -1
- package/Shaders/particles.vertex.js +58 -29
- package/Shaders/particles.vertex.js.map +1 -1
- package/Shaders/pass.fragment.js +4 -2
- package/Shaders/pass.fragment.js.map +1 -1
- package/Shaders/passCube.fragment.js +17 -8
- package/Shaders/passCube.fragment.js.map +1 -1
- package/Shaders/pbr.fragment.js +389 -154
- package/Shaders/pbr.fragment.js.map +1 -1
- package/Shaders/pbr.vertex.js +70 -35
- package/Shaders/pbr.vertex.js.map +1 -1
- package/Shaders/postprocess.vertex.js +6 -3
- package/Shaders/postprocess.vertex.js.map +1 -1
- package/Shaders/procedural.vertex.js +6 -3
- package/Shaders/procedural.vertex.js.map +1 -1
- package/Shaders/refraction.fragment.js +1 -1
- package/Shaders/refraction.fragment.js.map +1 -1
- package/Shaders/rgbdDecode.fragment.js +4 -2
- package/Shaders/rgbdDecode.fragment.js.map +1 -1
- package/Shaders/rgbdEncode.fragment.js +4 -2
- package/Shaders/rgbdEncode.fragment.js.map +1 -1
- package/Shaders/screenSpaceCurvature.fragment.js +11 -3
- package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection.fragment.js +57 -15
- package/Shaders/screenSpaceReflection.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection2.fragment.js +125 -51
- package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection2Blur.fragment.js +7 -1
- package/Shaders/screenSpaceReflection2Blur.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +28 -13
- package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
- package/Shaders/shadowMap.fragment.js +14 -6
- package/Shaders/shadowMap.fragment.js.map +1 -1
- package/Shaders/shadowMap.vertex.js +35 -17
- package/Shaders/shadowMap.vertex.js.map +1 -1
- package/Shaders/sharpen.fragment.js +8 -2
- package/Shaders/sharpen.fragment.js.map +1 -1
- package/Shaders/spriteMap.fragment.js +17 -4
- package/Shaders/spriteMap.fragment.js.map +1 -1
- package/Shaders/spriteMap.vertex.js +2 -1
- package/Shaders/spriteMap.vertex.js.map +1 -1
- package/Shaders/sprites.fragment.js +17 -7
- package/Shaders/sprites.fragment.js.map +1 -1
- package/Shaders/sprites.vertex.js +10 -4
- package/Shaders/sprites.vertex.js.map +1 -1
- package/Shaders/ssao.fragment.js +0 -2
- package/Shaders/ssao.fragment.js.map +1 -1
- package/Shaders/ssao2.fragment.js +0 -2
- package/Shaders/ssao2.fragment.js.map +1 -1
- package/Shaders/ssaoCombine.fragment.js +8 -4
- package/Shaders/ssaoCombine.fragment.js.map +1 -1
- package/Shaders/standard.fragment.js +101 -25
- package/Shaders/standard.fragment.js.map +1 -1
- package/Shaders/stereoscopicInterlace.fragment.js +14 -6
- package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
- package/Shaders/subSurfaceScattering.fragment.js +58 -12
- package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
- package/Shaders/tonemap.fragment.js +21 -9
- package/Shaders/tonemap.fragment.js.map +1 -1
- package/Shaders/velocity.fragment.js +8 -4
- package/Shaders/velocity.fragment.js.map +1 -1
- package/Shaders/velocity.vertex.js +18 -9
- package/Shaders/velocity.vertex.js.map +1 -1
- package/Shaders/volumetricLightScattering.fragment.js +9 -4
- package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
- package/Shaders/volumetricLightScatteringPass.fragment.js +12 -5
- package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
- package/Shaders/volumetricLightScatteringPass.vertex.js +23 -11
- package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
- package/Shaders/vrDistortionCorrection.fragment.js +6 -2
- package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
- package/Shaders/vrMultiviewToSingleview.fragment.js +4 -2
- package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js +24 -12
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js +7 -3
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bonesDeclaration.js +14 -6
- package/ShadersWGSL/ShadersInclude/bonesDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bonesVertex.js +36 -18
- package/ShadersWGSL/ShadersInclude/bonesVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js +20 -7
- package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js +12 -6
- package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js +12 -6
- package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js +12 -6
- package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +14 -7
- package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/instancesVertex.js +16 -8
- package/ShadersWGSL/ShadersInclude/instancesVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js +3 -1
- package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +16 -8
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js +8 -4
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js +2 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +6 -2
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js +8 -3
- package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js.map +1 -1
- package/ShadersWGSL/gpuUpdateParticles.compute.js +229 -90
- package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
- package/ShadersWGSL/postprocess.vertex.js +9 -4
- package/ShadersWGSL/postprocess.vertex.js.map +1 -1
- package/assetContainer.d.ts +7 -0
- package/assetContainer.js +46 -0
- package/assetContainer.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/scene.js +5 -0
- package/scene.js.map +1 -1
- package/Materials/Node/nodeMaterialDecorator.js.map +0 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { NodeGeometryBlock } from "../../nodeGeometryBlock.js";
|
|
2
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
3
|
+
import { NodeGeometryBlockConnectionPointTypes } from "../../Enums/nodeGeometryConnectionPointTypes.js";
|
|
4
|
+
/**
|
|
5
|
+
* Block used to set tangents for a geometry
|
|
6
|
+
*/
|
|
7
|
+
export class SetTangentsBlock extends NodeGeometryBlock {
|
|
8
|
+
/**
|
|
9
|
+
* Create a new SetTangentsBlock
|
|
10
|
+
* @param name defines the block name
|
|
11
|
+
*/
|
|
12
|
+
constructor(name) {
|
|
13
|
+
super(name);
|
|
14
|
+
this.registerInput("geometry", NodeGeometryBlockConnectionPointTypes.Geometry);
|
|
15
|
+
this.registerInput("tangents", NodeGeometryBlockConnectionPointTypes.Vector4);
|
|
16
|
+
this.registerOutput("output", NodeGeometryBlockConnectionPointTypes.Geometry);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Gets the current index in the current flow
|
|
20
|
+
* @returns the current index
|
|
21
|
+
*/
|
|
22
|
+
getExecutionIndex() {
|
|
23
|
+
return this._currentIndex;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Gets the current face index in the current flow
|
|
27
|
+
* @returns the current face index
|
|
28
|
+
*/
|
|
29
|
+
getExecutionFaceIndex() {
|
|
30
|
+
return 0;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Gets the current class name
|
|
34
|
+
* @returns the class name
|
|
35
|
+
*/
|
|
36
|
+
getClassName() {
|
|
37
|
+
return "SetTangentsBlock";
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Gets the geometry input component
|
|
41
|
+
*/
|
|
42
|
+
get geometry() {
|
|
43
|
+
return this._inputs[0];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Gets the tangents input component
|
|
47
|
+
*/
|
|
48
|
+
get tangents() {
|
|
49
|
+
return this._inputs[1];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Gets the geometry output component
|
|
53
|
+
*/
|
|
54
|
+
get output() {
|
|
55
|
+
return this._outputs[0];
|
|
56
|
+
}
|
|
57
|
+
_buildBlock(state) {
|
|
58
|
+
state.executionContext = this;
|
|
59
|
+
this._vertexData = this.geometry.getConnectedValue(state);
|
|
60
|
+
state.geometryContext = this._vertexData;
|
|
61
|
+
if (!this._vertexData || !this._vertexData.positions) {
|
|
62
|
+
state.executionContext = null;
|
|
63
|
+
state.geometryContext = null;
|
|
64
|
+
this.output._storedValue = null;
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (!this.tangents.isConnected) {
|
|
68
|
+
state.executionContext = null;
|
|
69
|
+
state.geometryContext = null;
|
|
70
|
+
this.output._storedValue = this._vertexData;
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (!this._vertexData.tangents) {
|
|
74
|
+
this._vertexData.tangents = [];
|
|
75
|
+
}
|
|
76
|
+
// Processing
|
|
77
|
+
const vertexCount = this._vertexData.positions.length / 3;
|
|
78
|
+
for (this._currentIndex = 0; this._currentIndex < vertexCount; this._currentIndex++) {
|
|
79
|
+
const tempVector4 = this.tangents.getConnectedValue(state);
|
|
80
|
+
if (tempVector4) {
|
|
81
|
+
tempVector4.toArray(this._vertexData.tangents, this._currentIndex * 4);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// Storage
|
|
85
|
+
this.output._storedValue = this._vertexData;
|
|
86
|
+
state.executionContext = null;
|
|
87
|
+
state.geometryContext = null;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
RegisterClass("BABYLON.SetTangentsBlock", SetTangentsBlock);
|
|
91
|
+
//# sourceMappingURL=setTangentsBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setTangentsBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/Meshes/Node/Blocks/Set/setTangentsBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeGeometryBlock } from \"../../nodeGeometryBlock\";\r\nimport type { NodeGeometryConnectionPoint } from \"../../nodeGeometryBlockConnectionPoint\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport { NodeGeometryBlockConnectionPointTypes } from \"../../Enums/nodeGeometryConnectionPointTypes\";\r\nimport type { NodeGeometryBuildState } from \"../../nodeGeometryBuildState\";\r\nimport type { INodeGeometryExecutionContext } from \"../../Interfaces/nodeGeometryExecutionContext\";\r\nimport type { VertexData } from \"../../../mesh.vertexData\";\r\nimport type { Vector4 } from \"../../../../Maths/math.vector\";\r\n\r\n/**\r\n * Block used to set tangents for a geometry\r\n */\r\nexport class SetTangentsBlock extends NodeGeometryBlock implements INodeGeometryExecutionContext {\r\n private _vertexData: VertexData;\r\n private _currentIndex: number;\r\n\r\n /**\r\n * Create a new SetTangentsBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name);\r\n\r\n this.registerInput(\"geometry\", NodeGeometryBlockConnectionPointTypes.Geometry);\r\n this.registerInput(\"tangents\", NodeGeometryBlockConnectionPointTypes.Vector4);\r\n\r\n this.registerOutput(\"output\", NodeGeometryBlockConnectionPointTypes.Geometry);\r\n }\r\n\r\n /**\r\n * Gets the current index in the current flow\r\n * @returns the current index\r\n */\r\n public getExecutionIndex(): number {\r\n return this._currentIndex;\r\n }\r\n\r\n /**\r\n * Gets the current face index in the current flow\r\n * @returns the current face index\r\n */\r\n public getExecutionFaceIndex(): number {\r\n return 0;\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"SetTangentsBlock\";\r\n }\r\n\r\n /**\r\n * Gets the geometry input component\r\n */\r\n public get geometry(): NodeGeometryConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the tangents input component\r\n */\r\n public get tangents(): NodeGeometryConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the geometry output component\r\n */\r\n public get output(): NodeGeometryConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeGeometryBuildState) {\r\n state.executionContext = this;\r\n\r\n this._vertexData = this.geometry.getConnectedValue(state);\r\n state.geometryContext = this._vertexData;\r\n\r\n if (!this._vertexData || !this._vertexData.positions) {\r\n state.executionContext = null;\r\n state.geometryContext = null;\r\n this.output._storedValue = null;\r\n return;\r\n }\r\n\r\n if (!this.tangents.isConnected) {\r\n state.executionContext = null;\r\n state.geometryContext = null;\r\n this.output._storedValue = this._vertexData;\r\n return;\r\n }\r\n\r\n if (!this._vertexData.tangents) {\r\n this._vertexData.tangents = [];\r\n }\r\n\r\n // Processing\r\n const vertexCount = this._vertexData.positions.length / 3;\r\n for (this._currentIndex = 0; this._currentIndex < vertexCount; this._currentIndex++) {\r\n const tempVector4 = this.tangents.getConnectedValue(state) as Vector4;\r\n if (tempVector4) {\r\n tempVector4.toArray(this._vertexData.tangents, this._currentIndex * 4);\r\n }\r\n }\r\n\r\n // Storage\r\n this.output._storedValue = this._vertexData;\r\n state.executionContext = null;\r\n state.geometryContext = null;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.SetTangentsBlock\", SetTangentsBlock);\r\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { NodeGeometryBlock } from "../../nodeGeometryBlock";
|
|
2
|
+
import type { NodeGeometryConnectionPoint } from "../../nodeGeometryBlockConnectionPoint";
|
|
3
|
+
import type { NodeGeometryBuildState } from "../../nodeGeometryBuildState";
|
|
4
|
+
import type { INodeGeometryExecutionContext } from "../../Interfaces/nodeGeometryExecutionContext";
|
|
5
|
+
/**
|
|
6
|
+
* Block used to set texture coordinates for a geometry
|
|
7
|
+
*/
|
|
8
|
+
export declare class SetUVsBlock extends NodeGeometryBlock implements INodeGeometryExecutionContext {
|
|
9
|
+
private _vertexData;
|
|
10
|
+
private _currentIndex;
|
|
11
|
+
/**
|
|
12
|
+
* Gets or sets a value indicating which UV to set
|
|
13
|
+
*/
|
|
14
|
+
textureCoordinateIndex: number;
|
|
15
|
+
/**
|
|
16
|
+
* Create a new SetUVsBlock
|
|
17
|
+
* @param name defines the block name
|
|
18
|
+
*/
|
|
19
|
+
constructor(name: string);
|
|
20
|
+
/**
|
|
21
|
+
* Gets the current index in the current flow
|
|
22
|
+
* @returns the current index
|
|
23
|
+
*/
|
|
24
|
+
getExecutionIndex(): number;
|
|
25
|
+
/**
|
|
26
|
+
* Gets the current face index in the current flow
|
|
27
|
+
* @returns the current face index
|
|
28
|
+
*/
|
|
29
|
+
getExecutionFaceIndex(): number;
|
|
30
|
+
/**
|
|
31
|
+
* Gets the current class name
|
|
32
|
+
* @returns the class name
|
|
33
|
+
*/
|
|
34
|
+
getClassName(): string;
|
|
35
|
+
/**
|
|
36
|
+
* Gets the geometry input component
|
|
37
|
+
*/
|
|
38
|
+
get geometry(): NodeGeometryConnectionPoint;
|
|
39
|
+
/**
|
|
40
|
+
* Gets the uvs input component
|
|
41
|
+
*/
|
|
42
|
+
get uvs(): NodeGeometryConnectionPoint;
|
|
43
|
+
/**
|
|
44
|
+
* Gets the geometry output component
|
|
45
|
+
*/
|
|
46
|
+
get output(): NodeGeometryConnectionPoint;
|
|
47
|
+
protected _buildBlock(state: NodeGeometryBuildState): void;
|
|
48
|
+
protected _dumpPropertiesCode(): string;
|
|
49
|
+
/**
|
|
50
|
+
* Serializes this block in a JSON representation
|
|
51
|
+
* @returns the serialized block object
|
|
52
|
+
*/
|
|
53
|
+
serialize(): any;
|
|
54
|
+
_deserialize(serializationObject: any): void;
|
|
55
|
+
}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { __decorate } from "../../../../tslib.es6.js";
|
|
2
|
+
import { NodeGeometryBlock } from "../../nodeGeometryBlock.js";
|
|
3
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
4
|
+
import { NodeGeometryBlockConnectionPointTypes } from "../../Enums/nodeGeometryConnectionPointTypes.js";
|
|
5
|
+
import { PropertyTypeForEdition, editableInPropertyPage } from "../../../../Decorators/nodeDecorator.js";
|
|
6
|
+
/**
|
|
7
|
+
* Block used to set texture coordinates for a geometry
|
|
8
|
+
*/
|
|
9
|
+
export class SetUVsBlock extends NodeGeometryBlock {
|
|
10
|
+
/**
|
|
11
|
+
* Create a new SetUVsBlock
|
|
12
|
+
* @param name defines the block name
|
|
13
|
+
*/
|
|
14
|
+
constructor(name) {
|
|
15
|
+
super(name);
|
|
16
|
+
/**
|
|
17
|
+
* Gets or sets a value indicating which UV to set
|
|
18
|
+
*/
|
|
19
|
+
this.textureCoordinateIndex = 0;
|
|
20
|
+
this.registerInput("geometry", NodeGeometryBlockConnectionPointTypes.Geometry);
|
|
21
|
+
this.registerInput("uvs", NodeGeometryBlockConnectionPointTypes.Vector2);
|
|
22
|
+
this.registerOutput("output", NodeGeometryBlockConnectionPointTypes.Geometry);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Gets the current index in the current flow
|
|
26
|
+
* @returns the current index
|
|
27
|
+
*/
|
|
28
|
+
getExecutionIndex() {
|
|
29
|
+
return this._currentIndex;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Gets the current face index in the current flow
|
|
33
|
+
* @returns the current face index
|
|
34
|
+
*/
|
|
35
|
+
getExecutionFaceIndex() {
|
|
36
|
+
return 0;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Gets the current class name
|
|
40
|
+
* @returns the class name
|
|
41
|
+
*/
|
|
42
|
+
getClassName() {
|
|
43
|
+
return "SetUVsBlock";
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Gets the geometry input component
|
|
47
|
+
*/
|
|
48
|
+
get geometry() {
|
|
49
|
+
return this._inputs[0];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Gets the uvs input component
|
|
53
|
+
*/
|
|
54
|
+
get uvs() {
|
|
55
|
+
return this._inputs[1];
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Gets the geometry output component
|
|
59
|
+
*/
|
|
60
|
+
get output() {
|
|
61
|
+
return this._outputs[0];
|
|
62
|
+
}
|
|
63
|
+
_buildBlock(state) {
|
|
64
|
+
state.executionContext = this;
|
|
65
|
+
this._vertexData = this.geometry.getConnectedValue(state);
|
|
66
|
+
state.geometryContext = this._vertexData;
|
|
67
|
+
if (!this._vertexData || !this._vertexData.positions) {
|
|
68
|
+
state.executionContext = null;
|
|
69
|
+
state.geometryContext = null;
|
|
70
|
+
this.output._storedValue = null;
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (!this.uvs.isConnected) {
|
|
74
|
+
state.executionContext = null;
|
|
75
|
+
state.geometryContext = null;
|
|
76
|
+
this.output._storedValue = this._vertexData;
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const uvs = [];
|
|
80
|
+
// Processing
|
|
81
|
+
const vertexCount = this._vertexData.positions.length / 3;
|
|
82
|
+
for (this._currentIndex = 0; this._currentIndex < vertexCount; this._currentIndex++) {
|
|
83
|
+
const tempVector2 = this.uvs.getConnectedValue(state);
|
|
84
|
+
if (tempVector2) {
|
|
85
|
+
tempVector2.toArray(uvs, this._currentIndex * 2);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
switch (this.textureCoordinateIndex) {
|
|
89
|
+
case 0:
|
|
90
|
+
this._vertexData.uvs = uvs;
|
|
91
|
+
break;
|
|
92
|
+
case 1:
|
|
93
|
+
this._vertexData.uvs2 = uvs;
|
|
94
|
+
break;
|
|
95
|
+
case 2:
|
|
96
|
+
this._vertexData.uvs3 = uvs;
|
|
97
|
+
break;
|
|
98
|
+
case 3:
|
|
99
|
+
this._vertexData.uvs4 = uvs;
|
|
100
|
+
break;
|
|
101
|
+
case 4:
|
|
102
|
+
this._vertexData.uvs5 = uvs;
|
|
103
|
+
break;
|
|
104
|
+
case 5:
|
|
105
|
+
this._vertexData.uvs6 = uvs;
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
// Storage
|
|
109
|
+
this.output._storedValue = this._vertexData;
|
|
110
|
+
state.executionContext = null;
|
|
111
|
+
state.geometryContext = null;
|
|
112
|
+
}
|
|
113
|
+
_dumpPropertiesCode() {
|
|
114
|
+
const codeString = super._dumpPropertiesCode() + `${this._codeVariableName}.textureCoordinateIndex};\r\n`;
|
|
115
|
+
return codeString;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Serializes this block in a JSON representation
|
|
119
|
+
* @returns the serialized block object
|
|
120
|
+
*/
|
|
121
|
+
serialize() {
|
|
122
|
+
const serializationObject = super.serialize();
|
|
123
|
+
serializationObject.textureCoordinateIndex = this.textureCoordinateIndex;
|
|
124
|
+
return serializationObject;
|
|
125
|
+
}
|
|
126
|
+
_deserialize(serializationObject) {
|
|
127
|
+
super._deserialize(serializationObject);
|
|
128
|
+
this.textureCoordinateIndex = serializationObject.textureCoordinateIndex;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
__decorate([
|
|
132
|
+
editableInPropertyPage("Texture coordinates index", PropertyTypeForEdition.List, "ADVANCED", {
|
|
133
|
+
notifiers: { update: true },
|
|
134
|
+
options: [
|
|
135
|
+
{ label: "UV1", value: 0 },
|
|
136
|
+
{ label: "UV2", value: 1 },
|
|
137
|
+
{ label: "UV3", value: 2 },
|
|
138
|
+
{ label: "UV4", value: 3 },
|
|
139
|
+
{ label: "UV5", value: 4 },
|
|
140
|
+
{ label: "UV6", value: 5 },
|
|
141
|
+
],
|
|
142
|
+
})
|
|
143
|
+
], SetUVsBlock.prototype, "textureCoordinateIndex", void 0);
|
|
144
|
+
RegisterClass("BABYLON.SetUVsBlock", SetUVsBlock);
|
|
145
|
+
//# sourceMappingURL=setUVsBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setUVsBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/Meshes/Node/Blocks/Set/setUVsBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qCAAqC,EAAE,MAAM,8CAA8C,CAAC;AAKrG,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAEtG;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,iBAAiB;IAoB9C;;;OAGG;IACH,YAAmB,IAAY;QAC3B,KAAK,CAAC,IAAI,CAAC,CAAC;QArBhB;;WAEG;QAYI,2BAAsB,GAAG,CAAC,CAAC;QAS9B,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,qCAAqC,CAAC,QAAQ,CAAC,CAAC;QAC/E,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAEzE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,QAAQ,CAAC,CAAC;IAClF,CAAC;IAED;;;OAGG;IACI,iBAAiB;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACI,qBAAqB;QACxB,OAAO,CAAC,CAAC;IACb,CAAC;IAED;;;OAGG;IACI,YAAY;QACf,OAAO,aAAa,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IAES,WAAW,CAAC,KAA6B;QAC/C,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAE9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC1D,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC;QAEzC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;YAClD,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC9B,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;YAChC,OAAO;SACV;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;YACvB,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC9B,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;YAC5C,OAAO;SACV;QAED,MAAM,GAAG,GAAa,EAAE,CAAC;QAEzB,aAAa;QACb,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1D,KAAK,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,IAAI,CAAC,aAAa,GAAG,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE;YACjF,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAY,CAAC;YACjE,IAAI,WAAW,EAAE;gBACb,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;aACpD;SACJ;QAED,QAAQ,IAAI,CAAC,sBAAsB,EAAE;YACjC,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC;gBAC3B,MAAM;YACV,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC;gBAC5B,MAAM;YACV,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC;gBAC5B,MAAM;YACV,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC;gBAC5B,MAAM;YACV,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC;gBAC5B,MAAM;YACV,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,GAAG,CAAC;gBAC5B,MAAM;SACb;QAED,UAAU;QACV,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;QAC5C,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC9B,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;IACjC,CAAC;IAES,mBAAmB;QACzB,MAAM,UAAU,GAAG,KAAK,CAAC,mBAAmB,EAAE,GAAG,GAAG,IAAI,CAAC,iBAAiB,+BAA+B,CAAC;QAC1G,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;;OAGG;IACI,SAAS;QACZ,MAAM,mBAAmB,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QAE9C,mBAAmB,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAEzE,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IAEM,YAAY,CAAC,mBAAwB;QACxC,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;QAExC,IAAI,CAAC,sBAAsB,GAAG,mBAAmB,CAAC,sBAAsB,CAAC;IAC7E,CAAC;CACJ;AA5IU;IAXN,sBAAsB,CAAC,2BAA2B,EAAE,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE;QAC1F,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAC3B,OAAO,EAAE;YACL,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YAC1B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;SAC7B;KACJ,CAAC;2DACgC;AA8ItC,aAAa,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC","sourcesContent":["import { NodeGeometryBlock } from \"../../nodeGeometryBlock\";\r\nimport type { NodeGeometryConnectionPoint } from \"../../nodeGeometryBlockConnectionPoint\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport { NodeGeometryBlockConnectionPointTypes } from \"../../Enums/nodeGeometryConnectionPointTypes\";\r\nimport type { NodeGeometryBuildState } from \"../../nodeGeometryBuildState\";\r\nimport type { INodeGeometryExecutionContext } from \"../../Interfaces/nodeGeometryExecutionContext\";\r\nimport type { VertexData } from \"../../../mesh.vertexData\";\r\nimport type { Vector2 } from \"../../../../Maths/math.vector\";\r\nimport { PropertyTypeForEdition, editableInPropertyPage } from \"../../../../Decorators/nodeDecorator\";\r\n\r\n/**\r\n * Block used to set texture coordinates for a geometry\r\n */\r\nexport class SetUVsBlock extends NodeGeometryBlock implements INodeGeometryExecutionContext {\r\n private _vertexData: VertexData;\r\n private _currentIndex: number;\r\n\r\n /**\r\n * Gets or sets a value indicating which UV to set\r\n */\r\n @editableInPropertyPage(\"Texture coordinates index\", PropertyTypeForEdition.List, \"ADVANCED\", {\r\n notifiers: { update: true },\r\n options: [\r\n { label: \"UV1\", value: 0 },\r\n { label: \"UV2\", value: 1 },\r\n { label: \"UV3\", value: 2 },\r\n { label: \"UV4\", value: 3 },\r\n { label: \"UV5\", value: 4 },\r\n { label: \"UV6\", value: 5 },\r\n ],\r\n })\r\n public textureCoordinateIndex = 0;\r\n\r\n /**\r\n * Create a new SetUVsBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name);\r\n\r\n this.registerInput(\"geometry\", NodeGeometryBlockConnectionPointTypes.Geometry);\r\n this.registerInput(\"uvs\", NodeGeometryBlockConnectionPointTypes.Vector2);\r\n\r\n this.registerOutput(\"output\", NodeGeometryBlockConnectionPointTypes.Geometry);\r\n }\r\n\r\n /**\r\n * Gets the current index in the current flow\r\n * @returns the current index\r\n */\r\n public getExecutionIndex(): number {\r\n return this._currentIndex;\r\n }\r\n\r\n /**\r\n * Gets the current face index in the current flow\r\n * @returns the current face index\r\n */\r\n public getExecutionFaceIndex(): number {\r\n return 0;\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"SetUVsBlock\";\r\n }\r\n\r\n /**\r\n * Gets the geometry input component\r\n */\r\n public get geometry(): NodeGeometryConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the uvs input component\r\n */\r\n public get uvs(): NodeGeometryConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the geometry output component\r\n */\r\n public get output(): NodeGeometryConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeGeometryBuildState) {\r\n state.executionContext = this;\r\n\r\n this._vertexData = this.geometry.getConnectedValue(state);\r\n state.geometryContext = this._vertexData;\r\n\r\n if (!this._vertexData || !this._vertexData.positions) {\r\n state.executionContext = null;\r\n state.geometryContext = null;\r\n this.output._storedValue = null;\r\n return;\r\n }\r\n\r\n if (!this.uvs.isConnected) {\r\n state.executionContext = null;\r\n state.geometryContext = null;\r\n this.output._storedValue = this._vertexData;\r\n return;\r\n }\r\n\r\n const uvs: number[] = [];\r\n\r\n // Processing\r\n const vertexCount = this._vertexData.positions.length / 3;\r\n for (this._currentIndex = 0; this._currentIndex < vertexCount; this._currentIndex++) {\r\n const tempVector2 = this.uvs.getConnectedValue(state) as Vector2;\r\n if (tempVector2) {\r\n tempVector2.toArray(uvs, this._currentIndex * 2);\r\n }\r\n }\r\n\r\n switch (this.textureCoordinateIndex) {\r\n case 0:\r\n this._vertexData.uvs = uvs;\r\n break;\r\n case 1:\r\n this._vertexData.uvs2 = uvs;\r\n break;\r\n case 2:\r\n this._vertexData.uvs3 = uvs;\r\n break;\r\n case 3:\r\n this._vertexData.uvs4 = uvs;\r\n break;\r\n case 4:\r\n this._vertexData.uvs5 = uvs;\r\n break;\r\n case 5:\r\n this._vertexData.uvs6 = uvs;\r\n break;\r\n }\r\n\r\n // Storage\r\n this.output._storedValue = this._vertexData;\r\n state.executionContext = null;\r\n state.geometryContext = null;\r\n }\r\n\r\n protected _dumpPropertiesCode() {\r\n const codeString = super._dumpPropertiesCode() + `${this._codeVariableName}.textureCoordinateIndex};\\r\\n`;\r\n return codeString;\r\n }\r\n\r\n /**\r\n * Serializes this block in a JSON representation\r\n * @returns the serialized block object\r\n */\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n\r\n serializationObject.textureCoordinateIndex = this.textureCoordinateIndex;\r\n\r\n return serializationObject;\r\n }\r\n\r\n public _deserialize(serializationObject: any) {\r\n super._deserialize(serializationObject);\r\n\r\n this.textureCoordinateIndex = serializationObject.textureCoordinateIndex;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.SetUVsBlock\", SetUVsBlock);\r\n"]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { NodeGeometryBlock } from "../../nodeGeometryBlock";
|
|
2
|
+
import type { NodeGeometryConnectionPoint } from "../../nodeGeometryBlockConnectionPoint";
|
|
3
|
+
import type { NodeGeometryBuildState } from "../../nodeGeometryBuildState";
|
|
4
|
+
/**
|
|
5
|
+
* Defines a block used to generate box geometry data
|
|
6
|
+
*/
|
|
7
|
+
export declare class BoxBlock extends NodeGeometryBlock {
|
|
8
|
+
/**
|
|
9
|
+
* Gets or sets a boolean indicating that this block can evaluate context
|
|
10
|
+
* Build performance is improved when this value is set to false as the system will cache values instead of reevaluating everything per context change
|
|
11
|
+
*/
|
|
12
|
+
evaluateContext: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Create a new BoxBlock
|
|
15
|
+
* @param name defines the block name
|
|
16
|
+
*/
|
|
17
|
+
constructor(name: string);
|
|
18
|
+
/**
|
|
19
|
+
* Gets the current class name
|
|
20
|
+
* @returns the class name
|
|
21
|
+
*/
|
|
22
|
+
getClassName(): string;
|
|
23
|
+
/**
|
|
24
|
+
* Gets the size input component
|
|
25
|
+
*/
|
|
26
|
+
get size(): NodeGeometryConnectionPoint;
|
|
27
|
+
/**
|
|
28
|
+
* Gets the width input component
|
|
29
|
+
*/
|
|
30
|
+
get width(): NodeGeometryConnectionPoint;
|
|
31
|
+
/**
|
|
32
|
+
* Gets the height input component
|
|
33
|
+
*/
|
|
34
|
+
get height(): NodeGeometryConnectionPoint;
|
|
35
|
+
/**
|
|
36
|
+
* Gets the depth input component
|
|
37
|
+
*/
|
|
38
|
+
get depth(): NodeGeometryConnectionPoint;
|
|
39
|
+
/**
|
|
40
|
+
* Gets the subdivisions input component
|
|
41
|
+
*/
|
|
42
|
+
get subdivisions(): NodeGeometryConnectionPoint;
|
|
43
|
+
/**
|
|
44
|
+
* Gets the subdivisionsX input component
|
|
45
|
+
*/
|
|
46
|
+
get subdivisionsX(): NodeGeometryConnectionPoint;
|
|
47
|
+
/**
|
|
48
|
+
* Gets the subdivisionsY input component
|
|
49
|
+
*/
|
|
50
|
+
get subdivisionsY(): NodeGeometryConnectionPoint;
|
|
51
|
+
/**
|
|
52
|
+
* Gets the subdivisionsZ input component
|
|
53
|
+
*/
|
|
54
|
+
get subdivisionsZ(): NodeGeometryConnectionPoint;
|
|
55
|
+
/**
|
|
56
|
+
* Gets the geometry output component
|
|
57
|
+
*/
|
|
58
|
+
get geometry(): NodeGeometryConnectionPoint;
|
|
59
|
+
autoConfigure(): void;
|
|
60
|
+
protected _buildBlock(state: NodeGeometryBuildState): void;
|
|
61
|
+
protected _dumpPropertiesCode(): string;
|
|
62
|
+
/**
|
|
63
|
+
* Serializes this block in a JSON representation
|
|
64
|
+
* @returns the serialized block object
|
|
65
|
+
*/
|
|
66
|
+
serialize(): any;
|
|
67
|
+
_deserialize(serializationObject: any): void;
|
|
68
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { __decorate } from "../../../../tslib.es6.js";
|
|
2
|
+
import { NodeGeometryBlockConnectionPointTypes } from "../../Enums/nodeGeometryConnectionPointTypes.js";
|
|
3
|
+
import { NodeGeometryBlock } from "../../nodeGeometryBlock.js";
|
|
4
|
+
import { GeometryInputBlock } from "../geometryInputBlock.js";
|
|
5
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
6
|
+
import { CreateSegmentedBoxVertexData } from "../../../Builders/boxBuilder.js";
|
|
7
|
+
import { PropertyTypeForEdition, editableInPropertyPage } from "../../../../Decorators/nodeDecorator.js";
|
|
8
|
+
/**
|
|
9
|
+
* Defines a block used to generate box geometry data
|
|
10
|
+
*/
|
|
11
|
+
export class BoxBlock extends NodeGeometryBlock {
|
|
12
|
+
/**
|
|
13
|
+
* Create a new BoxBlock
|
|
14
|
+
* @param name defines the block name
|
|
15
|
+
*/
|
|
16
|
+
constructor(name) {
|
|
17
|
+
super(name);
|
|
18
|
+
/**
|
|
19
|
+
* Gets or sets a boolean indicating that this block can evaluate context
|
|
20
|
+
* Build performance is improved when this value is set to false as the system will cache values instead of reevaluating everything per context change
|
|
21
|
+
*/
|
|
22
|
+
this.evaluateContext = false;
|
|
23
|
+
this.registerInput("size", NodeGeometryBlockConnectionPointTypes.Float, true, 1);
|
|
24
|
+
this.registerInput("width", NodeGeometryBlockConnectionPointTypes.Float, true, 0);
|
|
25
|
+
this.registerInput("height", NodeGeometryBlockConnectionPointTypes.Float, true, 0);
|
|
26
|
+
this.registerInput("depth", NodeGeometryBlockConnectionPointTypes.Float, true, 0);
|
|
27
|
+
this.registerInput("subdivisions", NodeGeometryBlockConnectionPointTypes.Int, true, 1);
|
|
28
|
+
this.registerInput("subdivisionsX", NodeGeometryBlockConnectionPointTypes.Int, true, 0);
|
|
29
|
+
this.registerInput("subdivisionsY", NodeGeometryBlockConnectionPointTypes.Int, true, 0);
|
|
30
|
+
this.registerInput("subdivisionsZ", NodeGeometryBlockConnectionPointTypes.Int, true, 0);
|
|
31
|
+
this.registerOutput("geometry", NodeGeometryBlockConnectionPointTypes.Geometry);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Gets the current class name
|
|
35
|
+
* @returns the class name
|
|
36
|
+
*/
|
|
37
|
+
getClassName() {
|
|
38
|
+
return "BoxBlock";
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Gets the size input component
|
|
42
|
+
*/
|
|
43
|
+
get size() {
|
|
44
|
+
return this._inputs[0];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Gets the width input component
|
|
48
|
+
*/
|
|
49
|
+
get width() {
|
|
50
|
+
return this._inputs[1];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Gets the height input component
|
|
54
|
+
*/
|
|
55
|
+
get height() {
|
|
56
|
+
return this._inputs[2];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Gets the depth input component
|
|
60
|
+
*/
|
|
61
|
+
get depth() {
|
|
62
|
+
return this._inputs[3];
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Gets the subdivisions input component
|
|
66
|
+
*/
|
|
67
|
+
get subdivisions() {
|
|
68
|
+
return this._inputs[4];
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Gets the subdivisionsX input component
|
|
72
|
+
*/
|
|
73
|
+
get subdivisionsX() {
|
|
74
|
+
return this._inputs[5];
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Gets the subdivisionsY input component
|
|
78
|
+
*/
|
|
79
|
+
get subdivisionsY() {
|
|
80
|
+
return this._inputs[6];
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Gets the subdivisionsZ input component
|
|
84
|
+
*/
|
|
85
|
+
get subdivisionsZ() {
|
|
86
|
+
return this._inputs[7];
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Gets the geometry output component
|
|
90
|
+
*/
|
|
91
|
+
get geometry() {
|
|
92
|
+
return this._outputs[0];
|
|
93
|
+
}
|
|
94
|
+
autoConfigure() {
|
|
95
|
+
if (this.size.isConnected) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
if (!this.width.isConnected && !this.height.isConnected && !this.depth.isConnected) {
|
|
99
|
+
const sizeInput = new GeometryInputBlock("Size");
|
|
100
|
+
sizeInput.value = 1;
|
|
101
|
+
sizeInput.output.connectTo(this.size);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
if (!this.width.isConnected) {
|
|
105
|
+
const widthInput = new GeometryInputBlock("Width");
|
|
106
|
+
widthInput.value = 1;
|
|
107
|
+
widthInput.output.connectTo(this.width);
|
|
108
|
+
}
|
|
109
|
+
if (!this.height.isConnected) {
|
|
110
|
+
const heightInput = new GeometryInputBlock("Height");
|
|
111
|
+
heightInput.value = 1;
|
|
112
|
+
heightInput.output.connectTo(this.height);
|
|
113
|
+
}
|
|
114
|
+
if (!this.depth.isConnected) {
|
|
115
|
+
const depthInput = new GeometryInputBlock("Depth");
|
|
116
|
+
depthInput.value = 1;
|
|
117
|
+
depthInput.output.connectTo(this.depth);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
_buildBlock(state) {
|
|
121
|
+
const options = {};
|
|
122
|
+
const func = (state) => {
|
|
123
|
+
options.size = this.size.getConnectedValue(state);
|
|
124
|
+
options.width = this.width.getConnectedValue(state);
|
|
125
|
+
options.height = this.height.getConnectedValue(state);
|
|
126
|
+
options.depth = this.depth.getConnectedValue(state);
|
|
127
|
+
const subdivisions = this.subdivisions.getConnectedValue(state);
|
|
128
|
+
const subdivisionsX = this.subdivisionsX.getConnectedValue(state);
|
|
129
|
+
const subdivisionsY = this.subdivisionsY.getConnectedValue(state);
|
|
130
|
+
const subdivisionsZ = this.subdivisionsZ.getConnectedValue(state);
|
|
131
|
+
if (subdivisions) {
|
|
132
|
+
options.segments = subdivisions;
|
|
133
|
+
}
|
|
134
|
+
if (subdivisionsX) {
|
|
135
|
+
options.widthSegments = subdivisionsX;
|
|
136
|
+
}
|
|
137
|
+
if (subdivisionsY) {
|
|
138
|
+
options.heightSegments = subdivisionsY;
|
|
139
|
+
}
|
|
140
|
+
if (subdivisionsZ) {
|
|
141
|
+
options.depthSegments = subdivisionsZ;
|
|
142
|
+
}
|
|
143
|
+
// Append vertex data from the plane builder
|
|
144
|
+
return CreateSegmentedBoxVertexData(options);
|
|
145
|
+
};
|
|
146
|
+
if (this.evaluateContext) {
|
|
147
|
+
this.geometry._storedFunction = func;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
this.geometry._storedValue = func(state);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
_dumpPropertiesCode() {
|
|
154
|
+
const codeString = super._dumpPropertiesCode() + `${this._codeVariableName}.evaluateContext = ${this.evaluateContext ? "true" : "false"};\r\n`;
|
|
155
|
+
return codeString;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Serializes this block in a JSON representation
|
|
159
|
+
* @returns the serialized block object
|
|
160
|
+
*/
|
|
161
|
+
serialize() {
|
|
162
|
+
const serializationObject = super.serialize();
|
|
163
|
+
serializationObject.evaluateContext = this.evaluateContext;
|
|
164
|
+
return serializationObject;
|
|
165
|
+
}
|
|
166
|
+
_deserialize(serializationObject) {
|
|
167
|
+
super._deserialize(serializationObject);
|
|
168
|
+
this.evaluateContext = serializationObject.evaluateContext;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
__decorate([
|
|
172
|
+
editableInPropertyPage("Evaluate context", PropertyTypeForEdition.Boolean, "ADVANCED", { notifiers: { rebuild: true } })
|
|
173
|
+
], BoxBlock.prototype, "evaluateContext", void 0);
|
|
174
|
+
RegisterClass("BABYLON.BoxBlock", BoxBlock);
|
|
175
|
+
//# sourceMappingURL=boxBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boxBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/Meshes/Node/Blocks/Sources/boxBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeGeometryBlockConnectionPointTypes } from \"../../Enums/nodeGeometryConnectionPointTypes\";\r\nimport { NodeGeometryBlock } from \"../../nodeGeometryBlock\";\r\nimport type { NodeGeometryConnectionPoint } from \"../../nodeGeometryBlockConnectionPoint\";\r\nimport type { NodeGeometryBuildState } from \"../../nodeGeometryBuildState\";\r\nimport { GeometryInputBlock } from \"../geometryInputBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport { CreateSegmentedBoxVertexData } from \"core/Meshes/Builders/boxBuilder\";\r\nimport { PropertyTypeForEdition, editableInPropertyPage } from \"../../../../Decorators/nodeDecorator\";\r\n\r\n/**\r\n * Defines a block used to generate box geometry data\r\n */\r\nexport class BoxBlock extends NodeGeometryBlock {\r\n /**\r\n * Gets or sets a boolean indicating that this block can evaluate context\r\n * Build performance is improved when this value is set to false as the system will cache values instead of reevaluating everything per context change\r\n */\r\n @editableInPropertyPage(\"Evaluate context\", PropertyTypeForEdition.Boolean, \"ADVANCED\", { notifiers: { rebuild: true } })\r\n public evaluateContext = false;\r\n\r\n /**\r\n * Create a new BoxBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name);\r\n\r\n this.registerInput(\"size\", NodeGeometryBlockConnectionPointTypes.Float, true, 1);\r\n this.registerInput(\"width\", NodeGeometryBlockConnectionPointTypes.Float, true, 0);\r\n this.registerInput(\"height\", NodeGeometryBlockConnectionPointTypes.Float, true, 0);\r\n this.registerInput(\"depth\", NodeGeometryBlockConnectionPointTypes.Float, true, 0);\r\n this.registerInput(\"subdivisions\", NodeGeometryBlockConnectionPointTypes.Int, true, 1);\r\n this.registerInput(\"subdivisionsX\", NodeGeometryBlockConnectionPointTypes.Int, true, 0);\r\n this.registerInput(\"subdivisionsY\", NodeGeometryBlockConnectionPointTypes.Int, true, 0);\r\n this.registerInput(\"subdivisionsZ\", NodeGeometryBlockConnectionPointTypes.Int, true, 0);\r\n\r\n this.registerOutput(\"geometry\", NodeGeometryBlockConnectionPointTypes.Geometry);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"BoxBlock\";\r\n }\r\n\r\n /**\r\n * Gets the size input component\r\n */\r\n public get size(): NodeGeometryConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the width input component\r\n */\r\n public get width(): NodeGeometryConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the height input component\r\n */\r\n public get height(): NodeGeometryConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the depth input component\r\n */\r\n public get depth(): NodeGeometryConnectionPoint {\r\n return this._inputs[3];\r\n }\r\n\r\n /**\r\n * Gets the subdivisions input component\r\n */\r\n public get subdivisions(): NodeGeometryConnectionPoint {\r\n return this._inputs[4];\r\n }\r\n\r\n /**\r\n * Gets the subdivisionsX input component\r\n */\r\n public get subdivisionsX(): NodeGeometryConnectionPoint {\r\n return this._inputs[5];\r\n }\r\n\r\n /**\r\n * Gets the subdivisionsY input component\r\n */\r\n public get subdivisionsY(): NodeGeometryConnectionPoint {\r\n return this._inputs[6];\r\n }\r\n\r\n /**\r\n * Gets the subdivisionsZ input component\r\n */\r\n public get subdivisionsZ(): NodeGeometryConnectionPoint {\r\n return this._inputs[7];\r\n }\r\n\r\n /**\r\n * Gets the geometry output component\r\n */\r\n public get geometry(): NodeGeometryConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n public autoConfigure() {\r\n if (this.size.isConnected) {\r\n return;\r\n }\r\n\r\n if (!this.width.isConnected && !this.height.isConnected && !this.depth.isConnected) {\r\n const sizeInput = new GeometryInputBlock(\"Size\");\r\n sizeInput.value = 1;\r\n sizeInput.output.connectTo(this.size);\r\n return;\r\n }\r\n\r\n if (!this.width.isConnected) {\r\n const widthInput = new GeometryInputBlock(\"Width\");\r\n widthInput.value = 1;\r\n widthInput.output.connectTo(this.width);\r\n }\r\n\r\n if (!this.height.isConnected) {\r\n const heightInput = new GeometryInputBlock(\"Height\");\r\n heightInput.value = 1;\r\n heightInput.output.connectTo(this.height);\r\n }\r\n\r\n if (!this.depth.isConnected) {\r\n const depthInput = new GeometryInputBlock(\"Depth\");\r\n depthInput.value = 1;\r\n depthInput.output.connectTo(this.depth);\r\n }\r\n }\r\n\r\n protected _buildBlock(state: NodeGeometryBuildState) {\r\n const options: {\r\n size?: number;\r\n width?: number;\r\n height?: number;\r\n depth?: number;\r\n segments?: number;\r\n widthSegments?: number;\r\n heightSegments?: number;\r\n depthSegments?: number;\r\n } = {};\r\n const func = (state: NodeGeometryBuildState) => {\r\n options.size = this.size.getConnectedValue(state);\r\n options.width = this.width.getConnectedValue(state);\r\n options.height = this.height.getConnectedValue(state);\r\n options.depth = this.depth.getConnectedValue(state);\r\n\r\n const subdivisions = this.subdivisions.getConnectedValue(state);\r\n const subdivisionsX = this.subdivisionsX.getConnectedValue(state);\r\n const subdivisionsY = this.subdivisionsY.getConnectedValue(state);\r\n const subdivisionsZ = this.subdivisionsZ.getConnectedValue(state);\r\n\r\n if (subdivisions) {\r\n options.segments = subdivisions;\r\n }\r\n\r\n if (subdivisionsX) {\r\n options.widthSegments = subdivisionsX;\r\n }\r\n\r\n if (subdivisionsY) {\r\n options.heightSegments = subdivisionsY;\r\n }\r\n\r\n if (subdivisionsZ) {\r\n options.depthSegments = subdivisionsZ;\r\n }\r\n\r\n // Append vertex data from the plane builder\r\n return CreateSegmentedBoxVertexData(options);\r\n };\r\n\r\n if (this.evaluateContext) {\r\n this.geometry._storedFunction = func;\r\n } else {\r\n this.geometry._storedValue = func(state);\r\n }\r\n }\r\n\r\n protected _dumpPropertiesCode() {\r\n const codeString = super._dumpPropertiesCode() + `${this._codeVariableName}.evaluateContext = ${this.evaluateContext ? \"true\" : \"false\"};\\r\\n`;\r\n return codeString;\r\n }\r\n\r\n /**\r\n * Serializes this block in a JSON representation\r\n * @returns the serialized block object\r\n */\r\n public serialize(): any {\r\n const serializationObject = super.serialize();\r\n\r\n serializationObject.evaluateContext = this.evaluateContext;\r\n\r\n return serializationObject;\r\n }\r\n\r\n public _deserialize(serializationObject: any) {\r\n super._deserialize(serializationObject);\r\n\r\n this.evaluateContext = serializationObject.evaluateContext;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.BoxBlock\", BoxBlock);\r\n"]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { NodeGeometryBlock } from "../../nodeGeometryBlock";
|
|
2
|
+
import type { NodeGeometryConnectionPoint } from "../../nodeGeometryBlockConnectionPoint";
|
|
3
|
+
import type { NodeGeometryBuildState } from "../../nodeGeometryBuildState";
|
|
4
|
+
/**
|
|
5
|
+
* Defines a block used to generate capsule geometry data
|
|
6
|
+
*/
|
|
7
|
+
export declare class CapsuleBlock extends NodeGeometryBlock {
|
|
8
|
+
/**
|
|
9
|
+
* Gets or sets a boolean indicating that this block can evaluate context
|
|
10
|
+
* Build performance is improved when this value is set to false as the system will cache values instead of reevaluating everything per context change
|
|
11
|
+
*/
|
|
12
|
+
evaluateContext: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Create a new CapsuleBlock
|
|
15
|
+
* @param name defines the block name
|
|
16
|
+
*/
|
|
17
|
+
constructor(name: string);
|
|
18
|
+
/**
|
|
19
|
+
* Gets the current class name
|
|
20
|
+
* @returns the class name
|
|
21
|
+
*/
|
|
22
|
+
getClassName(): string;
|
|
23
|
+
/**
|
|
24
|
+
* Gets the height input component
|
|
25
|
+
*/
|
|
26
|
+
get height(): NodeGeometryConnectionPoint;
|
|
27
|
+
/**
|
|
28
|
+
* Gets the radius input component
|
|
29
|
+
*/
|
|
30
|
+
get radius(): NodeGeometryConnectionPoint;
|
|
31
|
+
/**
|
|
32
|
+
* Gets the tessellation input component
|
|
33
|
+
*/
|
|
34
|
+
get tessellation(): NodeGeometryConnectionPoint;
|
|
35
|
+
/**
|
|
36
|
+
* Gets the subdivisions input component
|
|
37
|
+
*/
|
|
38
|
+
get subdivisions(): NodeGeometryConnectionPoint;
|
|
39
|
+
/**
|
|
40
|
+
* Gets the geometry output component
|
|
41
|
+
*/
|
|
42
|
+
get geometry(): NodeGeometryConnectionPoint;
|
|
43
|
+
autoConfigure(): void;
|
|
44
|
+
protected _buildBlock(state: NodeGeometryBuildState): void;
|
|
45
|
+
protected _dumpPropertiesCode(): string;
|
|
46
|
+
/**
|
|
47
|
+
* Serializes this block in a JSON representation
|
|
48
|
+
* @returns the serialized block object
|
|
49
|
+
*/
|
|
50
|
+
serialize(): any;
|
|
51
|
+
_deserialize(serializationObject: any): void;
|
|
52
|
+
}
|