@kurot/core 1.0.14 → 1.0.16
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/README.md +96 -4
- package/dist/kurot/display/Bitmap.d.ts +0 -1
- package/dist/kurot/display/Bitmap.d.ts.map +1 -1
- package/dist/kurot/display/Bitmap.js +0 -3
- package/dist/kurot/display/Bitmap.js.map +1 -1
- package/dist/kurot/display/DisplayObject.d.ts +16 -35
- package/dist/kurot/display/DisplayObject.d.ts.map +1 -1
- package/dist/kurot/display/DisplayObject.js +6 -41
- package/dist/kurot/display/DisplayObject.js.map +1 -1
- package/dist/kurot/display/DisplayObjectContainer.d.ts +0 -10
- package/dist/kurot/display/DisplayObjectContainer.d.ts.map +1 -1
- package/dist/kurot/display/DisplayObjectContainer.js +0 -14
- package/dist/kurot/display/DisplayObjectContainer.js.map +1 -1
- package/dist/kurot/display/Graphics.d.ts +0 -1
- package/dist/kurot/display/Graphics.d.ts.map +1 -1
- package/dist/kurot/display/Graphics.js +0 -3
- package/dist/kurot/display/Graphics.js.map +1 -1
- package/dist/kurot/display/Mesh.d.ts +9 -3
- package/dist/kurot/display/Mesh.d.ts.map +1 -1
- package/dist/kurot/display/Mesh.js +9 -3
- package/dist/kurot/display/Mesh.js.map +1 -1
- package/dist/kurot/display/Stage.d.ts +0 -1
- package/dist/kurot/display/Stage.d.ts.map +1 -1
- package/dist/kurot/display/Stage.js +0 -2
- package/dist/kurot/display/Stage.js.map +1 -1
- package/dist/kurot/display/enums/BlendMode.d.ts.map +1 -1
- package/dist/kurot/display/enums/BlendMode.js +0 -2
- package/dist/kurot/display/enums/BlendMode.js.map +1 -1
- package/dist/kurot/display/texture/BitmapData.d.ts +1 -0
- package/dist/kurot/display/texture/BitmapData.d.ts.map +1 -1
- package/dist/kurot/display/texture/BitmapData.js +1 -0
- package/dist/kurot/display/texture/BitmapData.js.map +1 -1
- package/dist/kurot/display/texture/RenderTexture.d.ts +0 -1
- package/dist/kurot/display/texture/RenderTexture.d.ts.map +1 -1
- package/dist/kurot/display/texture/RenderTexture.js +0 -4
- package/dist/kurot/display/texture/RenderTexture.js.map +1 -1
- package/dist/kurot/display/texture/Texture.d.ts +9 -3
- package/dist/kurot/display/texture/Texture.d.ts.map +1 -1
- package/dist/kurot/display/texture/Texture.js +9 -3
- package/dist/kurot/display/texture/Texture.js.map +1 -1
- package/dist/kurot/events/Event.d.ts +3 -1
- package/dist/kurot/events/Event.d.ts.map +1 -1
- package/dist/kurot/events/Event.js +0 -2
- package/dist/kurot/events/Event.js.map +1 -1
- package/dist/kurot/events/EventDispatcher.d.ts.map +1 -1
- package/dist/kurot/events/EventDispatcher.js +0 -2
- package/dist/kurot/events/EventDispatcher.js.map +1 -1
- package/dist/kurot/events/TimerEvent.d.ts +0 -1
- package/dist/kurot/events/TimerEvent.d.ts.map +1 -1
- package/dist/kurot/events/TimerEvent.js +0 -1
- package/dist/kurot/events/TimerEvent.js.map +1 -1
- package/dist/kurot/events/TouchEvent.d.ts +0 -1
- package/dist/kurot/events/TouchEvent.d.ts.map +1 -1
- package/dist/kurot/events/TouchEvent.js +0 -1
- package/dist/kurot/events/TouchEvent.js.map +1 -1
- package/dist/kurot/filters/BlurFilter.d.ts.map +1 -1
- package/dist/kurot/filters/BlurFilter.js +0 -3
- package/dist/kurot/filters/BlurFilter.js.map +1 -1
- package/dist/kurot/filters/DropShadowFilter.d.ts.map +1 -1
- package/dist/kurot/filters/DropShadowFilter.js +0 -2
- package/dist/kurot/filters/DropShadowFilter.js.map +1 -1
- package/dist/kurot/geom/Matrix.d.ts +3 -9
- package/dist/kurot/geom/Matrix.d.ts.map +1 -1
- package/dist/kurot/geom/Matrix.js +3 -9
- package/dist/kurot/geom/Matrix.js.map +1 -1
- package/dist/kurot/geom/Point.d.ts +3 -1
- package/dist/kurot/geom/Point.d.ts.map +1 -1
- package/dist/kurot/geom/Point.js +3 -1
- package/dist/kurot/geom/Point.js.map +1 -1
- package/dist/kurot/geom/Rectangle.d.ts +3 -3
- package/dist/kurot/geom/Rectangle.d.ts.map +1 -1
- package/dist/kurot/geom/Rectangle.js +3 -3
- package/dist/kurot/geom/Rectangle.js.map +1 -1
- package/dist/kurot/media/Sound.d.ts.map +1 -1
- package/dist/kurot/media/Sound.js +1 -8
- package/dist/kurot/media/Sound.js.map +1 -1
- package/dist/kurot/media/SoundChannel.d.ts +0 -1
- package/dist/kurot/media/SoundChannel.d.ts.map +1 -1
- package/dist/kurot/media/SoundChannel.js +0 -3
- package/dist/kurot/media/SoundChannel.js.map +1 -1
- package/dist/kurot/player/InstructionSet.d.ts +4 -17
- package/dist/kurot/player/InstructionSet.d.ts.map +1 -1
- package/dist/kurot/player/InstructionSet.js +3 -20
- package/dist/kurot/player/InstructionSet.js.map +1 -1
- package/dist/kurot/player/KurotOptions.d.ts +24 -9
- package/dist/kurot/player/KurotOptions.d.ts.map +1 -1
- package/dist/kurot/player/Player.d.ts +15 -9
- package/dist/kurot/player/Player.d.ts.map +1 -1
- package/dist/kurot/player/Player.js +20 -22
- package/dist/kurot/player/Player.js.map +1 -1
- package/dist/kurot/player/RenderBuffer.d.ts +4 -14
- package/dist/kurot/player/RenderBuffer.d.ts.map +1 -1
- package/dist/kurot/player/RenderContext.d.ts +13 -29
- package/dist/kurot/player/RenderContext.d.ts.map +1 -1
- package/dist/kurot/player/RenderPipe.d.ts +3 -13
- package/dist/kurot/player/RenderPipe.d.ts.map +1 -1
- package/dist/kurot/player/ScreenAdapter.d.ts +6 -5
- package/dist/kurot/player/ScreenAdapter.d.ts.map +1 -1
- package/dist/kurot/player/ScreenAdapter.js +6 -15
- package/dist/kurot/player/ScreenAdapter.js.map +1 -1
- package/dist/kurot/player/SystemTicker.d.ts +13 -9
- package/dist/kurot/player/SystemTicker.d.ts.map +1 -1
- package/dist/kurot/player/SystemTicker.js +10 -13
- package/dist/kurot/player/SystemTicker.js.map +1 -1
- package/dist/kurot/player/TouchHandler.d.ts +3 -4
- package/dist/kurot/player/TouchHandler.d.ts.map +1 -1
- package/dist/kurot/player/TouchHandler.js +3 -12
- package/dist/kurot/player/TouchHandler.js.map +1 -1
- package/dist/kurot/player/canvas/CanvasBuffer.d.ts.map +1 -1
- package/dist/kurot/player/canvas/CanvasBuffer.js +0 -3
- package/dist/kurot/player/canvas/CanvasBuffer.js.map +1 -1
- package/dist/kurot/player/canvas/CanvasRenderer.d.ts +9 -17
- package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -1
- package/dist/kurot/player/canvas/CanvasRenderer.js +182 -74
- package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -1
- package/dist/kurot/player/canvas/DisplayList.d.ts +1 -5
- package/dist/kurot/player/canvas/DisplayList.d.ts.map +1 -1
- package/dist/kurot/player/canvas/DisplayList.js +1 -5
- package/dist/kurot/player/canvas/DisplayList.js.map +1 -1
- package/dist/kurot/player/createPlayer.d.ts.map +1 -1
- package/dist/kurot/player/createPlayer.js +0 -2
- package/dist/kurot/player/createPlayer.js.map +1 -1
- package/dist/kurot/player/pipes/BitmapPipe.d.ts +3 -9
- package/dist/kurot/player/pipes/BitmapPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/BitmapPipe.js +19 -33
- package/dist/kurot/player/pipes/BitmapPipe.js.map +1 -1
- package/dist/kurot/player/pipes/FilterPipe.d.ts +11 -28
- package/dist/kurot/player/pipes/FilterPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/FilterPipe.js +8 -51
- package/dist/kurot/player/pipes/FilterPipe.js.map +1 -1
- package/dist/kurot/player/pipes/GraphicsPipe.d.ts +2 -7
- package/dist/kurot/player/pipes/GraphicsPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/GraphicsPipe.js +28 -38
- package/dist/kurot/player/pipes/GraphicsPipe.js.map +1 -1
- package/dist/kurot/player/pipes/MaskPipe.d.ts +9 -14
- package/dist/kurot/player/pipes/MaskPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/MaskPipe.js +24 -46
- package/dist/kurot/player/pipes/MaskPipe.js.map +1 -1
- package/dist/kurot/player/pipes/MeshPipe.d.ts +4 -1
- package/dist/kurot/player/pipes/MeshPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/MeshPipe.js +20 -22
- package/dist/kurot/player/pipes/MeshPipe.js.map +1 -1
- package/dist/kurot/player/pipes/ParticlePipe.d.ts +1 -2
- package/dist/kurot/player/pipes/ParticlePipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/ParticlePipe.js +6 -14
- package/dist/kurot/player/pipes/ParticlePipe.js.map +1 -1
- package/dist/kurot/player/pipes/TextPipe.d.ts +3 -23
- package/dist/kurot/player/pipes/TextPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/TextPipe.js +31 -74
- package/dist/kurot/player/pipes/TextPipe.js.map +1 -1
- package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts +1 -12
- package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts.map +1 -1
- package/dist/kurot/player/webgl/MultiTextureBatcher.js +2 -11
- package/dist/kurot/player/webgl/MultiTextureBatcher.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts +4 -4
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.js +11 -10
- package/dist/kurot/player/webgl/WebGLDrawCmdManager.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLProgram.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLProgram.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts +2 -0
- package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderBuffer.js +9 -6
- package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +16 -45
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderContext.js +40 -120
- package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts +2 -0
- package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderTarget.js +6 -0
- package/dist/kurot/player/webgl/WebGLRenderTarget.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderer.d.ts +3 -147
- package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderer.js +6 -210
- package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLUtils.d.ts +4 -4
- package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLUtils.js +3 -2
- package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts +6 -2
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.js +6 -11
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.js.map +1 -1
- package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts +1 -2
- package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts.map +1 -1
- package/dist/kurot/player/webgl/shaders/ShaderLib.js +1 -6
- package/dist/kurot/player/webgl/shaders/ShaderLib.js.map +1 -1
- package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts +1 -2
- package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts.map +1 -1
- package/dist/kurot/player/webgl/shaders/ShaderLib2.js +1 -13
- package/dist/kurot/player/webgl/shaders/ShaderLib2.js.map +1 -1
- package/dist/kurot/player/webgl/shaders/index.d.ts.map +1 -1
- package/dist/kurot/player/webgl/shaders/index.js +0 -2
- package/dist/kurot/player/webgl/shaders/index.js.map +1 -1
- package/dist/kurot/resource/Resource.d.ts +1 -1
- package/dist/kurot/resource/Resource.d.ts.map +1 -1
- package/dist/kurot/resource/Resource.js +1 -12
- package/dist/kurot/resource/Resource.js.map +1 -1
- package/dist/kurot/resource/ResourceEvent.d.ts +15 -5
- package/dist/kurot/resource/ResourceEvent.d.ts.map +1 -1
- package/dist/kurot/resource/ResourceLoader.d.ts +15 -24
- package/dist/kurot/resource/ResourceLoader.d.ts.map +1 -1
- package/dist/kurot/resource/ResourceLoader.js +17 -35
- package/dist/kurot/resource/ResourceLoader.js.map +1 -1
- package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts +3 -4
- package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts.map +1 -1
- package/dist/kurot/resource/analyzers/AnalyzerBase.js +3 -5
- package/dist/kurot/resource/analyzers/AnalyzerBase.js.map +1 -1
- package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts.map +1 -1
- package/dist/kurot/resource/analyzers/ImageAnalyzer.js +0 -1
- package/dist/kurot/resource/analyzers/ImageAnalyzer.js.map +1 -1
- package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts +6 -5
- package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts.map +1 -1
- package/dist/kurot/resource/analyzers/SheetAnalyzer.js +6 -12
- package/dist/kurot/resource/analyzers/SheetAnalyzer.js.map +1 -1
- package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts.map +1 -1
- package/dist/kurot/resource/analyzers/SoundAnalyzer.js +0 -1
- package/dist/kurot/resource/analyzers/SoundAnalyzer.js.map +1 -1
- package/dist/kurot/resource/index.d.ts.map +1 -1
- package/dist/kurot/resource/index.js +0 -3
- package/dist/kurot/resource/index.js.map +1 -1
- package/dist/kurot/system/Capabilities.d.ts +11 -13
- package/dist/kurot/system/Capabilities.d.ts.map +1 -1
- package/dist/kurot/system/Capabilities.js +12 -18
- package/dist/kurot/system/Capabilities.js.map +1 -1
- package/dist/kurot/text/BitmapFont.d.ts +0 -1
- package/dist/kurot/text/BitmapFont.d.ts.map +1 -1
- package/dist/kurot/text/BitmapFont.js +0 -2
- package/dist/kurot/text/BitmapFont.js.map +1 -1
- package/dist/kurot/text/BitmapText.d.ts +0 -5
- package/dist/kurot/text/BitmapText.d.ts.map +1 -1
- package/dist/kurot/text/BitmapText.js +0 -6
- package/dist/kurot/text/BitmapText.js.map +1 -1
- package/dist/kurot/text/HtmlTextParser.d.ts +3 -1
- package/dist/kurot/text/HtmlTextParser.d.ts.map +1 -1
- package/dist/kurot/text/HtmlTextParser.js +3 -1
- package/dist/kurot/text/HtmlTextParser.js.map +1 -1
- package/dist/kurot/text/InputController.d.ts.map +1 -1
- package/dist/kurot/text/InputController.js +0 -2
- package/dist/kurot/text/InputController.js.map +1 -1
- package/dist/kurot/text/StageText.d.ts +1 -20
- package/dist/kurot/text/StageText.d.ts.map +1 -1
- package/dist/kurot/text/StageText.js +2 -46
- package/dist/kurot/text/StageText.js.map +1 -1
- package/dist/kurot/text/TextField.d.ts +0 -12
- package/dist/kurot/text/TextField.d.ts.map +1 -1
- package/dist/kurot/text/TextField.js +0 -41
- package/dist/kurot/text/TextField.js.map +1 -1
- package/dist/kurot/text/WordWrap.d.ts +0 -1
- package/dist/kurot/text/WordWrap.d.ts.map +1 -1
- package/dist/kurot/text/WordWrap.js +0 -3
- package/dist/kurot/text/WordWrap.js.map +1 -1
- package/dist/kurot/utils/Base64Util.d.ts +1 -6
- package/dist/kurot/utils/Base64Util.d.ts.map +1 -1
- package/dist/kurot/utils/Base64Util.js +1 -7
- package/dist/kurot/utils/Base64Util.js.map +1 -1
- package/dist/kurot/utils/DebugLog.js +0 -1
- package/dist/kurot/utils/DebugLog.js.map +1 -1
- package/dist/kurot/utils/FontManager.d.ts.map +1 -1
- package/dist/kurot/utils/FontManager.js +3 -1
- package/dist/kurot/utils/FontManager.js.map +1 -1
- package/dist/kurot/utils/NumberUtils.d.ts.map +1 -1
- package/dist/kurot/utils/NumberUtils.js +0 -1
- package/dist/kurot/utils/NumberUtils.js.map +1 -1
- package/package.json +14 -3
- package/dist/kurot/benchmark/BenchmarkRunner.d.ts +0 -60
- package/dist/kurot/benchmark/BenchmarkRunner.d.ts.map +0 -1
- package/dist/kurot/benchmark/BenchmarkRunner.js +0 -112
- package/dist/kurot/benchmark/BenchmarkRunner.js.map +0 -1
- package/dist/kurot/benchmark/MetricsCollector.d.ts +0 -34
- package/dist/kurot/benchmark/MetricsCollector.d.ts.map +0 -1
- package/dist/kurot/benchmark/MetricsCollector.js +0 -123
- package/dist/kurot/benchmark/MetricsCollector.js.map +0 -1
- package/dist/kurot/benchmark/PerfPanel.d.ts +0 -24
- package/dist/kurot/benchmark/PerfPanel.d.ts.map +0 -1
- package/dist/kurot/benchmark/PerfPanel.js +0 -131
- package/dist/kurot/benchmark/PerfPanel.js.map +0 -1
- package/dist/kurot/benchmark/ReportExporter.d.ts +0 -8
- package/dist/kurot/benchmark/ReportExporter.d.ts.map +0 -1
- package/dist/kurot/benchmark/ReportExporter.js +0 -54
- package/dist/kurot/benchmark/ReportExporter.js.map +0 -1
- package/dist/kurot/benchmark/SceneRegistry.d.ts +0 -16
- package/dist/kurot/benchmark/SceneRegistry.d.ts.map +0 -1
- package/dist/kurot/benchmark/SceneRegistry.js +0 -233
- package/dist/kurot/benchmark/SceneRegistry.js.map +0 -1
- package/dist/kurot/benchmark/types.d.ts +0 -47
- package/dist/kurot/benchmark/types.d.ts.map +0 -1
- package/dist/kurot/benchmark/types.js +0 -2
- package/dist/kurot/benchmark/types.js.map +0 -1
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
export declare const START_TIME: number;
|
|
2
|
-
/** @internal Flag: should broadcast Event.RENDER next frame. */
|
|
3
2
|
export declare let invalidateRenderFlag: boolean;
|
|
4
3
|
export declare function setInvalidateRenderFlag(value: boolean): void;
|
|
5
|
-
/** @internal Flag: should re-render immediately after current event processing. */
|
|
6
4
|
export declare let requestRenderingFlag: boolean;
|
|
7
5
|
export declare function setRequestRenderingFlag(value: boolean): void;
|
|
8
6
|
type TickCallback = (timeStamp: number) => boolean;
|
|
9
|
-
/**
|
|
7
|
+
/**
|
|
8
|
+
* Render callback — called by SystemTicker each frame to render a player.
|
|
9
|
+
*/
|
|
10
10
|
export interface Renderable {
|
|
11
11
|
render(triggerByFrame: boolean, costTicker: number): void;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
* Drives `requestAnimationFrame`, manages frame rate, broadcasts ENTER_FRAME / RENDER,
|
|
16
|
-
* and invokes registered tick callbacks and player renderers.
|
|
14
|
+
* Runs frame throttling, tick callbacks, player rendering and deferred calls.
|
|
17
15
|
*/
|
|
18
16
|
export declare class SystemTicker {
|
|
19
17
|
private _players;
|
|
@@ -40,7 +38,9 @@ export declare class SystemTicker {
|
|
|
40
38
|
stop(): void;
|
|
41
39
|
pause(): void;
|
|
42
40
|
resume(): void;
|
|
43
|
-
/**
|
|
41
|
+
/**
|
|
42
|
+
* Force a single update (useful for testing).
|
|
43
|
+
*/
|
|
44
44
|
update(forceUpdate?: boolean): void;
|
|
45
45
|
private onFrame;
|
|
46
46
|
private tick;
|
|
@@ -50,9 +50,13 @@ export declare class SystemTicker {
|
|
|
50
50
|
private flushCallLaters;
|
|
51
51
|
private getTickIndex;
|
|
52
52
|
}
|
|
53
|
-
/**
|
|
53
|
+
/**
|
|
54
|
+
* Singleton ticker instance.
|
|
55
|
+
*/
|
|
54
56
|
export declare const ticker: SystemTicker;
|
|
55
|
-
/**
|
|
57
|
+
/**
|
|
58
|
+
* Returns milliseconds since engine start.
|
|
59
|
+
*/
|
|
56
60
|
export declare function getTimer(): number;
|
|
57
61
|
/**
|
|
58
62
|
* Sets up visibility change listeners to dispatch ACTIVATE/DEACTIVATE
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemTicker.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/SystemTicker.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,EAAE,MAAmB,CAAC;AAE7C,
|
|
1
|
+
{"version":3,"file":"SystemTicker.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/SystemTicker.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,EAAE,MAAmB,CAAC;AAE7C,eAAO,IAAI,oBAAoB,SAAQ,CAAC;AACxC,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAE5D;AAED,eAAO,IAAI,oBAAoB,SAAQ,CAAC;AACxC,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAE5D;AAED,KAAK,YAAY,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;AAOnD;;GAEG;AACH,MAAM,WAAW,UAAU;IAC1B,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1D;AAED;;GAEG;AACH,qBAAa,YAAY;IAGxB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,cAAc,CAAoE;;IAW1F,IAAW,SAAS,IAAI,MAAM,CAE7B;IAEM,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAWpC,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAInC,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAKtC,SAAS,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI;IAK5D,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI;IAK3D,SAAS,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAIrE,KAAK,IAAI,IAAI;IAOb,IAAI,IAAI,IAAI;IAQZ,KAAK,IAAI,IAAI;IAGb,MAAM,IAAI,IAAI;IAIrB;;OAEG;IACI,MAAM,CAAC,WAAW,UAAQ,GAAG,IAAI;IAMxC,OAAO,CAAC,OAAO,CAIb;IAEF,OAAO,CAAC,IAAI;IAqCZ,OAAO,CAAC,MAAM;IAiBd,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,YAAY;CAMpB;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,YAAiC,CAAC;AAEvD;;GAEG;AACH,wBAAgB,QAAQ,IAAI,MAAM,CAEjC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,qBAAqB,EAAE,KAAK,GAAG,MAAM,IAAI,CAYrF"}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
import { Event } from '../events/Event.js';
|
|
2
2
|
import { DisplayObject } from '../display/DisplayObject.js';
|
|
3
3
|
export const START_TIME = Date.now();
|
|
4
|
-
/** @internal Flag: should broadcast Event.RENDER next frame. */
|
|
5
4
|
export let invalidateRenderFlag = false;
|
|
6
5
|
export function setInvalidateRenderFlag(value) {
|
|
7
6
|
invalidateRenderFlag = value;
|
|
8
7
|
}
|
|
9
|
-
/** @internal Flag: should re-render immediately after current event processing. */
|
|
10
8
|
export let requestRenderingFlag = false;
|
|
11
9
|
export function setRequestRenderingFlag(value) {
|
|
12
10
|
requestRenderingFlag = value;
|
|
13
11
|
}
|
|
14
12
|
/**
|
|
15
|
-
*
|
|
16
|
-
* Drives `requestAnimationFrame`, manages frame rate, broadcasts ENTER_FRAME / RENDER,
|
|
17
|
-
* and invokes registered tick callbacks and player renderers.
|
|
13
|
+
* Runs frame throttling, tick callbacks, player rendering and deferred calls.
|
|
18
14
|
*/
|
|
19
15
|
export class SystemTicker {
|
|
20
16
|
// ── Instance fields ───────────────────────────────────────────────────────
|
|
@@ -29,7 +25,6 @@ export class SystemTicker {
|
|
|
29
25
|
_isPaused = false;
|
|
30
26
|
_rafId = 0;
|
|
31
27
|
_running = false;
|
|
32
|
-
// Deferred calls (equivalent to egret.callLater)
|
|
33
28
|
_callLaterList = [];
|
|
34
29
|
// ── Constructor ───────────────────────────────────────────────────────────
|
|
35
30
|
constructor() {
|
|
@@ -92,7 +87,9 @@ export class SystemTicker {
|
|
|
92
87
|
resume() {
|
|
93
88
|
this._isPaused = false;
|
|
94
89
|
}
|
|
95
|
-
/**
|
|
90
|
+
/**
|
|
91
|
+
* Force a single update (useful for testing).
|
|
92
|
+
*/
|
|
96
93
|
update(forceUpdate = false) {
|
|
97
94
|
this.tick(forceUpdate);
|
|
98
95
|
}
|
|
@@ -110,7 +107,6 @@ export class SystemTicker {
|
|
|
110
107
|
this._lastTimeStamp = timeStamp;
|
|
111
108
|
return;
|
|
112
109
|
}
|
|
113
|
-
// Execute tick callbacks
|
|
114
110
|
let needRender = requestRenderingFlag;
|
|
115
111
|
const ticks = [...this._ticks];
|
|
116
112
|
for (const entry of ticks) {
|
|
@@ -120,7 +116,6 @@ export class SystemTicker {
|
|
|
120
116
|
const t2 = Date.now();
|
|
121
117
|
const deltaTime = timeStamp - this._lastTimeStamp;
|
|
122
118
|
this._lastTimeStamp = timeStamp;
|
|
123
|
-
// Frame rate throttling
|
|
124
119
|
if (deltaTime >= this._frameDeltaTime || forceUpdate) {
|
|
125
120
|
this._lastCount = this._frameInterval;
|
|
126
121
|
}
|
|
@@ -141,9 +136,7 @@ export class SystemTicker {
|
|
|
141
136
|
render(triggerByFrame, costTicker) {
|
|
142
137
|
if (this._players.length === 0)
|
|
143
138
|
return;
|
|
144
|
-
// Execute deferred calls
|
|
145
139
|
this.flushCallLaters();
|
|
146
|
-
// Broadcast RENDER event if requested
|
|
147
140
|
if (invalidateRenderFlag) {
|
|
148
141
|
this.broadcastRender();
|
|
149
142
|
invalidateRenderFlag = false;
|
|
@@ -182,9 +175,13 @@ export class SystemTicker {
|
|
|
182
175
|
return -1;
|
|
183
176
|
}
|
|
184
177
|
}
|
|
185
|
-
/**
|
|
178
|
+
/**
|
|
179
|
+
* Singleton ticker instance.
|
|
180
|
+
*/
|
|
186
181
|
export const ticker = new SystemTicker();
|
|
187
|
-
/**
|
|
182
|
+
/**
|
|
183
|
+
* Returns milliseconds since engine start.
|
|
184
|
+
*/
|
|
188
185
|
export function getTimer() {
|
|
189
186
|
return Date.now() - START_TIME;
|
|
190
187
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemTicker.js","sourceRoot":"","sources":["../../../src/kurot/player/SystemTicker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,MAAM,CAAC,MAAM,UAAU,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;AAE7C,
|
|
1
|
+
{"version":3,"file":"SystemTicker.js","sourceRoot":"","sources":["../../../src/kurot/player/SystemTicker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { Stage } from '../display/Stage.js';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* Equivalent to Egret's `sys.TouchHandler` + `WebTouchHandler`.
|
|
3
|
+
* Dispatches canvas pointer input to display objects as touch events.
|
|
4
|
+
* Mouse defaults are suppressed so focusing a native text input is not
|
|
5
|
+
* immediately undone by the canvas.
|
|
7
6
|
*/
|
|
8
7
|
export declare class TouchHandler {
|
|
9
8
|
private _stage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TouchHandler.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/TouchHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAI5C
|
|
1
|
+
{"version":3,"file":"TouchHandler.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/TouchHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAI5C;;;;GAIG;AACH,qBAAa,YAAY;IAGxB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAK;gBAID,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB;IAS1D;;;OAGG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKjD,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC,OAAO,IAAI,IAAI;IAcf,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAa9D,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAU7D,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IA2BnE,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB,CAOvB;IAEF,OAAO,CAAC,gBAAgB,CAOtB;IAEF,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,WAAW,CAIjB;IAEF,OAAO,CAAC,WAAW,CAGjB;IAEF,OAAO,CAAC,SAAS,CAGf;CACF"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { TouchEvent } from '../events/TouchEvent.js';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* Equivalent to Egret's `sys.TouchHandler` + `WebTouchHandler`.
|
|
3
|
+
* Dispatches canvas pointer input to display objects as touch events.
|
|
4
|
+
* Mouse defaults are suppressed so focusing a native text input is not
|
|
5
|
+
* immediately undone by the canvas.
|
|
7
6
|
*/
|
|
8
7
|
export class TouchHandler {
|
|
9
8
|
// ── Instance fields ───────────────────────────────────────────────────────
|
|
@@ -90,9 +89,6 @@ export class TouchHandler {
|
|
|
90
89
|
}
|
|
91
90
|
getStageCoords(clientX, clientY) {
|
|
92
91
|
const rect = this._canvas.getBoundingClientRect();
|
|
93
|
-
// Use clientLeft/clientTop to offset for CSS borders on the canvas.
|
|
94
|
-
// getBoundingClientRect() includes borders, but the stage content
|
|
95
|
-
// area starts at (clientLeft, clientTop) inside the rect.
|
|
96
92
|
return {
|
|
97
93
|
x: (clientX - rect.left - this._canvas.clientLeft) * this._scaleX,
|
|
98
94
|
y: (clientY - rect.top - this._canvas.clientTop) * this._scaleY,
|
|
@@ -104,7 +100,6 @@ export class TouchHandler {
|
|
|
104
100
|
this._canvas.addEventListener('touchend', this.onTouchEndEvent);
|
|
105
101
|
this._canvas.addEventListener('touchcancel', this.onTouchEndEvent);
|
|
106
102
|
this._canvas.addEventListener('mousedown', this.onMouseDown);
|
|
107
|
-
// Keep tracking an active drag after the pointer leaves the canvas.
|
|
108
103
|
window.addEventListener('mousemove', this.onMouseMove);
|
|
109
104
|
window.addEventListener('mouseup', this.onMouseUp);
|
|
110
105
|
}
|
|
@@ -132,10 +127,6 @@ export class TouchHandler {
|
|
|
132
127
|
}
|
|
133
128
|
};
|
|
134
129
|
onMouseDown = (e) => {
|
|
135
|
-
// Prevent the canvas from stealing focus away from any native input
|
|
136
|
-
// element that is about to be focused by the touch handler (e.g. a
|
|
137
|
-
// TextField in INPUT mode). Without this, the browser would move focus
|
|
138
|
-
// to the canvas on mousedown, immediately blurring the input.
|
|
139
130
|
e.preventDefault();
|
|
140
131
|
const { x, y } = this.getStageCoords(e.clientX, e.clientY);
|
|
141
132
|
this.onTouchBegin(x, y, 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TouchHandler.js","sourceRoot":"","sources":["../../../src/kurot/player/TouchHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD
|
|
1
|
+
{"version":3,"file":"TouchHandler.js","sourceRoot":"","sources":["../../../src/kurot/player/TouchHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasBuffer.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasBuffer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,YAAY;IAGxB,SAAgB,OAAO,EAAE,iBAAiB,CAAC;IAC3C,SAAgB,OAAO,EAAE,wBAAwB,CAAC;gBAI/B,KAAK,SAAI,EAAE,MAAM,SAAI;
|
|
1
|
+
{"version":3,"file":"CanvasBuffer.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasBuffer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,YAAY;IAGxB,SAAgB,OAAO,EAAE,iBAAiB,CAAC;IAC3C,SAAgB,OAAO,EAAE,wBAAwB,CAAC;gBAI/B,KAAK,SAAI,EAAE,MAAM,SAAI;IAUxC,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAID;;;OAGG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,IAAI;IAYtE;;OAEG;IACI,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,EAAE,MAAM,SAAI,GAAG,MAAM,EAAE;IAKvE;;OAEG;IACI,SAAS,CAAC,IAAI,SAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAI9D;;OAEG;IACI,KAAK,IAAI,IAAI;IAKpB;;OAEG;IACI,OAAO,IAAI,IAAI;CAItB;AAGD,wBAAgB,aAAa,IAAI,YAAY,CAG5C"}
|
|
@@ -10,8 +10,6 @@ export class CanvasBuffer {
|
|
|
10
10
|
// ── Constructor ───────────────────────────────────────────────────────────
|
|
11
11
|
constructor(width = 0, height = 0) {
|
|
12
12
|
this.surface = document.createElement('canvas');
|
|
13
|
-
// willReadFrequently: this buffer is used for hit testing and pixel
|
|
14
|
-
// readback (getImageData), so keeping it in CPU memory avoids GPU round-trips.
|
|
15
13
|
const ctx = this.surface.getContext('2d', { willReadFrequently: true });
|
|
16
14
|
if (!ctx)
|
|
17
15
|
throw new Error('Failed to create Canvas 2D context');
|
|
@@ -73,7 +71,6 @@ export class CanvasBuffer {
|
|
|
73
71
|
this.surface.height = 0;
|
|
74
72
|
}
|
|
75
73
|
}
|
|
76
|
-
/** @internal Shared buffer for hit testing — lazily created on first use. */
|
|
77
74
|
let _hitTestBuffer;
|
|
78
75
|
export function hitTestBuffer() {
|
|
79
76
|
if (!_hitTestBuffer)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasBuffer.js","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasBuffer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,YAAY;IACxB,6EAA6E;IAE7D,OAAO,CAAoB;IAC3B,OAAO,CAA2B;IAElD,6EAA6E;IAE7E,YAAmB,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,
|
|
1
|
+
{"version":3,"file":"CanvasBuffer.js","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasBuffer.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,34 +5,21 @@ import { Matrix } from '../../geom/Matrix.js';
|
|
|
5
5
|
import { TextField } from '../../text/TextField.js';
|
|
6
6
|
import { CanvasBuffer } from './CanvasBuffer.js';
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
* using the Canvas 2D API. Equivalent to Egret's `CanvasRenderer`.
|
|
10
|
-
*
|
|
11
|
-
* Performance notes:
|
|
12
|
-
* - Currently does full-tree traversal and full-canvas redraw every frame.
|
|
13
|
-
* Egret used a DisplayList with dirty-region tracking to only redraw changed areas.
|
|
14
|
-
* This should be added when performance becomes a concern.
|
|
15
|
-
* - Egret used a RenderNode intermediate layer (BitmapNode, GraphicsNode, etc.)
|
|
16
|
-
* to cache rendering instructions. Kurot reads DisplayObject data directly,
|
|
17
|
-
* which is simpler but skips the caching benefit. If profiling shows the JS-side
|
|
18
|
-
* traversal is a bottleneck, consider adding a lightweight render command cache.
|
|
19
|
-
* - For high-performance scenarios, a WebGL renderer with batch rendering should
|
|
20
|
-
* be implemented as an alternative backend.
|
|
8
|
+
* Traverses a display-object tree and renders it with Canvas 2D.
|
|
21
9
|
*/
|
|
22
10
|
export declare class CanvasRenderer {
|
|
23
11
|
private _hasFill;
|
|
24
12
|
private _hasStroke;
|
|
13
|
+
private readonly _bitmapTintCache;
|
|
14
|
+
private readonly _graphicsTintCache;
|
|
15
|
+
private _globalTint;
|
|
25
16
|
/**
|
|
26
17
|
* Renders a display object tree into the given buffer.
|
|
27
18
|
*/
|
|
28
19
|
render(displayObject: DisplayObject, buffer: CanvasBuffer, matrix?: Matrix): number;
|
|
29
|
-
/** @internal Used by WebGLRenderer for offscreen DisplayList rendering. */
|
|
30
20
|
renderToContext(displayObject: DisplayObject, ctx: CanvasRenderingContext2D, offsetX: number, offsetY: number): void;
|
|
31
|
-
/** @internal Used by WebGLRenderer to rasterize a Graphics object into a Canvas 2D context. */
|
|
32
21
|
renderGraphicsToContext(graphics: Graphics, ctx: CanvasRenderingContext2D, offsetX: number, offsetY: number, forHitTest?: boolean, skipCache?: boolean): void;
|
|
33
|
-
/** @internal Used by WebGL TextPipe to rasterize a TextField into a Canvas 2D context. */
|
|
34
22
|
renderTextFieldToContext(tf: TextField, ctx: CanvasRenderingContext2D, offsetX: number, offsetY: number): void;
|
|
35
|
-
/** @internal Used by Bitmap pixel hit test. */
|
|
36
23
|
renderBitmapToContext(bitmap: Bitmap, ctx: CanvasRenderingContext2D, offsetX: number, offsetY: number): void;
|
|
37
24
|
private drawDisplayObject;
|
|
38
25
|
private drawWithScrollRect;
|
|
@@ -41,6 +28,11 @@ export declare class CanvasRenderer {
|
|
|
41
28
|
private renderSelf;
|
|
42
29
|
private renderMesh;
|
|
43
30
|
private renderBitmap;
|
|
31
|
+
private getTintedBitmapSource;
|
|
32
|
+
private getTintedGraphicsSource;
|
|
33
|
+
private createTintedCanvasCache;
|
|
34
|
+
private updateTintedCanvas;
|
|
35
|
+
private drawTexturedTriangle;
|
|
44
36
|
private renderGraphics;
|
|
45
37
|
private renderTextField;
|
|
46
38
|
private renderParticleSystem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasRenderer.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,MAAM,EAAyB,MAAM,yBAAyB,CAAC;AAIxE,OAAO,EAAE,QAAQ,EAAsB,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAM9C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAKpD,OAAO,EAAE,YAAY,EAAiB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"CanvasRenderer.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,gCAAgC,CAAC;AAC7F,OAAO,EAAE,MAAM,EAAyB,MAAM,yBAAyB,CAAC;AAIxE,OAAO,EAAE,QAAQ,EAAsB,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAM9C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAKpD,OAAO,EAAE,YAAY,EAAiB,MAAM,mBAAmB,CAAC;AAsBhE;;GAEG;AACH,qBAAa,cAAc;IAG1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA4C;IAC7E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA8C;IACjF,OAAO,CAAC,WAAW,CAAY;IAI/B;;OAEG;IACI,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAYnF,eAAe,CACrB,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,wBAAwB,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,IAAI;IAIA,uBAAuB,CAC7B,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,wBAAwB,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,UAAU,UAAQ,EAClB,SAAS,UAAQ,GACf,IAAI;IAIA,wBAAwB,CAC9B,EAAE,EAAE,SAAS,EACb,GAAG,EAAE,wBAAwB,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,IAAI;IAIA,qBAAqB,CAC3B,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,wBAAwB,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,IAAI;IAKP,OAAO,CAAC,iBAAiB;IAqGzB,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,cAAc;IAuGtB,OAAO,CAAC,YAAY;IAuFpB,OAAO,CAAC,UAAU;IAwBlB,OAAO,CAAC,UAAU;IA+ClB,OAAO,CAAC,YAAY;IAiCpB,OAAO,CAAC,qBAAqB;IA8B7B,OAAO,CAAC,uBAAuB;IAmB/B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,oBAAoB;IA8E5B,OAAO,CAAC,cAAc;IAoEtB,OAAO,CAAC,eAAe;IAiJvB,OAAO,CAAC,oBAAoB;IAoD5B,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,sBAAsB;CAmI9B"}
|