@codexo/exojs 0.10.0 → 0.12.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 +265 -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 +22 -0
- package/dist/esm/core/dev.d.ts.map +1 -0
- package/dist/esm/core/dev.js +39 -0
- package/dist/esm/core/dev.js.map +1 -0
- 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 +70 -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 +16 -0
- package/dist/esm/extensions/snapshot.d.ts.map +1 -0
- package/dist/esm/extensions/snapshot.js +49 -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 +21 -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 +4 -3
- package/dist/esm/rendering/Drawable.d.ts.map +1 -0
- package/dist/esm/rendering/Drawable.js +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 +47 -2
- package/dist/esm/rendering/TransformBuffer.d.ts.map +1 -0
- package/dist/esm/rendering/TransformBuffer.js +64 -0
- package/dist/esm/rendering/TransformBuffer.js.map +1 -1
- 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 +51 -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 +39 -5
- package/dist/esm/rendering/gradient/Gradient.d.ts.map +1 -0
- package/dist/esm/rendering/gradient/Gradient.js +51 -5
- package/dist/esm/rendering/gradient/Gradient.js.map +1 -1
- package/dist/esm/rendering/gradient/LinearGradient.d.ts +12 -3
- package/dist/esm/rendering/gradient/LinearGradient.d.ts.map +1 -0
- package/dist/esm/rendering/gradient/LinearGradient.js +23 -0
- package/dist/esm/rendering/gradient/LinearGradient.js.map +1 -1
- package/dist/esm/rendering/gradient/RadialGradient.d.ts +12 -3
- package/dist/esm/rendering/gradient/RadialGradient.d.ts.map +1 -0
- package/dist/esm/rendering/gradient/RadialGradient.js +19 -0
- package/dist/esm/rendering/gradient/RadialGradient.js.map +1 -1
- package/dist/esm/rendering/index.d.ts +87 -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 +10 -9
- package/dist/esm/rendering/pass/RenderPassCoordinator.d.ts.map +1 -0
- package/dist/esm/rendering/pass/RenderPassDescriptor.d.ts +6 -5
- package/dist/esm/rendering/pass/RenderPassDescriptor.d.ts.map +1 -0
- package/dist/esm/rendering/pass/RenderPassDescriptor.js +1 -1
- package/dist/esm/rendering/pass/RenderPassDescriptor.js.map +1 -1
- package/dist/esm/rendering/plan/RenderCommand.d.ts +25 -5
- package/dist/esm/rendering/plan/RenderCommand.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderCommand.js +34 -1
- package/dist/esm/rendering/plan/RenderCommand.js.map +1 -1
- 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 +52 -0
- package/dist/esm/rendering/plan/RenderInstruction.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderInstruction.js +45 -0
- package/dist/esm/rendering/plan/RenderInstruction.js.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 +6 -1
- package/dist/esm/rendering/plan/RenderPlanPlayer.d.ts.map +1 -0
- package/dist/esm/rendering/plan/RenderPlanPlayer.js +58 -7
- 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 +76 -10
- package/dist/esm/rendering/primitives/Graphics.d.ts.map +1 -0
- package/dist/esm/rendering/primitives/Graphics.js +172 -14
- package/dist/esm/rendering/primitives/Graphics.js.map +1 -1
- 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/Sprite.d.ts +8 -7
- package/dist/esm/rendering/sprite/Sprite.d.ts.map +1 -0
- 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/spriteMaterialSources.d.ts +14 -8
- package/dist/esm/rendering/sprite/spriteMaterialSources.d.ts.map +1 -0
- package/dist/esm/rendering/sprite/spriteMaterialSources.js +35 -14
- package/dist/esm/rendering/sprite/spriteMaterialSources.js.map +1 -1
- 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 +4 -1
- package/dist/esm/rendering/text/BitmapText.d.ts.map +1 -0
- package/dist/esm/rendering/text/BitmapText.js +5 -1
- 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/BmFont.js +3 -0
- package/dist/esm/rendering/text/BmFont.js.map +1 -1
- 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 +15 -0
- package/dist/esm/rendering/text/GlyphSdf.d.ts.map +1 -0
- package/dist/esm/rendering/text/GlyphSdf.js +48 -11
- 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 +8 -2
- package/dist/esm/rendering/text/TextStyle.d.ts.map +1 -0
- package/dist/esm/rendering/text/TextStyle.js +1 -1
- package/dist/esm/rendering/text/TextStyle.js.map +1 -1
- 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/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 +43 -20
- package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2Backend.js +53 -17
- 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/WebGl2MeshRenderer.js +3 -3
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
- 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/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 +4 -1
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +63 -40
- 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 +10 -2
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +10 -3
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js.map +1 -1
- 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/webgl2/glsl/sprite.vert.js +1 -1
- package/dist/esm/rendering/webgl2/glsl/text-color.frag.js +1 -1
- 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 +35 -21
- package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuBackend.js +51 -19
- 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/WebGpuMeshRenderer.js +53 -41
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.d.ts +12 -11
- package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.js +2 -2
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +13 -4
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +122 -77
- 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 +10 -2
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +24 -15
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts +34 -1
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js +58 -12
- 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 +28 -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 +34 -4
- package/dist/esm/resources/Loader.d.ts.map +1 -0
- package/dist/esm/resources/Loader.js +107 -70
- 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 +8258 -10156
- package/dist/exo.esm.js.map +1 -1
- package/package.json +86 -54
- 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 -60
- 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 -37
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js +0 -322
- 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 -41
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +0 -550
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +0 -1
|
@@ -181,16 +181,6 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
181
181
|
if (customShader !== null && customShader.shader.wgsl === null) {
|
|
182
182
|
throw new Error('Mesh material shader has no `wgsl` source; cannot render through the WebGPU backend.');
|
|
183
183
|
}
|
|
184
|
-
if (customShader !== null && backend._passCoordinator.stencilActive) {
|
|
185
|
-
// The WebGPU geometric stencil MVP supports clipping default-material
|
|
186
|
-
// Sprites and Mesh/Graphics (which select stencil-enabled pipeline
|
|
187
|
-
// variants below); a custom MeshMaterial under a Geometry clip would need
|
|
188
|
-
// its own stencil pipeline variants and is not supported yet. Throw at
|
|
189
|
-
// collection time (inside the clip scope's try) so the surrounding
|
|
190
|
-
// push/pop balances cleanly, rather than at flush time where the pop has
|
|
191
|
-
// not yet run.
|
|
192
|
-
throw new Error('WebGPU geometry stencil clipping currently supports default-material Sprites, Meshes, and Graphics. A custom-material Mesh under a Geometry clip (RenderNode.clip with a Geometry clipShape) is not supported yet. Use a Rectangle clipShape (scissor) or the WebGL2 backend instead.');
|
|
193
|
-
}
|
|
194
184
|
const vertexCount = mesh.vertexCount;
|
|
195
185
|
if (vertexCount === 0) {
|
|
196
186
|
return;
|
|
@@ -307,13 +297,17 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
307
297
|
this._packedIndexData[start + j] = j;
|
|
308
298
|
}
|
|
309
299
|
}
|
|
310
|
-
// Pack tint+flags for default path.
|
|
300
|
+
// Pack tint+flags for default path. Color RGB channels are 0..255; the
|
|
301
|
+
// shader multiplies the sampled texel by this tint, so normalize to
|
|
302
|
+
// 0..1 (matching TransformBuffer and the WebGL2 mesh shader). Leaving
|
|
303
|
+
// them at 0..255 scales every non-zero texel channel past 1.0, which
|
|
304
|
+
// clamps intermediate colors (gradients, photos) to full saturation.
|
|
311
305
|
if (defaultUniformF32 !== null) {
|
|
312
306
|
const offsetWords = (defaultUniformIndex * this._uniformAlignment) / Float32Array.BYTES_PER_ELEMENT;
|
|
313
307
|
const tint = dc.mesh.tint;
|
|
314
|
-
defaultUniformF32[offsetWords + 0] = tint.r;
|
|
315
|
-
defaultUniformF32[offsetWords + 1] = tint.g;
|
|
316
|
-
defaultUniformF32[offsetWords + 2] = tint.b;
|
|
308
|
+
defaultUniformF32[offsetWords + 0] = tint.r / 255;
|
|
309
|
+
defaultUniformF32[offsetWords + 1] = tint.g / 255;
|
|
310
|
+
defaultUniformF32[offsetWords + 2] = tint.b / 255;
|
|
317
311
|
defaultUniformF32[offsetWords + 3] = tint.a;
|
|
318
312
|
defaultUniformF32[offsetWords + 4] = dc.premultiplySample ? 1 : 0;
|
|
319
313
|
defaultUniformF32[offsetWords + 5] = 0;
|
|
@@ -353,7 +347,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
353
347
|
drawCursor++;
|
|
354
348
|
}
|
|
355
349
|
device.queue.writeBuffer(resources.vertexBuffer, 0, resources.vertexData, 0, resources.totalVertices * vertexStrideBytes);
|
|
356
|
-
device.queue.writeBuffer(resources.indexBuffer, 0, resources.indexData.buffer, resources.indexData.byteOffset, resources.totalIndices * Uint16Array.BYTES_PER_ELEMENT);
|
|
350
|
+
device.queue.writeBuffer(resources.indexBuffer, 0, resources.indexData.buffer, resources.indexData.byteOffset, (resources.totalIndices * Uint16Array.BYTES_PER_ELEMENT + 3) & -4);
|
|
357
351
|
// Build/refresh user uniform UBO from the material (re-built every frame
|
|
358
352
|
// so mutations to material.uniforms.X are picked up).
|
|
359
353
|
this._uploadUserUniforms(material, resources);
|
|
@@ -361,7 +355,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
361
355
|
// Phase 4: single writeBuffer per resource for the default path.
|
|
362
356
|
if (defaultVertices > 0) {
|
|
363
357
|
device.queue.writeBuffer(this._vertexBuffer, 0, this._vertexData, 0, defaultVertices * vertexStrideBytes);
|
|
364
|
-
device.queue.writeBuffer(this._indexBuffer, 0, this._packedIndexData.buffer, this._packedIndexData.byteOffset, defaultIndices * Uint16Array.BYTES_PER_ELEMENT);
|
|
358
|
+
device.queue.writeBuffer(this._indexBuffer, 0, this._packedIndexData.buffer, this._packedIndexData.byteOffset, (defaultIndices * Uint16Array.BYTES_PER_ELEMENT + 3) & -4);
|
|
365
359
|
}
|
|
366
360
|
if (defaultUniformData !== null) {
|
|
367
361
|
device.queue.writeBuffer(this._uniformBuffer, 0, defaultUniformData, 0, defaultUniformBytes);
|
|
@@ -374,10 +368,9 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
374
368
|
const renderTargetFormat = backend.renderTargetFormat;
|
|
375
369
|
// A clip scope flushes the active renderer on push/pop, so every draw call
|
|
376
370
|
// in this batch shares one stencil state — read it once. While active, the
|
|
377
|
-
// coordinator's pass carries a depth/stencil attachment, so the default
|
|
378
|
-
// static-batch pipelines must select their
|
|
379
|
-
//
|
|
380
|
-
// time), so its pipelines stay stencil-free.
|
|
371
|
+
// coordinator's pass carries a depth/stencil attachment, so the default,
|
|
372
|
+
// static-batch, and custom-material pipelines must all select their
|
|
373
|
+
// stencil-enabled variants to match it.
|
|
381
374
|
const stencil = backend._passCoordinator.stencilActive;
|
|
382
375
|
let lastShader = null;
|
|
383
376
|
let lastBlendMode = null;
|
|
@@ -453,7 +446,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
453
446
|
// batched render pass.
|
|
454
447
|
pass.pushDebugGroup('MeshMaterial (custom)');
|
|
455
448
|
if (needsPipeline) {
|
|
456
|
-
pass.setPipeline(this._getOrCreateCustomPipeline(resources, dc.blendMode, renderTargetFormat));
|
|
449
|
+
pass.setPipeline(this._getOrCreateCustomPipeline(resources, dc.blendMode, renderTargetFormat, stencil));
|
|
457
450
|
lastShader = dc.customShader;
|
|
458
451
|
lastBlendMode = dc.blendMode;
|
|
459
452
|
lastFormat = renderTargetFormat;
|
|
@@ -905,7 +898,9 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
905
898
|
const vertexFloatView = new Float32Array(vertexData);
|
|
906
899
|
const vertexUintView = new Uint32Array(vertexData);
|
|
907
900
|
this._writeMeshVerticesIntoBuffer(mesh, 0, vertexFloatView, vertexUintView);
|
|
908
|
-
|
|
901
|
+
// Allocate one extra element when indexCount is odd so the GPU buffer and
|
|
902
|
+
// writeBuffer byte count can be rounded up to 4 without a buffer overread.
|
|
903
|
+
const indexData = new Uint16Array(mesh.indexCount + (mesh.indexCount & 1));
|
|
909
904
|
if (mesh.indices !== null) {
|
|
910
905
|
indexData.set(mesh.indices, 0);
|
|
911
906
|
}
|
|
@@ -914,16 +909,18 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
914
909
|
indexData[i] = i;
|
|
915
910
|
}
|
|
916
911
|
}
|
|
912
|
+
const indexByteLen = mesh.indexCount * Uint16Array.BYTES_PER_ELEMENT;
|
|
913
|
+
const alignedIndexByteLen = (indexByteLen + 3) & -4;
|
|
917
914
|
const vertexBuffer = this._device.createBuffer({
|
|
918
915
|
size: vertexData.byteLength,
|
|
919
916
|
usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST,
|
|
920
917
|
});
|
|
921
918
|
const indexBuffer = this._device.createBuffer({
|
|
922
|
-
size:
|
|
919
|
+
size: alignedIndexByteLen,
|
|
923
920
|
usage: GPUBufferUsage.INDEX | GPUBufferUsage.COPY_DST,
|
|
924
921
|
});
|
|
925
922
|
this._device.queue.writeBuffer(vertexBuffer, 0, vertexData, 0, vertexData.byteLength);
|
|
926
|
-
this._device.queue.writeBuffer(indexBuffer, 0, indexData.buffer, indexData.byteOffset,
|
|
923
|
+
this._device.queue.writeBuffer(indexBuffer, 0, indexData.buffer, indexData.byteOffset, alignedIndexByteLen);
|
|
927
924
|
const disposeListener = () => {
|
|
928
925
|
const entry = this._staticGeometryCache.get(geometry);
|
|
929
926
|
if (entry === undefined) {
|
|
@@ -962,13 +959,16 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
962
959
|
}
|
|
963
960
|
}
|
|
964
961
|
_ensureIndexCapacity(indexCount) {
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
962
|
+
// GPUQueue.writeBuffer requires the byte count to be a multiple of 4.
|
|
963
|
+
// Round up: odd Uint16 counts (e.g. a 3-index triangle) would otherwise
|
|
964
|
+
// produce 6-byte writes which the WebGPU validation layer rejects.
|
|
965
|
+
const requiredBytes = (indexCount * Uint16Array.BYTES_PER_ELEMENT + 3) & -4;
|
|
966
|
+
if (this._packedIndexData.length * Uint16Array.BYTES_PER_ELEMENT < requiredBytes) {
|
|
967
|
+
this._packedIndexData = new Uint16Array(Math.max(requiredBytes / Uint16Array.BYTES_PER_ELEMENT, this._packedIndexData.length === 0 ? 2 : this._packedIndexData.length * 2));
|
|
968
968
|
}
|
|
969
969
|
if (requiredBytes > this._indexBufferCapacity) {
|
|
970
970
|
this._indexBuffer?.destroy();
|
|
971
|
-
this._indexBufferCapacity = Math.max(requiredBytes, this._indexBufferCapacity === 0 ?
|
|
971
|
+
this._indexBufferCapacity = Math.max(requiredBytes, this._indexBufferCapacity === 0 ? 4 : this._indexBufferCapacity * 2);
|
|
972
972
|
this._indexBuffer = this._device.createBuffer({
|
|
973
973
|
size: this._indexBufferCapacity,
|
|
974
974
|
usage: GPUBufferUsage.INDEX | GPUBufferUsage.COPY_DST,
|
|
@@ -1112,14 +1112,14 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
1112
1112
|
usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST,
|
|
1113
1113
|
});
|
|
1114
1114
|
}
|
|
1115
|
-
// Index buffer
|
|
1116
|
-
const indexBytes = resources.totalIndices * Uint16Array.BYTES_PER_ELEMENT;
|
|
1117
|
-
if (resources.indexData.length <
|
|
1118
|
-
resources.indexData = new Uint16Array(Math.max(
|
|
1115
|
+
// Index buffer — capacity must be 4-byte aligned for GPUQueue.writeBuffer.
|
|
1116
|
+
const indexBytes = (resources.totalIndices * Uint16Array.BYTES_PER_ELEMENT + 3) & -4;
|
|
1117
|
+
if (resources.indexData.length * Uint16Array.BYTES_PER_ELEMENT < indexBytes) {
|
|
1118
|
+
resources.indexData = new Uint16Array(Math.max(indexBytes / Uint16Array.BYTES_PER_ELEMENT, resources.indexData.length * 2));
|
|
1119
1119
|
}
|
|
1120
1120
|
if (indexBytes > resources.indexBufferCapacity) {
|
|
1121
1121
|
resources.indexBuffer?.destroy();
|
|
1122
|
-
resources.indexBufferCapacity = Math.max(indexBytes, resources.indexBufferCapacity * 2 ||
|
|
1122
|
+
resources.indexBufferCapacity = Math.max(indexBytes, resources.indexBufferCapacity * 2 || 4);
|
|
1123
1123
|
resources.indexBuffer = device.createBuffer({
|
|
1124
1124
|
size: resources.indexBufferCapacity,
|
|
1125
1125
|
usage: GPUBufferUsage.INDEX | GPUBufferUsage.COPY_DST,
|
|
@@ -1205,19 +1205,24 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
1205
1205
|
data[off + 10] = 1;
|
|
1206
1206
|
data[off + 11] = 0;
|
|
1207
1207
|
off += 12;
|
|
1208
|
-
// tint (vec4)
|
|
1208
|
+
// tint (vec4). RGB are 0..255; normalize to 0..1 for the shader multiply
|
|
1209
|
+
// (u_mesh.tint is documented as 0..1, matching the default path above).
|
|
1209
1210
|
const tint = mesh.tint;
|
|
1210
|
-
data[off + 0] = tint.r;
|
|
1211
|
-
data[off + 1] = tint.g;
|
|
1212
|
-
data[off + 2] = tint.b;
|
|
1211
|
+
data[off + 0] = tint.r / 255;
|
|
1212
|
+
data[off + 1] = tint.g / 255;
|
|
1213
|
+
data[off + 2] = tint.b / 255;
|
|
1213
1214
|
data[off + 3] = tint.a;
|
|
1214
1215
|
this._device.queue.writeBuffer(resources.meshUniformBuffer, drawCursor * slotBytes, data);
|
|
1215
1216
|
}
|
|
1216
|
-
_getOrCreateCustomPipeline(resources, blendMode, format) {
|
|
1217
|
-
|
|
1217
|
+
_getOrCreateCustomPipeline(resources, blendMode, format, stencil) {
|
|
1218
|
+
// The stencil dimension keeps the clip and no-clip variants distinct,
|
|
1219
|
+
// mirroring the default and static-batch caches: a stencil pipeline carries
|
|
1220
|
+
// depth/stencil state and is only valid in a pass with the matching
|
|
1221
|
+
// attachment, so the two are never interchangeable.
|
|
1222
|
+
const cacheKey = `${blendMode}:${format}:${stencil ? 's' : 'n'}`;
|
|
1218
1223
|
let pipeline = resources.pipelines.get(cacheKey);
|
|
1219
1224
|
if (pipeline === undefined) {
|
|
1220
|
-
|
|
1225
|
+
const descriptor = {
|
|
1221
1226
|
layout: resources.pipelineLayout,
|
|
1222
1227
|
vertex: {
|
|
1223
1228
|
module: resources.shaderModule,
|
|
@@ -1249,7 +1254,14 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
|
|
|
1249
1254
|
topology: 'triangle-list',
|
|
1250
1255
|
cullMode: 'none',
|
|
1251
1256
|
},
|
|
1252
|
-
}
|
|
1257
|
+
};
|
|
1258
|
+
// While a geometric clip is active the coordinator's pass carries a
|
|
1259
|
+
// depth/stencil attachment; the content pipeline must test stencil ==
|
|
1260
|
+
// reference and leave depth/stencil otherwise inert to match it.
|
|
1261
|
+
if (stencil) {
|
|
1262
|
+
descriptor.depthStencil = stencilContentDepthStencilState();
|
|
1263
|
+
}
|
|
1264
|
+
pipeline = this._device.createRenderPipeline(descriptor);
|
|
1253
1265
|
resources.pipelines.set(cacheKey, pipeline);
|
|
1254
1266
|
}
|
|
1255
1267
|
return pipeline;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGpuMeshRenderer.js","sources":["../../../../../src/rendering/webgpu/WebGpuMeshRenderer.ts"],"sourcesContent":[null],"names":["TextureClass"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WebGpuMeshRenderer.js","sources":["../../../../../src/rendering/webgpu/WebGpuMeshRenderer.ts"],"sourcesContent":[null],"names":["TextureClass"],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type { Color } from '
|
|
2
|
-
import { Matrix } from '
|
|
3
|
-
import type { Rectangle } from '
|
|
4
|
-
import type { Geometry } from '
|
|
5
|
-
import type { RenderPassCoordinator } from '
|
|
6
|
-
import type { RenderPassDescriptor, RenderPassLoad } from '
|
|
7
|
-
import type { RenderStats } from '
|
|
8
|
-
import type { RenderTarget } from '
|
|
9
|
-
import type { View } from '
|
|
1
|
+
import type { Color } from '#core/Color';
|
|
2
|
+
import { Matrix } from '#math/Matrix';
|
|
3
|
+
import type { Rectangle } from '#math/Rectangle';
|
|
4
|
+
import type { Geometry } from '#rendering/geometry/Geometry';
|
|
5
|
+
import type { RenderPassCoordinator } from '#rendering/pass/RenderPassCoordinator';
|
|
6
|
+
import type { RenderPassDescriptor, RenderPassLoad } from '#rendering/pass/RenderPassDescriptor';
|
|
7
|
+
import type { RenderStats } from '#rendering/RenderStats';
|
|
8
|
+
import type { RenderTarget } from '#rendering/RenderTarget';
|
|
9
|
+
import type { View } from '#rendering/View';
|
|
10
10
|
import { stencilAttachmentFormat } from './WebGpuStencilClipper';
|
|
11
11
|
/** Pixel-space scissor rectangle, as returned by the backend. @internal */
|
|
12
12
|
interface ScissorRect {
|
|
@@ -61,8 +61,8 @@ export interface WebGpuPassBackend {
|
|
|
61
61
|
* WebGPU implementation of {@link RenderPassCoordinator}.
|
|
62
62
|
*
|
|
63
63
|
* Owns the GPU render-pass mechanics (acquire/end the active
|
|
64
|
-
* `GPURenderPassEncoder`), the clear-vs-load decision, and
|
|
65
|
-
*
|
|
64
|
+
* `GPURenderPassEncoder`), the clear-vs-load decision, and geometric stencil
|
|
65
|
+
* clipping: a per-target `depth24plus-stencil8` attachment
|
|
66
66
|
* shared across the multiple submits of a clip scope (via `stencilLoadOp:'load'`)
|
|
67
67
|
* plus a position-only stencil-write pipeline. Renderers select stencil-enabled
|
|
68
68
|
* content pipelines while {@link stencilActive} is true.
|
|
@@ -139,3 +139,4 @@ export declare class WebGpuPassCoordinator implements RenderPassCoordinator {
|
|
|
139
139
|
private _createStencilAttachment;
|
|
140
140
|
}
|
|
141
141
|
export { stencilAttachmentFormat };
|
|
142
|
+
//# sourceMappingURL=WebGpuPassCoordinator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebGpuPassCoordinator.d.ts","sourceRoot":"","sources":["../../../../src/rendering/webgpu/WebGpuPassCoordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,8 +7,8 @@ export { stencilAttachmentFormat } from './WebGpuStencilClipper.js';
|
|
|
7
7
|
* WebGPU implementation of {@link RenderPassCoordinator}.
|
|
8
8
|
*
|
|
9
9
|
* Owns the GPU render-pass mechanics (acquire/end the active
|
|
10
|
-
* `GPURenderPassEncoder`), the clear-vs-load decision, and
|
|
11
|
-
*
|
|
10
|
+
* `GPURenderPassEncoder`), the clear-vs-load decision, and geometric stencil
|
|
11
|
+
* clipping: a per-target `depth24plus-stencil8` attachment
|
|
12
12
|
* shared across the multiple submits of a clip scope (via `stencilLoadOp:'load'`)
|
|
13
13
|
* plus a position-only stencil-write pipeline. Renderers select stencil-enabled
|
|
14
14
|
* content pipelines while {@link stencilActive} is true.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Sprite } from '
|
|
2
|
-
import { AbstractWebGpuRenderer } from '
|
|
3
|
-
import type { WebGpuBackend } from '
|
|
1
|
+
import type { Sprite } from '#rendering/sprite/Sprite';
|
|
2
|
+
import { AbstractWebGpuRenderer } from './AbstractWebGpuRenderer';
|
|
3
|
+
import type { WebGpuBackend } from './WebGpuBackend';
|
|
4
4
|
export declare class WebGpuSpriteRenderer extends AbstractWebGpuRenderer<Sprite> {
|
|
5
5
|
private readonly _projectionData;
|
|
6
6
|
private _device;
|
|
@@ -9,7 +9,8 @@ export declare class WebGpuSpriteRenderer extends AbstractWebGpuRenderer<Sprite>
|
|
|
9
9
|
private _textureBindGroupLayout;
|
|
10
10
|
private _pipelineLayout;
|
|
11
11
|
private _uniformBuffer;
|
|
12
|
-
private
|
|
12
|
+
private _transformBindGroup;
|
|
13
|
+
private _transformStorageBuffer;
|
|
13
14
|
private _indexBuffer;
|
|
14
15
|
private _instanceBuffer;
|
|
15
16
|
private _instanceCapacity;
|
|
@@ -21,6 +22,7 @@ export declare class WebGpuSpriteRenderer extends AbstractWebGpuRenderer<Sprite>
|
|
|
21
22
|
private readonly _textureSlots;
|
|
22
23
|
private _slotCount;
|
|
23
24
|
private _instanceCount;
|
|
25
|
+
private _maxNodeIndex;
|
|
24
26
|
private _currentBlendMode;
|
|
25
27
|
private readonly _customMaterials;
|
|
26
28
|
private _customBaseTextureLayout;
|
|
@@ -34,6 +36,12 @@ export declare class WebGpuSpriteRenderer extends AbstractWebGpuRenderer<Sprite>
|
|
|
34
36
|
/** Custom-material path: single base texture on group(1), instanced. */
|
|
35
37
|
private _renderCustom;
|
|
36
38
|
flush(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Build (or reuse) the group(0) bind group pairing the fixed projection UBO
|
|
41
|
+
* with the shared transform storage buffer. Cached against the storage buffer
|
|
42
|
+
* identity, which changes only when its capacity grows.
|
|
43
|
+
*/
|
|
44
|
+
private _getOrCreateTransformBindGroup;
|
|
37
45
|
destroy(): void;
|
|
38
46
|
/**
|
|
39
47
|
* Pre-create render pipelines for every blend-mode × target-format
|
|
@@ -62,3 +70,4 @@ export declare class WebGpuSpriteRenderer extends AbstractWebGpuRenderer<Sprite>
|
|
|
62
70
|
private _buildUserBindGroup;
|
|
63
71
|
private _releaseCustomResources;
|
|
64
72
|
}
|
|
73
|
+
//# sourceMappingURL=WebGpuSpriteRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebGpuSpriteRenderer.d.ts","sourceRoot":"","sources":["../../../../src/rendering/webgpu/WebGpuSpriteRenderer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAMvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAoLrD,qBAAa,oBAAqB,SAAQ,sBAAsB,CAAC,MAAM,CAAC;IACtE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA2E;IAE3G,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,aAAa,CAAgC;IACrD,OAAO,CAAC,uBAAuB,CAAmC;IAClE,OAAO,CAAC,uBAAuB,CAAmC;IAClE,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,cAAc,CAA0B;IAGhD,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,uBAAuB,CAA0B;IACzD,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwE;IAEnG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiF;IACjH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8C;IAC5E,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAG3B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,iBAAiB,CAA2B;IAIpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoD;IACrF,OAAO,CAAC,wBAAwB,CAAmC;IACnE,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,mBAAmB,CAAwC;IAEnE,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAuEjD,SAAS,CAAC,YAAY,IAAI,IAAI;IAsCvB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IA+BnC,2EAA2E;IAC3E,OAAO,CAAC,cAAc;IAqCtB,wEAAwE;IACxE,OAAO,CAAC,aAAa;IA4Bd,KAAK,IAAI,IAAI;IAsEpB;;;;OAIG;IACH,OAAO,CAAC,8BAA8B;IAiB/B,OAAO,IAAI,IAAI;IAItB;;;;;;;;;;OAUG;IACU,gBAAgB,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA0ClF,OAAO,CAAC,aAAa;IA6CrB,OAAO,CAAC,uBAAuB;IAsC/B,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,uBAAuB;IAqC/B,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,wBAAwB;IAuEhC,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,2BAA2B;IA8CnC,OAAO,CAAC,0BAA0B;IA4DlC,OAAO,CAAC,8BAA8B;IA0BtC,OAAO,CAAC,yBAAyB;IA6BjC,OAAO,CAAC,mBAAmB;IA8C3B,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,uBAAuB;CAOhC"}
|