@codexo/exojs 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +307 -0
- package/LICENSE +21 -0
- package/README.md +59 -23
- package/dist/esm/animation/Easing.d.ts +1 -0
- package/dist/esm/animation/Easing.d.ts.map +1 -0
- package/dist/esm/animation/Tween.d.ts +1 -0
- package/dist/esm/animation/Tween.d.ts.map +1 -0
- package/dist/esm/animation/TweenManager.d.ts +1 -0
- package/dist/esm/animation/TweenManager.d.ts.map +1 -0
- package/dist/esm/animation/index.d.ts +1 -0
- package/dist/esm/animation/index.d.ts.map +1 -0
- package/dist/esm/animation/types.d.ts +1 -0
- package/dist/esm/animation/types.d.ts.map +1 -0
- package/dist/esm/audio/AbstractMedia.d.ts +5 -4
- package/dist/esm/audio/AbstractMedia.d.ts.map +1 -0
- package/dist/esm/audio/AbstractMedia.js.map +1 -1
- package/dist/esm/audio/AudioAnalyser.d.ts +4 -3
- package/dist/esm/audio/AudioAnalyser.d.ts.map +1 -0
- package/dist/esm/audio/AudioAnalyser.js +1 -1
- package/dist/esm/audio/AudioAnalyser.js.map +1 -1
- package/dist/esm/audio/AudioBus.d.ts +1 -0
- package/dist/esm/audio/AudioBus.d.ts.map +1 -0
- package/dist/esm/audio/AudioFilter.d.ts +1 -0
- package/dist/esm/audio/AudioFilter.d.ts.map +1 -0
- package/dist/esm/audio/AudioListener.d.ts +4 -3
- package/dist/esm/audio/AudioListener.d.ts.map +1 -0
- package/dist/esm/audio/AudioManager.d.ts +1 -0
- package/dist/esm/audio/AudioManager.d.ts.map +1 -0
- package/dist/esm/audio/BeatDetector.d.ts +5 -4
- package/dist/esm/audio/BeatDetector.d.ts.map +1 -0
- package/dist/esm/audio/BeatDetector.js +1 -1
- package/dist/esm/audio/BeatDetector.js.map +1 -1
- package/dist/esm/audio/Envelope.d.ts +1 -0
- package/dist/esm/audio/Envelope.d.ts.map +1 -0
- package/dist/esm/audio/Media.d.ts +2 -1
- package/dist/esm/audio/Media.d.ts.map +1 -0
- package/dist/esm/audio/Music.d.ts +4 -3
- package/dist/esm/audio/Music.d.ts.map +1 -0
- package/dist/esm/audio/Music.js +1 -1
- package/dist/esm/audio/Music.js.map +1 -1
- package/dist/esm/audio/OscillatorSound.d.ts +2 -1
- package/dist/esm/audio/OscillatorSound.d.ts.map +1 -0
- package/dist/esm/audio/Sound.d.ts +5 -4
- package/dist/esm/audio/Sound.d.ts.map +1 -0
- package/dist/esm/audio/Sound.js +2 -2
- package/dist/esm/audio/Sound.js.map +1 -1
- package/dist/esm/audio/audio-context.d.ts +2 -1
- package/dist/esm/audio/audio-context.d.ts.map +1 -0
- package/dist/esm/audio/crossFade.d.ts +1 -0
- package/dist/esm/audio/crossFade.d.ts.map +1 -0
- package/dist/esm/audio/dsp/fft.d.ts +1 -0
- package/dist/esm/audio/dsp/fft.d.ts.map +1 -0
- package/dist/esm/audio/dsp/mel.d.ts +1 -0
- package/dist/esm/audio/dsp/mel.d.ts.map +1 -0
- package/dist/esm/audio/dsp/tempogram.d.ts +1 -0
- package/dist/esm/audio/dsp/tempogram.d.ts.map +1 -0
- package/dist/esm/audio/filters/ChorusFilter.d.ts +2 -1
- package/dist/esm/audio/filters/ChorusFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/CompressorFilter.d.ts +2 -1
- package/dist/esm/audio/filters/CompressorFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/DelayFilter.d.ts +2 -1
- package/dist/esm/audio/filters/DelayFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/DuckingFilter.d.ts +2 -1
- package/dist/esm/audio/filters/DuckingFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/DuckingFilter.js.map +1 -1
- package/dist/esm/audio/filters/EqualizerFilter.d.ts +2 -1
- package/dist/esm/audio/filters/EqualizerFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/GranularFilter.d.ts +1 -0
- package/dist/esm/audio/filters/GranularFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/GranularFilter.js.map +1 -1
- package/dist/esm/audio/filters/HighpassFilter.d.ts +2 -1
- package/dist/esm/audio/filters/HighpassFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/LowpassFilter.d.ts +2 -1
- package/dist/esm/audio/filters/LowpassFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/PitchShiftFilter.d.ts +1 -0
- package/dist/esm/audio/filters/PitchShiftFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/PitchShiftFilter.js.map +1 -1
- package/dist/esm/audio/filters/ReverbFilter.d.ts +2 -1
- package/dist/esm/audio/filters/ReverbFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/VocoderFilter.d.ts +2 -1
- package/dist/esm/audio/filters/VocoderFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/VocoderFilter.js.map +1 -1
- package/dist/esm/audio/filters/WorkletFilter.d.ts +2 -1
- package/dist/esm/audio/filters/WorkletFilter.d.ts.map +1 -0
- package/dist/esm/audio/filters/index.d.ts +1 -0
- package/dist/esm/audio/filters/index.d.ts.map +1 -0
- package/dist/esm/audio/index.d.ts +2 -1
- package/dist/esm/audio/index.d.ts.map +1 -0
- package/dist/esm/audio/worklet/registerWorklet.d.ts +1 -0
- package/dist/esm/audio/worklet/registerWorklet.d.ts.map +1 -0
- package/dist/esm/audio/worklets/beat-detector.worklet.d.ts +1 -0
- package/dist/esm/audio/worklets/beat-detector.worklet.d.ts.map +1 -0
- package/dist/esm/audio/worklets/granular.worklet.d.ts +1 -0
- package/dist/esm/audio/worklets/granular.worklet.d.ts.map +1 -0
- package/dist/esm/audio/worklets/pitch-shift.worklet.d.ts +1 -0
- package/dist/esm/audio/worklets/pitch-shift.worklet.d.ts.map +1 -0
- package/dist/esm/audio/worklets/vocoder.worklet.d.ts +1 -0
- package/dist/esm/audio/worklets/vocoder.worklet.d.ts.map +1 -0
- package/dist/esm/core/Application.d.ts +24 -14
- package/dist/esm/core/Application.d.ts.map +1 -0
- package/dist/esm/core/Application.js +50 -5
- package/dist/esm/core/Application.js.map +1 -1
- package/dist/esm/core/Bounds.d.ts +3 -2
- package/dist/esm/core/Bounds.d.ts.map +1 -0
- package/dist/esm/core/BuildInfo.d.ts +16 -0
- package/dist/esm/core/BuildInfo.d.ts.map +1 -0
- package/dist/esm/core/BuildInfo.js +8 -0
- package/dist/esm/core/BuildInfo.js.map +1 -0
- package/dist/esm/core/Clock.d.ts +1 -0
- package/dist/esm/core/Clock.d.ts.map +1 -0
- package/dist/esm/core/Clock.js +1 -1
- package/dist/esm/core/Clock.js.map +1 -1
- package/dist/esm/core/Color.d.ts +2 -1
- package/dist/esm/core/Color.d.ts.map +1 -0
- package/dist/esm/core/Color.js.map +1 -1
- package/dist/esm/core/Perf.d.ts +1 -0
- package/dist/esm/core/Perf.d.ts.map +1 -0
- package/dist/esm/core/Scene.d.ts +7 -6
- package/dist/esm/core/Scene.d.ts.map +1 -0
- package/dist/esm/core/SceneManager.d.ts +1 -0
- package/dist/esm/core/SceneManager.d.ts.map +1 -0
- package/dist/esm/core/SceneNode.d.ts +11 -10
- package/dist/esm/core/SceneNode.d.ts.map +1 -0
- package/dist/esm/core/Signal.d.ts +1 -0
- package/dist/esm/core/Signal.d.ts.map +1 -0
- package/dist/esm/core/Time.d.ts +2 -1
- package/dist/esm/core/Time.d.ts.map +1 -0
- package/dist/esm/core/Timer.d.ts +2 -1
- package/dist/esm/core/Timer.d.ts.map +1 -0
- package/dist/esm/core/Timer.js +1 -1
- package/dist/esm/core/Timer.js.map +1 -1
- package/dist/esm/core/capabilities.d.ts +1 -0
- package/dist/esm/core/capabilities.d.ts.map +1 -0
- package/dist/esm/core/dev.d.ts +1 -0
- package/dist/esm/core/dev.d.ts.map +1 -0
- package/dist/esm/core/dev.js +31 -10
- package/dist/esm/core/dev.js.map +1 -1
- package/dist/esm/core/index.d.ts +2 -0
- package/dist/esm/core/index.d.ts.map +1 -0
- package/dist/esm/core/types.d.ts +2 -1
- package/dist/esm/core/types.d.ts.map +1 -0
- package/dist/esm/core/utils.d.ts +4 -3
- package/dist/esm/core/utils.d.ts.map +1 -0
- package/dist/esm/core/utils.js +1 -1
- package/dist/esm/core/utils.js.map +1 -1
- package/dist/esm/debug/BoundingBoxesLayer.d.ts +4 -3
- package/dist/esm/debug/BoundingBoxesLayer.d.ts.map +1 -0
- package/dist/esm/debug/DebugLayer.d.ts +4 -3
- package/dist/esm/debug/DebugLayer.d.ts.map +1 -0
- package/dist/esm/debug/DebugOverlay.d.ts +2 -1
- package/dist/esm/debug/DebugOverlay.d.ts.map +1 -0
- package/dist/esm/debug/HitTestLayer.d.ts +4 -3
- package/dist/esm/debug/HitTestLayer.d.ts.map +1 -0
- package/dist/esm/debug/PerformanceLayer.d.ts +4 -3
- package/dist/esm/debug/PerformanceLayer.d.ts.map +1 -0
- package/dist/esm/debug/PointerStackLayer.d.ts +4 -3
- package/dist/esm/debug/PointerStackLayer.d.ts.map +1 -0
- package/dist/esm/debug/RenderPassInspectorLayer.d.ts +33 -4
- package/dist/esm/debug/RenderPassInspectorLayer.d.ts.map +1 -0
- package/dist/esm/debug/RenderPassInspectorLayer.js +41 -0
- package/dist/esm/debug/RenderPassInspectorLayer.js.map +1 -1
- package/dist/esm/debug/index.d.ts +2 -1
- package/dist/esm/debug/index.d.ts.map +1 -0
- package/dist/esm/extensions/Extension.d.ts +102 -0
- package/dist/esm/extensions/Extension.d.ts.map +1 -0
- package/dist/esm/extensions/ExtensionRegistry.d.ts +35 -0
- package/dist/esm/extensions/ExtensionRegistry.d.ts.map +1 -0
- package/dist/esm/extensions/ExtensionRegistry.js +63 -0
- package/dist/esm/extensions/ExtensionRegistry.js.map +1 -0
- package/dist/esm/extensions/index.d.ts +3 -0
- package/dist/esm/extensions/index.d.ts.map +1 -0
- package/dist/esm/extensions/index.js +2 -0
- package/dist/esm/extensions/index.js.map +1 -0
- package/dist/esm/extensions/materialize.d.ts +16 -0
- package/dist/esm/extensions/materialize.d.ts.map +1 -0
- package/dist/esm/extensions/materialize.js +61 -0
- package/dist/esm/extensions/materialize.js.map +1 -0
- package/dist/esm/extensions/snapshot.d.ts +26 -0
- package/dist/esm/extensions/snapshot.d.ts.map +1 -0
- package/dist/esm/extensions/snapshot.js +78 -0
- package/dist/esm/extensions/snapshot.js.map +1 -0
- package/dist/esm/extensions/testing.d.ts +7 -0
- package/dist/esm/extensions/testing.d.ts.map +1 -0
- package/dist/esm/index.d.ts +9 -8
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +29 -50
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/input/ArcadeStickGamepadMapping.d.ts +1 -0
- package/dist/esm/input/ArcadeStickGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/GameCubeGamepadMapping.d.ts +1 -0
- package/dist/esm/input/GameCubeGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/Gamepad.d.ts +2 -1
- package/dist/esm/input/Gamepad.d.ts.map +1 -0
- package/dist/esm/input/Gamepad.js +1 -1
- package/dist/esm/input/GamepadAxis.d.ts +1 -0
- package/dist/esm/input/GamepadAxis.d.ts.map +1 -0
- package/dist/esm/input/GamepadAxis.js +1 -1
- package/dist/esm/input/GamepadAxis.js.map +1 -1
- package/dist/esm/input/GamepadButton.d.ts +1 -0
- package/dist/esm/input/GamepadButton.d.ts.map +1 -0
- package/dist/esm/input/GamepadButton.js +1 -1
- package/dist/esm/input/GamepadButton.js.map +1 -1
- package/dist/esm/input/GamepadDefinitions.d.ts +1 -0
- package/dist/esm/input/GamepadDefinitions.d.ts.map +1 -0
- package/dist/esm/input/GamepadMapping.d.ts +1 -0
- package/dist/esm/input/GamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/GamepadPromptLayouts.d.ts +1 -0
- package/dist/esm/input/GamepadPromptLayouts.d.ts.map +1 -0
- package/dist/esm/input/GenericDualAnalogGamepadMapping.d.ts +1 -0
- package/dist/esm/input/GenericDualAnalogGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/GestureRecognizer.d.ts +3 -2
- package/dist/esm/input/GestureRecognizer.d.ts.map +1 -0
- package/dist/esm/input/InputBinding.d.ts +3 -2
- package/dist/esm/input/InputBinding.d.ts.map +1 -0
- package/dist/esm/input/InputManager.d.ts +4 -3
- package/dist/esm/input/InputManager.d.ts.map +1 -0
- package/dist/esm/input/InputManager.js +1 -1
- package/dist/esm/input/InteractionEvent.d.ts +2 -1
- package/dist/esm/input/InteractionEvent.d.ts.map +1 -0
- package/dist/esm/input/InteractionManager.d.ts +4 -3
- package/dist/esm/input/InteractionManager.d.ts.map +1 -0
- package/dist/esm/input/JoyConLeftGamepadMapping.d.ts +1 -0
- package/dist/esm/input/JoyConLeftGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/JoyConRightGamepadMapping.d.ts +1 -0
- package/dist/esm/input/JoyConRightGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/PlayStationGamepadMapping.d.ts +1 -0
- package/dist/esm/input/PlayStationGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/Pointer.d.ts +4 -3
- package/dist/esm/input/Pointer.d.ts.map +1 -0
- package/dist/esm/input/Pointer.js +1 -1
- package/dist/esm/input/Pointer.js.map +1 -1
- package/dist/esm/input/SteamControllerGamepadMapping.d.ts +1 -0
- package/dist/esm/input/SteamControllerGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/SteamDeckGamepadMapping.d.ts +1 -0
- package/dist/esm/input/SteamDeckGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/SwitchProGamepadMapping.d.ts +1 -0
- package/dist/esm/input/SwitchProGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/XboxGamepadMapping.d.ts +1 -0
- package/dist/esm/input/XboxGamepadMapping.d.ts.map +1 -0
- package/dist/esm/input/index.d.ts +1 -0
- package/dist/esm/input/index.d.ts.map +1 -0
- package/dist/esm/input/internal/interactionManagerRegistry.d.ts +2 -1
- package/dist/esm/input/internal/interactionManagerRegistry.d.ts.map +1 -0
- package/dist/esm/input/types.d.ts +1 -0
- package/dist/esm/input/types.d.ts.map +1 -0
- package/dist/esm/math/AbstractVector.d.ts +2 -1
- package/dist/esm/math/AbstractVector.d.ts.map +1 -0
- package/dist/esm/math/Circle.d.ts +7 -6
- package/dist/esm/math/Circle.d.ts.map +1 -0
- package/dist/esm/math/Circle.js.map +1 -1
- package/dist/esm/math/CircleLike.d.ts +1 -0
- package/dist/esm/math/CircleLike.d.ts.map +1 -0
- package/dist/esm/math/Collision.d.ts +3 -2
- package/dist/esm/math/Collision.d.ts.map +1 -0
- package/dist/esm/math/Ellipse.d.ts +7 -6
- package/dist/esm/math/Ellipse.d.ts.map +1 -0
- package/dist/esm/math/Ellipse.js.map +1 -1
- package/dist/esm/math/EllipseLike.d.ts +1 -0
- package/dist/esm/math/EllipseLike.d.ts.map +1 -0
- package/dist/esm/math/Flags.d.ts +2 -1
- package/dist/esm/math/Flags.d.ts.map +1 -0
- package/dist/esm/math/Interval.d.ts +2 -1
- package/dist/esm/math/Interval.d.ts.map +1 -0
- package/dist/esm/math/Line.d.ts +7 -6
- package/dist/esm/math/Line.d.ts.map +1 -0
- package/dist/esm/math/Line.js.map +1 -1
- package/dist/esm/math/LineLike.d.ts +1 -0
- package/dist/esm/math/LineLike.d.ts.map +1 -0
- package/dist/esm/math/Matrix.d.ts +2 -1
- package/dist/esm/math/Matrix.d.ts.map +1 -0
- package/dist/esm/math/Matrix.js.map +1 -1
- package/dist/esm/math/ObservableSize.d.ts +1 -0
- package/dist/esm/math/ObservableSize.d.ts.map +1 -0
- package/dist/esm/math/ObservableVector.d.ts +2 -1
- package/dist/esm/math/ObservableVector.d.ts.map +1 -0
- package/dist/esm/math/PointLike.d.ts +1 -0
- package/dist/esm/math/PointLike.d.ts.map +1 -0
- package/dist/esm/math/PolarVector.d.ts +2 -1
- package/dist/esm/math/PolarVector.d.ts.map +1 -0
- package/dist/esm/math/Polygon.d.ts +7 -6
- package/dist/esm/math/Polygon.d.ts.map +1 -0
- package/dist/esm/math/Polygon.js.map +1 -1
- package/dist/esm/math/PolygonLike.d.ts +2 -1
- package/dist/esm/math/PolygonLike.d.ts.map +1 -0
- package/dist/esm/math/Quadtree.d.ts +1 -0
- package/dist/esm/math/Quadtree.d.ts.map +1 -0
- package/dist/esm/math/Random.d.ts +1 -0
- package/dist/esm/math/Random.d.ts.map +1 -0
- package/dist/esm/math/Rectangle.d.ts +8 -7
- package/dist/esm/math/Rectangle.d.ts.map +1 -0
- package/dist/esm/math/Rectangle.js.map +1 -1
- package/dist/esm/math/RectangleLike.d.ts +1 -0
- package/dist/esm/math/RectangleLike.d.ts.map +1 -0
- package/dist/esm/math/Segment.d.ts +3 -2
- package/dist/esm/math/Segment.d.ts.map +1 -0
- package/dist/esm/math/Segment.js.map +1 -1
- package/dist/esm/math/ShapeLike.d.ts +3 -2
- package/dist/esm/math/ShapeLike.d.ts.map +1 -0
- package/dist/esm/math/Size.d.ts +2 -1
- package/dist/esm/math/Size.d.ts.map +1 -0
- package/dist/esm/math/Vector.d.ts +6 -5
- package/dist/esm/math/Vector.d.ts.map +1 -0
- package/dist/esm/math/Vector.js +1 -1
- package/dist/esm/math/collision-detection.d.ts +8 -7
- package/dist/esm/math/collision-detection.d.ts.map +1 -0
- package/dist/esm/math/collision-detection.js +1 -1
- package/dist/esm/math/collision-detection.js.map +1 -1
- package/dist/esm/math/collision-primitives.d.ts +3 -2
- package/dist/esm/math/collision-primitives.d.ts.map +1 -0
- package/dist/esm/math/geometry.d.ts +1 -0
- package/dist/esm/math/geometry.d.ts.map +1 -0
- package/dist/esm/math/index.d.ts +1 -0
- package/dist/esm/math/index.d.ts.map +1 -0
- package/dist/esm/math/swept-collision.d.ts +1 -0
- package/dist/esm/math/swept-collision.d.ts.map +1 -0
- package/dist/esm/math/triangulate.d.ts +1 -0
- package/dist/esm/math/triangulate.d.ts.map +1 -0
- package/dist/esm/math/utils.d.ts +2 -1
- package/dist/esm/math/utils.d.ts.map +1 -0
- package/dist/esm/renderer-sdk.d.ts +27 -0
- package/dist/esm/renderer-sdk.d.ts.map +1 -0
- package/dist/esm/rendering/BackendRenderPass.d.ts +17 -0
- package/dist/esm/rendering/BackendRenderPass.d.ts.map +1 -0
- package/dist/esm/rendering/BackendTargetPass.d.ts +38 -0
- package/dist/esm/rendering/BackendTargetPass.d.ts.map +1 -0
- package/dist/esm/rendering/{RenderTargetPass.js → BackendTargetPass.js} +12 -7
- package/dist/esm/rendering/BackendTargetPass.js.map +1 -0
- package/dist/esm/rendering/CallbackRenderPass.d.ts +38 -14
- package/dist/esm/rendering/CallbackRenderPass.d.ts.map +1 -0
- package/dist/esm/rendering/CallbackRenderPass.js +61 -13
- package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
- package/dist/esm/rendering/Camera.d.ts +3 -2
- package/dist/esm/rendering/Camera.d.ts.map +1 -0
- package/dist/esm/rendering/Camera.js.map +1 -1
- package/dist/esm/rendering/Container.d.ts +2 -1
- package/dist/esm/rendering/Container.d.ts.map +1 -0
- package/dist/esm/rendering/Drawable.d.ts +27 -3
- package/dist/esm/rendering/Drawable.d.ts.map +1 -0
- package/dist/esm/rendering/Drawable.js +35 -1
- package/dist/esm/rendering/Drawable.js.map +1 -1
- package/dist/esm/rendering/RenderBackend.d.ts +13 -10
- package/dist/esm/rendering/RenderBackend.d.ts.map +1 -0
- package/dist/esm/rendering/RenderBackendType.d.ts +1 -0
- package/dist/esm/rendering/RenderBackendType.d.ts.map +1 -0
- package/dist/esm/rendering/RenderNode.d.ts +13 -12
- package/dist/esm/rendering/RenderNode.d.ts.map +1 -0
- package/dist/esm/rendering/RenderNode.js +2 -2
- package/dist/esm/rendering/RenderNode.js.map +1 -1
- package/dist/esm/rendering/RenderNodePass.d.ts +38 -0
- package/dist/esm/rendering/RenderNodePass.d.ts.map +1 -0
- package/dist/esm/rendering/RenderNodePass.js +48 -0
- package/dist/esm/rendering/RenderNodePass.js.map +1 -0
- package/dist/esm/rendering/RenderPass.d.ts +53 -8
- package/dist/esm/rendering/RenderPass.d.ts.map +1 -0
- package/dist/esm/rendering/RenderPass.js +48 -0
- package/dist/esm/rendering/RenderPass.js.map +1 -0
- package/dist/esm/rendering/RenderPipeline.d.ts +61 -0
- package/dist/esm/rendering/RenderPipeline.d.ts.map +1 -0
- package/dist/esm/rendering/RenderPipeline.js +177 -0
- package/dist/esm/rendering/RenderPipeline.js.map +1 -0
- package/dist/esm/rendering/RenderStats.d.ts +1 -0
- package/dist/esm/rendering/RenderStats.d.ts.map +1 -0
- package/dist/esm/rendering/RenderTarget.d.ts +4 -3
- package/dist/esm/rendering/RenderTarget.d.ts.map +1 -0
- package/dist/esm/rendering/Renderer.d.ts +1 -0
- package/dist/esm/rendering/Renderer.d.ts.map +1 -0
- package/dist/esm/rendering/RendererRegistry.d.ts +13 -2
- package/dist/esm/rendering/RendererRegistry.d.ts.map +1 -0
- package/dist/esm/rendering/RendererRegistry.js +60 -7
- package/dist/esm/rendering/RendererRegistry.js.map +1 -1
- package/dist/esm/rendering/RenderingContext.d.ts +7 -6
- package/dist/esm/rendering/RenderingContext.d.ts.map +1 -0
- package/dist/esm/rendering/RenderingContext.js +5 -5
- package/dist/esm/rendering/TransformBuffer.d.ts +3 -2
- package/dist/esm/rendering/TransformBuffer.d.ts.map +1 -0
- package/dist/esm/rendering/View.d.ts +7 -6
- package/dist/esm/rendering/View.d.ts.map +1 -0
- package/dist/esm/rendering/coreRendererBindings.d.ts +10 -0
- package/dist/esm/rendering/coreRendererBindings.d.ts.map +1 -0
- package/dist/esm/rendering/coreRendererBindings.js +73 -0
- package/dist/esm/rendering/coreRendererBindings.js.map +1 -0
- package/dist/esm/rendering/filters/BlurFilter.d.ts +3 -2
- package/dist/esm/rendering/filters/BlurFilter.d.ts.map +1 -0
- package/dist/esm/rendering/filters/BlurFilter.js +2 -2
- package/dist/esm/rendering/filters/BlurFilter.js.map +1 -1
- package/dist/esm/rendering/filters/ColorFilter.d.ts +4 -3
- package/dist/esm/rendering/filters/ColorFilter.d.ts.map +1 -0
- package/dist/esm/rendering/filters/ColorFilter.js +2 -2
- package/dist/esm/rendering/filters/ColorFilter.js.map +1 -1
- package/dist/esm/rendering/filters/Filter.d.ts +3 -2
- package/dist/esm/rendering/filters/Filter.d.ts.map +1 -0
- package/dist/esm/rendering/filters/LutFilter.d.ts +4 -3
- package/dist/esm/rendering/filters/LutFilter.d.ts.map +1 -0
- package/dist/esm/rendering/filters/WebGl2ShaderFilter.d.ts +4 -3
- package/dist/esm/rendering/filters/WebGl2ShaderFilter.d.ts.map +1 -0
- package/dist/esm/rendering/filters/WebGl2ShaderFilter.js +2 -2
- package/dist/esm/rendering/filters/WebGl2ShaderFilter.js.map +1 -1
- package/dist/esm/rendering/filters/WebGpuShaderFilter.d.ts +3 -2
- package/dist/esm/rendering/filters/WebGpuShaderFilter.d.ts.map +1 -0
- package/dist/esm/rendering/filters/WebGpuShaderFilter.js +3 -3
- package/dist/esm/rendering/filters/WebGpuShaderFilter.js.map +1 -1
- package/dist/esm/rendering/geometry/Geometry.d.ts +2 -1
- package/dist/esm/rendering/geometry/Geometry.d.ts.map +1 -0
- package/dist/esm/rendering/geometry/GeometryAttribute.d.ts +1 -0
- package/dist/esm/rendering/geometry/GeometryAttribute.d.ts.map +1 -0
- package/dist/esm/rendering/geometry/QuadGeometry.d.ts +1 -0
- package/dist/esm/rendering/geometry/QuadGeometry.d.ts.map +1 -0
- package/dist/esm/rendering/gradient/Gradient.d.ts +5 -4
- package/dist/esm/rendering/gradient/Gradient.d.ts.map +1 -0
- package/dist/esm/rendering/gradient/LinearGradient.d.ts +1 -0
- package/dist/esm/rendering/gradient/LinearGradient.d.ts.map +1 -0
- package/dist/esm/rendering/gradient/RadialGradient.d.ts +1 -0
- package/dist/esm/rendering/gradient/RadialGradient.d.ts.map +1 -0
- package/dist/esm/rendering/index.d.ts +100 -84
- package/dist/esm/rendering/index.d.ts.map +1 -0
- package/dist/esm/rendering/material/Material.d.ts +5 -4
- package/dist/esm/rendering/material/Material.d.ts.map +1 -0
- package/dist/esm/rendering/material/MaterialKey.d.ts +5 -4
- package/dist/esm/rendering/material/MaterialKey.d.ts.map +1 -0
- package/dist/esm/rendering/material/MeshMaterial.d.ts +1 -0
- package/dist/esm/rendering/material/MeshMaterial.d.ts.map +1 -0
- package/dist/esm/rendering/material/ShaderSource.d.ts +1 -0
- package/dist/esm/rendering/material/ShaderSource.d.ts.map +1 -0
- package/dist/esm/rendering/material/SpriteMaterial.d.ts +1 -0
- package/dist/esm/rendering/material/SpriteMaterial.d.ts.map +1 -0
- package/dist/esm/rendering/mesh/Mesh.d.ts +6 -5
- package/dist/esm/rendering/mesh/Mesh.d.ts.map +1 -0
- package/dist/esm/rendering/pass/RenderPassCoordinator.d.ts +8 -7
- package/dist/esm/rendering/pass/RenderPassCoordinator.d.ts.map +1 -0
- package/dist/esm/rendering/pass/RenderPassDescriptor.d.ts +4 -3
- package/dist/esm/rendering/pass/RenderPassDescriptor.d.ts.map +1 -0
- package/dist/esm/rendering/pass/RenderPassDescriptor.js.map +1 -1
- package/dist/esm/rendering/pixelSnap.d.ts +219 -0
- package/dist/esm/rendering/pixelSnap.d.ts.map +1 -0
- package/dist/esm/rendering/pixelSnap.js +186 -0
- package/dist/esm/rendering/pixelSnap.js.map +1 -0
- package/dist/esm/rendering/plan/RenderCommand.d.ts +4 -3
- package/dist/esm/rendering/plan/RenderCommand.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderEffectExecutor.d.ts +2 -1
- package/dist/esm/rendering/plan/RenderEffectExecutor.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderInstruction.d.ts +1 -0
- package/dist/esm/rendering/plan/RenderInstruction.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderPlan.d.ts +4 -3
- package/dist/esm/rendering/plan/RenderPlan.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderPlanBuilder.d.ts +5 -4
- package/dist/esm/rendering/plan/RenderPlanBuilder.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderPlanOptimizer.d.ts +1 -0
- package/dist/esm/rendering/plan/RenderPlanOptimizer.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderPlanPlayer.d.ts +2 -1
- package/dist/esm/rendering/plan/RenderPlanPlayer.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderPlanPlayer.js +21 -1
- package/dist/esm/rendering/plan/RenderPlanPlayer.js.map +1 -1
- package/dist/esm/rendering/plan/RenderScope.d.ts +6 -5
- package/dist/esm/rendering/plan/RenderScope.d.ts.map +1 -0
- package/dist/esm/rendering/plan/playRenderTree.d.ts +3 -2
- package/dist/esm/rendering/plan/playRenderTree.d.ts.map +1 -0
- package/dist/esm/rendering/primitives/Graphics.d.ts +7 -6
- package/dist/esm/rendering/primitives/Graphics.d.ts.map +1 -0
- package/dist/esm/rendering/shader/Shader.d.ts +1 -0
- package/dist/esm/rendering/shader/Shader.d.ts.map +1 -0
- package/dist/esm/rendering/shader/ShaderAttribute.d.ts +1 -0
- package/dist/esm/rendering/shader/ShaderAttribute.d.ts.map +1 -0
- package/dist/esm/rendering/shader/ShaderUniform.d.ts +2 -1
- package/dist/esm/rendering/shader/ShaderUniform.d.ts.map +1 -0
- package/dist/esm/rendering/shader/upgradeFragmentShaderToGl300.d.ts +1 -0
- package/dist/esm/rendering/shader/upgradeFragmentShaderToGl300.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/AnimatedSprite.d.ts +6 -5
- package/dist/esm/rendering/sprite/AnimatedSprite.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/NineSliceSprite.d.ts +69 -0
- package/dist/esm/rendering/sprite/NineSliceSprite.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/NineSliceSprite.js +207 -0
- package/dist/esm/rendering/sprite/NineSliceSprite.js.map +1 -0
- package/dist/esm/rendering/sprite/RepeatingSprite.d.ts +120 -0
- package/dist/esm/rendering/sprite/RepeatingSprite.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/RepeatingSprite.js +279 -0
- package/dist/esm/rendering/sprite/RepeatingSprite.js.map +1 -0
- package/dist/esm/rendering/sprite/Sprite.d.ts +21 -7
- package/dist/esm/rendering/sprite/Sprite.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/Sprite.js +23 -0
- package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
- package/dist/esm/rendering/sprite/Spritesheet.d.ts +3 -2
- package/dist/esm/rendering/sprite/Spritesheet.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/nineSlice.d.ts +53 -0
- package/dist/esm/rendering/sprite/nineSlice.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/nineSlice.js +340 -0
- package/dist/esm/rendering/sprite/nineSlice.js.map +1 -0
- package/dist/esm/rendering/sprite/repeatingSpritePlan.d.ts +57 -0
- package/dist/esm/rendering/sprite/repeatingSpritePlan.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/repeatingSpritePlan.js +156 -0
- package/dist/esm/rendering/sprite/repeatingSpritePlan.js.map +1 -0
- package/dist/esm/rendering/sprite/spriteMaterialSources.d.ts +1 -0
- package/dist/esm/rendering/sprite/spriteMaterialSources.d.ts.map +1 -0
- package/dist/esm/rendering/text/AbstractText.d.ts +2 -1
- package/dist/esm/rendering/text/AbstractText.d.ts.map +1 -0
- package/dist/esm/rendering/text/BitmapText.d.ts +2 -1
- package/dist/esm/rendering/text/BitmapText.d.ts.map +1 -0
- package/dist/esm/rendering/text/BitmapText.js +1 -4
- package/dist/esm/rendering/text/BitmapText.js.map +1 -1
- package/dist/esm/rendering/text/BmFont.d.ts +2 -1
- package/dist/esm/rendering/text/BmFont.d.ts.map +1 -0
- package/dist/esm/rendering/text/GlyphAtlas.d.ts +3 -2
- package/dist/esm/rendering/text/GlyphAtlas.d.ts.map +1 -0
- package/dist/esm/rendering/text/GlyphAtlasPool.d.ts +1 -0
- package/dist/esm/rendering/text/GlyphAtlasPool.d.ts.map +1 -0
- package/dist/esm/rendering/text/GlyphSdf.d.ts +1 -0
- package/dist/esm/rendering/text/GlyphSdf.d.ts.map +1 -0
- package/dist/esm/rendering/text/GlyphSdf.js +7 -0
- package/dist/esm/rendering/text/GlyphSdf.js.map +1 -1
- package/dist/esm/rendering/text/HTMLText.d.ts +2 -1
- package/dist/esm/rendering/text/HTMLText.d.ts.map +1 -0
- package/dist/esm/rendering/text/LayoutOptions.d.ts +1 -0
- package/dist/esm/rendering/text/LayoutOptions.d.ts.map +1 -0
- package/dist/esm/rendering/text/Text.d.ts +1 -0
- package/dist/esm/rendering/text/Text.d.ts.map +1 -0
- package/dist/esm/rendering/text/TextLayout.d.ts +1 -0
- package/dist/esm/rendering/text/TextLayout.d.ts.map +1 -0
- package/dist/esm/rendering/text/TextStyle.d.ts +3 -2
- package/dist/esm/rendering/text/TextStyle.d.ts.map +1 -0
- package/dist/esm/rendering/text/types.d.ts +1 -0
- package/dist/esm/rendering/text/types.d.ts.map +1 -0
- package/dist/esm/rendering/texture/DataTexture.d.ts +3 -2
- package/dist/esm/rendering/texture/DataTexture.d.ts.map +1 -0
- package/dist/esm/rendering/texture/DataTexture.js +1 -1
- package/dist/esm/rendering/texture/DataTexture.js.map +1 -1
- package/dist/esm/rendering/texture/RenderTexture.d.ts +4 -3
- package/dist/esm/rendering/texture/RenderTexture.d.ts.map +1 -0
- package/dist/esm/rendering/texture/RenderTexture.js.map +1 -1
- package/dist/esm/rendering/texture/Sampler.d.ts +2 -1
- package/dist/esm/rendering/texture/Sampler.d.ts.map +1 -0
- package/dist/esm/rendering/texture/Texture.d.ts +4 -3
- package/dist/esm/rendering/texture/Texture.d.ts.map +1 -0
- package/dist/esm/rendering/texture/TextureRegion.d.ts +100 -0
- package/dist/esm/rendering/texture/TextureRegion.d.ts.map +1 -0
- package/dist/esm/rendering/texture/TextureRegion.js +144 -0
- package/dist/esm/rendering/texture/TextureRegion.js.map +1 -0
- package/dist/esm/rendering/texture/repeat.d.ts +96 -0
- package/dist/esm/rendering/texture/repeat.d.ts.map +1 -0
- package/dist/esm/rendering/texture/repeat.js +158 -0
- package/dist/esm/rendering/texture/repeat.js.map +1 -0
- package/dist/esm/rendering/types.d.ts +1 -0
- package/dist/esm/rendering/types.d.ts.map +1 -0
- package/dist/esm/rendering/utils.d.ts +1 -0
- package/dist/esm/rendering/utils.d.ts.map +1 -0
- package/dist/esm/rendering/video/Video.d.ts +8 -7
- package/dist/esm/rendering/video/Video.d.ts.map +1 -0
- package/dist/esm/rendering/video/Video.js.map +1 -1
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts +7 -6
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js +1 -1
- package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.d.ts +4 -3
- package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts +42 -21
- package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2Backend.js +34 -19
- package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.d.ts +4 -3
- package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js +1 -1
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts +2 -1
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.d.ts +32 -0
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.js +308 -0
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.d.ts +10 -9
- package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.js +1 -1
- package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts +3 -2
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.d.ts +49 -0
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.js +535 -0
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.d.ts +2 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.d.ts +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.d.ts +2 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.js +1 -1
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts +11 -1
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +23 -3
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2StencilClipper.d.ts +3 -2
- package/dist/esm/rendering/webgl2/WebGl2StencilClipper.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js +1 -1
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts +3 -2
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +3 -3
- package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.d.ts +3 -2
- package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.d.ts +4 -3
- package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts +41 -20
- package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuBackend.js +31 -17
- package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuBlendState.d.ts +2 -1
- package/dist/esm/rendering/webgpu/WebGpuBlendState.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.d.ts +4 -3
- package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +4 -3
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.d.ts +36 -0
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.js +358 -0
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.d.ts +10 -9
- package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.d.ts +52 -0
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.js +556 -0
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +13 -3
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +22 -2
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuStencilClipper.d.ts +4 -3
- package/dist/esm/rendering/webgpu/WebGpuStencilClipper.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuStencilState.d.ts +1 -0
- package/dist/esm/rendering/webgpu/WebGpuStencilState.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts +3 -2
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +2 -2
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts +7 -5
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js +4 -4
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js.map +1 -1
- package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.d.ts +1 -0
- package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.d.ts +1 -0
- package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/compute/index.d.ts +1 -0
- package/dist/esm/rendering/webgpu/compute/index.d.ts.map +1 -0
- package/dist/esm/rendering.d.ts +29 -0
- package/dist/esm/rendering.d.ts.map +1 -0
- package/dist/esm/rendering.js +22 -0
- package/dist/esm/rendering.js.map +1 -0
- package/dist/esm/resources/AbstractAssetFactory.d.ts +1 -0
- package/dist/esm/resources/AbstractAssetFactory.d.ts.map +1 -0
- package/dist/esm/resources/Asset.d.ts +1 -0
- package/dist/esm/resources/Asset.d.ts.map +1 -0
- package/dist/esm/resources/AssetDefinitions.d.ts +9 -8
- package/dist/esm/resources/AssetDefinitions.d.ts.map +1 -0
- package/dist/esm/resources/AssetFactory.d.ts +1 -0
- package/dist/esm/resources/AssetFactory.d.ts.map +1 -0
- package/dist/esm/resources/AssetManifest.d.ts +1 -0
- package/dist/esm/resources/AssetManifest.d.ts.map +1 -0
- package/dist/esm/resources/Assets.d.ts +1 -0
- package/dist/esm/resources/Assets.d.ts.map +1 -0
- package/dist/esm/resources/CacheFirstStrategy.d.ts +1 -0
- package/dist/esm/resources/CacheFirstStrategy.d.ts.map +1 -0
- package/dist/esm/resources/CacheStore.d.ts +1 -0
- package/dist/esm/resources/CacheStore.d.ts.map +1 -0
- package/dist/esm/resources/CacheStrategy.d.ts +1 -0
- package/dist/esm/resources/CacheStrategy.d.ts.map +1 -0
- package/dist/esm/resources/Database.d.ts +1 -0
- package/dist/esm/resources/Database.d.ts.map +1 -0
- package/dist/esm/resources/FactoryRegistry.d.ts +1 -0
- package/dist/esm/resources/FactoryRegistry.d.ts.map +1 -0
- package/dist/esm/resources/IndexedDbDatabase.d.ts +2 -1
- package/dist/esm/resources/IndexedDbDatabase.d.ts.map +1 -0
- package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
- package/dist/esm/resources/IndexedDbStore.d.ts +1 -0
- package/dist/esm/resources/IndexedDbStore.d.ts.map +1 -0
- package/dist/esm/resources/JsonStore.d.ts +1 -0
- package/dist/esm/resources/JsonStore.d.ts.map +1 -0
- package/dist/esm/resources/Loader.d.ts +67 -9
- package/dist/esm/resources/Loader.d.ts.map +1 -0
- package/dist/esm/resources/Loader.js +125 -69
- package/dist/esm/resources/Loader.js.map +1 -1
- package/dist/esm/resources/LoadingQueue.d.ts +2 -1
- package/dist/esm/resources/LoadingQueue.d.ts.map +1 -0
- package/dist/esm/resources/NetworkOnlyStrategy.d.ts +1 -0
- package/dist/esm/resources/NetworkOnlyStrategy.d.ts.map +1 -0
- package/dist/esm/resources/coreAssetBindings.d.ts +8 -0
- package/dist/esm/resources/coreAssetBindings.d.ts.map +1 -0
- package/dist/esm/resources/coreAssetBindings.js +151 -0
- package/dist/esm/resources/coreAssetBindings.js.map +1 -0
- package/dist/esm/resources/factories/BinaryFactory.d.ts +2 -1
- package/dist/esm/resources/factories/BinaryFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/BmFontFactory.d.ts +5 -4
- package/dist/esm/resources/factories/BmFontFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/CsvFactory.d.ts +2 -1
- package/dist/esm/resources/factories/CsvFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/FontFactory.d.ts +2 -1
- package/dist/esm/resources/factories/FontFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/ImageFactory.d.ts +2 -1
- package/dist/esm/resources/factories/ImageFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/JsonFactory.d.ts +2 -1
- package/dist/esm/resources/factories/JsonFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/MusicFactory.d.ts +4 -3
- package/dist/esm/resources/factories/MusicFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/SoundFactory.d.ts +4 -3
- package/dist/esm/resources/factories/SoundFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/SubtitleFactory.d.ts +2 -1
- package/dist/esm/resources/factories/SubtitleFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/SvgFactory.d.ts +2 -1
- package/dist/esm/resources/factories/SvgFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/TextFactory.d.ts +2 -1
- package/dist/esm/resources/factories/TextFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/TextureFactory.d.ts +4 -3
- package/dist/esm/resources/factories/TextureFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/VideoFactory.d.ts +5 -4
- package/dist/esm/resources/factories/VideoFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/WasmFactory.d.ts +2 -1
- package/dist/esm/resources/factories/WasmFactory.d.ts.map +1 -0
- package/dist/esm/resources/factories/XmlFactory.d.ts +2 -1
- package/dist/esm/resources/factories/XmlFactory.d.ts.map +1 -0
- package/dist/esm/resources/index.d.ts +16 -15
- package/dist/esm/resources/index.d.ts.map +1 -0
- package/dist/esm/resources/tokens.d.ts +1 -0
- package/dist/esm/resources/tokens.d.ts.map +1 -0
- package/dist/esm/resources/utils.d.ts +1 -0
- package/dist/esm/resources/utils.d.ts.map +1 -0
- package/dist/exo.debug.esm.js +949 -0
- package/dist/exo.debug.esm.js.map +1 -0
- package/dist/exo.esm.js +11087 -10352
- package/dist/exo.esm.js.map +1 -1
- package/package.json +93 -58
- package/dist/esm/particles/ParticleSystem.d.ts +0 -212
- package/dist/esm/particles/ParticleSystem.js +0 -573
- package/dist/esm/particles/ParticleSystem.js.map +0 -1
- package/dist/esm/particles/distributions/BoxArea.d.ts +0 -17
- package/dist/esm/particles/distributions/BoxArea.js +0 -48
- package/dist/esm/particles/distributions/BoxArea.js.map +0 -1
- package/dist/esm/particles/distributions/CircleArea.d.ts +0 -19
- package/dist/esm/particles/distributions/CircleArea.js +0 -33
- package/dist/esm/particles/distributions/CircleArea.js.map +0 -1
- package/dist/esm/particles/distributions/ColorGradient.d.ts +0 -40
- package/dist/esm/particles/distributions/ColorGradient.js +0 -72
- package/dist/esm/particles/distributions/ColorGradient.js.map +0 -1
- package/dist/esm/particles/distributions/ConeDirection.d.ts +0 -28
- package/dist/esm/particles/distributions/ConeDirection.js +0 -44
- package/dist/esm/particles/distributions/ConeDirection.js.map +0 -1
- package/dist/esm/particles/distributions/Constant.d.ts +0 -17
- package/dist/esm/particles/distributions/Constant.js +0 -35
- package/dist/esm/particles/distributions/Constant.js.map +0 -1
- package/dist/esm/particles/distributions/Curve.d.ts +0 -30
- package/dist/esm/particles/distributions/Curve.js +0 -53
- package/dist/esm/particles/distributions/Curve.js.map +0 -1
- package/dist/esm/particles/distributions/Distribution.d.ts +0 -45
- package/dist/esm/particles/distributions/LineSegment.d.ts +0 -15
- package/dist/esm/particles/distributions/LineSegment.js +0 -27
- package/dist/esm/particles/distributions/LineSegment.js.map +0 -1
- package/dist/esm/particles/distributions/Range.d.ts +0 -12
- package/dist/esm/particles/distributions/Range.js +0 -19
- package/dist/esm/particles/distributions/Range.js.map +0 -1
- package/dist/esm/particles/distributions/VectorRange.d.ts +0 -20
- package/dist/esm/particles/distributions/VectorRange.js +0 -31
- package/dist/esm/particles/distributions/VectorRange.js.map +0 -1
- package/dist/esm/particles/distributions/index.d.ts +0 -12
- package/dist/esm/particles/gpu/ParticleGpuState.d.ts +0 -57
- package/dist/esm/particles/gpu/ParticleGpuState.js +0 -535
- package/dist/esm/particles/gpu/ParticleGpuState.js.map +0 -1
- package/dist/esm/particles/index.d.ts +0 -4
- package/dist/esm/particles/modules/AlphaFadeOverLifetime.d.ts +0 -24
- package/dist/esm/particles/modules/AlphaFadeOverLifetime.js +0 -64
- package/dist/esm/particles/modules/AlphaFadeOverLifetime.js.map +0 -1
- package/dist/esm/particles/modules/ApplyForce.d.ts +0 -20
- package/dist/esm/particles/modules/ApplyForce.js +0 -48
- package/dist/esm/particles/modules/ApplyForce.js.map +0 -1
- package/dist/esm/particles/modules/AttractToPoint.d.ts +0 -27
- package/dist/esm/particles/modules/AttractToPoint.js +0 -73
- package/dist/esm/particles/modules/AttractToPoint.js.map +0 -1
- package/dist/esm/particles/modules/BurstSpawn.d.ts +0 -53
- package/dist/esm/particles/modules/BurstSpawn.js +0 -94
- package/dist/esm/particles/modules/BurstSpawn.js.map +0 -1
- package/dist/esm/particles/modules/ColorOverLifetime.d.ts +0 -22
- package/dist/esm/particles/modules/ColorOverLifetime.js +0 -65
- package/dist/esm/particles/modules/ColorOverLifetime.js.map +0 -1
- package/dist/esm/particles/modules/ColorOverSpeed.d.ts +0 -27
- package/dist/esm/particles/modules/ColorOverSpeed.js +0 -86
- package/dist/esm/particles/modules/ColorOverSpeed.js.map +0 -1
- package/dist/esm/particles/modules/DeathModule.d.ts +0 -24
- package/dist/esm/particles/modules/DeathModule.js +0 -25
- package/dist/esm/particles/modules/DeathModule.js.map +0 -1
- package/dist/esm/particles/modules/Drag.d.ts +0 -20
- package/dist/esm/particles/modules/Drag.js +0 -43
- package/dist/esm/particles/modules/Drag.js.map +0 -1
- package/dist/esm/particles/modules/OrbitalForce.d.ts +0 -28
- package/dist/esm/particles/modules/OrbitalForce.js +0 -65
- package/dist/esm/particles/modules/OrbitalForce.js.map +0 -1
- package/dist/esm/particles/modules/RateSpawn.d.ts +0 -41
- package/dist/esm/particles/modules/RateSpawn.js +0 -76
- package/dist/esm/particles/modules/RateSpawn.js.map +0 -1
- package/dist/esm/particles/modules/RepelFromPoint.d.ts +0 -24
- package/dist/esm/particles/modules/RepelFromPoint.js +0 -76
- package/dist/esm/particles/modules/RepelFromPoint.js.map +0 -1
- package/dist/esm/particles/modules/RotateOverLifetime.d.ts +0 -20
- package/dist/esm/particles/modules/RotateOverLifetime.js +0 -41
- package/dist/esm/particles/modules/RotateOverLifetime.js.map +0 -1
- package/dist/esm/particles/modules/ScaleOverLifetime.d.ts +0 -26
- package/dist/esm/particles/modules/ScaleOverLifetime.js +0 -59
- package/dist/esm/particles/modules/ScaleOverLifetime.js.map +0 -1
- package/dist/esm/particles/modules/SpawnModule.d.ts +0 -30
- package/dist/esm/particles/modules/SpawnModule.js +0 -31
- package/dist/esm/particles/modules/SpawnModule.js.map +0 -1
- package/dist/esm/particles/modules/SpawnOnDeath.d.ts +0 -24
- package/dist/esm/particles/modules/SpawnOnDeath.js +0 -47
- package/dist/esm/particles/modules/SpawnOnDeath.js.map +0 -1
- package/dist/esm/particles/modules/Turbulence.d.ts +0 -30
- package/dist/esm/particles/modules/Turbulence.js +0 -122
- package/dist/esm/particles/modules/Turbulence.js.map +0 -1
- package/dist/esm/particles/modules/UpdateModule.d.ts +0 -95
- package/dist/esm/particles/modules/UpdateModule.js +0 -66
- package/dist/esm/particles/modules/UpdateModule.js.map +0 -1
- package/dist/esm/particles/modules/VelocityOverLifetime.d.ts +0 -30
- package/dist/esm/particles/modules/VelocityOverLifetime.js +0 -84
- package/dist/esm/particles/modules/VelocityOverLifetime.js.map +0 -1
- package/dist/esm/particles/modules/WgslContribution.d.ts +0 -81
- package/dist/esm/particles/modules/WgslContribution.js +0 -34
- package/dist/esm/particles/modules/WgslContribution.js.map +0 -1
- package/dist/esm/particles/modules/index.d.ts +0 -22
- package/dist/esm/rendering/RenderTargetPass.d.ts +0 -29
- package/dist/esm/rendering/RenderTargetPass.js.map +0 -1
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.d.ts +0 -45
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js +0 -330
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js.map +0 -1
- package/dist/esm/rendering/webgl2/glsl/particle.frag.js +0 -4
- package/dist/esm/rendering/webgl2/glsl/particle.frag.js.map +0 -1
- package/dist/esm/rendering/webgl2/glsl/particle.vert.js +0 -4
- package/dist/esm/rendering/webgl2/glsl/particle.vert.js.map +0 -1
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.d.ts +0 -48
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +0 -556
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +0 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { playRenderTree } from './plan/playRenderTree.js';
|
|
2
|
+
import { BackendTargetPass } from './BackendTargetPass.js';
|
|
3
|
+
import { RenderPass } from './RenderPass.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Renders a scene subtree (a {@link RenderNode}) as one pass — into the active target, or off-screen when
|
|
7
|
+
* `options.target` is set. The most common pass: world, HUD overlay, an off-screen scene capture.
|
|
8
|
+
*
|
|
9
|
+
* `view`/`target`/`clear` are fixed at construction; only `enabled`/`label` are mutable. The off-screen redirect is
|
|
10
|
+
* built once and reused every frame (no per-frame allocation). The node and any caller `target` are NOT owned by
|
|
11
|
+
* this pass — `destroy()` never frees them.
|
|
12
|
+
* @advanced
|
|
13
|
+
*/
|
|
14
|
+
class RenderNodePass extends RenderPass {
|
|
15
|
+
_node;
|
|
16
|
+
_target;
|
|
17
|
+
_clear;
|
|
18
|
+
_renderOptions;
|
|
19
|
+
_redirect;
|
|
20
|
+
constructor(node, options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this._node = node;
|
|
23
|
+
this._target = options?.target ?? null;
|
|
24
|
+
this._clear = options?.clear ?? null;
|
|
25
|
+
this._renderOptions = { view: options?.view };
|
|
26
|
+
this._redirect =
|
|
27
|
+
this._target !== null
|
|
28
|
+
? new BackendTargetPass(backend => playRenderTree(this._node, backend), {
|
|
29
|
+
target: this._target,
|
|
30
|
+
view: options?.view ?? this._target.view,
|
|
31
|
+
clearColor: this._clear ?? undefined,
|
|
32
|
+
})
|
|
33
|
+
: null;
|
|
34
|
+
}
|
|
35
|
+
execute(context) {
|
|
36
|
+
if (this._redirect !== null) {
|
|
37
|
+
context.backend.execute(this._redirect);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (this._clear !== null) {
|
|
41
|
+
context.backend.clear(this._clear);
|
|
42
|
+
}
|
|
43
|
+
context.render(this._node, this._renderOptions);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export { RenderNodePass };
|
|
48
|
+
//# sourceMappingURL=RenderNodePass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderNodePass.js","sources":["../../../../src/rendering/RenderNodePass.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAwBA;;;;;;;;AAQG;AACG,MAAO,cAAe,SAAQ,UAAU,CAAA;AAC3B,IAAA,KAAK;AACL,IAAA,OAAO;AACP,IAAA,MAAM;AACN,IAAA,cAAc;AACd,IAAA,SAAS;IAE1B,WAAA,CAAmB,IAAgB,EAAE,OAA+B,EAAA;QAClE,KAAK,CAAC,OAAO,CAAC;AAEd,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,MAAM,IAAI,IAAI;QACtC,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,KAAK,IAAI,IAAI;QACpC,IAAI,CAAC,cAAc,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;AAC7C,QAAA,IAAI,CAAC,SAAS;YACZ,IAAI,CAAC,OAAO,KAAK;AACf,kBAAE,IAAI,iBAAiB,CAAC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;oBACpE,MAAM,EAAE,IAAI,CAAC,OAAO;oBACpB,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI;AACxC,oBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS;iBACrC;kBACD,IAAI;IACZ;AAEgB,IAAA,OAAO,CAAC,OAAyB,EAAA;AAC/C,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;YAC3B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;YAEvC;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YACxB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;QACpC;QAEA,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC;IACjD;AACD;;;;"}
|
|
@@ -1,13 +1,58 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { RenderingContext } from './RenderingContext';
|
|
2
|
+
import type { RenderPipeline } from './RenderPipeline';
|
|
2
3
|
/**
|
|
3
|
-
*
|
|
4
|
+
* Options shared by every {@link RenderPass}.
|
|
5
|
+
* @advanced
|
|
6
|
+
*/
|
|
7
|
+
export interface RenderPassOptions {
|
|
8
|
+
/** Initial enabled state. Default `true`. Toggle later via the {@link RenderPass.enabled} field. */
|
|
9
|
+
readonly enabled?: boolean;
|
|
10
|
+
/** Optional debug label for the inspector / logging. Default: the constructor name. Display only — not an identity. */
|
|
11
|
+
readonly label?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* One high-level phase of a frame. Subclass and implement {@link execute}, or use a stock subclass
|
|
15
|
+
* ({@link RenderNodePass}, {@link CallbackRenderPass}, {@link RenderPipeline}).
|
|
16
|
+
*
|
|
17
|
+
* `enabled`, `label`, {@link resize}, and {@link destroy} are part of the contract so every pass — including
|
|
18
|
+
* resource-owning effect passes — composes uniformly inside a {@link RenderPipeline}.
|
|
4
19
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
20
|
+
* **Exclusive ownership:** a `RenderPass` belongs to at most one {@link RenderPipeline} at a time (tracked via an
|
|
21
|
+
* internal slot). `removePass`/`clear`/`destroy` release it. This is what makes add-time cycle detection and safe
|
|
22
|
+
* cascade-destroy possible, and prevents a pass's `enabled`/`resize`/`destroy` state from being shared.
|
|
8
23
|
* @advanced
|
|
9
24
|
*/
|
|
10
|
-
export
|
|
11
|
-
/**
|
|
12
|
-
|
|
25
|
+
export declare abstract class RenderPass {
|
|
26
|
+
/**
|
|
27
|
+
* When `false`, the containing {@link RenderPipeline} skips this pass during `execute`. Default `true`.
|
|
28
|
+
* Evaluated by the parent — a direct {@link execute} call runs the pass regardless.
|
|
29
|
+
*/
|
|
30
|
+
enabled: boolean;
|
|
31
|
+
/** Debug label (inspector / logging). Defaults to the constructor name. Display only — not an identity. */
|
|
32
|
+
label: string;
|
|
33
|
+
/**
|
|
34
|
+
* The owning pipeline, or `null`. Set by {@link RenderPipeline.addPass}/`insertPass`, cleared by
|
|
35
|
+
* `removePass`/`clear`/`destroy`. Used to enforce exclusive ownership and detect composition cycles.
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
_pipelineOwner: RenderPipeline | null;
|
|
39
|
+
protected constructor(options?: RenderPassOptions);
|
|
40
|
+
/**
|
|
41
|
+
* Run this pass against `context`. The active render target is the canvas unless a parent redirected it.
|
|
42
|
+
*
|
|
43
|
+
* Called directly, this runs **regardless of `enabled`** — `enabled` is evaluated by the containing
|
|
44
|
+
* {@link RenderPipeline}, not self-checked here. Subclasses must not begin `execute` with `if (!this.enabled)`.
|
|
45
|
+
*/
|
|
46
|
+
abstract execute(context: RenderingContext): void;
|
|
47
|
+
/**
|
|
48
|
+
* React to a surface / target size change. No-op by default; size-dependent passes (effects with scratch
|
|
49
|
+
* targets) override. Called by {@link RenderPipeline.resize}, which the caller wires to `app.onResize`.
|
|
50
|
+
*/
|
|
51
|
+
resize(_width: number, _height: number): void;
|
|
52
|
+
/**
|
|
53
|
+
* Release resources this pass allocated internally. No-op by default; idempotent. Never frees injected scene
|
|
54
|
+
* nodes or caller-provided RenderTextures — those are owned by the caller / scene.
|
|
55
|
+
*/
|
|
56
|
+
destroy(): void;
|
|
13
57
|
}
|
|
58
|
+
//# sourceMappingURL=RenderPass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderPass.d.ts","sourceRoot":"","sources":["../../../src/rendering/RenderPass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,oGAAoG;IACpG,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,uHAAuH;IACvH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,8BAAsB,UAAU;IAC9B;;;OAGG;IACI,OAAO,EAAE,OAAO,CAAC;IAExB,2GAA2G;IACpG,KAAK,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACI,cAAc,EAAE,cAAc,GAAG,IAAI,CAAQ;IAEpD,SAAS,aAAa,OAAO,CAAC,EAAE,iBAAiB;IAKjD;;;;;OAKG;aACa,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAExD;;;OAGG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAIpD;;;OAGG;IACI,OAAO,IAAI,IAAI;CAGvB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One high-level phase of a frame. Subclass and implement {@link execute}, or use a stock subclass
|
|
3
|
+
* ({@link RenderNodePass}, {@link CallbackRenderPass}, {@link RenderPipeline}).
|
|
4
|
+
*
|
|
5
|
+
* `enabled`, `label`, {@link resize}, and {@link destroy} are part of the contract so every pass — including
|
|
6
|
+
* resource-owning effect passes — composes uniformly inside a {@link RenderPipeline}.
|
|
7
|
+
*
|
|
8
|
+
* **Exclusive ownership:** a `RenderPass` belongs to at most one {@link RenderPipeline} at a time (tracked via an
|
|
9
|
+
* internal slot). `removePass`/`clear`/`destroy` release it. This is what makes add-time cycle detection and safe
|
|
10
|
+
* cascade-destroy possible, and prevents a pass's `enabled`/`resize`/`destroy` state from being shared.
|
|
11
|
+
* @advanced
|
|
12
|
+
*/
|
|
13
|
+
class RenderPass {
|
|
14
|
+
/**
|
|
15
|
+
* When `false`, the containing {@link RenderPipeline} skips this pass during `execute`. Default `true`.
|
|
16
|
+
* Evaluated by the parent — a direct {@link execute} call runs the pass regardless.
|
|
17
|
+
*/
|
|
18
|
+
enabled;
|
|
19
|
+
/** Debug label (inspector / logging). Defaults to the constructor name. Display only — not an identity. */
|
|
20
|
+
label;
|
|
21
|
+
/**
|
|
22
|
+
* The owning pipeline, or `null`. Set by {@link RenderPipeline.addPass}/`insertPass`, cleared by
|
|
23
|
+
* `removePass`/`clear`/`destroy`. Used to enforce exclusive ownership and detect composition cycles.
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
_pipelineOwner = null;
|
|
27
|
+
constructor(options) {
|
|
28
|
+
this.enabled = options?.enabled ?? true;
|
|
29
|
+
this.label = options?.label ?? new.target.name;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* React to a surface / target size change. No-op by default; size-dependent passes (effects with scratch
|
|
33
|
+
* targets) override. Called by {@link RenderPipeline.resize}, which the caller wires to `app.onResize`.
|
|
34
|
+
*/
|
|
35
|
+
resize(_width, _height) {
|
|
36
|
+
// no-op by default; size-dependent passes override.
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Release resources this pass allocated internally. No-op by default; idempotent. Never frees injected scene
|
|
40
|
+
* nodes or caller-provided RenderTextures — those are owned by the caller / scene.
|
|
41
|
+
*/
|
|
42
|
+
destroy() {
|
|
43
|
+
// no-op by default; resource-owning passes override.
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export { RenderPass };
|
|
48
|
+
//# sourceMappingURL=RenderPass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderPass.js","sources":["../../../../src/rendering/RenderPass.ts"],"sourcesContent":[null],"names":[],"mappings":"AAcA;;;;;;;;;;;AAWG;MACmB,UAAU,CAAA;AAC9B;;;AAGG;AACI,IAAA,OAAO;;AAGP,IAAA,KAAK;AAEZ;;;;AAIG;IACI,cAAc,GAA0B,IAAI;AAEnD,IAAA,WAAA,CAAsB,OAA2B,EAAA;QAC/C,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,IAAI;AACvC,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI;IAChD;AAUA;;;AAGG;IACI,MAAM,CAAC,MAAc,EAAE,OAAe,EAAA;;IAE7C;AAEA;;;AAGG;IACI,OAAO,GAAA;;IAEd;AACD;;;;"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { RenderingContext } from './RenderingContext';
|
|
2
|
+
import { RenderPass, type RenderPassOptions } from './RenderPass';
|
|
3
|
+
/**
|
|
4
|
+
* An ordered list of {@link RenderPass} steps, played once per frame against a {@link RenderingContext}.
|
|
5
|
+
*
|
|
6
|
+
* A `RenderPipeline` is **itself a `RenderPass`**, so pipelines nest freely and a disabled pipeline skips its
|
|
7
|
+
* whole subtree. It **owns** the passes added to it (exclusive ownership — a pass belongs to at most one
|
|
8
|
+
* pipeline): {@link resize} and {@link destroy} cascade to them. It never owns scene nodes or caller
|
|
9
|
+
* RenderTextures. Adding a pass that would create a direct or indirect cycle throws at add time.
|
|
10
|
+
* @advanced
|
|
11
|
+
*/
|
|
12
|
+
export declare class RenderPipeline extends RenderPass {
|
|
13
|
+
private readonly _passes;
|
|
14
|
+
private _executing;
|
|
15
|
+
private _destroyed;
|
|
16
|
+
constructor(options?: RenderPassOptions);
|
|
17
|
+
/** Number of registered passes (enabled and disabled). */
|
|
18
|
+
get size(): number;
|
|
19
|
+
/**
|
|
20
|
+
* Append a pass and take exclusive ownership of it. Throws if the pass already belongs to any pipeline, if
|
|
21
|
+
* adding it would create a direct/indirect cycle, during `execute`, or after `destroy`.
|
|
22
|
+
*/
|
|
23
|
+
addPass(pass: RenderPass): this;
|
|
24
|
+
/** Insert a pass at `index` (clamped to `[0, size]`). Same ownership / cycle / execute / destroy throws as {@link addPass}. */
|
|
25
|
+
insertPass(pass: RenderPass, index: number): this;
|
|
26
|
+
/** Remove a pass by identity and release its ownership. Returns `false` if absent. Does not destroy it. */
|
|
27
|
+
removePass(pass: RenderPass): boolean;
|
|
28
|
+
/** Remove all passes and release their ownership. Does not destroy them. The pipeline stays usable. */
|
|
29
|
+
clear(): this;
|
|
30
|
+
/** Whether `pass` is registered in this pipeline. */
|
|
31
|
+
hasPass(pass: RenderPass): boolean;
|
|
32
|
+
/** Index of `pass` in play order, or `-1` if absent. */
|
|
33
|
+
indexOf(pass: RenderPass): number;
|
|
34
|
+
/** The pass at `index` in play order, or `undefined` if out of range. */
|
|
35
|
+
at(index: number): RenderPass | undefined;
|
|
36
|
+
/** Iterate registered passes in play order. */
|
|
37
|
+
[Symbol.iterator](): IterableIterator<RenderPass>;
|
|
38
|
+
/**
|
|
39
|
+
* Play every enabled pass in order against `context`. No-op if `this.enabled === false` (a pipeline is itself a
|
|
40
|
+
* directly-executable pass, so disabling it skips its whole subtree). Not re-entrant. Throws after `destroy`.
|
|
41
|
+
*/
|
|
42
|
+
execute(context: RenderingContext): void;
|
|
43
|
+
/** Cascade `resize(width, height)` to every pass (enabled and disabled). */
|
|
44
|
+
resize(width: number, height: number): void;
|
|
45
|
+
/**
|
|
46
|
+
* Cascade `destroy()` to every pass, release their ownership, then clear the list. Idempotent. Throws during
|
|
47
|
+
* `execute` (before any teardown begins).
|
|
48
|
+
*
|
|
49
|
+
* Best-effort teardown: the pipeline is marked destroyed and detached from its passes up front, so it always
|
|
50
|
+
* ends in a single, consistent destroyed-and-empty state — every child gets a `destroy()` attempt and has its
|
|
51
|
+
* owner slot released even if an earlier child throws. If one or more children throw, the first error is
|
|
52
|
+
* re-thrown after the cascade completes.
|
|
53
|
+
*/
|
|
54
|
+
destroy(): void;
|
|
55
|
+
private _admit;
|
|
56
|
+
/** Whether `target` is reachable from this pipeline (this === target, or a nested pipeline reaches it). */
|
|
57
|
+
private _reaches;
|
|
58
|
+
private _assertLive;
|
|
59
|
+
private _assertNotExecuting;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=RenderPipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderPipeline.d.ts","sourceRoot":"","sources":["../../../src/rendering/RenderPipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAElE;;;;;;;;GAQG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;gBAER,OAAO,CAAC,EAAE,iBAAiB;IAI9C,0DAA0D;IAC1D,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;OAGG;IACI,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAQtC,+HAA+H;IACxH,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IASxD,2GAA2G;IACpG,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;IAgB5C,uGAAuG;IAChG,KAAK,IAAI,IAAI;IAapB,qDAAqD;IAC9C,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;IAIzC,wDAAwD;IACjD,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAIxC,yEAAyE;IAClE,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAIhD,+CAA+C;IACxC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,UAAU,CAAC;IAIxD;;;OAGG;IACa,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAwBxD,4EAA4E;IAC5D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM3D;;;;;;;;OAQG;IACa,OAAO,IAAI,IAAI;IA8B/B,OAAO,CAAC,MAAM;IAad,2GAA2G;IAC3G,OAAO,CAAC,QAAQ;IAchB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,mBAAmB;CAK5B"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { RenderPass } from './RenderPass.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* An ordered list of {@link RenderPass} steps, played once per frame against a {@link RenderingContext}.
|
|
5
|
+
*
|
|
6
|
+
* A `RenderPipeline` is **itself a `RenderPass`**, so pipelines nest freely and a disabled pipeline skips its
|
|
7
|
+
* whole subtree. It **owns** the passes added to it (exclusive ownership — a pass belongs to at most one
|
|
8
|
+
* pipeline): {@link resize} and {@link destroy} cascade to them. It never owns scene nodes or caller
|
|
9
|
+
* RenderTextures. Adding a pass that would create a direct or indirect cycle throws at add time.
|
|
10
|
+
* @advanced
|
|
11
|
+
*/
|
|
12
|
+
class RenderPipeline extends RenderPass {
|
|
13
|
+
_passes = [];
|
|
14
|
+
_executing = false;
|
|
15
|
+
_destroyed = false;
|
|
16
|
+
constructor(options) {
|
|
17
|
+
super(options);
|
|
18
|
+
}
|
|
19
|
+
/** Number of registered passes (enabled and disabled). */
|
|
20
|
+
get size() {
|
|
21
|
+
return this._passes.length;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Append a pass and take exclusive ownership of it. Throws if the pass already belongs to any pipeline, if
|
|
25
|
+
* adding it would create a direct/indirect cycle, during `execute`, or after `destroy`.
|
|
26
|
+
*/
|
|
27
|
+
addPass(pass) {
|
|
28
|
+
this._admit(pass);
|
|
29
|
+
this._passes.push(pass);
|
|
30
|
+
pass._pipelineOwner = this;
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
/** Insert a pass at `index` (clamped to `[0, size]`). Same ownership / cycle / execute / destroy throws as {@link addPass}. */
|
|
34
|
+
insertPass(pass, index) {
|
|
35
|
+
this._admit(pass);
|
|
36
|
+
const at = Math.max(0, Math.min(index, this._passes.length));
|
|
37
|
+
this._passes.splice(at, 0, pass);
|
|
38
|
+
pass._pipelineOwner = this;
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
/** Remove a pass by identity and release its ownership. Returns `false` if absent. Does not destroy it. */
|
|
42
|
+
removePass(pass) {
|
|
43
|
+
this._assertLive();
|
|
44
|
+
this._assertNotExecuting();
|
|
45
|
+
const index = this._passes.indexOf(pass);
|
|
46
|
+
if (index === -1) {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
this._passes.splice(index, 1);
|
|
50
|
+
pass._pipelineOwner = null;
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
/** Remove all passes and release their ownership. Does not destroy them. The pipeline stays usable. */
|
|
54
|
+
clear() {
|
|
55
|
+
this._assertLive();
|
|
56
|
+
this._assertNotExecuting();
|
|
57
|
+
for (const pass of this._passes) {
|
|
58
|
+
pass._pipelineOwner = null;
|
|
59
|
+
}
|
|
60
|
+
this._passes.length = 0;
|
|
61
|
+
return this;
|
|
62
|
+
}
|
|
63
|
+
/** Whether `pass` is registered in this pipeline. */
|
|
64
|
+
hasPass(pass) {
|
|
65
|
+
return pass._pipelineOwner === this;
|
|
66
|
+
}
|
|
67
|
+
/** Index of `pass` in play order, or `-1` if absent. */
|
|
68
|
+
indexOf(pass) {
|
|
69
|
+
return this._passes.indexOf(pass);
|
|
70
|
+
}
|
|
71
|
+
/** The pass at `index` in play order, or `undefined` if out of range. */
|
|
72
|
+
at(index) {
|
|
73
|
+
return this._passes[index];
|
|
74
|
+
}
|
|
75
|
+
/** Iterate registered passes in play order. */
|
|
76
|
+
[Symbol.iterator]() {
|
|
77
|
+
return this._passes[Symbol.iterator]();
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Play every enabled pass in order against `context`. No-op if `this.enabled === false` (a pipeline is itself a
|
|
81
|
+
* directly-executable pass, so disabling it skips its whole subtree). Not re-entrant. Throws after `destroy`.
|
|
82
|
+
*/
|
|
83
|
+
execute(context) {
|
|
84
|
+
if (!this.enabled) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
this._assertLive();
|
|
88
|
+
if (this._executing) {
|
|
89
|
+
throw new Error('RenderPipeline.execute is not re-entrant.');
|
|
90
|
+
}
|
|
91
|
+
this._executing = true;
|
|
92
|
+
try {
|
|
93
|
+
for (const pass of this._passes) {
|
|
94
|
+
if (pass.enabled) {
|
|
95
|
+
pass.execute(context);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
finally {
|
|
100
|
+
this._executing = false;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/** Cascade `resize(width, height)` to every pass (enabled and disabled). */
|
|
104
|
+
resize(width, height) {
|
|
105
|
+
for (const pass of this._passes) {
|
|
106
|
+
pass.resize(width, height);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Cascade `destroy()` to every pass, release their ownership, then clear the list. Idempotent. Throws during
|
|
111
|
+
* `execute` (before any teardown begins).
|
|
112
|
+
*
|
|
113
|
+
* Best-effort teardown: the pipeline is marked destroyed and detached from its passes up front, so it always
|
|
114
|
+
* ends in a single, consistent destroyed-and-empty state — every child gets a `destroy()` attempt and has its
|
|
115
|
+
* owner slot released even if an earlier child throws. If one or more children throw, the first error is
|
|
116
|
+
* re-thrown after the cascade completes.
|
|
117
|
+
*/
|
|
118
|
+
destroy() {
|
|
119
|
+
if (this._destroyed) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
this._assertNotExecuting();
|
|
123
|
+
// Mark destroyed and snapshot-detach the children first, so the pipeline ends in a consistent
|
|
124
|
+
// destroyed-and-empty state regardless of whether a child's destroy() throws.
|
|
125
|
+
this._destroyed = true;
|
|
126
|
+
const passes = this._passes.splice(0, this._passes.length);
|
|
127
|
+
const errors = [];
|
|
128
|
+
for (const pass of passes) {
|
|
129
|
+
// Release ownership before destroying, so a throwing child never stays attached to this pipeline.
|
|
130
|
+
pass._pipelineOwner = null;
|
|
131
|
+
try {
|
|
132
|
+
pass.destroy();
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
errors.push(error);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
if (errors.length > 0) {
|
|
139
|
+
throw errors[0];
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
_admit(pass) {
|
|
143
|
+
this._assertLive();
|
|
144
|
+
this._assertNotExecuting();
|
|
145
|
+
if (pass._pipelineOwner !== null) {
|
|
146
|
+
throw new Error('RenderPass already belongs to a RenderPipeline; remove it from its current pipeline first.');
|
|
147
|
+
}
|
|
148
|
+
if (pass instanceof RenderPipeline && pass._reaches(this)) {
|
|
149
|
+
throw new Error('RenderPipeline cannot contain itself, directly or indirectly (cycle).');
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/** Whether `target` is reachable from this pipeline (this === target, or a nested pipeline reaches it). */
|
|
153
|
+
_reaches(target) {
|
|
154
|
+
if (this === target) {
|
|
155
|
+
return true;
|
|
156
|
+
}
|
|
157
|
+
for (const pass of this._passes) {
|
|
158
|
+
if (pass instanceof RenderPipeline && pass._reaches(target)) {
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
_assertLive() {
|
|
165
|
+
if (this._destroyed) {
|
|
166
|
+
throw new Error('RenderPipeline has been destroyed and can no longer be used.');
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
_assertNotExecuting() {
|
|
170
|
+
if (this._executing) {
|
|
171
|
+
throw new Error('RenderPipeline cannot be mutated while it is executing.');
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
export { RenderPipeline };
|
|
177
|
+
//# sourceMappingURL=RenderPipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderPipeline.js","sources":["../../../../src/rendering/RenderPipeline.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderStats.d.ts","sourceRoot":"","sources":["../../../src/rendering/RenderStats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,cAAc,EAAE,MAAM,CAAC;IACvB,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAO,WAUnC,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,WAAW,KAAG,WAYrD,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Rectangle } from '
|
|
2
|
-
import { Size } from '
|
|
3
|
-
import { Vector } from '
|
|
1
|
+
import { Rectangle } from '#math/Rectangle';
|
|
2
|
+
import { Size } from '#math/Size';
|
|
3
|
+
import { Vector } from '#math/Vector';
|
|
4
4
|
import { View } from './View';
|
|
5
5
|
/**
|
|
6
6
|
* Renderable destination — either the on-screen canvas (the `root`
|
|
@@ -62,3 +62,4 @@ export declare class RenderTarget {
|
|
|
62
62
|
destroy(): void;
|
|
63
63
|
protected _touch(): void;
|
|
64
64
|
}
|
|
65
|
+
//# sourceMappingURL=RenderTarget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderTarget.d.ts","sourceRoot":"","sources":["../../../src/rendering/RenderTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;;;;;;;GASG;AACH,qBAAa,YAAY;IACvB;;;;;;;;;;;OAWG;IACI,YAAY,UAAS;IAE5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA0C;IAC5E,OAAO,CAAC,QAAQ,CAAK;IACrB,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;IACtB,SAAS,CAAC,SAAS,EAAE,SAAS,CAAmB;IACjD,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC;IAC7B,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;gBAEH,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,UAAQ;IAO9D,IAAW,IAAI,IAAI,IAAI,CAEtB;IAED,IAAW,IAAI,CAAC,IAAI,EAAE,IAAI,EAEzB;IAED,IAAW,IAAI,IAAI,IAAI,CAEtB;IAED,IAAW,IAAI,CAAC,IAAI,EAAE,IAAI,EAEzB;IAED,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,MAAM,EAE7B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,MAAM,EAE/B;IAED,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED;;;;;OAKG;IACI,kBAAkB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAMrD,wEAAwE;IACjE,qBAAqB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAMjD,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI;IAWhC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAS3C,WAAW,CAAC,IAAI,GAAE,IAAiB,GAAG,SAAS;IAM/C,cAAc,IAAI,IAAI;IAMtB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,IAAiB,GAAG,MAAM;IAOhE,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,IAAiB,GAAG,MAAM;IAOhE,OAAO,IAAI,IAAI;IAgBtB,SAAS,CAAC,MAAM,IAAI,IAAI;CAGzB"}
|
|
@@ -28,3 +28,4 @@ export interface Renderer<Runtime extends RenderBackend = RenderBackend, Target
|
|
|
28
28
|
* Supports both concrete and abstract drawable classes.
|
|
29
29
|
*/
|
|
30
30
|
export type DrawableConstructor<Target extends Drawable = Drawable> = abstract new (...args: never[]) => Target;
|
|
31
|
+
//# sourceMappingURL=Renderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/Renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,QAAQ,CAAC,OAAO,SAAS,aAAa,GAAG,aAAa,EAAE,MAAM,SAAS,QAAQ,GAAG,QAAQ;IACzG,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IAExC,sEAAsE;IACtE,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,uDAAuD;IACvD,UAAU,IAAI,IAAI,CAAC;IACnB,uDAAuD;IACvD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gDAAgD;IAChD,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,CAAC,MAAM,SAAS,QAAQ,GAAG,QAAQ,IAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,MAAM,CAAC"}
|
|
@@ -17,6 +17,7 @@ import type { DrawableConstructor, Renderer } from './Renderer';
|
|
|
17
17
|
*/
|
|
18
18
|
export declare class RendererRegistry<Runtime extends RenderBackend> {
|
|
19
19
|
private readonly _renderers;
|
|
20
|
+
private readonly _resolved;
|
|
20
21
|
private _backend;
|
|
21
22
|
/**
|
|
22
23
|
* Register a renderer for a specific drawable type.
|
|
@@ -28,6 +29,13 @@ export declare class RendererRegistry<Runtime extends RenderBackend> {
|
|
|
28
29
|
* @throws Error if a renderer is already registered for this drawable type.
|
|
29
30
|
*/
|
|
30
31
|
registerRenderer<Target extends Drawable>(drawableType: DrawableConstructor<Target>, renderer: Renderer<Runtime, Target>): void;
|
|
32
|
+
/**
|
|
33
|
+
* Atomically bind all `targets` to `renderer`.
|
|
34
|
+
* Validates every target before mutating any map entry.
|
|
35
|
+
* Clears the resolution cache exactly once after all entries are written.
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
bindRenderer(targets: readonly DrawableConstructor[], renderer: Renderer<Runtime>): void;
|
|
31
39
|
/**
|
|
32
40
|
* Iterate all registered renderers. Used by managers to dispatch
|
|
33
41
|
* lifecycle hooks (e.g. WebGPU pipeline pre-warmup) to whichever
|
|
@@ -36,8 +44,8 @@ export declare class RendererRegistry<Runtime extends RenderBackend> {
|
|
|
36
44
|
renderers(): Iterable<Renderer<Runtime>>;
|
|
37
45
|
/**
|
|
38
46
|
* Find the renderer responsible for `drawable`.
|
|
39
|
-
*
|
|
40
|
-
*
|
|
47
|
+
* Uses a first-resolution cache — after warm-up, a single Map.get.
|
|
48
|
+
* Falls back to prototype-chain walk on cache miss.
|
|
41
49
|
*
|
|
42
50
|
* @throws Error if no renderer is found for the drawable's type.
|
|
43
51
|
*/
|
|
@@ -52,6 +60,9 @@ export declare class RendererRegistry<Runtime extends RenderBackend> {
|
|
|
52
60
|
disconnect(): void;
|
|
53
61
|
/**
|
|
54
62
|
* Disconnect all registered renderers and clear the registry.
|
|
63
|
+
* Deduplicates across multi-target bindings so each shared renderer
|
|
64
|
+
* instance is disconnected and destroyed exactly once.
|
|
55
65
|
*/
|
|
56
66
|
destroy(): void;
|
|
57
67
|
}
|
|
68
|
+
//# sourceMappingURL=RendererRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RendererRegistry.d.ts","sourceRoot":"","sources":["../../../src/rendering/RendererRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAgB,CAAC,OAAO,SAAS,aAAa;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqD;IAChF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqD;IAC/E,OAAO,CAAC,QAAQ,CAAwB;IAExC;;;;;;;;OAQG;IACI,gBAAgB,CAAC,MAAM,SAAS,QAAQ,EAAE,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI;IAetI;;;;;OAKG;IACI,YAAY,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI;IAqC/F;;;;OAIG;IACI,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAI/C;;;;;;OAMG;IACI,OAAO,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC;IAkCrD;;OAEG;IACI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAQtC;;OAEG;IACI,UAAU,IAAI,IAAI;IAQzB;;;;OAIG;IACI,OAAO,IAAI,IAAI;CAkBvB"}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
class RendererRegistry {
|
|
16
16
|
_renderers = new Map();
|
|
17
|
+
_resolved = new Map();
|
|
17
18
|
_backend = null;
|
|
18
19
|
/**
|
|
19
20
|
* Register a renderer for a specific drawable type.
|
|
@@ -31,6 +32,42 @@ class RendererRegistry {
|
|
|
31
32
|
// Widen TDrawable to Drawable for storage. Safe because the map key
|
|
32
33
|
// guarantees the correct drawable type is always paired at lookup.
|
|
33
34
|
this._renderers.set(drawableType, renderer);
|
|
35
|
+
this._resolved.clear();
|
|
36
|
+
if (this._backend !== null) {
|
|
37
|
+
renderer.connect(this._backend);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Atomically bind all `targets` to `renderer`.
|
|
42
|
+
* Validates every target before mutating any map entry.
|
|
43
|
+
* Clears the resolution cache exactly once after all entries are written.
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
bindRenderer(targets, renderer) {
|
|
47
|
+
if (targets.length === 0) {
|
|
48
|
+
throw new Error('A RendererBinding must declare at least one target.');
|
|
49
|
+
}
|
|
50
|
+
// Validate: no duplicate targets within this call
|
|
51
|
+
const seen = new Set();
|
|
52
|
+
for (const target of targets) {
|
|
53
|
+
if (seen.has(target)) {
|
|
54
|
+
throw new Error(`A RendererBinding declares the same target ${target.name} more than once.`);
|
|
55
|
+
}
|
|
56
|
+
seen.add(target);
|
|
57
|
+
}
|
|
58
|
+
// Validate: no target already registered — throw before any mutation
|
|
59
|
+
for (const target of targets) {
|
|
60
|
+
if (this._renderers.has(target)) {
|
|
61
|
+
throw new Error(`A renderer is already registered for ${target.name}.`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// All validation passed — atomically install all mappings
|
|
65
|
+
for (const target of targets) {
|
|
66
|
+
this._renderers.set(target, renderer);
|
|
67
|
+
}
|
|
68
|
+
// Invalidate resolution cache once
|
|
69
|
+
this._resolved.clear();
|
|
70
|
+
// Connect renderer if already connected
|
|
34
71
|
if (this._backend !== null) {
|
|
35
72
|
renderer.connect(this._backend);
|
|
36
73
|
}
|
|
@@ -45,13 +82,18 @@ class RendererRegistry {
|
|
|
45
82
|
}
|
|
46
83
|
/**
|
|
47
84
|
* Find the renderer responsible for `drawable`.
|
|
48
|
-
*
|
|
49
|
-
*
|
|
85
|
+
* Uses a first-resolution cache — after warm-up, a single Map.get.
|
|
86
|
+
* Falls back to prototype-chain walk on cache miss.
|
|
50
87
|
*
|
|
51
88
|
* @throws Error if no renderer is found for the drawable's type.
|
|
52
89
|
*/
|
|
53
90
|
resolve(drawable) {
|
|
54
|
-
|
|
91
|
+
const ctor = drawable.constructor;
|
|
92
|
+
const cached = this._resolved.get(ctor);
|
|
93
|
+
if (cached !== undefined) {
|
|
94
|
+
return cached;
|
|
95
|
+
}
|
|
96
|
+
let constructor = ctor;
|
|
55
97
|
let renderer;
|
|
56
98
|
while (constructor !== null && !renderer) {
|
|
57
99
|
renderer = this._renderers.get(constructor);
|
|
@@ -61,8 +103,11 @@ class RendererRegistry {
|
|
|
61
103
|
}
|
|
62
104
|
}
|
|
63
105
|
if (!renderer) {
|
|
64
|
-
throw new Error(`No renderer registered for ${drawable.constructor.name}. ` +
|
|
106
|
+
throw new Error(`No renderer registered for ${drawable.constructor.name}. ` +
|
|
107
|
+
'If it comes from an ExoJS extension, import that package before creating the Application, ' +
|
|
108
|
+
'or pass the extension via ApplicationOptions.extensions.');
|
|
65
109
|
}
|
|
110
|
+
this._resolved.set(ctor, renderer);
|
|
66
111
|
return renderer;
|
|
67
112
|
}
|
|
68
113
|
/**
|
|
@@ -85,15 +130,23 @@ class RendererRegistry {
|
|
|
85
130
|
}
|
|
86
131
|
/**
|
|
87
132
|
* Disconnect all registered renderers and clear the registry.
|
|
133
|
+
* Deduplicates across multi-target bindings so each shared renderer
|
|
134
|
+
* instance is disconnected and destroyed exactly once.
|
|
88
135
|
*/
|
|
89
136
|
destroy() {
|
|
90
|
-
|
|
137
|
+
const seen = new Set();
|
|
91
138
|
for (const renderer of this._renderers.values()) {
|
|
92
|
-
if (
|
|
93
|
-
|
|
139
|
+
if (!seen.has(renderer)) {
|
|
140
|
+
seen.add(renderer);
|
|
141
|
+
renderer.disconnect();
|
|
142
|
+
if ('destroy' in renderer && typeof renderer.destroy === 'function') {
|
|
143
|
+
renderer.destroy();
|
|
144
|
+
}
|
|
94
145
|
}
|
|
95
146
|
}
|
|
96
147
|
this._renderers.clear();
|
|
148
|
+
this._resolved.clear();
|
|
149
|
+
this._backend = null;
|
|
97
150
|
}
|
|
98
151
|
}
|
|
99
152
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RendererRegistry.js","sources":["../../../../src/rendering/RendererRegistry.ts"],"sourcesContent":[null],"names":[],"mappings":"AAIA;;;;;;;;;;;;;AAaG;MACU,gBAAgB,CAAA;AACV,IAAA,UAAU,GAAG,IAAI,GAAG,EAA0C;
|
|
1
|
+
{"version":3,"file":"RendererRegistry.js","sources":["../../../../src/rendering/RendererRegistry.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|