@kurot/core 1.0.12
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/LICENSE +21 -0
- package/README.md +154 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/kurot/benchmark/BenchmarkRunner.d.ts +60 -0
- package/dist/kurot/benchmark/BenchmarkRunner.d.ts.map +1 -0
- package/dist/kurot/benchmark/BenchmarkRunner.js +112 -0
- package/dist/kurot/benchmark/BenchmarkRunner.js.map +1 -0
- package/dist/kurot/benchmark/MetricsCollector.d.ts +34 -0
- package/dist/kurot/benchmark/MetricsCollector.d.ts.map +1 -0
- package/dist/kurot/benchmark/MetricsCollector.js +123 -0
- package/dist/kurot/benchmark/MetricsCollector.js.map +1 -0
- package/dist/kurot/benchmark/PerfPanel.d.ts +24 -0
- package/dist/kurot/benchmark/PerfPanel.d.ts.map +1 -0
- package/dist/kurot/benchmark/PerfPanel.js +131 -0
- package/dist/kurot/benchmark/PerfPanel.js.map +1 -0
- package/dist/kurot/benchmark/ReportExporter.d.ts +8 -0
- package/dist/kurot/benchmark/ReportExporter.d.ts.map +1 -0
- package/dist/kurot/benchmark/ReportExporter.js +54 -0
- package/dist/kurot/benchmark/ReportExporter.js.map +1 -0
- package/dist/kurot/benchmark/SceneRegistry.d.ts +16 -0
- package/dist/kurot/benchmark/SceneRegistry.d.ts.map +1 -0
- package/dist/kurot/benchmark/SceneRegistry.js +233 -0
- package/dist/kurot/benchmark/SceneRegistry.js.map +1 -0
- package/dist/kurot/benchmark/types.d.ts +47 -0
- package/dist/kurot/benchmark/types.d.ts.map +1 -0
- package/dist/kurot/benchmark/types.js +2 -0
- package/dist/kurot/benchmark/types.js.map +1 -0
- package/dist/kurot/display/Bitmap.d.ts +53 -0
- package/dist/kurot/display/Bitmap.d.ts.map +1 -0
- package/dist/kurot/display/Bitmap.js +185 -0
- package/dist/kurot/display/Bitmap.js.map +1 -0
- package/dist/kurot/display/DisplayObject.d.ts +253 -0
- package/dist/kurot/display/DisplayObject.d.ts.map +1 -0
- package/dist/kurot/display/DisplayObject.js +833 -0
- package/dist/kurot/display/DisplayObject.js.map +1 -0
- package/dist/kurot/display/DisplayObjectContainer.d.ts +57 -0
- package/dist/kurot/display/DisplayObjectContainer.d.ts.map +1 -0
- package/dist/kurot/display/DisplayObjectContainer.js +330 -0
- package/dist/kurot/display/DisplayObjectContainer.js.map +1 -0
- package/dist/kurot/display/Graphics.d.ts +48 -0
- package/dist/kurot/display/Graphics.d.ts.map +1 -0
- package/dist/kurot/display/Graphics.js +315 -0
- package/dist/kurot/display/Graphics.js.map +1 -0
- package/dist/kurot/display/GraphicsPath.d.ts +112 -0
- package/dist/kurot/display/GraphicsPath.d.ts.map +1 -0
- package/dist/kurot/display/GraphicsPath.js +2 -0
- package/dist/kurot/display/GraphicsPath.js.map +1 -0
- package/dist/kurot/display/Mesh.d.ts +21 -0
- package/dist/kurot/display/Mesh.d.ts.map +1 -0
- package/dist/kurot/display/Mesh.js +56 -0
- package/dist/kurot/display/Mesh.js.map +1 -0
- package/dist/kurot/display/Shape.d.ts +12 -0
- package/dist/kurot/display/Shape.d.ts.map +1 -0
- package/dist/kurot/display/Shape.js +35 -0
- package/dist/kurot/display/Shape.js.map +1 -0
- package/dist/kurot/display/Sprite.d.ts +13 -0
- package/dist/kurot/display/Sprite.d.ts.map +1 -0
- package/dist/kurot/display/Sprite.js +38 -0
- package/dist/kurot/display/Sprite.js.map +1 -0
- package/dist/kurot/display/Stage.d.ts +45 -0
- package/dist/kurot/display/Stage.d.ts.map +1 -0
- package/dist/kurot/display/Stage.js +107 -0
- package/dist/kurot/display/Stage.js.map +1 -0
- package/dist/kurot/display/enums/BitmapFillMode.d.ts +7 -0
- package/dist/kurot/display/enums/BitmapFillMode.d.ts.map +1 -0
- package/dist/kurot/display/enums/BitmapFillMode.js +6 -0
- package/dist/kurot/display/enums/BitmapFillMode.js.map +1 -0
- package/dist/kurot/display/enums/BlendMode.d.ts +24 -0
- package/dist/kurot/display/enums/BlendMode.d.ts.map +1 -0
- package/dist/kurot/display/enums/BlendMode.js +31 -0
- package/dist/kurot/display/enums/BlendMode.js.map +1 -0
- package/dist/kurot/display/enums/CapsStyle.d.ts +7 -0
- package/dist/kurot/display/enums/CapsStyle.d.ts.map +1 -0
- package/dist/kurot/display/enums/CapsStyle.js +6 -0
- package/dist/kurot/display/enums/CapsStyle.js.map +1 -0
- package/dist/kurot/display/enums/GradientType.d.ts +6 -0
- package/dist/kurot/display/enums/GradientType.d.ts.map +1 -0
- package/dist/kurot/display/enums/GradientType.js +5 -0
- package/dist/kurot/display/enums/GradientType.js.map +1 -0
- package/dist/kurot/display/enums/JointStyle.d.ts +7 -0
- package/dist/kurot/display/enums/JointStyle.d.ts.map +1 -0
- package/dist/kurot/display/enums/JointStyle.js +6 -0
- package/dist/kurot/display/enums/JointStyle.js.map +1 -0
- package/dist/kurot/display/enums/OrientationMode.d.ts +8 -0
- package/dist/kurot/display/enums/OrientationMode.d.ts.map +1 -0
- package/dist/kurot/display/enums/OrientationMode.js +7 -0
- package/dist/kurot/display/enums/OrientationMode.js.map +1 -0
- package/dist/kurot/display/enums/StageScaleMode.d.ts +12 -0
- package/dist/kurot/display/enums/StageScaleMode.d.ts.map +1 -0
- package/dist/kurot/display/enums/StageScaleMode.js +11 -0
- package/dist/kurot/display/enums/StageScaleMode.js.map +1 -0
- package/dist/kurot/display/enums/index.d.ts +8 -0
- package/dist/kurot/display/enums/index.d.ts.map +1 -0
- package/dist/kurot/display/enums/index.js +8 -0
- package/dist/kurot/display/enums/index.js.map +1 -0
- package/dist/kurot/display/index.d.ts +21 -0
- package/dist/kurot/display/index.d.ts.map +1 -0
- package/dist/kurot/display/index.js +20 -0
- package/dist/kurot/display/index.js.map +1 -0
- package/dist/kurot/display/texture/BitmapData.d.ts +36 -0
- package/dist/kurot/display/texture/BitmapData.d.ts.map +1 -0
- package/dist/kurot/display/texture/BitmapData.js +129 -0
- package/dist/kurot/display/texture/BitmapData.js.map +1 -0
- package/dist/kurot/display/texture/RenderTexture.d.ts +15 -0
- package/dist/kurot/display/texture/RenderTexture.d.ts.map +1 -0
- package/dist/kurot/display/texture/RenderTexture.js +58 -0
- package/dist/kurot/display/texture/RenderTexture.js.map +1 -0
- package/dist/kurot/display/texture/SpriteSheet.d.ts +12 -0
- package/dist/kurot/display/texture/SpriteSheet.d.ts.map +1 -0
- package/dist/kurot/display/texture/SpriteSheet.js +32 -0
- package/dist/kurot/display/texture/SpriteSheet.js.map +1 -0
- package/dist/kurot/display/texture/Texture.d.ts +32 -0
- package/dist/kurot/display/texture/Texture.d.ts.map +1 -0
- package/dist/kurot/display/texture/Texture.js +76 -0
- package/dist/kurot/display/texture/Texture.js.map +1 -0
- package/dist/kurot/display/texture/index.d.ts +5 -0
- package/dist/kurot/display/texture/index.d.ts.map +1 -0
- package/dist/kurot/display/texture/index.js +5 -0
- package/dist/kurot/display/texture/index.js.map +1 -0
- package/dist/kurot/events/Event.d.ts +58 -0
- package/dist/kurot/events/Event.d.ts.map +1 -0
- package/dist/kurot/events/Event.js +142 -0
- package/dist/kurot/events/Event.js.map +1 -0
- package/dist/kurot/events/EventDispatcher.d.ts +25 -0
- package/dist/kurot/events/EventDispatcher.d.ts.map +1 -0
- package/dist/kurot/events/EventDispatcher.js +121 -0
- package/dist/kurot/events/EventDispatcher.js.map +1 -0
- package/dist/kurot/events/EventPhase.d.ts +6 -0
- package/dist/kurot/events/EventPhase.d.ts.map +1 -0
- package/dist/kurot/events/EventPhase.js +2 -0
- package/dist/kurot/events/EventPhase.js.map +1 -0
- package/dist/kurot/events/FocusEvent.d.ts +7 -0
- package/dist/kurot/events/FocusEvent.d.ts.map +1 -0
- package/dist/kurot/events/FocusEvent.js +11 -0
- package/dist/kurot/events/FocusEvent.js.map +1 -0
- package/dist/kurot/events/HTTPStatusEvent.d.ts +10 -0
- package/dist/kurot/events/HTTPStatusEvent.d.ts.map +1 -0
- package/dist/kurot/events/HTTPStatusEvent.js +24 -0
- package/dist/kurot/events/HTTPStatusEvent.js.map +1 -0
- package/dist/kurot/events/IEventDispatcher.d.ts +10 -0
- package/dist/kurot/events/IEventDispatcher.d.ts.map +1 -0
- package/dist/kurot/events/IEventDispatcher.js +2 -0
- package/dist/kurot/events/IEventDispatcher.js.map +1 -0
- package/dist/kurot/events/IOErrorEvent.d.ts +8 -0
- package/dist/kurot/events/IOErrorEvent.d.ts.map +1 -0
- package/dist/kurot/events/IOErrorEvent.js +17 -0
- package/dist/kurot/events/IOErrorEvent.js.map +1 -0
- package/dist/kurot/events/ProgressEvent.d.ts +11 -0
- package/dist/kurot/events/ProgressEvent.d.ts.map +1 -0
- package/dist/kurot/events/ProgressEvent.js +25 -0
- package/dist/kurot/events/ProgressEvent.js.map +1 -0
- package/dist/kurot/events/StageOrientationEvent.d.ts +8 -0
- package/dist/kurot/events/StageOrientationEvent.d.ts.map +1 -0
- package/dist/kurot/events/StageOrientationEvent.js +17 -0
- package/dist/kurot/events/StageOrientationEvent.js.map +1 -0
- package/dist/kurot/events/TextEvent.d.ts +9 -0
- package/dist/kurot/events/TextEvent.d.ts.map +1 -0
- package/dist/kurot/events/TextEvent.js +21 -0
- package/dist/kurot/events/TextEvent.js.map +1 -0
- package/dist/kurot/events/TimerEvent.d.ts +14 -0
- package/dist/kurot/events/TimerEvent.d.ts.map +1 -0
- package/dist/kurot/events/TimerEvent.js +27 -0
- package/dist/kurot/events/TimerEvent.js.map +1 -0
- package/dist/kurot/events/TouchEvent.d.ts +32 -0
- package/dist/kurot/events/TouchEvent.d.ts.map +1 -0
- package/dist/kurot/events/TouchEvent.js +85 -0
- package/dist/kurot/events/TouchEvent.js.map +1 -0
- package/dist/kurot/events/index.d.ts +13 -0
- package/dist/kurot/events/index.d.ts.map +1 -0
- package/dist/kurot/events/index.js +11 -0
- package/dist/kurot/events/index.js.map +1 -0
- package/dist/kurot/external/ExternalInterface.d.ts +18 -0
- package/dist/kurot/external/ExternalInterface.d.ts.map +1 -0
- package/dist/kurot/external/ExternalInterface.js +23 -0
- package/dist/kurot/external/ExternalInterface.js.map +1 -0
- package/dist/kurot/external/index.d.ts +2 -0
- package/dist/kurot/external/index.d.ts.map +1 -0
- package/dist/kurot/external/index.js +2 -0
- package/dist/kurot/external/index.js.map +1 -0
- package/dist/kurot/filters/BlurFilter.d.ts +16 -0
- package/dist/kurot/filters/BlurFilter.d.ts.map +1 -0
- package/dist/kurot/filters/BlurFilter.js +56 -0
- package/dist/kurot/filters/BlurFilter.js.map +1 -0
- package/dist/kurot/filters/ColorMatrixFilter.d.ts +10 -0
- package/dist/kurot/filters/ColorMatrixFilter.d.ts.map +1 -0
- package/dist/kurot/filters/ColorMatrixFilter.js +51 -0
- package/dist/kurot/filters/ColorMatrixFilter.js.map +1 -0
- package/dist/kurot/filters/CustomFilter.d.ts +12 -0
- package/dist/kurot/filters/CustomFilter.d.ts.map +1 -0
- package/dist/kurot/filters/CustomFilter.js +43 -0
- package/dist/kurot/filters/CustomFilter.js.map +1 -0
- package/dist/kurot/filters/DropShadowFilter.d.ts +16 -0
- package/dist/kurot/filters/DropShadowFilter.d.ts.map +1 -0
- package/dist/kurot/filters/DropShadowFilter.js +76 -0
- package/dist/kurot/filters/DropShadowFilter.js.map +1 -0
- package/dist/kurot/filters/Filter.d.ts +18 -0
- package/dist/kurot/filters/Filter.d.ts.map +1 -0
- package/dist/kurot/filters/Filter.js +22 -0
- package/dist/kurot/filters/Filter.js.map +1 -0
- package/dist/kurot/filters/GlowFilter.d.ts +34 -0
- package/dist/kurot/filters/GlowFilter.d.ts.map +1 -0
- package/dist/kurot/filters/GlowFilter.js +131 -0
- package/dist/kurot/filters/GlowFilter.js.map +1 -0
- package/dist/kurot/filters/index.d.ts +7 -0
- package/dist/kurot/filters/index.d.ts.map +1 -0
- package/dist/kurot/filters/index.js +7 -0
- package/dist/kurot/filters/index.js.map +1 -0
- package/dist/kurot/geom/Matrix.d.ts +50 -0
- package/dist/kurot/geom/Matrix.d.ts.map +1 -0
- package/dist/kurot/geom/Matrix.js +310 -0
- package/dist/kurot/geom/Matrix.js.map +1 -0
- package/dist/kurot/geom/Point.d.ts +23 -0
- package/dist/kurot/geom/Point.d.ts.map +1 -0
- package/dist/kurot/geom/Point.js +73 -0
- package/dist/kurot/geom/Point.js.map +1 -0
- package/dist/kurot/geom/Rectangle.d.ts +47 -0
- package/dist/kurot/geom/Rectangle.d.ts.map +1 -0
- package/dist/kurot/geom/Rectangle.js +174 -0
- package/dist/kurot/geom/Rectangle.js.map +1 -0
- package/dist/kurot/geom/index.d.ts +4 -0
- package/dist/kurot/geom/index.d.ts.map +1 -0
- package/dist/kurot/geom/index.js +4 -0
- package/dist/kurot/geom/index.js.map +1 -0
- package/dist/kurot/localStorage/index.d.ts +2 -0
- package/dist/kurot/localStorage/index.d.ts.map +1 -0
- package/dist/kurot/localStorage/index.js +2 -0
- package/dist/kurot/localStorage/index.js.map +1 -0
- package/dist/kurot/localStorage/localStorage.d.ts +5 -0
- package/dist/kurot/localStorage/localStorage.d.ts.map +1 -0
- package/dist/kurot/localStorage/localStorage.js +19 -0
- package/dist/kurot/localStorage/localStorage.js.map +1 -0
- package/dist/kurot/media/Sound.d.ts +33 -0
- package/dist/kurot/media/Sound.d.ts.map +1 -0
- package/dist/kurot/media/Sound.js +163 -0
- package/dist/kurot/media/Sound.js.map +1 -0
- package/dist/kurot/media/SoundChannel.d.ts +28 -0
- package/dist/kurot/media/SoundChannel.d.ts.map +1 -0
- package/dist/kurot/media/SoundChannel.js +117 -0
- package/dist/kurot/media/SoundChannel.js.map +1 -0
- package/dist/kurot/media/Video.d.ts +50 -0
- package/dist/kurot/media/Video.d.ts.map +1 -0
- package/dist/kurot/media/Video.js +242 -0
- package/dist/kurot/media/Video.js.map +1 -0
- package/dist/kurot/media/index.d.ts +4 -0
- package/dist/kurot/media/index.d.ts.map +1 -0
- package/dist/kurot/media/index.js +4 -0
- package/dist/kurot/media/index.js.map +1 -0
- package/dist/kurot/net/HttpMethod.d.ts +12 -0
- package/dist/kurot/net/HttpMethod.d.ts.map +1 -0
- package/dist/kurot/net/HttpMethod.js +10 -0
- package/dist/kurot/net/HttpMethod.js.map +1 -0
- package/dist/kurot/net/HttpRequest.d.ts +69 -0
- package/dist/kurot/net/HttpRequest.d.ts.map +1 -0
- package/dist/kurot/net/HttpRequest.js +121 -0
- package/dist/kurot/net/HttpRequest.js.map +1 -0
- package/dist/kurot/net/HttpResponseType.d.ts +12 -0
- package/dist/kurot/net/HttpResponseType.d.ts.map +1 -0
- package/dist/kurot/net/HttpResponseType.js +10 -0
- package/dist/kurot/net/HttpResponseType.js.map +1 -0
- package/dist/kurot/net/ImageLoader.d.ts +34 -0
- package/dist/kurot/net/ImageLoader.d.ts.map +1 -0
- package/dist/kurot/net/ImageLoader.js +54 -0
- package/dist/kurot/net/ImageLoader.js.map +1 -0
- package/dist/kurot/net/index.d.ts +7 -0
- package/dist/kurot/net/index.d.ts.map +1 -0
- package/dist/kurot/net/index.js +5 -0
- package/dist/kurot/net/index.js.map +1 -0
- package/dist/kurot/player/KurotOptions.d.ts +25 -0
- package/dist/kurot/player/KurotOptions.d.ts.map +1 -0
- package/dist/kurot/player/KurotOptions.js +2 -0
- package/dist/kurot/player/KurotOptions.js.map +1 -0
- package/dist/kurot/player/Player.d.ts +45 -0
- package/dist/kurot/player/Player.d.ts.map +1 -0
- package/dist/kurot/player/Player.js +158 -0
- package/dist/kurot/player/Player.js.map +1 -0
- package/dist/kurot/player/RenderPipe.d.ts +33 -0
- package/dist/kurot/player/RenderPipe.d.ts.map +1 -0
- package/dist/kurot/player/RenderPipe.js +2 -0
- package/dist/kurot/player/RenderPipe.js.map +1 -0
- package/dist/kurot/player/ScreenAdapter.d.ts +29 -0
- package/dist/kurot/player/ScreenAdapter.d.ts.map +1 -0
- package/dist/kurot/player/ScreenAdapter.js +127 -0
- package/dist/kurot/player/ScreenAdapter.js.map +1 -0
- package/dist/kurot/player/SystemTicker.d.ts +63 -0
- package/dist/kurot/player/SystemTicker.d.ts.map +1 -0
- package/dist/kurot/player/SystemTicker.js +209 -0
- package/dist/kurot/player/SystemTicker.js.map +1 -0
- package/dist/kurot/player/TouchHandler.d.ts +39 -0
- package/dist/kurot/player/TouchHandler.d.ts.map +1 -0
- package/dist/kurot/player/TouchHandler.js +152 -0
- package/dist/kurot/player/TouchHandler.js.map +1 -0
- package/dist/kurot/player/canvas/CanvasRenderer.d.ts +50 -0
- package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -0
- package/dist/kurot/player/canvas/CanvasRenderer.js +811 -0
- package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -0
- package/dist/kurot/player/canvas/DisplayList.d.ts +36 -0
- package/dist/kurot/player/canvas/DisplayList.d.ts.map +1 -0
- package/dist/kurot/player/canvas/DisplayList.js +100 -0
- package/dist/kurot/player/canvas/DisplayList.js.map +1 -0
- package/dist/kurot/player/canvas/RenderBuffer.d.ts +35 -0
- package/dist/kurot/player/canvas/RenderBuffer.d.ts.map +1 -0
- package/dist/kurot/player/canvas/RenderBuffer.js +83 -0
- package/dist/kurot/player/canvas/RenderBuffer.js.map +1 -0
- package/dist/kurot/player/canvas/index.d.ts +4 -0
- package/dist/kurot/player/canvas/index.d.ts.map +1 -0
- package/dist/kurot/player/canvas/index.js +4 -0
- package/dist/kurot/player/canvas/index.js.map +1 -0
- package/dist/kurot/player/createPlayer.d.ts +36 -0
- package/dist/kurot/player/createPlayer.d.ts.map +1 -0
- package/dist/kurot/player/createPlayer.js +83 -0
- package/dist/kurot/player/createPlayer.js.map +1 -0
- package/dist/kurot/player/index.d.ts +11 -0
- package/dist/kurot/player/index.d.ts.map +1 -0
- package/dist/kurot/player/index.js +14 -0
- package/dist/kurot/player/index.js.map +1 -0
- package/dist/kurot/player/webgl/InstructionSet.d.ts +61 -0
- package/dist/kurot/player/webgl/InstructionSet.d.ts.map +1 -0
- package/dist/kurot/player/webgl/InstructionSet.js +84 -0
- package/dist/kurot/player/webgl/InstructionSet.js.map +1 -0
- package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts +39 -0
- package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts.map +1 -0
- package/dist/kurot/player/webgl/MultiTextureBatcher.js +63 -0
- package/dist/kurot/player/webgl/MultiTextureBatcher.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts +57 -0
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.js +197 -0
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLProgram.d.ts +15 -0
- package/dist/kurot/player/webgl/WebGLProgram.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLProgram.js +32 -0
- package/dist/kurot/player/webgl/WebGLProgram.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts +57 -0
- package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderBuffer.js +254 -0
- package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +128 -0
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderContext.js +933 -0
- package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts +20 -0
- package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderTarget.js +90 -0
- package/dist/kurot/player/webgl/WebGLRenderTarget.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderer.d.ts +208 -0
- package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLRenderer.js +921 -0
- package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLUtils.d.ts +17 -0
- package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLUtils.js +56 -0
- package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts +39 -0
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.js +375 -0
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.js.map +1 -0
- package/dist/kurot/player/webgl/index.d.ts +11 -0
- package/dist/kurot/player/webgl/index.d.ts.map +1 -0
- package/dist/kurot/player/webgl/index.js +11 -0
- package/dist/kurot/player/webgl/index.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/BitmapPipe.d.ts +35 -0
- package/dist/kurot/player/webgl/pipes/BitmapPipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/BitmapPipe.js +130 -0
- package/dist/kurot/player/webgl/pipes/BitmapPipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/FilterPipe.d.ts +68 -0
- package/dist/kurot/player/webgl/pipes/FilterPipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/FilterPipe.js +176 -0
- package/dist/kurot/player/webgl/pipes/FilterPipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/GraphicsPipe.d.ts +38 -0
- package/dist/kurot/player/webgl/pipes/GraphicsPipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/GraphicsPipe.js +165 -0
- package/dist/kurot/player/webgl/pipes/GraphicsPipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/MaskPipe.d.ts +58 -0
- package/dist/kurot/player/webgl/pipes/MaskPipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/MaskPipe.js +206 -0
- package/dist/kurot/player/webgl/pipes/MaskPipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/MeshPipe.d.ts +22 -0
- package/dist/kurot/player/webgl/pipes/MeshPipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/MeshPipe.js +50 -0
- package/dist/kurot/player/webgl/pipes/MeshPipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/ParticlePipe.d.ts +23 -0
- package/dist/kurot/player/webgl/pipes/ParticlePipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/ParticlePipe.js +48 -0
- package/dist/kurot/player/webgl/pipes/ParticlePipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/TextPipe.d.ts +54 -0
- package/dist/kurot/player/webgl/pipes/TextPipe.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/TextPipe.js +201 -0
- package/dist/kurot/player/webgl/pipes/TextPipe.js.map +1 -0
- package/dist/kurot/player/webgl/pipes/index.d.ts +8 -0
- package/dist/kurot/player/webgl/pipes/index.d.ts.map +1 -0
- package/dist/kurot/player/webgl/pipes/index.js +8 -0
- package/dist/kurot/player/webgl/pipes/index.js.map +1 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts +23 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts.map +1 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib.js +263 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib.js.map +1 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts +23 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts.map +1 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib2.js +280 -0
- package/dist/kurot/player/webgl/shaders/ShaderLib2.js.map +1 -0
- package/dist/kurot/player/webgl/shaders/index.d.ts +5 -0
- package/dist/kurot/player/webgl/shaders/index.d.ts.map +1 -0
- package/dist/kurot/player/webgl/shaders/index.js +5 -0
- package/dist/kurot/player/webgl/shaders/index.js.map +1 -0
- package/dist/kurot/resource/Resource.d.ts +126 -0
- package/dist/kurot/resource/Resource.d.ts.map +1 -0
- package/dist/kurot/resource/Resource.js +377 -0
- package/dist/kurot/resource/Resource.js.map +1 -0
- package/dist/kurot/resource/ResourceConfig.d.ts +71 -0
- package/dist/kurot/resource/ResourceConfig.d.ts.map +1 -0
- package/dist/kurot/resource/ResourceConfig.js +146 -0
- package/dist/kurot/resource/ResourceConfig.js.map +1 -0
- package/dist/kurot/resource/ResourceEvent.d.ts +29 -0
- package/dist/kurot/resource/ResourceEvent.d.ts.map +1 -0
- package/dist/kurot/resource/ResourceEvent.js +12 -0
- package/dist/kurot/resource/ResourceEvent.js.map +1 -0
- package/dist/kurot/resource/ResourceItem.d.ts +24 -0
- package/dist/kurot/resource/ResourceItem.d.ts.map +1 -0
- package/dist/kurot/resource/ResourceItem.js +29 -0
- package/dist/kurot/resource/ResourceItem.js.map +1 -0
- package/dist/kurot/resource/ResourceLoader.d.ts +73 -0
- package/dist/kurot/resource/ResourceLoader.d.ts.map +1 -0
- package/dist/kurot/resource/ResourceLoader.js +174 -0
- package/dist/kurot/resource/ResourceLoader.js.map +1 -0
- package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts +31 -0
- package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/AnalyzerBase.js +38 -0
- package/dist/kurot/resource/analyzers/AnalyzerBase.js.map +1 -0
- package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts +13 -0
- package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/ImageAnalyzer.js +54 -0
- package/dist/kurot/resource/analyzers/ImageAnalyzer.js.map +1 -0
- package/dist/kurot/resource/analyzers/JsonAnalyzer.d.ts +12 -0
- package/dist/kurot/resource/analyzers/JsonAnalyzer.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/JsonAnalyzer.js +54 -0
- package/dist/kurot/resource/analyzers/JsonAnalyzer.js.map +1 -0
- package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts +32 -0
- package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/SheetAnalyzer.js +182 -0
- package/dist/kurot/resource/analyzers/SheetAnalyzer.js.map +1 -0
- package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts +13 -0
- package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/SoundAnalyzer.js +45 -0
- package/dist/kurot/resource/analyzers/SoundAnalyzer.js.map +1 -0
- package/dist/kurot/resource/analyzers/TextAnalyzer.d.ts +12 -0
- package/dist/kurot/resource/analyzers/TextAnalyzer.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/TextAnalyzer.js +49 -0
- package/dist/kurot/resource/analyzers/TextAnalyzer.js.map +1 -0
- package/dist/kurot/resource/analyzers/index.d.ts +7 -0
- package/dist/kurot/resource/analyzers/index.d.ts.map +1 -0
- package/dist/kurot/resource/analyzers/index.js +7 -0
- package/dist/kurot/resource/analyzers/index.js.map +1 -0
- package/dist/kurot/resource/index.d.ts +15 -0
- package/dist/kurot/resource/index.d.ts.map +1 -0
- package/dist/kurot/resource/index.js +15 -0
- package/dist/kurot/resource/index.js.map +1 -0
- package/dist/kurot/system/Capabilities.d.ts +46 -0
- package/dist/kurot/system/Capabilities.d.ts.map +1 -0
- package/dist/kurot/system/Capabilities.js +100 -0
- package/dist/kurot/system/Capabilities.js.map +1 -0
- package/dist/kurot/system/index.d.ts +2 -0
- package/dist/kurot/system/index.d.ts.map +1 -0
- package/dist/kurot/system/index.js +2 -0
- package/dist/kurot/system/index.js.map +1 -0
- package/dist/kurot/text/BitmapFont.d.ts +31 -0
- package/dist/kurot/text/BitmapFont.d.ts.map +1 -0
- package/dist/kurot/text/BitmapFont.js +86 -0
- package/dist/kurot/text/BitmapFont.js.map +1 -0
- package/dist/kurot/text/BitmapText.d.ts +58 -0
- package/dist/kurot/text/BitmapText.d.ts.map +1 -0
- package/dist/kurot/text/BitmapText.js +245 -0
- package/dist/kurot/text/BitmapText.js.map +1 -0
- package/dist/kurot/text/HtmlTextParser.d.ts +14 -0
- package/dist/kurot/text/HtmlTextParser.d.ts.map +1 -0
- package/dist/kurot/text/HtmlTextParser.js +147 -0
- package/dist/kurot/text/HtmlTextParser.js.map +1 -0
- package/dist/kurot/text/InputController.d.ts +29 -0
- package/dist/kurot/text/InputController.d.ts.map +1 -0
- package/dist/kurot/text/InputController.js +131 -0
- package/dist/kurot/text/InputController.js.map +1 -0
- package/dist/kurot/text/StageText.d.ts +51 -0
- package/dist/kurot/text/StageText.d.ts.map +1 -0
- package/dist/kurot/text/StageText.js +324 -0
- package/dist/kurot/text/StageText.js.map +1 -0
- package/dist/kurot/text/TextField.d.ts +149 -0
- package/dist/kurot/text/TextField.d.ts.map +1 -0
- package/dist/kurot/text/TextField.js +734 -0
- package/dist/kurot/text/TextField.js.map +1 -0
- package/dist/kurot/text/TextMeasurer.d.ts +9 -0
- package/dist/kurot/text/TextMeasurer.d.ts.map +1 -0
- package/dist/kurot/text/TextMeasurer.js +36 -0
- package/dist/kurot/text/TextMeasurer.js.map +1 -0
- package/dist/kurot/text/WordWrap.d.ts +29 -0
- package/dist/kurot/text/WordWrap.d.ts.map +1 -0
- package/dist/kurot/text/WordWrap.js +110 -0
- package/dist/kurot/text/WordWrap.js.map +1 -0
- package/dist/kurot/text/enums/HorizontalAlign.d.ts +9 -0
- package/dist/kurot/text/enums/HorizontalAlign.d.ts.map +1 -0
- package/dist/kurot/text/enums/HorizontalAlign.js +8 -0
- package/dist/kurot/text/enums/HorizontalAlign.js.map +1 -0
- package/dist/kurot/text/enums/TextFieldInputType.d.ts +7 -0
- package/dist/kurot/text/enums/TextFieldInputType.d.ts.map +1 -0
- package/dist/kurot/text/enums/TextFieldInputType.js +6 -0
- package/dist/kurot/text/enums/TextFieldInputType.js.map +1 -0
- package/dist/kurot/text/enums/TextFieldType.d.ts +6 -0
- package/dist/kurot/text/enums/TextFieldType.d.ts.map +1 -0
- package/dist/kurot/text/enums/TextFieldType.js +5 -0
- package/dist/kurot/text/enums/TextFieldType.js.map +1 -0
- package/dist/kurot/text/enums/VerticalAlign.d.ts +9 -0
- package/dist/kurot/text/enums/VerticalAlign.d.ts.map +1 -0
- package/dist/kurot/text/enums/VerticalAlign.js +8 -0
- package/dist/kurot/text/enums/VerticalAlign.js.map +1 -0
- package/dist/kurot/text/enums/index.d.ts +5 -0
- package/dist/kurot/text/enums/index.d.ts.map +1 -0
- package/dist/kurot/text/enums/index.js +5 -0
- package/dist/kurot/text/enums/index.js.map +1 -0
- package/dist/kurot/text/index.d.ts +14 -0
- package/dist/kurot/text/index.d.ts.map +1 -0
- package/dist/kurot/text/index.js +13 -0
- package/dist/kurot/text/index.js.map +1 -0
- package/dist/kurot/text/types/ITextElement.d.ts +31 -0
- package/dist/kurot/text/types/ITextElement.d.ts.map +1 -0
- package/dist/kurot/text/types/ITextElement.js +2 -0
- package/dist/kurot/text/types/ITextElement.js.map +1 -0
- package/dist/kurot/text/types/index.d.ts +2 -0
- package/dist/kurot/text/types/index.d.ts.map +1 -0
- package/dist/kurot/text/types/index.js +2 -0
- package/dist/kurot/text/types/index.js.map +1 -0
- package/dist/kurot/utils/Base64Util.d.ts +20 -0
- package/dist/kurot/utils/Base64Util.d.ts.map +1 -0
- package/dist/kurot/utils/Base64Util.js +41 -0
- package/dist/kurot/utils/Base64Util.js.map +1 -0
- package/dist/kurot/utils/ByteArray.d.ts +65 -0
- package/dist/kurot/utils/ByteArray.d.ts.map +1 -0
- package/dist/kurot/utils/ByteArray.js +300 -0
- package/dist/kurot/utils/ByteArray.js.map +1 -0
- package/dist/kurot/utils/DebugLog.d.ts +9 -0
- package/dist/kurot/utils/DebugLog.d.ts.map +1 -0
- package/dist/kurot/utils/DebugLog.js +25 -0
- package/dist/kurot/utils/DebugLog.js.map +1 -0
- package/dist/kurot/utils/FontManager.d.ts +11 -0
- package/dist/kurot/utils/FontManager.d.ts.map +1 -0
- package/dist/kurot/utils/FontManager.js +39 -0
- package/dist/kurot/utils/FontManager.js.map +1 -0
- package/dist/kurot/utils/Logger.d.ts +16 -0
- package/dist/kurot/utils/Logger.d.ts.map +1 -0
- package/dist/kurot/utils/Logger.js +26 -0
- package/dist/kurot/utils/Logger.js.map +1 -0
- package/dist/kurot/utils/NumberUtils.d.ts +15 -0
- package/dist/kurot/utils/NumberUtils.d.ts.map +1 -0
- package/dist/kurot/utils/NumberUtils.js +60 -0
- package/dist/kurot/utils/NumberUtils.js.map +1 -0
- package/dist/kurot/utils/Timer.d.ts +28 -0
- package/dist/kurot/utils/Timer.d.ts.map +1 -0
- package/dist/kurot/utils/Timer.js +67 -0
- package/dist/kurot/utils/Timer.js.map +1 -0
- package/dist/kurot/utils/index.d.ts +9 -0
- package/dist/kurot/utils/index.d.ts.map +1 -0
- package/dist/kurot/utils/index.js +9 -0
- package/dist/kurot/utils/index.js.map +1 -0
- package/dist/kurot/utils/toColorString.d.ts +2 -0
- package/dist/kurot/utils/toColorString.d.ts.map +1 -0
- package/dist/kurot/utils/toColorString.js +5 -0
- package/dist/kurot/utils/toColorString.js.map +1 -0
- package/package.json +56 -0
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { EventDispatcher } from '../events/EventDispatcher.js';
|
|
2
|
+
import { Event } from '../events/Event.js';
|
|
3
|
+
import { HTTPStatusEvent } from '../events/HTTPStatusEvent.js';
|
|
4
|
+
import { IOErrorEvent } from '../events/IOErrorEvent.js';
|
|
5
|
+
import { ProgressEvent } from '../events/ProgressEvent.js';
|
|
6
|
+
import { HttpMethod } from './HttpMethod.js';
|
|
7
|
+
import { HttpResponseType } from './HttpResponseType.js';
|
|
8
|
+
/**
|
|
9
|
+
* Event-driven XMLHttpRequest wrapper.
|
|
10
|
+
*
|
|
11
|
+
* Use the lifecycle `open()` → `setRequestHeader()` → `send()`. One instance
|
|
12
|
+
* may be reused by calling `open()` for each new request; doing so aborts the
|
|
13
|
+
* previous request and clears headers queued for it.
|
|
14
|
+
*/
|
|
15
|
+
export class HttpRequest extends EventDispatcher {
|
|
16
|
+
// ── Instance fields ───────────────────────────────────────────────────────
|
|
17
|
+
/** Response body representation requested from XMLHttpRequest. */
|
|
18
|
+
responseType = HttpResponseType.TEXT;
|
|
19
|
+
/** Whether cross-origin requests include credentials. */
|
|
20
|
+
withCredentials = false;
|
|
21
|
+
/** Request timeout in milliseconds; 0 disables the browser timeout. */
|
|
22
|
+
timeout = 0;
|
|
23
|
+
_xhr;
|
|
24
|
+
_url = '';
|
|
25
|
+
_method = HttpMethod.GET;
|
|
26
|
+
_pendingHeaders = [];
|
|
27
|
+
// ── Getters ───────────────────────────────────────────────────────────────
|
|
28
|
+
/** Response body from the active or most recently completed request. */
|
|
29
|
+
get response() {
|
|
30
|
+
return this._xhr?.response;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* HTTP status code from the active or most recently completed request.
|
|
34
|
+
* Returns 0 before completion, after abort(), or when the browser blocks the
|
|
35
|
+
* request before a response is available (for example, a failed CORS check).
|
|
36
|
+
*/
|
|
37
|
+
get status() {
|
|
38
|
+
return this._xhr?.status ?? 0;
|
|
39
|
+
}
|
|
40
|
+
// ── Public methods ────────────────────────────────────────────────────────
|
|
41
|
+
/**
|
|
42
|
+
* Prepare a request URL and method.
|
|
43
|
+
*
|
|
44
|
+
* Aborts an active request and discards headers queued for the prior request.
|
|
45
|
+
*/
|
|
46
|
+
open(url, method = HttpMethod.GET) {
|
|
47
|
+
this.abort();
|
|
48
|
+
this._url = url;
|
|
49
|
+
this._method = method;
|
|
50
|
+
this._pendingHeaders = [];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Create and send the underlying XMLHttpRequest.
|
|
54
|
+
*
|
|
55
|
+
* Queued headers are applied after the native request is opened and before
|
|
56
|
+
* its body is sent. Successful responses dispatch HTTP_STATUS followed by
|
|
57
|
+
* COMPLETE; network errors, timeouts, status 0, and status >= 400 dispatch
|
|
58
|
+
* IOErrorEvent.IO_ERROR.
|
|
59
|
+
*/
|
|
60
|
+
send(data) {
|
|
61
|
+
const xhr = new XMLHttpRequest();
|
|
62
|
+
this._xhr = xhr;
|
|
63
|
+
xhr.responseType = this.responseType;
|
|
64
|
+
xhr.withCredentials = this.withCredentials;
|
|
65
|
+
if (this.timeout > 0)
|
|
66
|
+
xhr.timeout = this.timeout;
|
|
67
|
+
xhr.onload = () => {
|
|
68
|
+
// `load` only means the request completed — the server may still have
|
|
69
|
+
// responded with an error status (404, 500, ...), or the browser may
|
|
70
|
+
// have blocked the response before it reached the server (status 0,
|
|
71
|
+
// e.g. a failed CORS preflight). Treat both as failures, matching
|
|
72
|
+
// how fetch()-based code typically checks `response.ok`.
|
|
73
|
+
HTTPStatusEvent.dispatchHTTPStatusEvent(this, xhr.status);
|
|
74
|
+
if (xhr.status === 0 || xhr.status >= 400) {
|
|
75
|
+
IOErrorEvent.dispatchIOErrorEvent(this);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
this.dispatchEventWith(Event.COMPLETE);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
xhr.onerror = () => {
|
|
82
|
+
IOErrorEvent.dispatchIOErrorEvent(this);
|
|
83
|
+
};
|
|
84
|
+
xhr.ontimeout = () => {
|
|
85
|
+
IOErrorEvent.dispatchIOErrorEvent(this);
|
|
86
|
+
};
|
|
87
|
+
xhr.onprogress = e => {
|
|
88
|
+
ProgressEvent.dispatchProgressEvent(this, ProgressEvent.PROGRESS, e.loaded, e.total);
|
|
89
|
+
};
|
|
90
|
+
xhr.open(this._method, this._url, true);
|
|
91
|
+
for (const header of this._pendingHeaders) {
|
|
92
|
+
xhr.setRequestHeader(header.name, header.value);
|
|
93
|
+
}
|
|
94
|
+
xhr.send(data);
|
|
95
|
+
}
|
|
96
|
+
/** Abort the active native request and clear its response/status accessors. */
|
|
97
|
+
abort() {
|
|
98
|
+
if (this._xhr) {
|
|
99
|
+
this._xhr.abort();
|
|
100
|
+
this._xhr = undefined;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/** Return all response headers, or an empty string when no response is available. */
|
|
104
|
+
getAllResponseHeaders() {
|
|
105
|
+
return this._xhr?.getAllResponseHeaders() ?? '';
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Queue a request header to be sent with the next `send()` call.
|
|
109
|
+
*
|
|
110
|
+
* Must be called after `open()` and before `send()` because the underlying
|
|
111
|
+
* XMLHttpRequest is created lazily by `send()`.
|
|
112
|
+
*/
|
|
113
|
+
setRequestHeader(header, value) {
|
|
114
|
+
this._pendingHeaders.push({ name: header, value });
|
|
115
|
+
}
|
|
116
|
+
/** Return a named response header, or an empty string when it is unavailable. */
|
|
117
|
+
getResponseHeader(header) {
|
|
118
|
+
return this._xhr?.getResponseHeader(header) ?? '';
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=HttpRequest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpRequest.js","sourceRoot":"","sources":["../../../src/kurot/net/HttpRequest.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Response body formats supported by HttpRequest.
|
|
3
|
+
*
|
|
4
|
+
* TEXT returns a string response; ARRAY_BUFFER returns the raw binary body.
|
|
5
|
+
*/
|
|
6
|
+
export declare const HttpResponseType: {
|
|
7
|
+
readonly TEXT: "text";
|
|
8
|
+
readonly ARRAY_BUFFER: "arraybuffer";
|
|
9
|
+
};
|
|
10
|
+
/** Union of the response body formats supported by HttpRequest. */
|
|
11
|
+
export type HttpResponseType = (typeof HttpResponseType)[keyof typeof HttpResponseType];
|
|
12
|
+
//# sourceMappingURL=HttpResponseType.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpResponseType.d.ts","sourceRoot":"","sources":["../../../src/kurot/net/HttpResponseType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAEX,mEAAmE;AACnE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Response body formats supported by HttpRequest.
|
|
3
|
+
*
|
|
4
|
+
* TEXT returns a string response; ARRAY_BUFFER returns the raw binary body.
|
|
5
|
+
*/
|
|
6
|
+
export const HttpResponseType = {
|
|
7
|
+
TEXT: 'text',
|
|
8
|
+
ARRAY_BUFFER: 'arraybuffer',
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=HttpResponseType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpResponseType.js","sourceRoot":"","sources":["../../../src/kurot/net/HttpResponseType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC/B,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,aAAa;CAClB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { EventDispatcher } from '../events/EventDispatcher.js';
|
|
2
|
+
import { Event, type EventMap } from '../events/Event.js';
|
|
3
|
+
import { IOErrorEvent } from '../events/IOErrorEvent.js';
|
|
4
|
+
import { BitmapData } from '../display/texture/BitmapData.js';
|
|
5
|
+
export interface ImageLoaderEvents extends EventMap {
|
|
6
|
+
[Event.COMPLETE]: Event;
|
|
7
|
+
[IOErrorEvent.IO_ERROR]: IOErrorEvent;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Event-driven browser image loader.
|
|
11
|
+
*
|
|
12
|
+
* `load()` replaces and cancels a prior image request. `close()` detaches the
|
|
13
|
+
* browser handlers and clears the image source, preventing cancelled requests
|
|
14
|
+
* from updating data or dispatching an event later.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ImageLoader extends EventDispatcher<ImageLoaderEvents> {
|
|
17
|
+
/** Default cross-origin mode applied to newly created loaders. */
|
|
18
|
+
static crossOrigin?: string;
|
|
19
|
+
/** Bitmap data from the most recently completed image request. */
|
|
20
|
+
data?: BitmapData;
|
|
21
|
+
/** Cross-origin mode applied to the next image request, when specified. */
|
|
22
|
+
crossOrigin?: string;
|
|
23
|
+
private _img?;
|
|
24
|
+
/** Start loading an image URL, cancelling any previous request first. */
|
|
25
|
+
load(url: string): void;
|
|
26
|
+
/**
|
|
27
|
+
* Cancel an in-flight image request.
|
|
28
|
+
*
|
|
29
|
+
* The most recently loaded `data` value is retained; only the active browser
|
|
30
|
+
* image element and its pending callbacks are released.
|
|
31
|
+
*/
|
|
32
|
+
close(): void;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=ImageLoader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageLoader.d.ts","sourceRoot":"","sources":["../../../src/kurot/net/ImageLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IAClD,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACxB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;CACtC;AAED;;;;;;GAMG;AACH,qBAAa,WAAY,SAAQ,eAAe,CAAC,iBAAiB,CAAC;IAGlE,kEAAkE;IAClE,OAAc,WAAW,CAAC,EAAE,MAAM,CAAC;IAInC,kEAAkE;IAC3D,IAAI,CAAC,EAAE,UAAU,CAAC;IACzB,2EAA2E;IACpE,WAAW,CAAC,EAAE,MAAM,CAA2B;IAEtD,OAAO,CAAC,IAAI,CAAC,CAAmB;IAIhC,yEAAyE;IAClE,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAmB9B;;;;;OAKG;IACI,KAAK,IAAI,IAAI;CAQpB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { EventDispatcher } from '../events/EventDispatcher.js';
|
|
2
|
+
import { Event } from '../events/Event.js';
|
|
3
|
+
import { IOErrorEvent } from '../events/IOErrorEvent.js';
|
|
4
|
+
import { BitmapData } from '../display/texture/BitmapData.js';
|
|
5
|
+
/**
|
|
6
|
+
* Event-driven browser image loader.
|
|
7
|
+
*
|
|
8
|
+
* `load()` replaces and cancels a prior image request. `close()` detaches the
|
|
9
|
+
* browser handlers and clears the image source, preventing cancelled requests
|
|
10
|
+
* from updating data or dispatching an event later.
|
|
11
|
+
*/
|
|
12
|
+
export class ImageLoader extends EventDispatcher {
|
|
13
|
+
// ── Static fields ─────────────────────────────────────────────────────────
|
|
14
|
+
/** Default cross-origin mode applied to newly created loaders. */
|
|
15
|
+
static crossOrigin;
|
|
16
|
+
// ── Instance fields ───────────────────────────────────────────────────────
|
|
17
|
+
/** Bitmap data from the most recently completed image request. */
|
|
18
|
+
data;
|
|
19
|
+
/** Cross-origin mode applied to the next image request, when specified. */
|
|
20
|
+
crossOrigin = ImageLoader.crossOrigin;
|
|
21
|
+
_img;
|
|
22
|
+
// ── Public methods ────────────────────────────────────────────────────────
|
|
23
|
+
/** Start loading an image URL, cancelling any previous request first. */
|
|
24
|
+
load(url) {
|
|
25
|
+
this.close();
|
|
26
|
+
const img = new Image();
|
|
27
|
+
this._img = img;
|
|
28
|
+
if (this.crossOrigin)
|
|
29
|
+
img.crossOrigin = this.crossOrigin;
|
|
30
|
+
img.onload = () => {
|
|
31
|
+
this.data = new BitmapData(img);
|
|
32
|
+
this.dispatchEventWith(Event.COMPLETE);
|
|
33
|
+
};
|
|
34
|
+
img.onerror = () => {
|
|
35
|
+
IOErrorEvent.dispatchIOErrorEvent(this);
|
|
36
|
+
};
|
|
37
|
+
img.src = url;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Cancel an in-flight image request.
|
|
41
|
+
*
|
|
42
|
+
* The most recently loaded `data` value is retained; only the active browser
|
|
43
|
+
* image element and its pending callbacks are released.
|
|
44
|
+
*/
|
|
45
|
+
close() {
|
|
46
|
+
if (this._img) {
|
|
47
|
+
this._img.onload = null;
|
|
48
|
+
this._img.onerror = null;
|
|
49
|
+
this._img.src = '';
|
|
50
|
+
this._img = undefined;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=ImageLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageLoader.js","sourceRoot":"","sources":["../../../src/kurot/net/ImageLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAiB,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAO9D;;;;;;GAMG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAkC;IAClE,6EAA6E;IAE7E,kEAAkE;IAC3D,MAAM,CAAC,WAAW,CAAU;IAEnC,6EAA6E;IAE7E,kEAAkE;IAC3D,IAAI,CAAc;IACzB,2EAA2E;IACpE,WAAW,GAAY,WAAW,CAAC,WAAW,CAAC;IAE9C,IAAI,CAAoB;IAEhC,6EAA6E;IAE7E,yEAAyE;IAClE,IAAI,CAAC,GAAW;QACtB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,IAAI,CAAC,WAAW;YAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAEzD,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE;YAClB,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,KAAK;QACX,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACvB,CAAC;IACF,CAAC;CACD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { HttpMethod } from './HttpMethod.js';
|
|
2
|
+
export type { HttpMethod as HttpMethodType } from './HttpMethod.js';
|
|
3
|
+
export { HttpResponseType } from './HttpResponseType.js';
|
|
4
|
+
export type { HttpResponseType as HttpResponseTypeType } from './HttpResponseType.js';
|
|
5
|
+
export { HttpRequest, type HttpRequestEvents } from './HttpRequest.js';
|
|
6
|
+
export { ImageLoader, type ImageLoaderEvents } from './ImageLoader.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kurot/net/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/kurot/net/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { StageScaleMode } from '../display/enums/StageScaleMode.js';
|
|
2
|
+
import type { OrientationMode } from '../display/enums/OrientationMode.js';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration options for initializing the Kurot engine.
|
|
5
|
+
* Equivalent to Egret's `PlayerOption` + `runEgretOptions`.
|
|
6
|
+
*/
|
|
7
|
+
export interface KurotOptions {
|
|
8
|
+
/** The canvas element to render into. */
|
|
9
|
+
canvas: HTMLCanvasElement;
|
|
10
|
+
/** Frame rate (default: 60). */
|
|
11
|
+
frameRate?: number;
|
|
12
|
+
/** Stage scale mode (default: 'showAll'). */
|
|
13
|
+
scaleMode?: StageScaleMode;
|
|
14
|
+
/** Initial content width in logical pixels. */
|
|
15
|
+
contentWidth?: number;
|
|
16
|
+
/** Initial content height in logical pixels. */
|
|
17
|
+
contentHeight?: number;
|
|
18
|
+
/** Screen orientation mode (default: 'auto'). */
|
|
19
|
+
orientation?: OrientationMode;
|
|
20
|
+
/** Maximum simultaneous touch points (default: 99). */
|
|
21
|
+
maxTouches?: number;
|
|
22
|
+
/** Background color as a CSS string (default: '#000000'). */
|
|
23
|
+
background?: string;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=KurotOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KurotOptions.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/KurotOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAE3E;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC5B,yCAAyC;IACzC,MAAM,EAAE,iBAAiB,CAAC;IAE1B,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KurotOptions.js","sourceRoot":"","sources":["../../../src/kurot/player/KurotOptions.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Stage } from '../display/Stage.js';
|
|
2
|
+
import { DisplayObject } from '../display/DisplayObject.js';
|
|
3
|
+
import { type Renderable } from './SystemTicker.js';
|
|
4
|
+
/**
|
|
5
|
+
* The Player ties together a Stage and a renderer.
|
|
6
|
+
* Automatically uses WebGL if available, falls back to Canvas 2D.
|
|
7
|
+
*/
|
|
8
|
+
export declare class Player implements Renderable {
|
|
9
|
+
private static readonly _IDENTITY;
|
|
10
|
+
readonly stage: Stage;
|
|
11
|
+
private _isPlaying;
|
|
12
|
+
private _root?;
|
|
13
|
+
private _canvas2dBuffer?;
|
|
14
|
+
private _canvas2dRenderer?;
|
|
15
|
+
private _webglBuffer?;
|
|
16
|
+
private _webglRenderer?;
|
|
17
|
+
private _webglContext?;
|
|
18
|
+
private _unregisterCallbacks;
|
|
19
|
+
readonly perf: {
|
|
20
|
+
frameCount: number;
|
|
21
|
+
lastFrameTime: number;
|
|
22
|
+
fps: number;
|
|
23
|
+
avgFps: number;
|
|
24
|
+
minFps: number;
|
|
25
|
+
maxFps: number;
|
|
26
|
+
drawCalls: number;
|
|
27
|
+
avgDrawCalls: number;
|
|
28
|
+
renderTimeMs: number;
|
|
29
|
+
avgRenderTimeMs: number;
|
|
30
|
+
maxRenderTimeMs: number;
|
|
31
|
+
totalRenderTimeMs: number;
|
|
32
|
+
};
|
|
33
|
+
private _fpsFrames;
|
|
34
|
+
private _fpsLastTime;
|
|
35
|
+
constructor(canvas: HTMLCanvasElement, stage?: Stage);
|
|
36
|
+
get isWebGL(): boolean;
|
|
37
|
+
start(root?: DisplayObject): void;
|
|
38
|
+
stop(): void;
|
|
39
|
+
pause(): void;
|
|
40
|
+
/** Destroy the player and release all resources. */
|
|
41
|
+
destroy(): void;
|
|
42
|
+
updateStageSize(width: number, height: number): void;
|
|
43
|
+
render(_triggerByFrame: boolean, _costTicker: number): void;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=Player.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/Player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D;;;GAGG;AACH,qBAAa,MAAO,YAAW,UAAU;IAExC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAGjD,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAC,CAAgB;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAe;IACvC,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC3C,OAAO,CAAC,oBAAoB,CAAyB;IAErD,SAAgB,IAAI;;;;;gBAKN,MAAM;gBACN,MAAM;;;;;;;MAOlB;IAEF,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAqB;gBAGtB,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,KAAK;IA4C3D,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI;IAWjC,IAAI,IAAI,IAAI;IAIZ,KAAK,IAAI,IAAI;IAMpB,oDAAoD;IAC7C,OAAO,IAAI,IAAI;IAWf,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAWpD,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;CAoClE"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { Stage } from '../display/Stage.js';
|
|
2
|
+
import { DisplayObject } from '../display/DisplayObject.js';
|
|
3
|
+
import { DisplayObjectContainer } from '../display/DisplayObjectContainer.js';
|
|
4
|
+
import { Matrix } from '../geom/Matrix.js';
|
|
5
|
+
import { RenderBuffer, CanvasRenderer } from './canvas/index.js';
|
|
6
|
+
import { ticker } from './SystemTicker.js';
|
|
7
|
+
import { WebGLRenderContext, WebGLRenderBuffer, WebGLRenderer } from './webgl/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* The Player ties together a Stage and a renderer.
|
|
10
|
+
* Automatically uses WebGL if available, falls back to Canvas 2D.
|
|
11
|
+
*/
|
|
12
|
+
export class Player {
|
|
13
|
+
// ── Static fields ─────────────────────────────────────────────────────────
|
|
14
|
+
static _IDENTITY = new Matrix();
|
|
15
|
+
// ── Instance fields ───────────────────────────────────────────────────────
|
|
16
|
+
stage;
|
|
17
|
+
_isPlaying = false;
|
|
18
|
+
_root;
|
|
19
|
+
_canvas2dBuffer;
|
|
20
|
+
_canvas2dRenderer;
|
|
21
|
+
_webglBuffer;
|
|
22
|
+
_webglRenderer;
|
|
23
|
+
_webglContext;
|
|
24
|
+
_unregisterCallbacks = [];
|
|
25
|
+
perf = {
|
|
26
|
+
frameCount: 0,
|
|
27
|
+
lastFrameTime: 0,
|
|
28
|
+
fps: 0,
|
|
29
|
+
avgFps: 0,
|
|
30
|
+
minFps: 0,
|
|
31
|
+
maxFps: 0,
|
|
32
|
+
drawCalls: 0,
|
|
33
|
+
avgDrawCalls: 0,
|
|
34
|
+
renderTimeMs: 0,
|
|
35
|
+
avgRenderTimeMs: 0,
|
|
36
|
+
maxRenderTimeMs: 0,
|
|
37
|
+
totalRenderTimeMs: 0,
|
|
38
|
+
};
|
|
39
|
+
_fpsFrames = 0;
|
|
40
|
+
_fpsLastTime = performance.now();
|
|
41
|
+
// ── Constructor ───────────────────────────────────────────────────────────
|
|
42
|
+
constructor(canvas, stage) {
|
|
43
|
+
this.stage = stage ?? new Stage();
|
|
44
|
+
try {
|
|
45
|
+
this._webglContext = new WebGLRenderContext(canvas);
|
|
46
|
+
this._webglBuffer = new WebGLRenderBuffer(this._webglContext, canvas.width || 1, canvas.height || 1, true);
|
|
47
|
+
this._webglRenderer = new WebGLRenderer();
|
|
48
|
+
// Wire up renderer hooks. The engine is single-Player by design:
|
|
49
|
+
// Player assigns these static hooks directly and clears them in
|
|
50
|
+
// `destroy()`. There is no multi-Player listener registry.
|
|
51
|
+
const renderer = this._webglRenderer;
|
|
52
|
+
DisplayObject.$onStructureChange = () => renderer.markStructureDirty();
|
|
53
|
+
DisplayObjectContainer.$onContainerStructureChange = owner => renderer.markStructureDirty(owner);
|
|
54
|
+
DisplayObject.$onRenderableDirty = obj => renderer.markRenderableDirty(obj);
|
|
55
|
+
this._unregisterCallbacks.push(
|
|
56
|
+
// After context loss + restore, all WebGL textures are invalid and
|
|
57
|
+
// the instruction set contains stale texture references. Force a
|
|
58
|
+
// full rebuild so the next render re-uploads everything.
|
|
59
|
+
this._webglContext.addContextRestoredListener(() => renderer.markStructureDirty()));
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
// WebGL init failed — fall through to Canvas 2D. Drop references so the
|
|
64
|
+
// half-constructed context can be GC'd; the GL resources themselves are
|
|
65
|
+
// reclaimed by the browser when the canvas is dropped.
|
|
66
|
+
this._webglContext = undefined;
|
|
67
|
+
this._webglBuffer = undefined;
|
|
68
|
+
}
|
|
69
|
+
const ctx = canvas.getContext('2d');
|
|
70
|
+
if (!ctx)
|
|
71
|
+
throw new Error('Failed to get Canvas 2D context');
|
|
72
|
+
this._canvas2dBuffer = new RenderBuffer();
|
|
73
|
+
this._canvas2dBuffer.surface = canvas;
|
|
74
|
+
this._canvas2dBuffer.context = ctx;
|
|
75
|
+
this._canvas2dRenderer = new CanvasRenderer();
|
|
76
|
+
}
|
|
77
|
+
get isWebGL() {
|
|
78
|
+
return !!this._webglRenderer;
|
|
79
|
+
}
|
|
80
|
+
start(root) {
|
|
81
|
+
if (this._isPlaying)
|
|
82
|
+
return;
|
|
83
|
+
this._isPlaying = true;
|
|
84
|
+
if (root && !this._root) {
|
|
85
|
+
this._root = root;
|
|
86
|
+
this.stage.addChild(root);
|
|
87
|
+
}
|
|
88
|
+
ticker.addPlayer(this);
|
|
89
|
+
ticker.start();
|
|
90
|
+
}
|
|
91
|
+
stop() {
|
|
92
|
+
this.pause();
|
|
93
|
+
}
|
|
94
|
+
pause() {
|
|
95
|
+
if (!this._isPlaying)
|
|
96
|
+
return;
|
|
97
|
+
this._isPlaying = false;
|
|
98
|
+
ticker.removePlayer(this);
|
|
99
|
+
}
|
|
100
|
+
/** Destroy the player and release all resources. */
|
|
101
|
+
destroy() {
|
|
102
|
+
this.pause();
|
|
103
|
+
for (const fn of this._unregisterCallbacks)
|
|
104
|
+
fn();
|
|
105
|
+
this._unregisterCallbacks = [];
|
|
106
|
+
// Single-Player engine: clear the static renderer hooks so they stop
|
|
107
|
+
// notifying a renderer whose owner is gone.
|
|
108
|
+
DisplayObject.$onStructureChange = undefined;
|
|
109
|
+
DisplayObject.$onRenderableDirty = undefined;
|
|
110
|
+
DisplayObjectContainer.$onContainerStructureChange = undefined;
|
|
111
|
+
}
|
|
112
|
+
updateStageSize(width, height) {
|
|
113
|
+
this.stage.resize(width, height);
|
|
114
|
+
if (this._webglBuffer) {
|
|
115
|
+
this._webglBuffer.resize(width, height);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
this._canvas2dBuffer?.resize(width, height);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
// ── Public methods (Renderable) ───────────────────────────────────────────
|
|
122
|
+
render(_triggerByFrame, _costTicker) {
|
|
123
|
+
const t0 = performance.now();
|
|
124
|
+
if (this._webglBuffer && this._webglRenderer) {
|
|
125
|
+
this._webglBuffer.clear();
|
|
126
|
+
this.perf.drawCalls = this._webglRenderer.render(this.stage, this._webglBuffer, Player._IDENTITY);
|
|
127
|
+
}
|
|
128
|
+
else if (this._canvas2dBuffer && this._canvas2dRenderer) {
|
|
129
|
+
this._canvas2dBuffer.clear();
|
|
130
|
+
this.perf.drawCalls = this._canvas2dRenderer.render(this.stage, this._canvas2dBuffer);
|
|
131
|
+
}
|
|
132
|
+
const renderTime = performance.now() - t0;
|
|
133
|
+
this.perf.renderTimeMs = renderTime;
|
|
134
|
+
this.perf.totalRenderTimeMs += renderTime;
|
|
135
|
+
if (renderTime > this.perf.maxRenderTimeMs)
|
|
136
|
+
this.perf.maxRenderTimeMs = renderTime;
|
|
137
|
+
this.perf.frameCount++;
|
|
138
|
+
this._fpsFrames++;
|
|
139
|
+
const now = performance.now();
|
|
140
|
+
const elapsed = now - this._fpsLastTime;
|
|
141
|
+
if (elapsed >= 1000) {
|
|
142
|
+
const fps = (this._fpsFrames / elapsed) * 1000;
|
|
143
|
+
this.perf.fps = fps;
|
|
144
|
+
if (fps < this.perf.minFps)
|
|
145
|
+
this.perf.minFps = fps;
|
|
146
|
+
if (fps > this.perf.maxFps)
|
|
147
|
+
this.perf.maxFps = fps;
|
|
148
|
+
this.perf.avgFps =
|
|
149
|
+
this.perf.frameCount /
|
|
150
|
+
(this.perf.totalRenderTimeMs / 1000 + (now - this._fpsLastTime + elapsed) / 1000) || fps;
|
|
151
|
+
this._fpsFrames = 0;
|
|
152
|
+
this._fpsLastTime = now;
|
|
153
|
+
}
|
|
154
|
+
this.perf.avgDrawCalls = this.perf.drawCalls;
|
|
155
|
+
this.perf.avgRenderTimeMs = this.perf.totalRenderTimeMs / this.perf.frameCount;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=Player.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Player.js","sourceRoot":"","sources":["../../../src/kurot/player/Player.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { DisplayObject } from '../display/DisplayObject.js';
|
|
2
|
+
import type { InstructionSet } from './webgl/InstructionSet.js';
|
|
3
|
+
/**
|
|
4
|
+
* A RenderPipe handles one category of DisplayObject (Bitmap, Graphics, Mesh…).
|
|
5
|
+
*
|
|
6
|
+
* Inspired by Pixi.js 8's RenderPipe interface.
|
|
7
|
+
*
|
|
8
|
+
* Lifecycle per frame:
|
|
9
|
+
* 1. If InstructionSet.structureDirty:
|
|
10
|
+
* pipe.addToInstructionSet(obj, set) — build instruction from scratch
|
|
11
|
+
* 2. Else if obj.$renderDirty:
|
|
12
|
+
* pipe.updateRenderable(obj) — patch GPU data only
|
|
13
|
+
* 3. Always:
|
|
14
|
+
* pipe.execute(instruction, ...) — issue the actual draw call
|
|
15
|
+
*/
|
|
16
|
+
export interface RenderPipe<T extends DisplayObject = DisplayObject> {
|
|
17
|
+
/**
|
|
18
|
+
* Build and append an Instruction for `renderable` into `set`.
|
|
19
|
+
* Called during the build phase when structureDirty is true.
|
|
20
|
+
*/
|
|
21
|
+
addToInstructionSet(renderable: T, set: InstructionSet): void;
|
|
22
|
+
/**
|
|
23
|
+
* Update GPU-side data for `renderable` without rebuilding the instruction.
|
|
24
|
+
* Called during the update phase when only data changed (not structure).
|
|
25
|
+
*/
|
|
26
|
+
updateRenderable(renderable: T): void;
|
|
27
|
+
/**
|
|
28
|
+
* Optional cleanup when a renderable is removed from the scene.
|
|
29
|
+
* Use this to release GPU textures / cached buffers.
|
|
30
|
+
*/
|
|
31
|
+
destroyRenderable?(renderable: T): void;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=RenderPipe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderPipe.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/RenderPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa;IAClE;;;OAGG;IACH,mBAAmB,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAAC;IAE9D;;;OAGG;IACH,gBAAgB,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC;IAEtC;;;OAGG;IACH,iBAAiB,CAAC,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC;CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenderPipe.js","sourceRoot":"","sources":["../../../src/kurot/player/RenderPipe.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Player } from './Player.js';
|
|
2
|
+
import { TouchHandler } from './TouchHandler.js';
|
|
3
|
+
export interface StageDisplaySize {
|
|
4
|
+
stageWidth: number;
|
|
5
|
+
stageHeight: number;
|
|
6
|
+
displayWidth: number;
|
|
7
|
+
displayHeight: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Manages the relationship between the browser viewport, the canvas element,
|
|
11
|
+
* and the Stage logical size. Handles resize events and applies the configured
|
|
12
|
+
* StageScaleMode.
|
|
13
|
+
*
|
|
14
|
+
* Equivalent to Egret's `sys.Screen` + `DefaultScreenAdapter`.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ScreenAdapter {
|
|
17
|
+
private _player;
|
|
18
|
+
private _canvas;
|
|
19
|
+
private _touchHandler;
|
|
20
|
+
private _contentWidth;
|
|
21
|
+
private _contentHeight;
|
|
22
|
+
constructor(player: Player, canvas: HTMLCanvasElement, touchHandler: TouchHandler, contentWidth: number, contentHeight: number);
|
|
23
|
+
setContentSize(width: number, height: number): void;
|
|
24
|
+
updateScreenSize(): void;
|
|
25
|
+
dispose(): void;
|
|
26
|
+
private onResize;
|
|
27
|
+
private calculateStageSize;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=ScreenAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScreenAdapter.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/ScreenAdapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,WAAW,gBAAgB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,qBAAa,aAAa;IAGzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAS;gBAK9B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM;IAef,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAMnD,gBAAgB,IAAI,IAAI;IAwCxB,OAAO,IAAI,IAAI;IAMtB,OAAO,CAAC,QAAQ,CAEd;IAEF,OAAO,CAAC,kBAAkB;CAsD1B"}
|