@babylonjs/core 7.31.2 → 7.32.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Behaviors/Cameras/autoRotationBehavior.js +1 -0
- package/Behaviors/Cameras/autoRotationBehavior.js.map +1 -1
- package/Cameras/camera.d.ts +5 -2
- package/Cameras/camera.js +1 -0
- package/Cameras/camera.js.map +1 -1
- package/Decorators/nodeDecorator.d.ts +9 -1
- package/Decorators/nodeDecorator.js +8 -0
- package/Decorators/nodeDecorator.js.map +1 -1
- package/Engines/Extensions/engine.multiRender.js +40 -53
- package/Engines/Extensions/engine.multiRender.js.map +1 -1
- package/Engines/Extensions/engine.renderTarget.js +20 -8
- package/Engines/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.debugging.js +16 -7
- package/Engines/WebGPU/Extensions/engine.debugging.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.multiRender.js +43 -44
- package/Engines/WebGPU/Extensions/engine.multiRender.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.renderTarget.js +8 -6
- package/Engines/WebGPU/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.d.ts +3 -3
- package/Engines/WebGPU/webgpuHardwareTexture.js +12 -9
- package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js +25 -19
- package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureManager.d.ts +1 -1
- package/Engines/WebGPU/webgpuTextureManager.js +5 -3
- package/Engines/WebGPU/webgpuTextureManager.js.map +1 -1
- package/Engines/abstractEngine.d.ts +6 -1
- package/Engines/abstractEngine.js +2 -2
- package/Engines/abstractEngine.js.map +1 -1
- package/Engines/constants.d.ts +6 -1
- package/Engines/constants.js +6 -1
- package/Engines/constants.js.map +1 -1
- package/Engines/renderTargetWrapper.d.ts +7 -0
- package/Engines/renderTargetWrapper.js +15 -0
- package/Engines/renderTargetWrapper.js.map +1 -1
- package/Engines/webgpuEngine.d.ts +3 -1
- package/Engines/webgpuEngine.js +9 -8
- package/Engines/webgpuEngine.js.map +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/blackAndWhitePostProcessBlock.d.ts +47 -0
- package/FrameGraph/Node/Blocks/PostProcesses/blackAndWhitePostProcessBlock.js +113 -0
- package/FrameGraph/Node/Blocks/PostProcesses/blackAndWhitePostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/bloomPostProcessBlock.d.ts +62 -0
- package/FrameGraph/Node/Blocks/PostProcesses/bloomPostProcessBlock.js +171 -0
- package/FrameGraph/Node/Blocks/PostProcesses/bloomPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/blurPostProcessBlock.d.ts +51 -0
- package/FrameGraph/Node/Blocks/PostProcesses/blurPostProcessBlock.js +127 -0
- package/FrameGraph/Node/Blocks/PostProcesses/blurPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/circleOfConfusionPostProcessBlock.d.ts +67 -0
- package/FrameGraph/Node/Blocks/PostProcesses/circleOfConfusionPostProcessBlock.js +187 -0
- package/FrameGraph/Node/Blocks/PostProcesses/circleOfConfusionPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/depthOfFieldPostProcessBlock.d.ts +77 -0
- package/FrameGraph/Node/Blocks/PostProcesses/depthOfFieldPostProcessBlock.js +232 -0
- package/FrameGraph/Node/Blocks/PostProcesses/depthOfFieldPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/extractHighlightsPostProcessBlock.d.ts +47 -0
- package/FrameGraph/Node/Blocks/PostProcesses/extractHighlightsPostProcessBlock.js +113 -0
- package/FrameGraph/Node/Blocks/PostProcesses/extractHighlightsPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Rendering/cullObjectsBlock.d.ts +41 -0
- package/FrameGraph/Node/Blocks/Rendering/cullObjectsBlock.js +79 -0
- package/FrameGraph/Node/Blocks/Rendering/cullObjectsBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.d.ts +119 -0
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js +451 -0
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.d.ts +63 -0
- package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js +154 -0
- package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Teleport/teleportInBlock.d.ts +59 -0
- package/FrameGraph/Node/Blocks/Teleport/teleportInBlock.js +131 -0
- package/FrameGraph/Node/Blocks/Teleport/teleportInBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Teleport/teleportOutBlock.d.ts +49 -0
- package/FrameGraph/Node/Blocks/Teleport/teleportOutBlock.js +107 -0
- package/FrameGraph/Node/Blocks/Teleport/teleportOutBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Textures/clearBlock.d.ts +50 -0
- package/FrameGraph/Node/Blocks/Textures/clearBlock.js +125 -0
- package/FrameGraph/Node/Blocks/Textures/clearBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.d.ts +38 -0
- package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js +71 -0
- package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.d.ts +34 -0
- package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js +59 -0
- package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/elbowBlock.d.ts +28 -0
- package/FrameGraph/Node/Blocks/elbowBlock.js +47 -0
- package/FrameGraph/Node/Blocks/elbowBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/index.d.ts +17 -0
- package/FrameGraph/Node/Blocks/index.js +18 -0
- package/FrameGraph/Node/Blocks/index.js.map +1 -0
- package/FrameGraph/Node/Blocks/inputBlock.d.ts +94 -0
- package/FrameGraph/Node/Blocks/inputBlock.js +270 -0
- package/FrameGraph/Node/Blocks/inputBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/outputBlock.d.ts +30 -0
- package/FrameGraph/Node/Blocks/outputBlock.js +51 -0
- package/FrameGraph/Node/Blocks/outputBlock.js.map +1 -0
- package/FrameGraph/Node/Types/nodeRenderGraphTypes.d.ts +110 -0
- package/FrameGraph/Node/Types/nodeRenderGraphTypes.js +78 -0
- package/FrameGraph/Node/Types/nodeRenderGraphTypes.js.map +1 -0
- package/FrameGraph/Node/nodeRenderGraph.d.ts +196 -0
- package/FrameGraph/Node/nodeRenderGraph.js +614 -0
- package/FrameGraph/Node/nodeRenderGraph.js.map +1 -0
- package/FrameGraph/Node/nodeRenderGraphBlock.d.ts +190 -0
- package/FrameGraph/Node/nodeRenderGraphBlock.js +495 -0
- package/FrameGraph/Node/nodeRenderGraphBlock.js.map +1 -0
- package/FrameGraph/Node/nodeRenderGraphBlockConnectionPoint.d.ts +143 -0
- package/FrameGraph/Node/nodeRenderGraphBlockConnectionPoint.js +275 -0
- package/FrameGraph/Node/nodeRenderGraphBlockConnectionPoint.js.map +1 -0
- package/FrameGraph/Node/nodeRenderGraphBuildState.d.ts +21 -0
- package/FrameGraph/Node/nodeRenderGraphBuildState.js +35 -0
- package/FrameGraph/Node/nodeRenderGraphBuildState.js.map +1 -0
- package/FrameGraph/Passes/cullPass.d.ts +28 -0
- package/FrameGraph/Passes/cullPass.js +38 -0
- package/FrameGraph/Passes/cullPass.js.map +1 -0
- package/FrameGraph/Passes/pass.d.ts +14 -0
- package/FrameGraph/Passes/pass.js +20 -0
- package/FrameGraph/Passes/pass.js.map +1 -0
- package/FrameGraph/Passes/renderPass.d.ts +49 -0
- package/FrameGraph/Passes/renderPass.js +72 -0
- package/FrameGraph/Passes/renderPass.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/blackAndWhiteTask.d.ts +16 -0
- package/FrameGraph/Tasks/PostProcesses/blackAndWhiteTask.js +17 -0
- package/FrameGraph/Tasks/PostProcesses/blackAndWhiteTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/bloomMergeTask.d.ts +12 -0
- package/FrameGraph/Tasks/PostProcesses/bloomMergeTask.js +21 -0
- package/FrameGraph/Tasks/PostProcesses/bloomMergeTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/bloomTask.d.ts +54 -0
- package/FrameGraph/Tasks/PostProcesses/bloomTask.js +114 -0
- package/FrameGraph/Tasks/PostProcesses/bloomTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/blurTask.d.ts +17 -0
- package/FrameGraph/Tasks/PostProcesses/blurTask.js +24 -0
- package/FrameGraph/Tasks/PostProcesses/blurTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/circleOfConfusionTask.d.ts +30 -0
- package/FrameGraph/Tasks/PostProcesses/circleOfConfusionTask.js +35 -0
- package/FrameGraph/Tasks/PostProcesses/circleOfConfusionTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldBlurTask.d.ts +12 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldBlurTask.js +26 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldBlurTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldMergeTask.d.ts +12 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldMergeTask.js +29 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldMergeTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.d.ts +65 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js +134 -0
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/extractHighlightsTask.d.ts +16 -0
- package/FrameGraph/Tasks/PostProcesses/extractHighlightsTask.js +17 -0
- package/FrameGraph/Tasks/PostProcesses/extractHighlightsTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/postProcessTask.d.ts +41 -0
- package/FrameGraph/Tasks/PostProcesses/postProcessTask.js +64 -0
- package/FrameGraph/Tasks/PostProcesses/postProcessTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/cullObjectsTask.d.ts +28 -0
- package/FrameGraph/Tasks/Rendering/cullObjectsTask.js +52 -0
- package/FrameGraph/Tasks/Rendering/cullObjectsTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.d.ts +145 -0
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.js +259 -0
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/objectRendererTask.d.ts +66 -0
- package/FrameGraph/Tasks/Rendering/objectRendererTask.js +127 -0
- package/FrameGraph/Tasks/Rendering/objectRendererTask.js.map +1 -0
- package/FrameGraph/Tasks/Texture/clearTextureTask.d.ts +34 -0
- package/FrameGraph/Tasks/Texture/clearTextureTask.js +42 -0
- package/FrameGraph/Tasks/Texture/clearTextureTask.js.map +1 -0
- package/FrameGraph/Tasks/Texture/copyToBackbufferColorTask.d.ts +12 -0
- package/FrameGraph/Tasks/Texture/copyToBackbufferColorTask.js +23 -0
- package/FrameGraph/Tasks/Texture/copyToBackbufferColorTask.js.map +1 -0
- package/FrameGraph/Tasks/Texture/copyToTextureTask.d.ts +26 -0
- package/FrameGraph/Tasks/Texture/copyToTextureTask.js +31 -0
- package/FrameGraph/Tasks/Texture/copyToTextureTask.js.map +1 -0
- package/FrameGraph/Tasks/Texture/generateMipMapsTask.d.ts +22 -0
- package/FrameGraph/Tasks/Texture/generateMipMapsTask.js +34 -0
- package/FrameGraph/Tasks/Texture/generateMipMapsTask.js.map +1 -0
- package/FrameGraph/frameGraph.d.ts +143 -0
- package/FrameGraph/frameGraph.js +275 -0
- package/FrameGraph/frameGraph.js.map +1 -0
- package/FrameGraph/frameGraphContext.d.ts +5 -0
- package/FrameGraph/frameGraphContext.js +6 -0
- package/FrameGraph/frameGraphContext.js.map +1 -0
- package/FrameGraph/frameGraphObjectList.d.ts +15 -0
- package/FrameGraph/frameGraphObjectList.js +7 -0
- package/FrameGraph/frameGraphObjectList.js.map +1 -0
- package/FrameGraph/frameGraphRenderContext.d.ts +110 -0
- package/FrameGraph/frameGraphRenderContext.js +237 -0
- package/FrameGraph/frameGraphRenderContext.js.map +1 -0
- package/FrameGraph/frameGraphTask.d.ts +49 -0
- package/FrameGraph/frameGraphTask.js +117 -0
- package/FrameGraph/frameGraphTask.js.map +1 -0
- package/FrameGraph/frameGraphTextureManager.d.ts +50 -0
- package/FrameGraph/frameGraphTextureManager.js +277 -0
- package/FrameGraph/frameGraphTextureManager.js.map +1 -0
- package/FrameGraph/frameGraphTypes.d.ts +59 -0
- package/FrameGraph/frameGraphTypes.js +9 -0
- package/FrameGraph/frameGraphTypes.js.map +1 -0
- package/FrameGraph/index.d.ts +28 -0
- package/FrameGraph/index.js +30 -0
- package/FrameGraph/index.js.map +1 -0
- package/Gamepads/gamepadSceneComponent.d.ts +0 -1
- package/Gamepads/gamepadSceneComponent.js +1 -7
- package/Gamepads/gamepadSceneComponent.js.map +1 -1
- package/Gizmos/boundingBoxGizmo.d.ts +7 -0
- package/Gizmos/boundingBoxGizmo.js +19 -6
- package/Gizmos/boundingBoxGizmo.js.map +1 -1
- package/Inputs/scene.inputManager.d.ts +3 -1
- package/Inputs/scene.inputManager.js +20 -8
- package/Inputs/scene.inputManager.js.map +1 -1
- package/Layers/layer.d.ts +1 -1
- package/Layers/layer.js +1 -1
- package/Layers/layer.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.d.ts +4 -0
- package/Materials/PBR/pbrBaseMaterial.js +8 -0
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/Textures/dynamicTexture.d.ts +32 -2
- package/Materials/Textures/dynamicTexture.js +13 -18
- package/Materials/Textures/dynamicTexture.js.map +1 -1
- package/Materials/Textures/index.d.ts +1 -0
- package/Materials/Textures/index.js +1 -0
- package/Materials/Textures/index.js.map +1 -1
- package/Materials/Textures/mirrorTexture.js +0 -6
- package/Materials/Textures/mirrorTexture.js.map +1 -1
- package/Materials/Textures/multiRenderTarget.d.ts +20 -8
- package/Materials/Textures/multiRenderTarget.js +2 -0
- package/Materials/Textures/multiRenderTarget.js.map +1 -1
- package/Materials/Textures/renderTargetTexture.d.ts +8 -1
- package/Materials/Textures/renderTargetTexture.js +28 -10
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/Textures/textureCreationOptions.d.ts +20 -2
- package/Materials/Textures/textureCreationOptions.js +20 -1
- package/Materials/Textures/textureCreationOptions.js.map +1 -1
- package/Materials/effectRenderer.d.ts +132 -14
- package/Materials/effectRenderer.js +229 -33
- package/Materials/effectRenderer.js.map +1 -1
- package/Materials/index.d.ts +1 -0
- package/Materials/index.js +1 -0
- package/Materials/index.js.map +1 -1
- package/Materials/materialHelper.functions.js +2 -0
- package/Materials/materialHelper.functions.js.map +1 -1
- package/Materials/materialHelper.geometryrendering.d.ts +122 -0
- package/Materials/materialHelper.geometryrendering.js +259 -0
- package/Materials/materialHelper.geometryrendering.js.map +1 -0
- package/Materials/standardMaterial.d.ts +4 -0
- package/Materials/standardMaterial.js +8 -0
- package/Materials/standardMaterial.js.map +1 -1
- package/Maths/index.d.ts +1 -0
- package/Maths/index.js +1 -0
- package/Maths/index.js.map +1 -1
- package/Meshes/Builders/greasedLineBuilder.d.ts +1 -1
- package/Meshes/Node/Blocks/geometryOptimizeBlock.d.ts +22 -1
- package/Meshes/Node/Blocks/geometryOptimizeBlock.js +39 -0
- package/Meshes/Node/Blocks/geometryOptimizeBlock.js.map +1 -1
- package/Misc/copyTextureToTexture.d.ts +3 -2
- package/Misc/copyTextureToTexture.js +11 -5
- package/Misc/copyTextureToTexture.js.map +1 -1
- package/PostProcesses/blackAndWhitePostProcess.d.ts +5 -3
- package/PostProcesses/blackAndWhitePostProcess.js +24 -19
- package/PostProcesses/blackAndWhitePostProcess.js.map +1 -1
- package/PostProcesses/bloomEffect.d.ts +7 -5
- package/PostProcesses/bloomEffect.js +49 -23
- package/PostProcesses/bloomEffect.js.map +1 -1
- package/PostProcesses/bloomMergePostProcess.d.ts +5 -5
- package/PostProcesses/bloomMergePostProcess.js +28 -19
- package/PostProcesses/bloomMergePostProcess.js.map +1 -1
- package/PostProcesses/blurPostProcess.d.ts +7 -43
- package/PostProcesses/blurPostProcess.js +47 -185
- package/PostProcesses/blurPostProcess.js.map +1 -1
- package/PostProcesses/circleOfConfusionPostProcess.d.ts +13 -6
- package/PostProcesses/circleOfConfusionPostProcess.js +59 -38
- package/PostProcesses/circleOfConfusionPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldBlurPostProcess.d.ts +2 -6
- package/PostProcesses/depthOfFieldBlurPostProcess.js +14 -11
- package/PostProcesses/depthOfFieldBlurPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldEffect.d.ts +5 -2
- package/PostProcesses/depthOfFieldEffect.js +53 -45
- package/PostProcesses/depthOfFieldEffect.js.map +1 -1
- package/PostProcesses/depthOfFieldMergePostProcess.d.ts +0 -1
- package/PostProcesses/depthOfFieldMergePostProcess.js +18 -12
- package/PostProcesses/depthOfFieldMergePostProcess.js.map +1 -1
- package/PostProcesses/extractHighlightsPostProcess.d.ts +8 -4
- package/PostProcesses/extractHighlightsPostProcess.js +35 -22
- package/PostProcesses/extractHighlightsPostProcess.js.map +1 -1
- package/PostProcesses/index.d.ts +6 -0
- package/PostProcesses/index.js +6 -0
- package/PostProcesses/index.js.map +1 -1
- package/PostProcesses/postProcess.d.ts +15 -70
- package/PostProcesses/postProcess.js +80 -97
- package/PostProcesses/postProcess.js.map +1 -1
- package/PostProcesses/thinBlackAndWhitePostProcess.d.ts +28 -0
- package/PostProcesses/thinBlackAndWhitePostProcess.js +50 -0
- package/PostProcesses/thinBlackAndWhitePostProcess.js.map +1 -0
- package/PostProcesses/thinBloomEffect.d.ts +49 -0
- package/PostProcesses/thinBloomEffect.js +59 -0
- package/PostProcesses/thinBloomEffect.js.map +1 -0
- package/PostProcesses/thinBloomMergePostProcess.d.ts +15 -0
- package/PostProcesses/thinBloomMergePostProcess.js +38 -0
- package/PostProcesses/thinBloomMergePostProcess.js.map +1 -0
- package/PostProcesses/thinBlurPostProcess.d.ts +89 -0
- package/PostProcesses/thinBlurPostProcess.js +242 -0
- package/PostProcesses/thinBlurPostProcess.js.map +1 -0
- package/PostProcesses/thinCircleOfConfusionPostProcess.d.ts +62 -0
- package/PostProcesses/thinCircleOfConfusionPostProcess.js +81 -0
- package/PostProcesses/thinCircleOfConfusionPostProcess.js.map +1 -0
- package/PostProcesses/thinDepthOfFieldBlurPostProcess.d.ts +8 -0
- package/PostProcesses/thinDepthOfFieldBlurPostProcess.js +13 -0
- package/PostProcesses/thinDepthOfFieldBlurPostProcess.js.map +1 -0
- package/PostProcesses/thinDepthOfFieldEffect.d.ts +70 -0
- package/PostProcesses/thinDepthOfFieldEffect.js +115 -0
- package/PostProcesses/thinDepthOfFieldEffect.js.map +1 -0
- package/PostProcesses/thinDepthOfFieldMergePostProcess.d.ts +11 -0
- package/PostProcesses/thinDepthOfFieldMergePostProcess.js +30 -0
- package/PostProcesses/thinDepthOfFieldMergePostProcess.js.map +1 -0
- package/PostProcesses/thinExtractHighlightsPostProcess.d.ts +30 -0
- package/PostProcesses/thinExtractHighlightsPostProcess.js +55 -0
- package/PostProcesses/thinExtractHighlightsPostProcess.js.map +1 -0
- package/Rendering/depthPeelingRenderer.js +2 -2
- package/Rendering/depthPeelingRenderer.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObject.js +4 -4
- package/Rendering/fluidRenderer/fluidRenderingObject.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.js +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockPrePass.d.ts +5 -0
- package/Shaders/ShadersInclude/pbrBlockPrePass.js +75 -0
- package/Shaders/ShadersInclude/pbrBlockPrePass.js.map +1 -0
- package/Shaders/ShadersInclude/prePassVertex.js +1 -2
- package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
- package/Shaders/circleOfConfusion.fragment.js +9 -1
- package/Shaders/circleOfConfusion.fragment.js.map +1 -1
- package/Shaders/colorCorrection.fragment.js +1 -0
- package/Shaders/colorCorrection.fragment.js.map +1 -1
- package/Shaders/default.fragment.js +17 -25
- package/Shaders/default.fragment.js.map +1 -1
- package/Shaders/default.vertex.js +4 -6
- package/Shaders/default.vertex.js.map +1 -1
- package/Shaders/pbr.fragment.d.ts +1 -0
- package/Shaders/pbr.fragment.js +2 -74
- package/Shaders/pbr.fragment.js.map +1 -1
- package/Shaders/pbr.vertex.js +3 -3
- package/Shaders/pbr.vertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.d.ts +5 -0
- package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js +100 -0
- package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/prePassVertex.js +1 -2
- package/ShadersWGSL/ShadersInclude/prePassVertex.js.map +1 -1
- package/ShadersWGSL/background.vertex.js +1 -1
- package/ShadersWGSL/background.vertex.js.map +1 -1
- package/ShadersWGSL/circleOfConfusion.fragment.js +10 -2
- package/ShadersWGSL/circleOfConfusion.fragment.js.map +1 -1
- package/ShadersWGSL/default.fragment.js +20 -31
- package/ShadersWGSL/default.fragment.js.map +1 -1
- package/ShadersWGSL/default.vertex.js +4 -5
- package/ShadersWGSL/default.vertex.js.map +1 -1
- package/ShadersWGSL/glowMapGeneration.fragment.js +1 -1
- package/ShadersWGSL/glowMapGeneration.fragment.js.map +1 -1
- package/ShadersWGSL/glowMapGeneration.vertex.js +1 -1
- package/ShadersWGSL/glowMapGeneration.vertex.js.map +1 -1
- package/ShadersWGSL/pbr.fragment.d.ts +1 -0
- package/ShadersWGSL/pbr.fragment.js +2 -100
- package/ShadersWGSL/pbr.fragment.js.map +1 -1
- package/ShadersWGSL/pbr.vertex.js +4 -2
- package/ShadersWGSL/pbr.vertex.js.map +1 -1
- package/XR/features/WebXRRawCameraAccess.js +1 -1
- package/XR/features/WebXRRawCameraAccess.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.d.ts +19 -2
- package/scene.js +110 -13
- package/scene.js.map +1 -1
- package/sceneComponent.d.ts +0 -1
- package/sceneComponent.js +0 -1
- package/sceneComponent.js.map +1 -1
- package/types.d.ts +12 -0
- package/types.js.map +1 -1
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { __decorate } from "../../../../tslib.es6.js";
|
|
2
|
+
import { NodeRenderGraphBlock } from "../../nodeRenderGraphBlock.js";
|
|
3
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
4
|
+
import { NodeRenderGraphBlockConnectionPointTypes } from "../../Types/nodeRenderGraphTypes.js";
|
|
5
|
+
import { Color4 } from "../../../../Maths/math.color.js";
|
|
6
|
+
import { editableInPropertyPage } from "../../../../Decorators/nodeDecorator.js";
|
|
7
|
+
import { FrameGraphClearTextureTask } from "../../../Tasks/Texture/clearTextureTask.js";
|
|
8
|
+
/**
|
|
9
|
+
* Block used to clear a texture
|
|
10
|
+
*/
|
|
11
|
+
export class NodeRenderGraphClearBlock extends NodeRenderGraphBlock {
|
|
12
|
+
/**
|
|
13
|
+
* Gets the frame graph task associated with this block
|
|
14
|
+
*/
|
|
15
|
+
get task() {
|
|
16
|
+
return this._frameGraphTask;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Create a new NodeRenderGraphClearBlock
|
|
20
|
+
* @param name defines the block name
|
|
21
|
+
* @param frameGraph defines the hosting frame graph
|
|
22
|
+
* @param scene defines the hosting scene
|
|
23
|
+
*/
|
|
24
|
+
constructor(name, frameGraph, scene) {
|
|
25
|
+
super(name, frameGraph, scene);
|
|
26
|
+
this.registerInput("texture", NodeRenderGraphBlockConnectionPointTypes.Texture);
|
|
27
|
+
this.registerOutput("output", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);
|
|
28
|
+
this.texture.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAll);
|
|
29
|
+
this.output._typeConnectionSource = this.texture;
|
|
30
|
+
this._frameGraphTask = new FrameGraphClearTextureTask(name, frameGraph);
|
|
31
|
+
}
|
|
32
|
+
/** Gets or sets the clear color */
|
|
33
|
+
get color() {
|
|
34
|
+
return this._frameGraphTask.color;
|
|
35
|
+
}
|
|
36
|
+
set color(value) {
|
|
37
|
+
this._frameGraphTask.color = value;
|
|
38
|
+
}
|
|
39
|
+
/** Gets or sets a boolean indicating whether the color part of the texture should be cleared. */
|
|
40
|
+
get clearColor() {
|
|
41
|
+
return !!this._frameGraphTask.clearColor;
|
|
42
|
+
}
|
|
43
|
+
set clearColor(value) {
|
|
44
|
+
this._frameGraphTask.clearColor = value;
|
|
45
|
+
}
|
|
46
|
+
/** Gets or sets a boolean indicating whether the depth part of the texture should be cleared. */
|
|
47
|
+
get clearDepth() {
|
|
48
|
+
return !!this._frameGraphTask.clearDepth;
|
|
49
|
+
}
|
|
50
|
+
set clearDepth(value) {
|
|
51
|
+
this._frameGraphTask.clearDepth = value;
|
|
52
|
+
}
|
|
53
|
+
/** Gets or sets a boolean indicating whether the stencil part of the texture should be cleared. */
|
|
54
|
+
get clearStencil() {
|
|
55
|
+
return !!this._frameGraphTask.clearStencil;
|
|
56
|
+
}
|
|
57
|
+
set clearStencil(value) {
|
|
58
|
+
this._frameGraphTask.clearStencil = value;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Gets the current class name
|
|
62
|
+
* @returns the class name
|
|
63
|
+
*/
|
|
64
|
+
getClassName() {
|
|
65
|
+
return "NodeRenderGraphClearBlock";
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Gets the texture input component
|
|
69
|
+
*/
|
|
70
|
+
get texture() {
|
|
71
|
+
return this._inputs[0];
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Gets the output component
|
|
75
|
+
*/
|
|
76
|
+
get output() {
|
|
77
|
+
return this._outputs[0];
|
|
78
|
+
}
|
|
79
|
+
_buildBlock(state) {
|
|
80
|
+
super._buildBlock(state);
|
|
81
|
+
this._frameGraphTask.name = this.name;
|
|
82
|
+
this._propagateInputValueToOutput(this.texture, this.output);
|
|
83
|
+
const textureConnectedPoint = this.texture.connectedPoint;
|
|
84
|
+
if (textureConnectedPoint) {
|
|
85
|
+
this._frameGraphTask.destinationTexture = textureConnectedPoint.value;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
_dumpPropertiesCode() {
|
|
89
|
+
const codes = [];
|
|
90
|
+
codes.push(`${this._codeVariableName}.color = new BABYLON.Color4(${this.color.r}, ${this.color.g}, ${this.color.b}, ${this.color.a});`);
|
|
91
|
+
codes.push(`${this._codeVariableName}.clearColor = ${this.clearColor};`);
|
|
92
|
+
codes.push(`${this._codeVariableName}.clearDepth = ${this.clearDepth};`);
|
|
93
|
+
codes.push(`${this._codeVariableName}.clearStencil = ${this.clearStencil};`);
|
|
94
|
+
return super._dumpPropertiesCode() + codes.join("\n");
|
|
95
|
+
}
|
|
96
|
+
serialize() {
|
|
97
|
+
const serializationObject = super.serialize();
|
|
98
|
+
serializationObject.color = this.color.asArray();
|
|
99
|
+
serializationObject.clearColor = this.clearColor;
|
|
100
|
+
serializationObject.clearDepth = this.clearDepth;
|
|
101
|
+
serializationObject.clearStencil = this.clearStencil;
|
|
102
|
+
return serializationObject;
|
|
103
|
+
}
|
|
104
|
+
_deserialize(serializationObject) {
|
|
105
|
+
super._deserialize(serializationObject);
|
|
106
|
+
this.color = Color4.FromArray(serializationObject.color);
|
|
107
|
+
this.clearColor = serializationObject.clearColor;
|
|
108
|
+
this.clearDepth = serializationObject.clearDepth;
|
|
109
|
+
this.clearStencil = serializationObject.clearStencil;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
__decorate([
|
|
113
|
+
editableInPropertyPage("Color", 5 /* PropertyTypeForEdition.Color4 */)
|
|
114
|
+
], NodeRenderGraphClearBlock.prototype, "color", null);
|
|
115
|
+
__decorate([
|
|
116
|
+
editableInPropertyPage("Clear color", 0 /* PropertyTypeForEdition.Boolean */)
|
|
117
|
+
], NodeRenderGraphClearBlock.prototype, "clearColor", null);
|
|
118
|
+
__decorate([
|
|
119
|
+
editableInPropertyPage("Clear depth", 0 /* PropertyTypeForEdition.Boolean */)
|
|
120
|
+
], NodeRenderGraphClearBlock.prototype, "clearDepth", null);
|
|
121
|
+
__decorate([
|
|
122
|
+
editableInPropertyPage("Clear stencil", 0 /* PropertyTypeForEdition.Boolean */)
|
|
123
|
+
], NodeRenderGraphClearBlock.prototype, "clearStencil", null);
|
|
124
|
+
RegisterClass("BABYLON.NodeRenderGraphClearBlock", NodeRenderGraphClearBlock);
|
|
125
|
+
//# sourceMappingURL=clearBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clearBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FrameGraph/Node/Blocks/Textures/clearBlock.ts"],"names":[],"mappings":"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","sourcesContent":["// eslint-disable-next-line import/no-internal-modules\r\nimport type { NodeRenderGraphConnectionPoint, Scene, FrameGraphTextureHandle, FrameGraph, NodeRenderGraphBuildState } from \"core/index\";\r\nimport { NodeRenderGraphBlock } from \"../../nodeRenderGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport { NodeRenderGraphBlockConnectionPointTypes } from \"../../Types/nodeRenderGraphTypes\";\r\nimport { Color4 } from \"../../../../Maths/math.color\";\r\nimport { editableInPropertyPage, PropertyTypeForEdition } from \"../../../../Decorators/nodeDecorator\";\r\nimport { FrameGraphClearTextureTask } from \"../../../Tasks/Texture/clearTextureTask\";\r\n\r\n/**\r\n * Block used to clear a texture\r\n */\r\nexport class NodeRenderGraphClearBlock extends NodeRenderGraphBlock {\r\n protected override _frameGraphTask: FrameGraphClearTextureTask;\r\n\r\n /**\r\n * Gets the frame graph task associated with this block\r\n */\r\n public override get task() {\r\n return this._frameGraphTask;\r\n }\r\n\r\n /**\r\n * Create a new NodeRenderGraphClearBlock\r\n * @param name defines the block name\r\n * @param frameGraph defines the hosting frame graph\r\n * @param scene defines the hosting scene\r\n */\r\n public constructor(name: string, frameGraph: FrameGraph, scene: Scene) {\r\n super(name, frameGraph, scene);\r\n\r\n this.registerInput(\"texture\", NodeRenderGraphBlockConnectionPointTypes.Texture);\r\n this.registerOutput(\"output\", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this.texture.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAll);\r\n this.output._typeConnectionSource = this.texture;\r\n\r\n this._frameGraphTask = new FrameGraphClearTextureTask(name, frameGraph);\r\n }\r\n\r\n /** Gets or sets the clear color */\r\n @editableInPropertyPage(\"Color\", PropertyTypeForEdition.Color4)\r\n public get color(): Color4 {\r\n return this._frameGraphTask.color;\r\n }\r\n\r\n public set color(value: Color4) {\r\n this._frameGraphTask.color = value;\r\n }\r\n\r\n /** Gets or sets a boolean indicating whether the color part of the texture should be cleared. */\r\n @editableInPropertyPage(\"Clear color\", PropertyTypeForEdition.Boolean)\r\n public get clearColor(): boolean {\r\n return !!this._frameGraphTask.clearColor;\r\n }\r\n\r\n public set clearColor(value: boolean) {\r\n this._frameGraphTask.clearColor = value;\r\n }\r\n\r\n /** Gets or sets a boolean indicating whether the depth part of the texture should be cleared. */\r\n @editableInPropertyPage(\"Clear depth\", PropertyTypeForEdition.Boolean)\r\n public get clearDepth(): boolean {\r\n return !!this._frameGraphTask.clearDepth;\r\n }\r\n\r\n public set clearDepth(value: boolean) {\r\n this._frameGraphTask.clearDepth = value;\r\n }\r\n\r\n /** Gets or sets a boolean indicating whether the stencil part of the texture should be cleared. */\r\n @editableInPropertyPage(\"Clear stencil\", PropertyTypeForEdition.Boolean)\r\n public get clearStencil(): boolean {\r\n return !!this._frameGraphTask.clearStencil;\r\n }\r\n\r\n public set clearStencil(value: boolean) {\r\n this._frameGraphTask.clearStencil = value;\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public override getClassName() {\r\n return \"NodeRenderGraphClearBlock\";\r\n }\r\n /**\r\n * Gets the texture input component\r\n */\r\n public get texture(): NodeRenderGraphConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeRenderGraphConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected override _buildBlock(state: NodeRenderGraphBuildState) {\r\n super._buildBlock(state);\r\n\r\n this._frameGraphTask.name = this.name;\r\n\r\n this._propagateInputValueToOutput(this.texture, this.output);\r\n\r\n const textureConnectedPoint = this.texture.connectedPoint;\r\n if (textureConnectedPoint) {\r\n this._frameGraphTask.destinationTexture = textureConnectedPoint.value as FrameGraphTextureHandle;\r\n }\r\n }\r\n\r\n protected override _dumpPropertiesCode() {\r\n const codes: string[] = [];\r\n codes.push(`${this._codeVariableName}.color = new BABYLON.Color4(${this.color.r}, ${this.color.g}, ${this.color.b}, ${this.color.a});`);\r\n codes.push(`${this._codeVariableName}.clearColor = ${this.clearColor};`);\r\n codes.push(`${this._codeVariableName}.clearDepth = ${this.clearDepth};`);\r\n codes.push(`${this._codeVariableName}.clearStencil = ${this.clearStencil};`);\r\n return super._dumpPropertiesCode() + codes.join(\"\\n\");\r\n }\r\n\r\n public override serialize(): any {\r\n const serializationObject = super.serialize();\r\n serializationObject.color = this.color.asArray();\r\n serializationObject.clearColor = this.clearColor;\r\n serializationObject.clearDepth = this.clearDepth;\r\n serializationObject.clearStencil = this.clearStencil;\r\n return serializationObject;\r\n }\r\n\r\n public override _deserialize(serializationObject: any) {\r\n super._deserialize(serializationObject);\r\n this.color = Color4.FromArray(serializationObject.color);\r\n this.clearColor = serializationObject.clearColor;\r\n this.clearDepth = serializationObject.clearDepth;\r\n this.clearStencil = serializationObject.clearStencil;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.NodeRenderGraphClearBlock\", NodeRenderGraphClearBlock);\r\n"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { NodeRenderGraphConnectionPoint, Scene, FrameGraph, NodeRenderGraphBuildState } from "../../../../index.js";
|
|
2
|
+
import { NodeRenderGraphBlock } from "../../nodeRenderGraphBlock";
|
|
3
|
+
import { FrameGraphCopyToTextureTask } from "../../../Tasks/Texture/copyToTextureTask";
|
|
4
|
+
/**
|
|
5
|
+
* Block used to copy a texture
|
|
6
|
+
*/
|
|
7
|
+
export declare class NodeRenderGraphCopyTextureBlock extends NodeRenderGraphBlock {
|
|
8
|
+
protected _frameGraphTask: FrameGraphCopyToTextureTask;
|
|
9
|
+
/**
|
|
10
|
+
* Gets the frame graph task associated with this block
|
|
11
|
+
*/
|
|
12
|
+
get task(): FrameGraphCopyToTextureTask;
|
|
13
|
+
/**
|
|
14
|
+
* Create a new NodeRenderGraphCopyTextureBlock
|
|
15
|
+
* @param name defines the block name
|
|
16
|
+
* @param frameGraph defines the hosting frame graph
|
|
17
|
+
* @param scene defines the hosting scene
|
|
18
|
+
*/
|
|
19
|
+
constructor(name: string, frameGraph: FrameGraph, scene: Scene);
|
|
20
|
+
/**
|
|
21
|
+
* Gets the current class name
|
|
22
|
+
* @returns the class name
|
|
23
|
+
*/
|
|
24
|
+
getClassName(): string;
|
|
25
|
+
/**
|
|
26
|
+
* Gets the source input component
|
|
27
|
+
*/
|
|
28
|
+
get source(): NodeRenderGraphConnectionPoint;
|
|
29
|
+
/**
|
|
30
|
+
* Gets the destination input component
|
|
31
|
+
*/
|
|
32
|
+
get destination(): NodeRenderGraphConnectionPoint;
|
|
33
|
+
/**
|
|
34
|
+
* Gets the output component
|
|
35
|
+
*/
|
|
36
|
+
get output(): NodeRenderGraphConnectionPoint;
|
|
37
|
+
protected _buildBlock(state: NodeRenderGraphBuildState): void;
|
|
38
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { NodeRenderGraphBlock } from "../../nodeRenderGraphBlock.js";
|
|
2
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
3
|
+
import { NodeRenderGraphBlockConnectionPointTypes } from "../../Types/nodeRenderGraphTypes.js";
|
|
4
|
+
import { FrameGraphCopyToTextureTask } from "../../../Tasks/Texture/copyToTextureTask.js";
|
|
5
|
+
/**
|
|
6
|
+
* Block used to copy a texture
|
|
7
|
+
*/
|
|
8
|
+
export class NodeRenderGraphCopyTextureBlock extends NodeRenderGraphBlock {
|
|
9
|
+
/**
|
|
10
|
+
* Gets the frame graph task associated with this block
|
|
11
|
+
*/
|
|
12
|
+
get task() {
|
|
13
|
+
return this._frameGraphTask;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Create a new NodeRenderGraphCopyTextureBlock
|
|
17
|
+
* @param name defines the block name
|
|
18
|
+
* @param frameGraph defines the hosting frame graph
|
|
19
|
+
* @param scene defines the hosting scene
|
|
20
|
+
*/
|
|
21
|
+
constructor(name, frameGraph, scene) {
|
|
22
|
+
super(name, frameGraph, scene);
|
|
23
|
+
this.registerInput("source", NodeRenderGraphBlockConnectionPointTypes.Texture);
|
|
24
|
+
this.registerInput("destination", NodeRenderGraphBlockConnectionPointTypes.Texture);
|
|
25
|
+
this.registerOutput("output", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);
|
|
26
|
+
this.source.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAllButBackBuffer);
|
|
27
|
+
this.destination.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAll);
|
|
28
|
+
this.output._typeConnectionSource = this.destination;
|
|
29
|
+
this._frameGraphTask = new FrameGraphCopyToTextureTask(name, frameGraph);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Gets the current class name
|
|
33
|
+
* @returns the class name
|
|
34
|
+
*/
|
|
35
|
+
getClassName() {
|
|
36
|
+
return "NodeRenderGraphCopyTextureBlock";
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Gets the source input component
|
|
40
|
+
*/
|
|
41
|
+
get source() {
|
|
42
|
+
return this._inputs[0];
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Gets the destination input component
|
|
46
|
+
*/
|
|
47
|
+
get destination() {
|
|
48
|
+
return this._inputs[1];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Gets the output component
|
|
52
|
+
*/
|
|
53
|
+
get output() {
|
|
54
|
+
return this._outputs[0];
|
|
55
|
+
}
|
|
56
|
+
_buildBlock(state) {
|
|
57
|
+
super._buildBlock(state);
|
|
58
|
+
this._frameGraphTask.name = this.name;
|
|
59
|
+
this.output.value = this._frameGraphTask.outputTexture; // the value of the output connection point is the "output" texture of the task
|
|
60
|
+
const sourceConnectedPoint = this.source.connectedPoint;
|
|
61
|
+
if (sourceConnectedPoint) {
|
|
62
|
+
this._frameGraphTask.sourceTexture = sourceConnectedPoint.value;
|
|
63
|
+
}
|
|
64
|
+
const destinationConnectedPoint = this.destination.connectedPoint;
|
|
65
|
+
if (destinationConnectedPoint) {
|
|
66
|
+
this._frameGraphTask.destinationTexture = destinationConnectedPoint.value;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
RegisterClass("BABYLON.NodeRenderGraphCopyTextureBlock", NodeRenderGraphCopyTextureBlock);
|
|
71
|
+
//# sourceMappingURL=copyTextureBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copyTextureBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FrameGraph/Node/Blocks/Textures/copyTextureBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,wCAAwC,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AAEvF;;GAEG;AACH,MAAM,OAAO,+BAAgC,SAAQ,oBAAoB;IAGrE;;OAEG;IACH,IAAoB,IAAI;QACpB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,YAAmB,IAAY,EAAE,UAAsB,EAAE,KAAY;QACjE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,wCAAwC,CAAC,OAAO,CAAC,CAAC;QAC/E,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,wCAAwC,CAAC,OAAO,CAAC,CAAC;QACpF,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,wCAAwC,CAAC,YAAY,CAAC,CAAC;QAErF,IAAI,CAAC,MAAM,CAAC,+BAA+B,CAAC,wCAAwC,CAAC,uBAAuB,CAAC,CAAC;QAC9G,IAAI,CAAC,WAAW,CAAC,+BAA+B,CAAC,wCAAwC,CAAC,UAAU,CAAC,CAAC;QACtG,IAAI,CAAC,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC,WAAW,CAAC;QAErD,IAAI,CAAC,eAAe,GAAG,IAAI,2BAA2B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC7E,CAAC;IAED;;;OAGG;IACa,YAAY;QACxB,OAAO,iCAAiC,CAAC;IAC7C,CAAC;IACD;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,WAAW;QAClB,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;IAEkB,WAAW,CAAC,KAAgC;QAC3D,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAEtC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,+EAA+E;QAEvI,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QACxD,IAAI,oBAAoB,EAAE;YACtB,IAAI,CAAC,eAAe,CAAC,aAAa,GAAG,oBAAoB,CAAC,KAAgC,CAAC;SAC9F;QAED,MAAM,yBAAyB,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;QAClE,IAAI,yBAAyB,EAAE;YAC3B,IAAI,CAAC,eAAe,CAAC,kBAAkB,GAAG,yBAAyB,CAAC,KAAgC,CAAC;SACxG;IACL,CAAC;CACJ;AAED,aAAa,CAAC,yCAAyC,EAAE,+BAA+B,CAAC,CAAC","sourcesContent":["// eslint-disable-next-line import/no-internal-modules\r\nimport type { NodeRenderGraphConnectionPoint, Scene, FrameGraphTextureHandle, FrameGraph, NodeRenderGraphBuildState } from \"core/index\";\r\nimport { NodeRenderGraphBlock } from \"../../nodeRenderGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport { NodeRenderGraphBlockConnectionPointTypes } from \"../../Types/nodeRenderGraphTypes\";\r\nimport { FrameGraphCopyToTextureTask } from \"../../../Tasks/Texture/copyToTextureTask\";\r\n\r\n/**\r\n * Block used to copy a texture\r\n */\r\nexport class NodeRenderGraphCopyTextureBlock extends NodeRenderGraphBlock {\r\n protected override _frameGraphTask: FrameGraphCopyToTextureTask;\r\n\r\n /**\r\n * Gets the frame graph task associated with this block\r\n */\r\n public override get task() {\r\n return this._frameGraphTask;\r\n }\r\n\r\n /**\r\n * Create a new NodeRenderGraphCopyTextureBlock\r\n * @param name defines the block name\r\n * @param frameGraph defines the hosting frame graph\r\n * @param scene defines the hosting scene\r\n */\r\n public constructor(name: string, frameGraph: FrameGraph, scene: Scene) {\r\n super(name, frameGraph, scene);\r\n\r\n this.registerInput(\"source\", NodeRenderGraphBlockConnectionPointTypes.Texture);\r\n this.registerInput(\"destination\", NodeRenderGraphBlockConnectionPointTypes.Texture);\r\n this.registerOutput(\"output\", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this.source.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAllButBackBuffer);\r\n this.destination.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAll);\r\n this.output._typeConnectionSource = this.destination;\r\n\r\n this._frameGraphTask = new FrameGraphCopyToTextureTask(name, frameGraph);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public override getClassName() {\r\n return \"NodeRenderGraphCopyTextureBlock\";\r\n }\r\n /**\r\n * Gets the source input component\r\n */\r\n public get source(): NodeRenderGraphConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the destination input component\r\n */\r\n public get destination(): NodeRenderGraphConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeRenderGraphConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected override _buildBlock(state: NodeRenderGraphBuildState) {\r\n super._buildBlock(state);\r\n\r\n this._frameGraphTask.name = this.name;\r\n\r\n this.output.value = this._frameGraphTask.outputTexture; // the value of the output connection point is the \"output\" texture of the task\r\n\r\n const sourceConnectedPoint = this.source.connectedPoint;\r\n if (sourceConnectedPoint) {\r\n this._frameGraphTask.sourceTexture = sourceConnectedPoint.value as FrameGraphTextureHandle;\r\n }\r\n\r\n const destinationConnectedPoint = this.destination.connectedPoint;\r\n if (destinationConnectedPoint) {\r\n this._frameGraphTask.destinationTexture = destinationConnectedPoint.value as FrameGraphTextureHandle;\r\n }\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.NodeRenderGraphCopyTextureBlock\", NodeRenderGraphCopyTextureBlock);\r\n"]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { NodeRenderGraphConnectionPoint, Scene, FrameGraph, NodeRenderGraphBuildState } from "../../../../index.js";
|
|
2
|
+
import { NodeRenderGraphBlock } from "../../nodeRenderGraphBlock";
|
|
3
|
+
import { FrameGraphGenerateMipMapsTask } from "../../../Tasks/Texture/generateMipMapsTask";
|
|
4
|
+
/**
|
|
5
|
+
* Block used to generate mipmaps for a texture
|
|
6
|
+
*/
|
|
7
|
+
export declare class NodeRenderGraphGenerateMipmapsBlock extends NodeRenderGraphBlock {
|
|
8
|
+
protected _frameGraphTask: FrameGraphGenerateMipMapsTask;
|
|
9
|
+
/**
|
|
10
|
+
* Gets the frame graph task associated with this block
|
|
11
|
+
*/
|
|
12
|
+
get task(): FrameGraphGenerateMipMapsTask;
|
|
13
|
+
/**
|
|
14
|
+
* Create a new NodeRenderGraphGenerateMipmapsBlock
|
|
15
|
+
* @param name defines the block name
|
|
16
|
+
* @param frameGraph defines the hosting frame graph
|
|
17
|
+
* @param scene defines the hosting scene
|
|
18
|
+
*/
|
|
19
|
+
constructor(name: string, frameGraph: FrameGraph, scene: Scene);
|
|
20
|
+
/**
|
|
21
|
+
* Gets the current class name
|
|
22
|
+
* @returns the class name
|
|
23
|
+
*/
|
|
24
|
+
getClassName(): string;
|
|
25
|
+
/**
|
|
26
|
+
* Gets the texture input component
|
|
27
|
+
*/
|
|
28
|
+
get texture(): NodeRenderGraphConnectionPoint;
|
|
29
|
+
/**
|
|
30
|
+
* Gets the output component
|
|
31
|
+
*/
|
|
32
|
+
get output(): NodeRenderGraphConnectionPoint;
|
|
33
|
+
protected _buildBlock(state: NodeRenderGraphBuildState): void;
|
|
34
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { NodeRenderGraphBlock } from "../../nodeRenderGraphBlock.js";
|
|
2
|
+
import { RegisterClass } from "../../../../Misc/typeStore.js";
|
|
3
|
+
import { NodeRenderGraphBlockConnectionPointTypes } from "../../Types/nodeRenderGraphTypes.js";
|
|
4
|
+
import { FrameGraphGenerateMipMapsTask } from "../../../Tasks/Texture/generateMipMapsTask.js";
|
|
5
|
+
/**
|
|
6
|
+
* Block used to generate mipmaps for a texture
|
|
7
|
+
*/
|
|
8
|
+
export class NodeRenderGraphGenerateMipmapsBlock extends NodeRenderGraphBlock {
|
|
9
|
+
/**
|
|
10
|
+
* Gets the frame graph task associated with this block
|
|
11
|
+
*/
|
|
12
|
+
get task() {
|
|
13
|
+
return this._frameGraphTask;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Create a new NodeRenderGraphGenerateMipmapsBlock
|
|
17
|
+
* @param name defines the block name
|
|
18
|
+
* @param frameGraph defines the hosting frame graph
|
|
19
|
+
* @param scene defines the hosting scene
|
|
20
|
+
*/
|
|
21
|
+
constructor(name, frameGraph, scene) {
|
|
22
|
+
super(name, frameGraph, scene);
|
|
23
|
+
this.registerInput("texture", NodeRenderGraphBlockConnectionPointTypes.Texture);
|
|
24
|
+
this.registerOutput("output", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);
|
|
25
|
+
this.texture.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAllButBackBuffer);
|
|
26
|
+
this.output._typeConnectionSource = this.texture;
|
|
27
|
+
this._frameGraphTask = new FrameGraphGenerateMipMapsTask(name, frameGraph);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Gets the current class name
|
|
31
|
+
* @returns the class name
|
|
32
|
+
*/
|
|
33
|
+
getClassName() {
|
|
34
|
+
return "NodeRenderGraphGenerateMipmapsBlock";
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Gets the texture input component
|
|
38
|
+
*/
|
|
39
|
+
get texture() {
|
|
40
|
+
return this._inputs[0];
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Gets the output component
|
|
44
|
+
*/
|
|
45
|
+
get output() {
|
|
46
|
+
return this._outputs[0];
|
|
47
|
+
}
|
|
48
|
+
_buildBlock(state) {
|
|
49
|
+
super._buildBlock(state);
|
|
50
|
+
this._frameGraphTask.name = this.name;
|
|
51
|
+
this._propagateInputValueToOutput(this.texture, this.output);
|
|
52
|
+
const textureConnectedPoint = this.texture.connectedPoint;
|
|
53
|
+
if (textureConnectedPoint) {
|
|
54
|
+
this._frameGraphTask.destinationTexture = textureConnectedPoint.value;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
RegisterClass("BABYLON.NodeRenderGraphGenerateMipmapsBlock", NodeRenderGraphGenerateMipmapsBlock);
|
|
59
|
+
//# sourceMappingURL=generateMipmapsBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateMipmapsBlock.js","sourceRoot":"","sources":["../../../../../../../dev/core/src/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,wCAAwC,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAE3F;;GAEG;AACH,MAAM,OAAO,mCAAoC,SAAQ,oBAAoB;IAGzE;;OAEG;IACH,IAAoB,IAAI;QACpB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,YAAmB,IAAY,EAAE,UAAsB,EAAE,KAAY;QACjE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,wCAAwC,CAAC,OAAO,CAAC,CAAC;QAChF,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,wCAAwC,CAAC,YAAY,CAAC,CAAC;QAErF,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,wCAAwC,CAAC,uBAAuB,CAAC,CAAC;QAC/G,IAAI,CAAC,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC;QAEjD,IAAI,CAAC,eAAe,GAAG,IAAI,6BAA6B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/E,CAAC;IAED;;;OAGG;IACa,YAAY;QACxB,OAAO,qCAAqC,CAAC;IACjD,CAAC;IACD;;OAEG;IACH,IAAW,OAAO;QACd,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;IAEkB,WAAW,CAAC,KAAgC;QAC3D,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAEtC,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE7D,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAC1D,IAAI,qBAAqB,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,KAAgC,CAAC;SACpG;IACL,CAAC;CACJ;AAED,aAAa,CAAC,6CAA6C,EAAE,mCAAmC,CAAC,CAAC","sourcesContent":["// eslint-disable-next-line import/no-internal-modules\r\nimport type { NodeRenderGraphConnectionPoint, Scene, FrameGraphTextureHandle, FrameGraph, NodeRenderGraphBuildState } from \"core/index\";\r\nimport { NodeRenderGraphBlock } from \"../../nodeRenderGraphBlock\";\r\nimport { RegisterClass } from \"../../../../Misc/typeStore\";\r\nimport { NodeRenderGraphBlockConnectionPointTypes } from \"../../Types/nodeRenderGraphTypes\";\r\nimport { FrameGraphGenerateMipMapsTask } from \"../../../Tasks/Texture/generateMipMapsTask\";\r\n\r\n/**\r\n * Block used to generate mipmaps for a texture\r\n */\r\nexport class NodeRenderGraphGenerateMipmapsBlock extends NodeRenderGraphBlock {\r\n protected override _frameGraphTask: FrameGraphGenerateMipMapsTask;\r\n\r\n /**\r\n * Gets the frame graph task associated with this block\r\n */\r\n public override get task() {\r\n return this._frameGraphTask;\r\n }\r\n\r\n /**\r\n * Create a new NodeRenderGraphGenerateMipmapsBlock\r\n * @param name defines the block name\r\n * @param frameGraph defines the hosting frame graph\r\n * @param scene defines the hosting scene\r\n */\r\n public constructor(name: string, frameGraph: FrameGraph, scene: Scene) {\r\n super(name, frameGraph, scene);\r\n\r\n this.registerInput(\"texture\", NodeRenderGraphBlockConnectionPointTypes.Texture);\r\n this.registerOutput(\"output\", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this.texture.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAllButBackBuffer);\r\n this.output._typeConnectionSource = this.texture;\r\n\r\n this._frameGraphTask = new FrameGraphGenerateMipMapsTask(name, frameGraph);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public override getClassName() {\r\n return \"NodeRenderGraphGenerateMipmapsBlock\";\r\n }\r\n /**\r\n * Gets the texture input component\r\n */\r\n public get texture(): NodeRenderGraphConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeRenderGraphConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected override _buildBlock(state: NodeRenderGraphBuildState) {\r\n super._buildBlock(state);\r\n\r\n this._frameGraphTask.name = this.name;\r\n\r\n this._propagateInputValueToOutput(this.texture, this.output);\r\n\r\n const textureConnectedPoint = this.texture.connectedPoint;\r\n if (textureConnectedPoint) {\r\n this._frameGraphTask.destinationTexture = textureConnectedPoint.value as FrameGraphTextureHandle;\r\n }\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.NodeRenderGraphGenerateMipmapsBlock\", NodeRenderGraphGenerateMipmapsBlock);\r\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { NodeRenderGraphConnectionPoint, Scene, FrameGraph, NodeRenderGraphBuildState } from "../../../index.js";
|
|
2
|
+
import { NodeRenderGraphBlock } from "../nodeRenderGraphBlock";
|
|
3
|
+
/**
|
|
4
|
+
* Block used as a pass through
|
|
5
|
+
*/
|
|
6
|
+
export declare class NodeRenderGraphElbowBlock extends NodeRenderGraphBlock {
|
|
7
|
+
/**
|
|
8
|
+
* Creates a new NodeRenderGraphElbowBlock
|
|
9
|
+
* @param name defines the block name
|
|
10
|
+
* @param frameGraph defines the hosting frame graph
|
|
11
|
+
* @param scene defines the hosting scene
|
|
12
|
+
*/
|
|
13
|
+
constructor(name: string, frameGraph: FrameGraph, scene: Scene);
|
|
14
|
+
/**
|
|
15
|
+
* Gets the current class name
|
|
16
|
+
* @returns the class name
|
|
17
|
+
*/
|
|
18
|
+
getClassName(): string;
|
|
19
|
+
/**
|
|
20
|
+
* Gets the input component
|
|
21
|
+
*/
|
|
22
|
+
get input(): NodeRenderGraphConnectionPoint;
|
|
23
|
+
/**
|
|
24
|
+
* Gets the output component
|
|
25
|
+
*/
|
|
26
|
+
get output(): NodeRenderGraphConnectionPoint;
|
|
27
|
+
protected _buildBlock(state: NodeRenderGraphBuildState): void;
|
|
28
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { RegisterClass } from "../../../Misc/typeStore.js";
|
|
2
|
+
import { NodeRenderGraphBlockConnectionPointTypes } from "../Types/nodeRenderGraphTypes.js";
|
|
3
|
+
import { NodeRenderGraphBlock } from "../nodeRenderGraphBlock.js";
|
|
4
|
+
/**
|
|
5
|
+
* Block used as a pass through
|
|
6
|
+
*/
|
|
7
|
+
export class NodeRenderGraphElbowBlock extends NodeRenderGraphBlock {
|
|
8
|
+
/**
|
|
9
|
+
* Creates a new NodeRenderGraphElbowBlock
|
|
10
|
+
* @param name defines the block name
|
|
11
|
+
* @param frameGraph defines the hosting frame graph
|
|
12
|
+
* @param scene defines the hosting scene
|
|
13
|
+
*/
|
|
14
|
+
constructor(name, frameGraph, scene) {
|
|
15
|
+
super(name, frameGraph, scene);
|
|
16
|
+
this.registerInput("input", NodeRenderGraphBlockConnectionPointTypes.AutoDetect);
|
|
17
|
+
this.registerOutput("output", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);
|
|
18
|
+
this._outputs[0]._typeConnectionSource = this._inputs[0];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Gets the current class name
|
|
22
|
+
* @returns the class name
|
|
23
|
+
*/
|
|
24
|
+
getClassName() {
|
|
25
|
+
return "NodeRenderGraphElbowBlock";
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Gets the input component
|
|
29
|
+
*/
|
|
30
|
+
get input() {
|
|
31
|
+
return this._inputs[0];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Gets the output component
|
|
35
|
+
*/
|
|
36
|
+
get output() {
|
|
37
|
+
return this._outputs[0];
|
|
38
|
+
}
|
|
39
|
+
_buildBlock(state) {
|
|
40
|
+
super._buildBlock(state);
|
|
41
|
+
const output = this._outputs[0];
|
|
42
|
+
const input = this._inputs[0];
|
|
43
|
+
this._propagateInputValueToOutput(input, output);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
RegisterClass("BABYLON.NodeRenderGraphElbowBlock", NodeRenderGraphElbowBlock);
|
|
47
|
+
//# sourceMappingURL=elbowBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elbowBlock.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FrameGraph/Node/Blocks/elbowBlock.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,wCAAwC,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,oBAAoB;IAC/D;;;;;OAKG;IACH,YAAmB,IAAY,EAAE,UAAsB,EAAE,KAAY;QACjE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,wCAAwC,CAAC,UAAU,CAAC,CAAC;QACjF,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,wCAAwC,CAAC,YAAY,CAAC,CAAC;QAErF,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACa,YAAY;QACxB,OAAO,2BAA2B,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAW,KAAK;QACZ,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;IAEkB,WAAW,CAAC,KAAgC;QAC3D,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9B,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;CACJ;AAED,aAAa,CAAC,mCAAmC,EAAE,yBAAyB,CAAC,CAAC","sourcesContent":["// eslint-disable-next-line import/no-internal-modules\r\nimport type { NodeRenderGraphConnectionPoint, Scene, FrameGraph, NodeRenderGraphBuildState } from \"core/index\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\nimport { NodeRenderGraphBlockConnectionPointTypes } from \"../Types/nodeRenderGraphTypes\";\r\nimport { NodeRenderGraphBlock } from \"../nodeRenderGraphBlock\";\r\n\r\n/**\r\n * Block used as a pass through\r\n */\r\nexport class NodeRenderGraphElbowBlock extends NodeRenderGraphBlock {\r\n /**\r\n * Creates a new NodeRenderGraphElbowBlock\r\n * @param name defines the block name\r\n * @param frameGraph defines the hosting frame graph\r\n * @param scene defines the hosting scene\r\n */\r\n public constructor(name: string, frameGraph: FrameGraph, scene: Scene) {\r\n super(name, frameGraph, scene);\r\n\r\n this.registerInput(\"input\", NodeRenderGraphBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[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 override getClassName() {\r\n return \"NodeRenderGraphElbowBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeRenderGraphConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeRenderGraphConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected override _buildBlock(state: NodeRenderGraphBuildState) {\r\n super._buildBlock(state);\r\n\r\n const output = this._outputs[0];\r\n const input = this._inputs[0];\r\n\r\n this._propagateInputValueToOutput(input, output);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.NodeRenderGraphElbowBlock\", NodeRenderGraphElbowBlock);\r\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export * from "./elbowBlock";
|
|
2
|
+
export * from "./inputBlock";
|
|
3
|
+
export * from "./outputBlock";
|
|
4
|
+
export * from "./PostProcesses/blackAndWhitePostProcessBlock";
|
|
5
|
+
export * from "./PostProcesses/bloomPostProcessBlock";
|
|
6
|
+
export * from "./PostProcesses/blurPostProcessBlock";
|
|
7
|
+
export * from "./PostProcesses/circleOfConfusionPostProcessBlock";
|
|
8
|
+
export * from "./PostProcesses/depthOfFieldPostProcessBlock";
|
|
9
|
+
export * from "./PostProcesses/extractHighlightsPostProcessBlock";
|
|
10
|
+
export * from "./Rendering/objectRendererBlock";
|
|
11
|
+
export * from "./Rendering/geometryRendererBlock";
|
|
12
|
+
export * from "./Rendering/cullObjectsBlock";
|
|
13
|
+
export * from "./Teleport/teleportInBlock";
|
|
14
|
+
export * from "./Teleport/teleportOutBlock";
|
|
15
|
+
export * from "./Textures/clearBlock";
|
|
16
|
+
export * from "./Textures/copyTextureBlock";
|
|
17
|
+
export * from "./Textures/generateMipmapsBlock";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from "./elbowBlock.js";
|
|
2
|
+
export * from "./inputBlock.js";
|
|
3
|
+
export * from "./outputBlock.js";
|
|
4
|
+
export * from "./PostProcesses/blackAndWhitePostProcessBlock.js";
|
|
5
|
+
export * from "./PostProcesses/bloomPostProcessBlock.js";
|
|
6
|
+
export * from "./PostProcesses/blurPostProcessBlock.js";
|
|
7
|
+
export * from "./PostProcesses/circleOfConfusionPostProcessBlock.js";
|
|
8
|
+
export * from "./PostProcesses/depthOfFieldPostProcessBlock.js";
|
|
9
|
+
export * from "./PostProcesses/extractHighlightsPostProcessBlock.js";
|
|
10
|
+
export * from "./Rendering/objectRendererBlock.js";
|
|
11
|
+
export * from "./Rendering/geometryRendererBlock.js";
|
|
12
|
+
export * from "./Rendering/cullObjectsBlock.js";
|
|
13
|
+
export * from "./Teleport/teleportInBlock.js";
|
|
14
|
+
export * from "./Teleport/teleportOutBlock.js";
|
|
15
|
+
export * from "./Textures/clearBlock.js";
|
|
16
|
+
export * from "./Textures/copyTextureBlock.js";
|
|
17
|
+
export * from "./Textures/generateMipmapsBlock.js";
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../dev/core/src/FrameGraph/Node/Blocks/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,+CAA+C,CAAC;AAC9D,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC;AACrD,cAAc,mDAAmD,CAAC;AAClE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mDAAmD,CAAC;AAClE,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC","sourcesContent":["export * from \"./elbowBlock\";\r\nexport * from \"./inputBlock\";\r\nexport * from \"./outputBlock\";\r\nexport * from \"./PostProcesses/blackAndWhitePostProcessBlock\";\r\nexport * from \"./PostProcesses/bloomPostProcessBlock\";\r\nexport * from \"./PostProcesses/blurPostProcessBlock\";\r\nexport * from \"./PostProcesses/circleOfConfusionPostProcessBlock\";\r\nexport * from \"./PostProcesses/depthOfFieldPostProcessBlock\";\r\nexport * from \"./PostProcesses/extractHighlightsPostProcessBlock\";\r\nexport * from \"./Rendering/objectRendererBlock\";\r\nexport * from \"./Rendering/geometryRendererBlock\";\r\nexport * from \"./Rendering/cullObjectsBlock\";\r\nexport * from \"./Teleport/teleportInBlock\";\r\nexport * from \"./Teleport/teleportOutBlock\";\r\nexport * from \"./Textures/clearBlock\";\r\nexport * from \"./Textures/copyTextureBlock\";\r\nexport * from \"./Textures/generateMipmapsBlock\";\r\n"]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { NodeRenderGraphConnectionPoint, Scene, FrameGraph, NodeRenderGraphBuildState, Camera, RenderTargetWrapper, InternalTexture, Nullable, FrameGraphTextureCreationOptions, FrameGraphObjectList } from "../../../index.js";
|
|
2
|
+
import { Observable } from "../../../Misc/observable";
|
|
3
|
+
import { NodeRenderGraphBlockConnectionPointTypes } from "../Types/nodeRenderGraphTypes";
|
|
4
|
+
import { NodeRenderGraphBlock } from "../nodeRenderGraphBlock";
|
|
5
|
+
export type NodeRenderGraphValueType = RenderTargetWrapper | Camera | FrameGraphObjectList;
|
|
6
|
+
export type NodeRenderGraphInputCreationOptions = FrameGraphTextureCreationOptions;
|
|
7
|
+
/**
|
|
8
|
+
* Block used to expose an input value
|
|
9
|
+
*/
|
|
10
|
+
export declare class NodeRenderGraphInputBlock extends NodeRenderGraphBlock {
|
|
11
|
+
private _storedValue;
|
|
12
|
+
private _type;
|
|
13
|
+
/** Gets an observable raised when the value is changed */
|
|
14
|
+
onValueChangedObservable: Observable<NodeRenderGraphInputBlock>;
|
|
15
|
+
/** Indicates that the input is externally managed */
|
|
16
|
+
isExternal: boolean;
|
|
17
|
+
/** Gets or sets the options to create the input value */
|
|
18
|
+
creationOptions: NodeRenderGraphInputCreationOptions;
|
|
19
|
+
/**
|
|
20
|
+
* Gets or sets the connection point type (default is Undefined)
|
|
21
|
+
*/
|
|
22
|
+
get type(): NodeRenderGraphBlockConnectionPointTypes;
|
|
23
|
+
/**
|
|
24
|
+
* Creates a new NodeRenderGraphInputBlock
|
|
25
|
+
* @param name defines the block name
|
|
26
|
+
* @param frameGraph defines the hosting frame graph
|
|
27
|
+
* @param scene defines the hosting scene
|
|
28
|
+
* @param type defines the type of the input (can be set to NodeRenderGraphBlockConnectionPointTypes.Undefined)
|
|
29
|
+
*/
|
|
30
|
+
constructor(name: string, frameGraph: FrameGraph, scene: Scene, type?: NodeRenderGraphBlockConnectionPointTypes);
|
|
31
|
+
/**
|
|
32
|
+
* Set the input block to its default value (based on its type)
|
|
33
|
+
*/
|
|
34
|
+
setDefaultValue(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Gets or sets the value of that point.
|
|
37
|
+
*/
|
|
38
|
+
get value(): Nullable<NodeRenderGraphValueType>;
|
|
39
|
+
set value(value: Nullable<NodeRenderGraphValueType>);
|
|
40
|
+
/**
|
|
41
|
+
* Gets the value as a specific type
|
|
42
|
+
* @returns the value as a specific type
|
|
43
|
+
*/
|
|
44
|
+
getTypedValue<T extends NodeRenderGraphValueType>(): T;
|
|
45
|
+
/**
|
|
46
|
+
* Gets the value as a render target wrapper
|
|
47
|
+
* @returns The value as a render target wrapper if it is a render target wrapper, otherwise undefined
|
|
48
|
+
*/
|
|
49
|
+
getValueAsRenderTargetWrapper(): Nullable<RenderTargetWrapper>;
|
|
50
|
+
/**
|
|
51
|
+
* Gets the value as a render target wrapper
|
|
52
|
+
* @returns The internal texture stored in value if value is a render target wrapper or a thin texture, otherwise null
|
|
53
|
+
*/
|
|
54
|
+
getInternalTextureFromValue(): Nullable<InternalTexture>;
|
|
55
|
+
/**
|
|
56
|
+
* Gets the current class name
|
|
57
|
+
* @returns the class name
|
|
58
|
+
*/
|
|
59
|
+
getClassName(): string;
|
|
60
|
+
/**
|
|
61
|
+
* Gets the output component
|
|
62
|
+
*/
|
|
63
|
+
get output(): NodeRenderGraphConnectionPoint;
|
|
64
|
+
/**
|
|
65
|
+
* Check if the block is a texture of any type
|
|
66
|
+
* @returns true if the block is a texture
|
|
67
|
+
*/
|
|
68
|
+
isAnyTexture(): boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Gets a boolean indicating that the connection point is the back buffer texture
|
|
71
|
+
* @returns true if the connection point is the back buffer texture
|
|
72
|
+
*/
|
|
73
|
+
isBackBuffer(): boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Gets a boolean indicating that the connection point is a depth/stencil attachment texture
|
|
76
|
+
* @returns true if the connection point is a depth/stencil attachment texture
|
|
77
|
+
*/
|
|
78
|
+
isBackBufferDepthStencilAttachment(): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* Check if the block is a camera
|
|
81
|
+
* @returns true if the block is a camera
|
|
82
|
+
*/
|
|
83
|
+
isCamera(): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Check if the block is an object list
|
|
86
|
+
* @returns true if the block is an object list
|
|
87
|
+
*/
|
|
88
|
+
isObjectList(): boolean;
|
|
89
|
+
protected _buildBlock(state: NodeRenderGraphBuildState): void;
|
|
90
|
+
dispose(): void;
|
|
91
|
+
protected _dumpPropertiesCode(): string;
|
|
92
|
+
serialize(): any;
|
|
93
|
+
_deserialize(serializationObject: any): void;
|
|
94
|
+
}
|