@onerjs/core 8.56.4 → 9.0.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/Animations/animatable.core.js +36 -0
- package/Animations/animatable.core.js.map +1 -1
- package/Animations/animationGroup.pure.d.ts +61 -1
- package/Animations/animationGroup.pure.js +191 -2
- package/Animations/animationGroup.pure.js.map +1 -1
- package/Animations/index.d.ts +1 -0
- package/Animations/index.js +1 -0
- package/Animations/index.js.map +1 -1
- package/Animations/pure.d.ts +1 -0
- package/Animations/pure.js +1 -0
- package/Animations/pure.js.map +1 -1
- package/Animations/rootMotion.d.ts +560 -0
- package/Animations/rootMotion.js +1709 -0
- package/Animations/rootMotion.js.map +1 -0
- package/Animations/runtimeAnimation.d.ts +57 -0
- package/Animations/runtimeAnimation.js +127 -3
- package/Animations/runtimeAnimation.js.map +1 -1
- package/Cameras/arcRotateCamera.pure.d.ts +2 -0
- package/Cameras/arcRotateCamera.pure.js +2 -0
- package/Cameras/arcRotateCamera.pure.js.map +1 -1
- package/Cameras/targetCamera.pure.d.ts +2 -0
- package/Cameras/targetCamera.pure.js +13 -2
- package/Cameras/targetCamera.pure.js.map +1 -1
- package/Collisions/gpuPicker.js +5 -5
- package/Collisions/gpuPicker.js.map +1 -1
- package/Engines/AbstractEngine/abstractEngine.query.pure.js +4 -2
- package/Engines/AbstractEngine/abstractEngine.query.pure.js.map +1 -1
- package/Engines/AbstractEngine/abstractEngine.query.types.d.ts +11 -2
- package/Engines/AbstractEngine/abstractEngine.query.types.js.map +1 -1
- package/Engines/AbstractEngine/abstractEngine.renderPass.pure.js +1 -0
- package/Engines/AbstractEngine/abstractEngine.renderPass.pure.js.map +1 -1
- package/Engines/Extensions/engine.multiRender.pure.js +63 -0
- package/Engines/Extensions/engine.multiRender.pure.js.map +1 -1
- package/Engines/Extensions/engine.multiRender.types.d.ts +13 -0
- package/Engines/Extensions/engine.multiRender.types.js.map +1 -1
- package/Engines/Extensions/engine.prefilteredCubeTexture.pure.js +2 -2
- package/Engines/Extensions/engine.prefilteredCubeTexture.pure.js.map +1 -1
- package/Engines/Extensions/engine.prefilteredCubeTexture.types.d.ts +2 -1
- package/Engines/Extensions/engine.prefilteredCubeTexture.types.js.map +1 -1
- package/Engines/Extensions/index.d.ts +1 -0
- package/Engines/Extensions/index.js +1 -0
- package/Engines/Extensions/index.js.map +1 -1
- package/Engines/Extensions/pure.d.ts +1 -1
- package/Engines/Extensions/pure.js +1 -1
- package/Engines/Extensions/pure.js.map +1 -1
- package/Engines/Native/Extensions/nativeEngine.cubeTexture.pure.js +88 -39
- package/Engines/Native/Extensions/nativeEngine.cubeTexture.pure.js.map +1 -1
- package/Engines/Native/Extensions/nativeEngine.cubeTexture.types.d.ts +20 -2
- package/Engines/Native/Extensions/nativeEngine.cubeTexture.types.js.map +1 -1
- package/Engines/Native/nativeHardwareTexture.d.ts +8 -1
- package/Engines/Native/nativeHardwareTexture.js +7 -0
- package/Engines/Native/nativeHardwareTexture.js.map +1 -1
- package/Engines/Native/nativeHelpers.js +56 -1
- package/Engines/Native/nativeHelpers.js.map +1 -1
- package/Engines/Native/nativeInterfaces.d.ts +37 -8
- package/Engines/Native/nativeInterfaces.js.map +1 -1
- package/Engines/Native/nativeRenderTargetWrapper.d.ts +40 -0
- package/Engines/Native/nativeRenderTargetWrapper.js +265 -5
- package/Engines/Native/nativeRenderTargetWrapper.js.map +1 -1
- package/Engines/Processors/shaderCodeCursor.d.ts +1 -0
- package/Engines/Processors/shaderCodeCursor.js +40 -3
- package/Engines/Processors/shaderCodeCursor.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.multiRender.pure.js +4 -0
- package/Engines/WebGPU/Extensions/engine.multiRender.pure.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.multiRender.types.d.ts +13 -0
- package/Engines/WebGPU/Extensions/engine.multiRender.types.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.query.pure.js +11 -3
- package/Engines/WebGPU/Extensions/engine.query.pure.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.renderTarget.pure.js +1 -0
- package/Engines/WebGPU/Extensions/engine.renderTarget.pure.js.map +1 -1
- package/Engines/WebGPU/Extensions/index.d.ts +1 -0
- package/Engines/WebGPU/Extensions/index.js +1 -0
- package/Engines/WebGPU/Extensions/index.js.map +1 -1
- package/Engines/WebGPU/Extensions/pure.d.ts +1 -1
- package/Engines/WebGPU/Extensions/pure.js +1 -1
- package/Engines/WebGPU/Extensions/pure.js.map +1 -1
- package/Engines/WebGPU/webgpuBundleList.d.ts +2 -0
- package/Engines/WebGPU/webgpuBundleList.js +4 -0
- package/Engines/WebGPU/webgpuBundleList.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js +5 -2
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.js +3 -1
- package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuOcclusionQuery.js +1 -1
- package/Engines/WebGPU/webgpuOcclusionQuery.js.map +1 -1
- package/Engines/WebGPU/webgpuSnapshotRendering.d.ts +4 -0
- package/Engines/WebGPU/webgpuSnapshotRendering.js +40 -7
- package/Engines/WebGPU/webgpuSnapshotRendering.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.d.ts +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js +2 -2
- package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureManager.d.ts +2 -0
- package/Engines/WebGPU/webgpuTextureManager.js +286 -13
- package/Engines/WebGPU/webgpuTextureManager.js.map +1 -1
- package/Engines/abstractEngine.pure.d.ts +17 -1
- package/Engines/abstractEngine.pure.js +17 -5
- package/Engines/abstractEngine.pure.js.map +1 -1
- package/Engines/constants.d.ts +4 -0
- package/Engines/constants.js +4 -0
- package/Engines/constants.js.map +1 -1
- package/Engines/engine.pure.d.ts +0 -1
- package/Engines/engine.pure.js +0 -7
- package/Engines/engine.pure.js.map +1 -1
- package/Engines/nativeEngine.pure.js +1 -1
- package/Engines/nativeEngine.pure.js.map +1 -1
- package/Engines/thinEngine.pure.d.ts +15 -0
- package/Engines/thinEngine.pure.js +61 -14
- package/Engines/thinEngine.pure.js.map +1 -1
- package/Engines/thinNativeEngine.pure.d.ts +218 -17
- package/Engines/thinNativeEngine.pure.js +1438 -165
- package/Engines/thinNativeEngine.pure.js.map +1 -1
- package/Engines/thinWebGPUEngine.d.ts +4 -0
- package/Engines/thinWebGPUEngine.js +16 -2
- package/Engines/thinWebGPUEngine.js.map +1 -1
- package/Engines/webgpuEngine.pure.d.ts +17 -3
- package/Engines/webgpuEngine.pure.js +56 -13
- package/Engines/webgpuEngine.pure.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphMathBlocks.pure.js +2 -2
- package/FlowGraph/Blocks/Data/Math/flowGraphMathBlocks.pure.js.map +1 -1
- package/FlowGraph/Blocks/Data/Transformers/flowGraphJsonPointerParserBlock.pure.d.ts +10 -0
- package/FlowGraph/Blocks/Data/Transformers/flowGraphJsonPointerParserBlock.pure.js +24 -12
- package/FlowGraph/Blocks/Data/Transformers/flowGraphJsonPointerParserBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Data/Utils/flowGraphArrayIndexBlock.pure.d.ts +11 -2
- package/FlowGraph/Blocks/Data/Utils/flowGraphArrayIndexBlock.pure.js +1 -1
- package/FlowGraph/Blocks/Data/Utils/flowGraphArrayIndexBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Data/flowGraphGetPropertyBlock.pure.d.ts +7 -0
- package/FlowGraph/Blocks/Data/flowGraphGetPropertyBlock.pure.js +43 -0
- package/FlowGraph/Blocks/Data/flowGraphGetPropertyBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.pure.d.ts +9 -1
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.pure.js +6 -8
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphPointerOutEventBlock.pure.d.ts +2 -0
- package/FlowGraph/Blocks/Event/flowGraphPointerOutEventBlock.pure.js +5 -1
- package/FlowGraph/Blocks/Event/flowGraphPointerOutEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphPointerOverEventBlock.pure.d.ts +2 -0
- package/FlowGraph/Blocks/Event/flowGraphPointerOverEventBlock.pure.js +5 -1
- package/FlowGraph/Blocks/Event/flowGraphPointerOverEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.pure.d.ts +9 -0
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.pure.js +34 -9
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.pure.d.ts +2 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.pure.js +4 -0
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.pure.d.ts +18 -4
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.pure.js +24 -6
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSendCustomEventBlock.pure.js +19 -7
- package/FlowGraph/Blocks/Event/flowGraphSendCustomEventBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphInterpolationBlock.pure.js +3 -3
- package/FlowGraph/Blocks/Execution/Animation/flowGraphInterpolationBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.pure.d.ts +20 -2
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.pure.js +85 -25
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.pure.d.ts +16 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.pure.js +64 -14
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCancelDelayBlock.pure.d.ts +12 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCancelDelayBlock.pure.js +8 -0
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCancelDelayBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.pure.js +4 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.pure.d.ts +12 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.pure.js +5 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.pure.js +64 -16
- package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.pure.d.ts +2 -0
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.pure.js +14 -2
- package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.pure.js.map +1 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.pure.d.ts +5 -1
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.pure.js +23 -8
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.pure.js.map +1 -1
- package/FlowGraph/CustomTypes/flowGraphInteger.pure.d.ts +5 -0
- package/FlowGraph/CustomTypes/flowGraphInteger.pure.js +7 -0
- package/FlowGraph/CustomTypes/flowGraphInteger.pure.js.map +1 -1
- package/FlowGraph/CustomTypes/flowGraphMatrix.d.ts +10 -0
- package/FlowGraph/CustomTypes/flowGraphMatrix.js +14 -0
- package/FlowGraph/CustomTypes/flowGraphMatrix.js.map +1 -1
- package/FlowGraph/flowGraph.d.ts +6 -1
- package/FlowGraph/flowGraph.js +41 -9
- package/FlowGraph/flowGraph.js.map +1 -1
- package/FlowGraph/flowGraphAnimationHelpers.d.ts +24 -0
- package/FlowGraph/flowGraphAnimationHelpers.js +21 -0
- package/FlowGraph/flowGraphAnimationHelpers.js.map +1 -0
- package/FlowGraph/flowGraphBlock.js +3 -0
- package/FlowGraph/flowGraphBlock.js.map +1 -1
- package/FlowGraph/flowGraphConnection.d.ts +7 -0
- package/FlowGraph/flowGraphConnection.js +7 -0
- package/FlowGraph/flowGraphConnection.js.map +1 -1
- package/FlowGraph/flowGraphContext.d.ts +2 -1
- package/FlowGraph/flowGraphContext.js +5 -3
- package/FlowGraph/flowGraphContext.js.map +1 -1
- package/FlowGraph/flowGraphCoordinator.d.ts +15 -1
- package/FlowGraph/flowGraphCoordinator.js +47 -16
- package/FlowGraph/flowGraphCoordinator.js.map +1 -1
- package/FlowGraph/flowGraphEventBlock.d.ts +5 -0
- package/FlowGraph/flowGraphEventBlock.js +7 -0
- package/FlowGraph/flowGraphEventBlock.js.map +1 -1
- package/FlowGraph/flowGraphHostResolver.d.ts +2 -1
- package/FlowGraph/flowGraphHostResolver.js.map +1 -1
- package/FlowGraph/flowGraphParser.js +60 -2
- package/FlowGraph/flowGraphParser.js.map +1 -1
- package/FlowGraph/flowGraphValidator.js +0 -4
- package/FlowGraph/flowGraphValidator.js.map +1 -1
- package/FlowGraph/index.d.ts +2 -0
- package/FlowGraph/index.js +2 -0
- package/FlowGraph/index.js.map +1 -1
- package/FlowGraph/pure.d.ts +2 -0
- package/FlowGraph/pure.js +2 -0
- package/FlowGraph/pure.js.map +1 -1
- package/FlowGraph/serialization.d.ts +4 -2
- package/FlowGraph/serialization.js +12 -24
- package/FlowGraph/serialization.js.map +1 -1
- package/FlowGraph/typeDefinitions.d.ts +9 -1
- package/FlowGraph/typeDefinitions.js.map +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/meshBlendingPostProcessBlock.d.ts +5 -0
- package/FrameGraph/Node/Blocks/PostProcesses/meshBlendingPostProcessBlock.js +8 -0
- package/FrameGraph/Node/Blocks/PostProcesses/meshBlendingPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/meshBlendingPostProcessBlock.pure.d.ts +87 -0
- package/FrameGraph/Node/Blocks/PostProcesses/meshBlendingPostProcessBlock.pure.js +295 -0
- package/FrameGraph/Node/Blocks/PostProcesses/meshBlendingPostProcessBlock.pure.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/pure.d.ts +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/pure.js +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/pure.js.map +1 -1
- package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js +4 -4
- package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js.map +1 -1
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.pure.d.ts +5 -1
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.pure.js +13 -1
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.pure.js.map +1 -1
- package/FrameGraph/Node/Blocks/Textures/minMaxReducerBlock.d.ts +1 -0
- package/FrameGraph/Node/Blocks/Textures/minMaxReducerBlock.js +4 -0
- package/FrameGraph/Node/Blocks/Textures/minMaxReducerBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/Textures/minMaxReducerBlock.pure.d.ts +54 -0
- package/FrameGraph/Node/Blocks/Textures/minMaxReducerBlock.pure.js +155 -0
- package/FrameGraph/Node/Blocks/Textures/minMaxReducerBlock.pure.js.map +1 -0
- package/FrameGraph/Node/Blocks/Textures/pure.d.ts +1 -0
- package/FrameGraph/Node/Blocks/Textures/pure.js +1 -0
- package/FrameGraph/Node/Blocks/Textures/pure.js.map +1 -1
- package/FrameGraph/Node/Blocks/allBlocks.pure.js +4 -0
- package/FrameGraph/Node/Blocks/allBlocks.pure.js.map +1 -1
- package/FrameGraph/Node/Blocks/index.d.ts +2 -0
- package/FrameGraph/Node/Blocks/index.js +2 -0
- package/FrameGraph/Node/Blocks/index.js.map +1 -1
- package/FrameGraph/Node/Blocks/inputBlock.pure.js +20 -1
- package/FrameGraph/Node/Blocks/inputBlock.pure.js.map +1 -1
- package/FrameGraph/Node/Blocks/pure.d.ts +2 -0
- package/FrameGraph/Node/Blocks/pure.js +2 -0
- package/FrameGraph/Node/Blocks/pure.js.map +1 -1
- package/FrameGraph/Node/Types/nodeRenderGraphTypes.d.ts +4 -2
- package/FrameGraph/Node/Types/nodeRenderGraphTypes.js +4 -2
- package/FrameGraph/Node/Types/nodeRenderGraphTypes.js.map +1 -1
- package/FrameGraph/Node/nodeRenderGraph.js +1 -1
- package/FrameGraph/Node/nodeRenderGraph.js.map +1 -1
- package/FrameGraph/Tasks/Layers/selectionOutlineTask.js +1 -0
- package/FrameGraph/Tasks/Layers/selectionOutlineTask.js.map +1 -1
- package/FrameGraph/Tasks/Misc/cullObjectsTask.js +5 -1
- package/FrameGraph/Tasks/Misc/cullObjectsTask.js.map +1 -1
- package/FrameGraph/Tasks/Misc/lightingVolumeTask.js +1 -0
- package/FrameGraph/Tasks/Misc/lightingVolumeTask.js.map +1 -1
- package/FrameGraph/Tasks/Misc/minMaxReducerTask.d.ts +62 -0
- package/FrameGraph/Tasks/Misc/minMaxReducerTask.js +159 -0
- package/FrameGraph/Tasks/Misc/minMaxReducerTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/meshBlendingTask.d.ts +69 -0
- package/FrameGraph/Tasks/PostProcesses/meshBlendingTask.js +223 -0
- package/FrameGraph/Tasks/PostProcesses/meshBlendingTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.d.ts +25 -3
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.js +72 -34
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.js.map +1 -1
- package/FrameGraph/Tasks/Rendering/objectRendererTask.js +3 -1
- package/FrameGraph/Tasks/Rendering/objectRendererTask.js.map +1 -1
- package/FrameGraph/frameGraph.d.ts +4 -0
- package/FrameGraph/frameGraph.js +14 -0
- package/FrameGraph/frameGraph.js.map +1 -1
- package/FrameGraph/frameGraphObjectList.d.ts +6 -1
- package/FrameGraph/frameGraphObjectList.js.map +1 -1
- package/FrameGraph/frameGraphRenderContext.d.ts +3 -1
- package/FrameGraph/frameGraphRenderContext.js +5 -5
- package/FrameGraph/frameGraphRenderContext.js.map +1 -1
- package/FrameGraph/index.d.ts +2 -0
- package/FrameGraph/index.js +2 -0
- package/FrameGraph/index.js.map +1 -1
- package/FrameGraph/pure.d.ts +2 -0
- package/FrameGraph/pure.js +2 -0
- package/FrameGraph/pure.js.map +1 -1
- package/Inputs/scene.inputManager.d.ts +4 -0
- package/Inputs/scene.inputManager.js +50 -8
- package/Inputs/scene.inputManager.js.map +1 -1
- package/Lights/Clustered/clusteredLightingSceneComponent.pure.d.ts +5 -0
- package/Lights/Clustered/clusteredLightingSceneComponent.pure.js +22 -1
- package/Lights/Clustered/clusteredLightingSceneComponent.pure.js.map +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.pure.js +7 -3
- package/Lights/Shadows/cascadedShadowGenerator.pure.js.map +1 -1
- package/Materials/GaussianSplatting/gaussianPointSplattingBlitMaterial.d.ts +7 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingBlitMaterial.js +8 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingBlitMaterial.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingBlitMaterial.pure.d.ts +54 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingBlitMaterial.pure.js +81 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingBlitMaterial.pure.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.d.ts +7 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.js +8 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.pure.d.ts +60 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.pure.js +90 -0
- package/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.pure.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.pure.d.ts +31 -0
- package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.pure.js +103 -5
- package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.pure.js.map +1 -1
- package/Materials/GaussianSplatting/gaussianSplattingGpuPickingMaterialPlugin.pure.js +6 -6
- package/Materials/GaussianSplatting/gaussianSplattingGpuPickingMaterialPlugin.pure.js.map +1 -1
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.pure.d.ts +26 -1
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.pure.js +153 -49
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.pure.js.map +1 -1
- package/Materials/GaussianSplatting/gaussianSplattingOverdrawMaterialPlugin.d.ts +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingOverdrawMaterialPlugin.js +4 -0
- package/Materials/GaussianSplatting/gaussianSplattingOverdrawMaterialPlugin.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingOverdrawMaterialPlugin.pure.d.ts +83 -0
- package/Materials/GaussianSplatting/gaussianSplattingOverdrawMaterialPlugin.pure.js +191 -0
- package/Materials/GaussianSplatting/gaussianSplattingOverdrawMaterialPlugin.pure.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingSizeMaterialPlugin.d.ts +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingSizeMaterialPlugin.js +4 -0
- package/Materials/GaussianSplatting/gaussianSplattingSizeMaterialPlugin.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingSizeMaterialPlugin.pure.d.ts +62 -0
- package/Materials/GaussianSplatting/gaussianSplattingSizeMaterialPlugin.pure.js +125 -0
- package/Materials/GaussianSplatting/gaussianSplattingSizeMaterialPlugin.pure.js.map +1 -0
- package/Materials/GaussianSplatting/gaussianSplattingSolidColorMaterialPlugin.pure.js +5 -5
- package/Materials/GaussianSplatting/gaussianSplattingSolidColorMaterialPlugin.pure.js.map +1 -1
- package/Materials/GaussianSplatting/pure.d.ts +4 -0
- package/Materials/GaussianSplatting/pure.js +4 -0
- package/Materials/GaussianSplatting/pure.js.map +1 -1
- package/Materials/Node/Blocks/Dual/imageSourceBlock.pure.d.ts +1 -0
- package/Materials/Node/Blocks/Dual/imageSourceBlock.pure.js +12 -0
- package/Materials/Node/Blocks/Dual/imageSourceBlock.pure.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.pure.js +11 -1
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.pure.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/prePassOutputBlock.pure.js +17 -2
- package/Materials/Node/Blocks/Fragment/prePassOutputBlock.pure.js.map +1 -1
- package/Materials/Node/Blocks/GaussianSplatting/gaussianSplattingBlock.pure.js +2 -2
- package/Materials/Node/Blocks/GaussianSplatting/gaussianSplattingBlock.pure.js.map +1 -1
- package/Materials/Node/nodeMaterial.pure.d.ts +4 -0
- package/Materials/Node/nodeMaterial.pure.js +4 -0
- package/Materials/Node/nodeMaterial.pure.js.map +1 -1
- package/Materials/Node/nodeMaterialBuildState.d.ts +1 -1
- package/Materials/Node/nodeMaterialBuildState.js +25 -3
- package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
- package/Materials/PBR/openpbrMaterial.pure.d.ts +2 -0
- package/Materials/PBR/pbrBaseMaterial.pure.d.ts +2 -0
- package/Materials/Textures/Procedurals/proceduralTexture.pure.d.ts +14 -14
- package/Materials/Textures/Procedurals/proceduralTexture.pure.js +37 -13
- package/Materials/Textures/Procedurals/proceduralTexture.pure.js.map +1 -1
- package/Materials/Textures/baseTexture.pure.js +3 -0
- package/Materials/Textures/baseTexture.pure.js.map +1 -1
- package/Materials/Textures/cubeTexture.pure.js +1 -1
- package/Materials/Textures/cubeTexture.pure.js.map +1 -1
- package/Materials/Textures/internalTexture.d.ts +8 -1
- package/Materials/Textures/internalTexture.js +9 -2
- package/Materials/Textures/internalTexture.js.map +1 -1
- package/Materials/Textures/mirrorTexture.pure.js +3 -1
- package/Materials/Textures/mirrorTexture.pure.js.map +1 -1
- package/Materials/Textures/rawTexture2DArray.functions.d.ts +3 -3
- package/Materials/Textures/rawTexture2DArray.functions.js.map +1 -1
- package/Materials/Textures/rawTexture3D.d.ts +1 -1
- package/Materials/Textures/rawTexture3D.js +1 -1
- package/Materials/Textures/rawTexture3D.js.map +1 -1
- package/Materials/Textures/texture.pure.js +1 -1
- package/Materials/Textures/texture.pure.js.map +1 -1
- package/Materials/Textures/textureHelper.functions.d.ts +14 -0
- package/Materials/Textures/textureHelper.functions.js +24 -0
- package/Materials/Textures/textureHelper.functions.js.map +1 -1
- package/Materials/ditheredTileFadeMaterialPlugin.d.ts +210 -0
- package/Materials/ditheredTileFadeMaterialPlugin.js +509 -0
- package/Materials/ditheredTileFadeMaterialPlugin.js.map +1 -0
- package/Materials/effectRenderer.pure.d.ts +4 -0
- package/Materials/effectRenderer.pure.js +3 -2
- package/Materials/effectRenderer.pure.js.map +1 -1
- package/Materials/index.d.ts +5 -0
- package/Materials/index.js +5 -0
- package/Materials/index.js.map +1 -1
- package/Materials/material.pure.js +25 -12
- package/Materials/material.pure.js.map +1 -1
- package/Materials/materialHelper.geometryrendering.d.ts +46 -1
- package/Materials/materialHelper.geometryrendering.js +105 -8
- package/Materials/materialHelper.geometryrendering.js.map +1 -1
- package/Materials/prepass.defines.d.ts +2 -0
- package/Materials/prepass.defines.js +2 -0
- package/Materials/prepass.defines.js.map +1 -1
- package/Materials/pure.d.ts +5 -0
- package/Materials/pure.js +5 -0
- package/Materials/pure.js.map +1 -1
- package/Materials/standardMaterial.pure.d.ts +10 -0
- package/Materials/standardMaterial.pure.js +30 -5
- package/Materials/standardMaterial.pure.js.map +1 -1
- package/Meshes/Builders/polygonBuilder.pure.d.ts +4 -0
- package/Meshes/Builders/polygonBuilder.pure.js +3 -0
- package/Meshes/Builders/polygonBuilder.pure.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianPointSplattingController.d.ts +8 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingController.js +11 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingController.js.map +1 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingController.pure.d.ts +231 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingController.pure.js +1212 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingController.pure.js.map +1 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingRenderer.d.ts +14 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingRenderer.js +15 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingRenderer.js.map +1 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingRenderer.pure.d.ts +285 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingRenderer.pure.js +812 -0
- package/Meshes/GaussianSplatting/gaussianPointSplattingRenderer.pure.js.map +1 -0
- package/Meshes/GaussianSplatting/gaussianSplatting.functions.d.ts +19 -0
- package/Meshes/GaussianSplatting/gaussianSplatting.functions.js +23 -0
- package/Meshes/GaussianSplatting/gaussianSplatting.functions.js.map +1 -0
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.d.ts +1 -0
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +2 -0
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.pure.d.ts +163 -14
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.pure.js +239 -24
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.pure.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.d.ts +34 -4
- package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.js +125 -25
- package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.js.map +1 -1
- package/Meshes/GaussianSplatting/pure.d.ts +2 -0
- package/Meshes/GaussianSplatting/pure.js +2 -0
- package/Meshes/GaussianSplatting/pure.js.map +1 -1
- package/Meshes/Node/Blocks/booleanGeometryBlock.pure.js +25 -11
- package/Meshes/Node/Blocks/booleanGeometryBlock.pure.js.map +1 -1
- package/Meshes/abstractMesh.pure.d.ts +30 -0
- package/Meshes/abstractMesh.pure.js +54 -0
- package/Meshes/abstractMesh.pure.js.map +1 -1
- package/Meshes/index.d.ts +2 -0
- package/Meshes/index.js +2 -0
- package/Meshes/index.js.map +1 -1
- package/Meshes/instancedMesh.pure.d.ts +5 -0
- package/Meshes/instancedMesh.pure.js +12 -0
- package/Meshes/instancedMesh.pure.js.map +1 -1
- package/Meshes/mesh.pure.js +23 -8
- package/Meshes/mesh.pure.js.map +1 -1
- package/Meshes/meshBlendingTag.d.ts +47 -0
- package/Meshes/meshBlendingTag.js +64 -0
- package/Meshes/meshBlendingTag.js.map +1 -0
- package/Meshes/polygonMesh.js +2 -2
- package/Meshes/polygonMesh.js.map +1 -1
- package/Meshes/pure.d.ts +2 -0
- package/Meshes/pure.js +2 -0
- package/Meshes/pure.js.map +1 -1
- package/Meshes/subMesh.pure.d.ts +11 -2
- package/Meshes/subMesh.pure.js +20 -5
- package/Meshes/subMesh.pure.js.map +1 -1
- package/Meshes/thinInstanceMesh.pure.js +1 -0
- package/Meshes/thinInstanceMesh.pure.js.map +1 -1
- package/Misc/andOrNotEvaluator.js +4 -0
- package/Misc/andOrNotEvaluator.js.map +1 -1
- package/Misc/fileTools.pure.js +21 -0
- package/Misc/fileTools.pure.js.map +1 -1
- package/Misc/minMaxReducer.pure.d.ts +6 -0
- package/Misc/minMaxReducer.pure.js +10 -0
- package/Misc/minMaxReducer.pure.js.map +1 -1
- package/Misc/snapshotRenderingHelper.js +2 -2
- package/Misc/snapshotRenderingHelper.js.map +1 -1
- package/Misc/thinMinMaxReducer.d.ts +19 -2
- package/Misc/thinMinMaxReducer.js +74 -21
- package/Misc/thinMinMaxReducer.js.map +1 -1
- package/Misc/tools.pure.js +1 -1
- package/Misc/tools.pure.js.map +1 -1
- package/Particles/Node/Blocks/Update/updateNoiseBlock.pure.js +19 -7
- package/Particles/Node/Blocks/Update/updateNoiseBlock.pure.js.map +1 -1
- package/Particles/Node/Blocks/particleSourceTextureBlock.pure.js +3 -2
- package/Particles/Node/Blocks/particleSourceTextureBlock.pure.js.map +1 -1
- package/Particles/gpuParticleSystem.pure.d.ts +4 -0
- package/Particles/gpuParticleSystem.pure.js +101 -32
- package/Particles/gpuParticleSystem.pure.js.map +1 -1
- package/Particles/particle.js +3 -2
- package/Particles/particle.js.map +1 -1
- package/Particles/solidParticleSystem.js +7 -1
- package/Particles/solidParticleSystem.js.map +1 -1
- package/Particles/thinParticleSystem.function.d.ts +6 -0
- package/Particles/thinParticleSystem.function.js +144 -88
- package/Particles/thinParticleSystem.function.js.map +1 -1
- package/Particles/thinParticleSystem.pure.d.ts +8 -0
- package/Particles/thinParticleSystem.pure.js +154 -28
- package/Particles/thinParticleSystem.pure.js.map +1 -1
- package/Particles/webgl2ParticleSystem.pure.d.ts +1 -0
- package/Particles/webgl2ParticleSystem.pure.js +12 -4
- package/Particles/webgl2ParticleSystem.pure.js.map +1 -1
- package/Physics/v2/ragdoll.d.ts +2 -4
- package/Physics/v2/ragdoll.js +11 -4
- package/Physics/v2/ragdoll.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/lensRenderingPipeline.pure.js +7 -0
- package/PostProcesses/RenderPipeline/Pipelines/lensRenderingPipeline.pure.js.map +1 -1
- package/PostProcesses/index.d.ts +2 -0
- package/PostProcesses/index.js +2 -0
- package/PostProcesses/index.js.map +1 -1
- package/PostProcesses/meshBlendingBlueNoise.d.ts +15 -0
- package/PostProcesses/meshBlendingBlueNoise.js +77 -0
- package/PostProcesses/meshBlendingBlueNoise.js.map +1 -0
- package/PostProcesses/meshBlendingPostProcess.d.ts +131 -0
- package/PostProcesses/meshBlendingPostProcess.js +315 -0
- package/PostProcesses/meshBlendingPostProcess.js.map +1 -0
- package/PostProcesses/pure.d.ts +2 -0
- package/PostProcesses/pure.js +2 -0
- package/PostProcesses/pure.js.map +1 -1
- package/PostProcesses/thinMeshBlendingPostProcess.d.ts +339 -0
- package/PostProcesses/thinMeshBlendingPostProcess.js +771 -0
- package/PostProcesses/thinMeshBlendingPostProcess.js.map +1 -0
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.pure.js +6 -6
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.pure.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.pure.d.ts +12 -0
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.pure.js +50 -25
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.pure.js.map +1 -1
- package/Rendering/boundingBoxRenderer.pure.js +2 -1
- package/Rendering/boundingBoxRenderer.pure.js.map +1 -1
- package/Rendering/depthRenderer.pure.d.ts +9 -0
- package/Rendering/depthRenderer.pure.js +15 -4
- package/Rendering/depthRenderer.pure.js.map +1 -1
- package/Rendering/edgesRenderer.pure.d.ts +4 -2
- package/Rendering/edgesRenderer.pure.js +11 -2
- package/Rendering/edgesRenderer.pure.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObject.d.ts +14 -0
- package/Rendering/fluidRenderer/fluidRenderingObject.js +26 -0
- package/Rendering/fluidRenderer/fluidRenderingObject.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.d.ts +13 -3
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.js +22 -9
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js +3 -0
- package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js.map +1 -1
- package/Rendering/geometryBufferRenderer.pure.d.ts +38 -4
- package/Rendering/geometryBufferRenderer.pure.js +130 -18
- package/Rendering/geometryBufferRenderer.pure.js.map +1 -1
- package/Rendering/objectRenderer.d.ts +7 -1
- package/Rendering/objectRenderer.js +45 -7
- package/Rendering/objectRenderer.js.map +1 -1
- package/Rendering/outlineRenderer.pure.js +6 -2
- package/Rendering/outlineRenderer.pure.js.map +1 -1
- package/Rendering/prePassRenderer.pure.js +3 -3
- package/Rendering/prePassRenderer.pure.js.map +1 -1
- package/Rendering/renderingManager.d.ts +1 -1
- package/Rendering/renderingManager.js +5 -4
- package/Rendering/renderingManager.js.map +1 -1
- package/Shaders/ShadersInclude/defaultFragmentAlpha.d.ts +5 -0
- package/Shaders/ShadersInclude/defaultFragmentAlpha.js +34 -0
- package/Shaders/ShadersInclude/defaultFragmentAlpha.js.map +1 -0
- package/Shaders/ShadersInclude/gaussianSplatting.js +3 -1
- package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
- package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js +5 -1
- package/Shaders/ShadersInclude/gaussianSplattingVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/geometryRenderingFragment.d.ts +5 -0
- package/Shaders/ShadersInclude/geometryRenderingFragment.js +74 -0
- package/Shaders/ShadersInclude/geometryRenderingFragment.js.map +1 -0
- package/Shaders/ShadersInclude/lightsFragmentFunctions.js +27 -3
- package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.js +89 -0
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/oitDeclaration.js +1 -1
- package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/openpbrBlockPrePass.js +24 -17
- package/Shaders/ShadersInclude/openpbrBlockPrePass.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockPrePass.js +27 -20
- package/Shaders/ShadersInclude/pbrBlockPrePass.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDebug.js +6 -2
- package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
- package/Shaders/ShadersInclude/prePassDeclaration.js +95 -2
- package/Shaders/ShadersInclude/prePassDeclaration.js.map +1 -1
- package/Shaders/default.fragment.js +31 -40
- package/Shaders/default.fragment.js.map +1 -1
- package/Shaders/depthOfField.fragment.js +13 -9
- package/Shaders/depthOfField.fragment.js.map +1 -1
- package/Shaders/fluidRenderingParticleDepth.vertex.js +16 -1
- package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
- package/Shaders/fluidRenderingParticleThickness.vertex.js +16 -1
- package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
- package/Shaders/gaussianSplatting.fragment.js +63 -3
- package/Shaders/gaussianSplatting.fragment.js.map +1 -1
- package/Shaders/gaussianSplatting.vertex.js +80 -0
- package/Shaders/gaussianSplatting.vertex.js.map +1 -1
- package/Shaders/geometry.fragment.js +17 -11
- package/Shaders/geometry.fragment.js.map +1 -1
- package/Shaders/gpuRenderParticles.fragment.js +43 -1
- package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
- package/Shaders/gpuRenderParticles.vertex.js +96 -16
- package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
- package/Shaders/meshBlending.fragment.d.ts +5 -0
- package/Shaders/meshBlending.fragment.js +519 -0
- package/Shaders/meshBlending.fragment.js.map +1 -0
- package/Shaders/minmaxRedux.fragment.js +6 -1
- package/Shaders/minmaxRedux.fragment.js.map +1 -1
- package/Shaders/particles.fragment.js +43 -1
- package/Shaders/particles.fragment.js.map +1 -1
- package/Shaders/particles.vertex.js +84 -3
- package/Shaders/particles.vertex.js.map +1 -1
- package/Shaders/sprites.fragment.js +52 -2
- package/Shaders/sprites.fragment.js.map +1 -1
- package/Shaders/sprites.vertex.js +62 -1
- package/Shaders/sprites.vertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/defaultFragmentAlpha.d.ts +5 -0
- package/ShadersWGSL/ShadersInclude/defaultFragmentAlpha.js +33 -0
- package/ShadersWGSL/ShadersInclude/defaultFragmentAlpha.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/gaussianPointSplatting.d.ts +5 -0
- package/ShadersWGSL/ShadersInclude/gaussianPointSplatting.js +65 -0
- package/ShadersWGSL/ShadersInclude/gaussianPointSplatting.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/gaussianPointSplattingScan.d.ts +5 -0
- package/ShadersWGSL/ShadersInclude/gaussianPointSplattingScan.js +17 -0
- package/ShadersWGSL/ShadersInclude/gaussianPointSplattingScan.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.d.ts +1 -0
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +6 -78
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js +2 -2
- package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/gaussianSplattingShared.d.ts +5 -0
- package/ShadersWGSL/ShadersInclude/gaussianSplattingShared.js +79 -0
- package/ShadersWGSL/ShadersInclude/gaussianSplattingShared.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/geometryRenderingFragment.d.ts +6 -0
- package/ShadersWGSL/ShadersInclude/geometryRenderingFragment.js +76 -0
- package/ShadersWGSL/ShadersInclude/geometryRenderingFragment.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/lightFragment.js +1 -1
- package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +27 -3
- package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/meshBlendTagFragmentOutput.d.ts +5 -0
- package/ShadersWGSL/ShadersInclude/meshBlendTagFragmentOutput.js +18 -0
- package/ShadersWGSL/ShadersInclude/meshBlendTagFragmentOutput.js.map +1 -0
- package/ShadersWGSL/ShadersInclude/openpbrBlockPrePass.d.ts +1 -0
- package/ShadersWGSL/ShadersInclude/openpbrBlockPrePass.js +11 -25
- package/ShadersWGSL/ShadersInclude/openpbrBlockPrePass.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.d.ts +1 -0
- package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js +11 -25
- package/ShadersWGSL/ShadersInclude/pbrBlockPrePass.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrDebug.js +5 -1
- package/ShadersWGSL/ShadersInclude/pbrDebug.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/prePassDeclaration.js +6 -1
- package/ShadersWGSL/ShadersInclude/prePassDeclaration.js.map +1 -1
- package/ShadersWGSL/default.fragment.js +17 -48
- package/ShadersWGSL/default.fragment.js.map +1 -1
- package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js +15 -2
- package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js.map +1 -1
- package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js +15 -2
- package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js.map +1 -1
- package/ShadersWGSL/gaussianPointSplattingBlit.fragment.d.ts +5 -0
- package/ShadersWGSL/gaussianPointSplattingBlit.fragment.js +22 -0
- package/ShadersWGSL/gaussianPointSplattingBlit.fragment.js.map +1 -0
- package/ShadersWGSL/gaussianPointSplattingBlit.vertex.d.ts +5 -0
- package/ShadersWGSL/gaussianPointSplattingBlit.vertex.js +19 -0
- package/ShadersWGSL/gaussianPointSplattingBlit.vertex.js.map +1 -0
- package/ShadersWGSL/gaussianPointSplattingDepthBlit.fragment.d.ts +5 -0
- package/ShadersWGSL/gaussianPointSplattingDepthBlit.fragment.js +21 -0
- package/ShadersWGSL/gaussianPointSplattingDepthBlit.fragment.js.map +1 -0
- package/ShadersWGSL/gaussianSplatting.fragment.js +63 -2
- package/ShadersWGSL/gaussianSplatting.fragment.js.map +1 -1
- package/ShadersWGSL/gaussianSplatting.vertex.js +82 -1
- package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
- package/ShadersWGSL/gaussianSplattingDepth.vertex.js +2 -1
- package/ShadersWGSL/gaussianSplattingDepth.vertex.js.map +1 -1
- package/ShadersWGSL/gaussianSplattingVoxel.vertex.js +2 -1
- package/ShadersWGSL/gaussianSplattingVoxel.vertex.js.map +1 -1
- package/ShadersWGSL/geometry.fragment.js +37 -2
- package/ShadersWGSL/geometry.fragment.js.map +1 -1
- package/ShadersWGSL/gpsHiZBuild.compute.d.ts +5 -0
- package/ShadersWGSL/gpsHiZBuild.compute.js +16 -0
- package/ShadersWGSL/gpsHiZBuild.compute.js.map +1 -0
- package/ShadersWGSL/gpsPartition.compute.d.ts +5 -0
- package/ShadersWGSL/gpsPartition.compute.js +27 -0
- package/ShadersWGSL/gpsPartition.compute.js.map +1 -0
- package/ShadersWGSL/gpsPreprocess.compute.d.ts +5 -0
- package/ShadersWGSL/gpsPreprocess.compute.js +86 -0
- package/ShadersWGSL/gpsPreprocess.compute.js.map +1 -0
- package/ShadersWGSL/gpsResolve.compute.d.ts +5 -0
- package/ShadersWGSL/gpsResolve.compute.js +41 -0
- package/ShadersWGSL/gpsResolve.compute.js.map +1 -0
- package/ShadersWGSL/gpsScanAdd.compute.d.ts +5 -0
- package/ShadersWGSL/gpsScanAdd.compute.js +22 -0
- package/ShadersWGSL/gpsScanAdd.compute.js.map +1 -0
- package/ShadersWGSL/gpsScanBlocks.compute.d.ts +5 -0
- package/ShadersWGSL/gpsScanBlocks.compute.js +23 -0
- package/ShadersWGSL/gpsScanBlocks.compute.js.map +1 -0
- package/ShadersWGSL/gpsScanSums.compute.d.ts +5 -0
- package/ShadersWGSL/gpsScanSums.compute.js +30 -0
- package/ShadersWGSL/gpsScanSums.compute.js.map +1 -0
- package/ShadersWGSL/gpsSplat.compute.d.ts +5 -0
- package/ShadersWGSL/gpsSplat.compute.js +37 -0
- package/ShadersWGSL/gpsSplat.compute.js.map +1 -0
- package/ShadersWGSL/gpuRenderParticles.fragment.js +47 -2
- package/ShadersWGSL/gpuRenderParticles.fragment.js.map +1 -1
- package/ShadersWGSL/gpuRenderParticles.vertex.js +110 -7
- package/ShadersWGSL/gpuRenderParticles.vertex.js.map +1 -1
- package/ShadersWGSL/meshBlending.fragment.d.ts +5 -0
- package/ShadersWGSL/meshBlending.fragment.js +576 -0
- package/ShadersWGSL/meshBlending.fragment.js.map +1 -0
- package/ShadersWGSL/minmaxRedux.fragment.js +20 -3
- package/ShadersWGSL/minmaxRedux.fragment.js.map +1 -1
- package/ShadersWGSL/openpbr.fragment.js +2 -1
- package/ShadersWGSL/openpbr.fragment.js.map +1 -1
- package/ShadersWGSL/particles.fragment.js +45 -1
- package/ShadersWGSL/particles.fragment.js.map +1 -1
- package/ShadersWGSL/particles.vertex.js +86 -4
- package/ShadersWGSL/particles.vertex.js.map +1 -1
- package/ShadersWGSL/pbr.fragment.js +2 -1
- package/ShadersWGSL/pbr.fragment.js.map +1 -1
- package/ShadersWGSL/sprites.fragment.js +56 -2
- package/ShadersWGSL/sprites.fragment.js.map +1 -1
- package/ShadersWGSL/sprites.vertex.js +62 -1
- package/ShadersWGSL/sprites.vertex.js.map +1 -1
- package/Sprites/spriteManager.d.ts +13 -0
- package/Sprites/spriteManager.js +15 -0
- package/Sprites/spriteManager.js.map +1 -1
- package/Sprites/spriteRenderer.d.ts +24 -1
- package/Sprites/spriteRenderer.js +368 -50
- package/Sprites/spriteRenderer.js.map +1 -1
- package/Sprites/thinSprite.d.ts +4 -0
- package/Sprites/thinSprite.js +4 -0
- package/Sprites/thinSprite.js.map +1 -1
- package/States/alphaCullingState.d.ts +3 -1
- package/States/alphaCullingState.js +18 -3
- package/States/alphaCullingState.js.map +1 -1
- package/XR/features/WebXRSpaceWarp.pure.js +2 -1
- package/XR/features/WebXRSpaceWarp.pure.js.map +1 -1
- package/XR/webXRDefaultExperience.d.ts +5 -1
- package/XR/webXRDefaultExperience.js.map +1 -1
- package/XR/webXREnterExitUI.d.ts +2 -1
- package/XR/webXREnterExitUI.js.map +1 -1
- package/assetContainer.d.ts +1 -0
- package/assetContainer.js +5 -1
- package/assetContainer.js.map +1 -1
- package/package.json +1 -1
- package/scene.pure.d.ts +36 -2
- package/scene.pure.js +63 -4
- package/scene.pure.js.map +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gaussianPointSplattingDepthBlitMaterial.js","sourceRoot":"","sources":["../../../../../dev/core/src/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,gDAAgD,CAAC;AAE/D,OAAO,qDAAqD,CAAC;AAC7D,OAAO,4DAA4D,CAAC","sourcesContent":["/**\n * Re-exports the pure implementation and imports required shaders for their runtime registration.\n * Import gaussianPointSplattingDepthBlitMaterial.pure for tree-shakeable, side-effect-free usage.\n */\nexport * from \"./gaussianPointSplattingDepthBlitMaterial.pure\";\n\nimport \"../../ShadersWGSL/gaussianPointSplattingBlit.vertex\";\nimport \"../../ShadersWGSL/gaussianPointSplattingDepthBlit.fragment\";\n"]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** This file must only contain pure code and pure imports */
|
|
2
|
+
import { type Scene } from "../../scene.pure.js";
|
|
3
|
+
import { ShaderMaterial } from "../shaderMaterial.pure.js";
|
|
4
|
+
import { type StorageBuffer } from "../../Buffers/storageBuffer.js";
|
|
5
|
+
import { type Matrix } from "../../Maths/math.vector.pure.js";
|
|
6
|
+
/**
|
|
7
|
+
* Writes resolved Gaussian Point Splatting depth into a DepthRenderer map with a fullscreen triangle.
|
|
8
|
+
* The depth is opaque nearest-surface depth, not the coverage-weighted `alphaBlendedDepth`. WebGPU only.
|
|
9
|
+
*/
|
|
10
|
+
export declare class GaussianPointSplattingDepthBlitMaterial extends ShaderMaterial {
|
|
11
|
+
private readonly _resolution;
|
|
12
|
+
private readonly _projZ;
|
|
13
|
+
private readonly _depthValues;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a new depth blit material.
|
|
16
|
+
* @param name material name
|
|
17
|
+
* @param scene hosting scene
|
|
18
|
+
*/
|
|
19
|
+
constructor(name: string, scene: Scene);
|
|
20
|
+
/**
|
|
21
|
+
* Binds the resolved accumulation buffer; only its coverage channel is read, to reject empty pixels.
|
|
22
|
+
* @param buffer the renderer's accumulation buffer
|
|
23
|
+
*/
|
|
24
|
+
setAccumBuffer(buffer: StorageBuffer): void;
|
|
25
|
+
/**
|
|
26
|
+
* Binds the resolved per-pixel surface depth buffer (NDC z).
|
|
27
|
+
* @param buffer the renderer's accumulation depth buffer
|
|
28
|
+
*/
|
|
29
|
+
setAccumDepthBuffer(buffer: StorageBuffer): void;
|
|
30
|
+
/**
|
|
31
|
+
* Sets the render resolution used to index the accumulation buffers.
|
|
32
|
+
* @param width render width in pixels
|
|
33
|
+
* @param height render height in pixels
|
|
34
|
+
*/
|
|
35
|
+
setResolution(width: number, height: number): void;
|
|
36
|
+
/**
|
|
37
|
+
* Sets the active camera's projection matrix z-row, used to recover clip-space z from the stored NDC z.
|
|
38
|
+
* @param m10 projection matrix element [10]
|
|
39
|
+
* @param m11 projection matrix element [11]
|
|
40
|
+
* @param m14 projection matrix element [14]
|
|
41
|
+
* @param m15 projection matrix element [15]
|
|
42
|
+
*/
|
|
43
|
+
setProjectionZ(m10: number, m11: number, m14: number, m15: number): void;
|
|
44
|
+
/**
|
|
45
|
+
* Sets the inverse full projection to recover clip-space z for the depth metric.
|
|
46
|
+
* @param inverseProjection inverse camera projection matrix
|
|
47
|
+
*/
|
|
48
|
+
setInverseProjection(inverseProjection: Matrix): void;
|
|
49
|
+
/**
|
|
50
|
+
* Sets the depth renderer's (minZ, minZ + maxZ) normalization pair.
|
|
51
|
+
* @param minZ the depth metric offset
|
|
52
|
+
* @param minZPlusMaxZ the depth metric divisor
|
|
53
|
+
*/
|
|
54
|
+
setDepthValues(minZ: number, minZPlusMaxZ: number): void;
|
|
55
|
+
/**
|
|
56
|
+
* Sets whether the engine uses a reverse depth buffer (negates clip-space z in the metric).
|
|
57
|
+
* @param reverse true when the engine uses a reverse depth buffer
|
|
58
|
+
*/
|
|
59
|
+
setReverseDepth(reverse: boolean): void;
|
|
60
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/** This file must only contain pure code and pure imports */
|
|
2
|
+
import { ShaderMaterial } from "../shaderMaterial.pure.js";
|
|
3
|
+
|
|
4
|
+
import { Vector2, Vector4 } from "../../Maths/math.vector.pure.js";
|
|
5
|
+
/**
|
|
6
|
+
* Writes resolved Gaussian Point Splatting depth into a DepthRenderer map with a fullscreen triangle.
|
|
7
|
+
* The depth is opaque nearest-surface depth, not the coverage-weighted `alphaBlendedDepth`. WebGPU only.
|
|
8
|
+
*/
|
|
9
|
+
export class GaussianPointSplattingDepthBlitMaterial extends ShaderMaterial {
|
|
10
|
+
/**
|
|
11
|
+
* Creates a new depth blit material.
|
|
12
|
+
* @param name material name
|
|
13
|
+
* @param scene hosting scene
|
|
14
|
+
*/
|
|
15
|
+
constructor(name, scene) {
|
|
16
|
+
super(name, scene, { vertex: "gaussianPointSplattingBlit", fragment: "gaussianPointSplattingDepthBlit" }, {
|
|
17
|
+
attributes: ["position"],
|
|
18
|
+
uniforms: ["resolution", "depthValues", "projZ", "inverseProjection", "useInverseProjection", "reverseDepth"],
|
|
19
|
+
storageBuffers: ["accumBuffer", "accumDepth"],
|
|
20
|
+
shaderLanguage: 1 /* ShaderLanguage.WGSL */,
|
|
21
|
+
needAlphaBlending: false,
|
|
22
|
+
});
|
|
23
|
+
// Reused per-frame uniform values; ShaderMaterial keeps references to them.
|
|
24
|
+
this._resolution = new Vector2();
|
|
25
|
+
this._projZ = new Vector4();
|
|
26
|
+
this._depthValues = new Vector2();
|
|
27
|
+
// Depth writes stay on so the blit composes against meshes already in the map.
|
|
28
|
+
this.backFaceCulling = false;
|
|
29
|
+
this.alphaMode = 0;
|
|
30
|
+
this.forceDepthWrite = true;
|
|
31
|
+
this.setFloat("useInverseProjection", 0);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Binds the resolved accumulation buffer; only its coverage channel is read, to reject empty pixels.
|
|
35
|
+
* @param buffer the renderer's accumulation buffer
|
|
36
|
+
*/
|
|
37
|
+
setAccumBuffer(buffer) {
|
|
38
|
+
this.setStorageBuffer("accumBuffer", buffer);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Binds the resolved per-pixel surface depth buffer (NDC z).
|
|
42
|
+
* @param buffer the renderer's accumulation depth buffer
|
|
43
|
+
*/
|
|
44
|
+
setAccumDepthBuffer(buffer) {
|
|
45
|
+
this.setStorageBuffer("accumDepth", buffer);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Sets the render resolution used to index the accumulation buffers.
|
|
49
|
+
* @param width render width in pixels
|
|
50
|
+
* @param height render height in pixels
|
|
51
|
+
*/
|
|
52
|
+
setResolution(width, height) {
|
|
53
|
+
this.setVector2("resolution", this._resolution.set(width, height));
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Sets the active camera's projection matrix z-row, used to recover clip-space z from the stored NDC z.
|
|
57
|
+
* @param m10 projection matrix element [10]
|
|
58
|
+
* @param m11 projection matrix element [11]
|
|
59
|
+
* @param m14 projection matrix element [14]
|
|
60
|
+
* @param m15 projection matrix element [15]
|
|
61
|
+
*/
|
|
62
|
+
setProjectionZ(m10, m11, m14, m15) {
|
|
63
|
+
this.setVector4("projZ", this._projZ.set(m10, m11, m14, m15));
|
|
64
|
+
this.setFloat("useInverseProjection", 0);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Sets the inverse full projection to recover clip-space z for the depth metric.
|
|
68
|
+
* @param inverseProjection inverse camera projection matrix
|
|
69
|
+
*/
|
|
70
|
+
setInverseProjection(inverseProjection) {
|
|
71
|
+
this.setMatrix("inverseProjection", inverseProjection);
|
|
72
|
+
this.setFloat("useInverseProjection", 1);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Sets the depth renderer's (minZ, minZ + maxZ) normalization pair.
|
|
76
|
+
* @param minZ the depth metric offset
|
|
77
|
+
* @param minZPlusMaxZ the depth metric divisor
|
|
78
|
+
*/
|
|
79
|
+
setDepthValues(minZ, minZPlusMaxZ) {
|
|
80
|
+
this.setVector2("depthValues", this._depthValues.set(minZ, minZPlusMaxZ));
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Sets whether the engine uses a reverse depth buffer (negates clip-space z in the metric).
|
|
84
|
+
* @param reverse true when the engine uses a reverse depth buffer
|
|
85
|
+
*/
|
|
86
|
+
setReverseDepth(reverse) {
|
|
87
|
+
this.setFloat("reverseDepth", reverse ? 1 : 0);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=gaussianPointSplattingDepthBlitMaterial.pure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gaussianPointSplattingDepthBlitMaterial.pure.js","sourceRoot":"","sources":["../../../../../dev/core/src/Materials/GaussianSplatting/gaussianPointSplattingDepthBlitMaterial.pure.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAG7D,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAe,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE5E;;;GAGG;AACH,MAAM,OAAO,uCAAwC,SAAQ,cAAc;IAMvE;;;;OAIG;IACH,YAAY,IAAY,EAAE,KAAY;QAClC,KAAK,CACD,IAAI,EACJ,KAAK,EACL,EAAE,MAAM,EAAE,4BAA4B,EAAE,QAAQ,EAAE,iCAAiC,EAAE,EACrF;YACI,UAAU,EAAE,CAAC,UAAU,CAAC;YACxB,QAAQ,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,cAAc,CAAC;YAC7G,cAAc,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC;YAC7C,cAAc,6BAAqB;YACnC,iBAAiB,EAAE,KAAK;SAC3B,CACJ,CAAC;QAtBN,4EAA4E;QAC3D,gBAAW,GAAG,IAAI,OAAO,EAAE,CAAC;QAC5B,WAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QACvB,iBAAY,GAAG,IAAI,OAAO,EAAE,CAAC;QAqB1C,+EAA+E;QAC/E,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,MAAqB;QACvC,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACI,mBAAmB,CAAC,MAAqB;QAC5C,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,KAAa,EAAE,MAAc;QAC9C,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;OAMG;IACI,cAAc,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,GAAW;QACpE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACI,oBAAoB,CAAC,iBAAyB;QACjD,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,IAAY,EAAE,YAAoB;QACpD,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACI,eAAe,CAAC,OAAgB;QACnC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;CACJ","sourcesContent":["/** This file must only contain pure code and pure imports */\n\nimport { type Scene } from \"core/scene.pure\";\nimport { ShaderMaterial } from \"core/Materials/shaderMaterial.pure\";\nimport { ShaderLanguage } from \"core/Materials/shaderLanguage\";\nimport { Constants } from \"core/Engines/constants\";\nimport { type StorageBuffer } from \"core/Buffers/storageBuffer\";\nimport { type Matrix, Vector2, Vector4 } from \"core/Maths/math.vector.pure\";\n\n/**\n * Writes resolved Gaussian Point Splatting depth into a DepthRenderer map with a fullscreen triangle.\n * The depth is opaque nearest-surface depth, not the coverage-weighted `alphaBlendedDepth`. WebGPU only.\n */\nexport class GaussianPointSplattingDepthBlitMaterial extends ShaderMaterial {\n // Reused per-frame uniform values; ShaderMaterial keeps references to them.\n private readonly _resolution = new Vector2();\n private readonly _projZ = new Vector4();\n private readonly _depthValues = new Vector2();\n\n /**\n * Creates a new depth blit material.\n * @param name material name\n * @param scene hosting scene\n */\n constructor(name: string, scene: Scene) {\n super(\n name,\n scene,\n { vertex: \"gaussianPointSplattingBlit\", fragment: \"gaussianPointSplattingDepthBlit\" },\n {\n attributes: [\"position\"],\n uniforms: [\"resolution\", \"depthValues\", \"projZ\", \"inverseProjection\", \"useInverseProjection\", \"reverseDepth\"],\n storageBuffers: [\"accumBuffer\", \"accumDepth\"],\n shaderLanguage: ShaderLanguage.WGSL,\n needAlphaBlending: false,\n }\n );\n\n // Depth writes stay on so the blit composes against meshes already in the map.\n this.backFaceCulling = false;\n this.alphaMode = Constants.ALPHA_DISABLE;\n this.forceDepthWrite = true;\n this.setFloat(\"useInverseProjection\", 0);\n }\n\n /**\n * Binds the resolved accumulation buffer; only its coverage channel is read, to reject empty pixels.\n * @param buffer the renderer's accumulation buffer\n */\n public setAccumBuffer(buffer: StorageBuffer): void {\n this.setStorageBuffer(\"accumBuffer\", buffer);\n }\n\n /**\n * Binds the resolved per-pixel surface depth buffer (NDC z).\n * @param buffer the renderer's accumulation depth buffer\n */\n public setAccumDepthBuffer(buffer: StorageBuffer): void {\n this.setStorageBuffer(\"accumDepth\", buffer);\n }\n\n /**\n * Sets the render resolution used to index the accumulation buffers.\n * @param width render width in pixels\n * @param height render height in pixels\n */\n public setResolution(width: number, height: number): void {\n this.setVector2(\"resolution\", this._resolution.set(width, height));\n }\n\n /**\n * Sets the active camera's projection matrix z-row, used to recover clip-space z from the stored NDC z.\n * @param m10 projection matrix element [10]\n * @param m11 projection matrix element [11]\n * @param m14 projection matrix element [14]\n * @param m15 projection matrix element [15]\n */\n public setProjectionZ(m10: number, m11: number, m14: number, m15: number): void {\n this.setVector4(\"projZ\", this._projZ.set(m10, m11, m14, m15));\n this.setFloat(\"useInverseProjection\", 0);\n }\n\n /**\n * Sets the inverse full projection to recover clip-space z for the depth metric.\n * @param inverseProjection inverse camera projection matrix\n */\n public setInverseProjection(inverseProjection: Matrix): void {\n this.setMatrix(\"inverseProjection\", inverseProjection);\n this.setFloat(\"useInverseProjection\", 1);\n }\n\n /**\n * Sets the depth renderer's (minZ, minZ + maxZ) normalization pair.\n * @param minZ the depth metric offset\n * @param minZPlusMaxZ the depth metric divisor\n */\n public setDepthValues(minZ: number, minZPlusMaxZ: number): void {\n this.setVector2(\"depthValues\", this._depthValues.set(minZ, minZPlusMaxZ));\n }\n\n /**\n * Sets whether the engine uses a reverse depth buffer (negates clip-space z in the metric).\n * @param reverse true when the engine uses a reverse depth buffer\n */\n public setReverseDepth(reverse: boolean): void {\n this.setFloat(\"reverseDepth\", reverse ? 1 : 0);\n }\n}\n"]}
|
|
@@ -106,11 +106,42 @@ export declare class GaussianSplattingDebugMaterialPlugin extends MaterialPlugin
|
|
|
106
106
|
private _dbgPartDataTexture;
|
|
107
107
|
private _textureDirty;
|
|
108
108
|
private _maxPartCount;
|
|
109
|
+
private _resolvedPartData;
|
|
110
|
+
private _mutableValuesSnapshot;
|
|
109
111
|
/**
|
|
110
112
|
* Creates a new GaussianSplattingDebugMaterialPlugin.
|
|
111
113
|
* @param material The GaussianSplattingMaterial to attach the plugin to.
|
|
112
114
|
*/
|
|
113
115
|
constructor(material: GaussianSplattingMaterial);
|
|
116
|
+
/**
|
|
117
|
+
* True when any global or per-part debug feature is active.
|
|
118
|
+
* @returns true when debug work is needed
|
|
119
|
+
*/
|
|
120
|
+
get isDebugActive(): boolean;
|
|
121
|
+
/**
|
|
122
|
+
* Returns resolved per-part debug data in the classic `dbgPartData` layout (5 RGBA rows per part).
|
|
123
|
+
* @param partCount current mesh part count
|
|
124
|
+
* @param engine engine used to size the LUT if needed
|
|
125
|
+
* @returns the resolved LUT floats and its per-row part-count stride
|
|
126
|
+
*/
|
|
127
|
+
getResolvedPartData(partCount: number, engine: AbstractEngine): {
|
|
128
|
+
data: Float32Array;
|
|
129
|
+
maxPartCount: number;
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Stores the current values of every externally mutable debug setting and reports whether any changed.
|
|
133
|
+
* @param partCount current mesh part count
|
|
134
|
+
* @returns true when at least one value differs from the previous call
|
|
135
|
+
*/
|
|
136
|
+
private _refreshMutableValuesSnapshot;
|
|
137
|
+
/**
|
|
138
|
+
* Writes a value into the snapshot and reports whether it replaced a different one.
|
|
139
|
+
* @param snapshot the snapshot buffer
|
|
140
|
+
* @param index the slot index to write
|
|
141
|
+
* @param value the current value
|
|
142
|
+
* @returns true when the stored value changed
|
|
143
|
+
*/
|
|
144
|
+
private _diffMutableValue;
|
|
114
145
|
private _isAnyFeatureActive;
|
|
115
146
|
private _markDirty;
|
|
116
147
|
/**
|
|
@@ -3,7 +3,7 @@ import { MaterialDefines } from "../materialDefines.js";
|
|
|
3
3
|
import { MaterialPluginBase } from "../materialPluginBase.pure.js";
|
|
4
4
|
import { RegisterClass } from "../../Misc/typeStore.js";
|
|
5
5
|
import { Logger } from "../../Misc/logger.js";
|
|
6
|
-
import { GetGaussianSplattingMaxPartCount } from "./gaussianSplattingMaterial.pure.js";
|
|
6
|
+
import { GetGaussianSplattingMaxPartCount, GetPartIndexVaryingDeclaration } from "./gaussianSplattingMaterial.pure.js";
|
|
7
7
|
import { RawTexture } from "../Textures/rawTexture.js";
|
|
8
8
|
|
|
9
9
|
/** @internal */
|
|
@@ -34,6 +34,8 @@ class GaussianSplattingDebugDefines extends MaterialDefines {
|
|
|
34
34
|
this.GS_DBG_SH_ORDER4 = 1;
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
+
// Clip box min/max (6) + opacity culling min/max (2) + size culling min/max (2) per snapshot slot.
|
|
38
|
+
const _MutableValuesPerSlot = 10;
|
|
37
39
|
/**
|
|
38
40
|
* Debug plugin for GaussianSplattingMaterial.
|
|
39
41
|
* Provides runtime controls for clipping, opacity/size culling, opacity scaling,
|
|
@@ -77,6 +79,8 @@ export class GaussianSplattingDebugMaterialPlugin extends MaterialPluginBase {
|
|
|
77
79
|
this._dbgPartDataTexture = null;
|
|
78
80
|
this._textureDirty = false;
|
|
79
81
|
this._maxPartCount = 0;
|
|
82
|
+
this._resolvedPartData = null;
|
|
83
|
+
this._mutableValuesSnapshot = null;
|
|
80
84
|
this._partArrays = [
|
|
81
85
|
this._partClippingBoxes,
|
|
82
86
|
this._partOpacityCullings,
|
|
@@ -90,6 +94,99 @@ export class GaussianSplattingDebugMaterialPlugin extends MaterialPluginBase {
|
|
|
90
94
|
this._partShOrder4s,
|
|
91
95
|
];
|
|
92
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* True when any global or per-part debug feature is active.
|
|
99
|
+
* @returns true when debug work is needed
|
|
100
|
+
*/
|
|
101
|
+
get isDebugActive() {
|
|
102
|
+
return this._isAnyFeatureActive();
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Returns resolved per-part debug data in the classic `dbgPartData` layout (5 RGBA rows per part).
|
|
106
|
+
* @param partCount current mesh part count
|
|
107
|
+
* @param engine engine used to size the LUT if needed
|
|
108
|
+
* @returns the resolved LUT floats and its per-row part-count stride
|
|
109
|
+
*/
|
|
110
|
+
getResolvedPartData(partCount, engine) {
|
|
111
|
+
if (!this._maxPartCount) {
|
|
112
|
+
this._maxPartCount = GetGaussianSplattingMaxPartCount(engine);
|
|
113
|
+
}
|
|
114
|
+
// Clip boxes and culling ranges are handed out by reference, so callers can change their values
|
|
115
|
+
// without going through a setter. Comparing the values catches that, like the classic non-compound
|
|
116
|
+
// path which reads them live at bind time.
|
|
117
|
+
const mutated = this._refreshMutableValuesSnapshot(partCount);
|
|
118
|
+
if (!this._resolvedPartData || this._resolvedPartData.partCount !== partCount || mutated) {
|
|
119
|
+
this._resolvedPartData = { partCount, data: this._buildTextureData(partCount), maxPartCount: this._maxPartCount };
|
|
120
|
+
}
|
|
121
|
+
return this._resolvedPartData;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Stores the current values of every externally mutable debug setting and reports whether any changed.
|
|
125
|
+
* @param partCount current mesh part count
|
|
126
|
+
* @returns true when at least one value differs from the previous call
|
|
127
|
+
*/
|
|
128
|
+
_refreshMutableValuesSnapshot(partCount) {
|
|
129
|
+
// One slot per part plus a trailing slot for the parts that resolve to the global settings.
|
|
130
|
+
const slotCount = partCount + 1;
|
|
131
|
+
let snapshot = this._mutableValuesSnapshot;
|
|
132
|
+
let changed = false;
|
|
133
|
+
if (!snapshot || snapshot.length !== slotCount * _MutableValuesPerSlot) {
|
|
134
|
+
snapshot = new Float64Array(slotCount * _MutableValuesPerSlot);
|
|
135
|
+
this._mutableValuesSnapshot = snapshot;
|
|
136
|
+
changed = true;
|
|
137
|
+
}
|
|
138
|
+
for (let i = 0; i < slotCount; i++) {
|
|
139
|
+
const offset = i * _MutableValuesPerSlot;
|
|
140
|
+
const box = i < partCount ? (this._partClippingBoxes[i] ?? this._clippingBox) : this._clippingBox;
|
|
141
|
+
if (this._diffMutableValue(snapshot, offset, box ? box.min.x : 0)) {
|
|
142
|
+
changed = true;
|
|
143
|
+
}
|
|
144
|
+
if (this._diffMutableValue(snapshot, offset + 1, box ? box.min.y : 0)) {
|
|
145
|
+
changed = true;
|
|
146
|
+
}
|
|
147
|
+
if (this._diffMutableValue(snapshot, offset + 2, box ? box.min.z : 0)) {
|
|
148
|
+
changed = true;
|
|
149
|
+
}
|
|
150
|
+
if (this._diffMutableValue(snapshot, offset + 3, box ? box.max.x : 0)) {
|
|
151
|
+
changed = true;
|
|
152
|
+
}
|
|
153
|
+
if (this._diffMutableValue(snapshot, offset + 4, box ? box.max.y : 0)) {
|
|
154
|
+
changed = true;
|
|
155
|
+
}
|
|
156
|
+
if (this._diffMutableValue(snapshot, offset + 5, box ? box.max.z : 0)) {
|
|
157
|
+
changed = true;
|
|
158
|
+
}
|
|
159
|
+
const opacityCulling = i < partCount ? (this._partOpacityCullings[i] ?? this._opacityCulling) : this._opacityCulling;
|
|
160
|
+
if (this._diffMutableValue(snapshot, offset + 6, opacityCulling ? opacityCulling.min : 0)) {
|
|
161
|
+
changed = true;
|
|
162
|
+
}
|
|
163
|
+
if (this._diffMutableValue(snapshot, offset + 7, opacityCulling ? opacityCulling.max : 0)) {
|
|
164
|
+
changed = true;
|
|
165
|
+
}
|
|
166
|
+
const sizeCulling = i < partCount ? (this._partSizeCullings[i] ?? this._sizeCulling) : this._sizeCulling;
|
|
167
|
+
if (this._diffMutableValue(snapshot, offset + 8, sizeCulling ? sizeCulling.min : 0)) {
|
|
168
|
+
changed = true;
|
|
169
|
+
}
|
|
170
|
+
if (this._diffMutableValue(snapshot, offset + 9, sizeCulling ? sizeCulling.max : 0)) {
|
|
171
|
+
changed = true;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return changed;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Writes a value into the snapshot and reports whether it replaced a different one.
|
|
178
|
+
* @param snapshot the snapshot buffer
|
|
179
|
+
* @param index the slot index to write
|
|
180
|
+
* @param value the current value
|
|
181
|
+
* @returns true when the stored value changed
|
|
182
|
+
*/
|
|
183
|
+
_diffMutableValue(snapshot, index, value) {
|
|
184
|
+
if (snapshot[index] === value) {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
snapshot[index] = value;
|
|
188
|
+
return true;
|
|
189
|
+
}
|
|
93
190
|
_isAnyFeatureActive() {
|
|
94
191
|
return (this._clippingBox !== null ||
|
|
95
192
|
this._opacityCulling !== null ||
|
|
@@ -115,6 +212,7 @@ export class GaussianSplattingDebugMaterialPlugin extends MaterialPluginBase {
|
|
|
115
212
|
_markDirty() {
|
|
116
213
|
this.markAllDefinesAsDirty();
|
|
117
214
|
this._textureDirty = true;
|
|
215
|
+
this._resolvedPartData = null;
|
|
118
216
|
}
|
|
119
217
|
// ----- Public API -----
|
|
120
218
|
/**
|
|
@@ -392,7 +490,7 @@ uniform float dbgOpacityScale;
|
|
|
392
490
|
#endif
|
|
393
491
|
#if defined(GS_DBG_ENABLED) && IS_COMPOUND
|
|
394
492
|
uniform sampler2D dbgPartData;
|
|
395
|
-
|
|
493
|
+
${GetPartIndexVaryingDeclaration(0 /* ShaderLanguage.GLSL */)}
|
|
396
494
|
#endif
|
|
397
495
|
`,
|
|
398
496
|
CUSTOM_VERTEX_UPDATE: `
|
|
@@ -472,7 +570,7 @@ varying float vPartIndex;
|
|
|
472
570
|
CUSTOM_FRAGMENT_DEFINITIONS: `
|
|
473
571
|
#if defined(GS_DBG_ENABLED) && IS_COMPOUND
|
|
474
572
|
uniform sampler2D dbgPartData;
|
|
475
|
-
|
|
573
|
+
${GetPartIndexVaryingDeclaration(0 /* ShaderLanguage.GLSL */)}
|
|
476
574
|
#endif
|
|
477
575
|
`,
|
|
478
576
|
CUSTOM_FRAGMENT_BEFORE_FRAGCOLOR: `
|
|
@@ -507,7 +605,7 @@ uniform dbgOpacityScale: f32;
|
|
|
507
605
|
#endif
|
|
508
606
|
#if defined(GS_DBG_ENABLED) && IS_COMPOUND
|
|
509
607
|
var dbgPartData: texture_2d<f32>;
|
|
510
|
-
|
|
608
|
+
${GetPartIndexVaryingDeclaration(1 /* ShaderLanguage.WGSL */)}
|
|
511
609
|
#endif
|
|
512
610
|
`,
|
|
513
611
|
CUSTOM_VERTEX_UPDATE: `
|
|
@@ -587,7 +685,7 @@ varying vPartIndex: f32;
|
|
|
587
685
|
CUSTOM_FRAGMENT_DEFINITIONS: `
|
|
588
686
|
#if defined(GS_DBG_ENABLED) && IS_COMPOUND
|
|
589
687
|
var dbgPartData: texture_2d<f32>;
|
|
590
|
-
|
|
688
|
+
${GetPartIndexVaryingDeclaration(1 /* ShaderLanguage.WGSL */)}
|
|
591
689
|
#endif
|
|
592
690
|
`,
|
|
593
691
|
CUSTOM_FRAGMENT_BEFORE_FRAGCOLOR: `
|