@kurot/core 1.0.13 → 1.0.15
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 +63 -1
- 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 +2 -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/media/Video.d.ts +21 -17
- package/dist/kurot/media/Video.d.ts.map +1 -1
- package/dist/kurot/media/Video.js +137 -106
- package/dist/kurot/media/Video.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 +11 -27
- 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 +15 -43
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderContext.js +39 -116
- 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 +17 -5
- 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,21 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
import { Rectangle } from '../geom/Rectangle.js';
|
|
4
|
-
export declare class Video extends DisplayObject {
|
|
1
|
+
import { Bitmap } from '../display/Bitmap.js';
|
|
2
|
+
export declare class Video extends Bitmap {
|
|
5
3
|
fullscreen: boolean;
|
|
6
|
-
private _video;
|
|
4
|
+
private readonly _video;
|
|
7
5
|
private _src;
|
|
8
6
|
private _poster;
|
|
9
7
|
private _posterData?;
|
|
10
|
-
private
|
|
8
|
+
private _videoData?;
|
|
9
|
+
private _videoTexture?;
|
|
11
10
|
private _loaded;
|
|
12
|
-
private _bitmapData?;
|
|
13
|
-
private _widthSet;
|
|
14
|
-
private _heightSet;
|
|
15
11
|
private _waiting;
|
|
16
12
|
private _userPause;
|
|
17
13
|
private _userPlay;
|
|
18
14
|
private _isPlayed;
|
|
15
|
+
private _frameCallbackId?;
|
|
16
|
+
private _usesAnimationFrame;
|
|
19
17
|
constructor(url?: string);
|
|
20
18
|
get src(): string;
|
|
21
19
|
set src(value: string);
|
|
@@ -23,28 +21,34 @@ export declare class Video extends DisplayObject {
|
|
|
23
21
|
set poster(value: string);
|
|
24
22
|
get volume(): number;
|
|
25
23
|
set volume(value: number);
|
|
24
|
+
get muted(): boolean;
|
|
25
|
+
set muted(value: boolean);
|
|
26
|
+
get loop(): boolean;
|
|
27
|
+
set loop(value: boolean);
|
|
28
|
+
get playsInline(): boolean;
|
|
29
|
+
set playsInline(value: boolean);
|
|
26
30
|
get position(): number;
|
|
27
31
|
set position(value: number);
|
|
28
32
|
get paused(): boolean;
|
|
29
33
|
get length(): number;
|
|
30
|
-
get bitmapData(): BitmapData | undefined;
|
|
31
|
-
get width(): number;
|
|
32
|
-
set width(value: number);
|
|
33
|
-
get height(): number;
|
|
34
|
-
set height(value: number);
|
|
35
34
|
load(url: string): void;
|
|
36
35
|
play(startTime?: number, loop?: boolean): void;
|
|
37
36
|
pause(): void;
|
|
38
37
|
close(): void;
|
|
39
|
-
$measureContentBounds(bounds: Rectangle): void;
|
|
40
38
|
private videoPlay;
|
|
41
39
|
private enterFullscreen;
|
|
42
40
|
private exitFullscreen;
|
|
43
41
|
private loadPoster;
|
|
44
|
-
private
|
|
45
|
-
private
|
|
42
|
+
private makePosterTexture;
|
|
43
|
+
private scheduleFrameUpdate;
|
|
44
|
+
private cancelFrameUpdates;
|
|
45
|
+
private updateVideoFrame;
|
|
46
46
|
private onVideoLoaded;
|
|
47
47
|
private onVideoEnded;
|
|
48
48
|
private onVideoError;
|
|
49
|
+
private onVideoWaiting;
|
|
50
|
+
private onVideoCanPlay;
|
|
51
|
+
private onVideoFrame;
|
|
52
|
+
private onAnimationFrame;
|
|
49
53
|
}
|
|
50
54
|
//# sourceMappingURL=Video.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Video.d.ts","sourceRoot":"","sources":["../../../src/kurot/media/Video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Video.d.ts","sourceRoot":"","sources":["../../../src/kurot/media/Video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAO9C,qBAAa,KAAM,SAAQ,MAAM;IAEzB,UAAU,UAAQ;IAEzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,aAAa,CAAC,CAAU;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,mBAAmB,CAAS;gBAGjB,GAAG,CAAC,EAAE,MAAM;IAmB/B,IAAW,GAAG,IAAI,MAAM,CAEvB;IACD,IAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAG3B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAQ9B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAE9B;IAED,IAAW,KAAK,IAAI,OAAO,CAE1B;IACD,IAAW,KAAK,CAAC,KAAK,EAAE,OAAO,EAG9B;IAED,IAAW,IAAI,IAAI,OAAO,CAEzB;IACD,IAAW,IAAI,CAAC,KAAK,EAAE,OAAO,EAE7B;IAED,IAAW,WAAW,IAAI,OAAO,CAEhC;IACD,IAAW,WAAW,CAAC,KAAK,EAAE,OAAO,EAEpC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IACD,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAED,IAAW,MAAM,IAAI,OAAO,CAE3B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAGM,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAcvB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,UAAQ,GAAG,IAAI;IAoB5C,KAAK,IAAI,IAAI;IAWb,KAAK,IAAI,IAAI;IAkBpB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,aAAa,CAcnB;IAEF,OAAO,CAAC,YAAY,CAOlB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,cAAc,CAEpB;IAEF,OAAO,CAAC,cAAc,CAOpB;IAEF,OAAO,CAAC,YAAY,CAIlB;IAEF,OAAO,CAAC,gBAAgB,CAItB;CACF"}
|
|
@@ -1,46 +1,40 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Bitmap } from '../display/Bitmap.js';
|
|
2
2
|
import { BitmapData } from '../display/texture/BitmapData.js';
|
|
3
|
+
import { Texture } from '../display/texture/Texture.js';
|
|
3
4
|
import { Event } from '../events/Event.js';
|
|
4
5
|
import { IOErrorEvent } from '../events/IOErrorEvent.js';
|
|
5
6
|
import { ImageLoader } from '../net/ImageLoader.js';
|
|
6
|
-
export class Video extends
|
|
7
|
+
export class Video extends Bitmap {
|
|
7
8
|
// ── Instance fields ───────────────────────────────────────────────────────
|
|
8
9
|
fullscreen = true;
|
|
9
10
|
_video;
|
|
10
11
|
_src = '';
|
|
11
12
|
_poster = '';
|
|
12
13
|
_posterData;
|
|
13
|
-
|
|
14
|
+
_videoData;
|
|
15
|
+
_videoTexture;
|
|
14
16
|
_loaded = false;
|
|
15
|
-
_bitmapData;
|
|
16
|
-
_widthSet = NaN;
|
|
17
|
-
_heightSet = NaN;
|
|
18
17
|
_waiting = false;
|
|
19
18
|
_userPause = false;
|
|
20
19
|
_userPlay = false;
|
|
21
20
|
_isPlayed = false;
|
|
21
|
+
_frameCallbackId;
|
|
22
|
+
_usesAnimationFrame = false;
|
|
22
23
|
// ── Constructor ───────────────────────────────────────────────────────────
|
|
23
24
|
constructor(url) {
|
|
24
25
|
super();
|
|
25
26
|
this._video = document.createElement('video');
|
|
26
|
-
this._video.
|
|
27
|
+
this._video.playsInline = true;
|
|
27
28
|
this._video.setAttribute('webkit-playsinline', 'true');
|
|
28
29
|
this._video.controls = false;
|
|
29
30
|
this._video.addEventListener('canplaythrough', this.onVideoLoaded);
|
|
30
31
|
this._video.addEventListener('ended', this.onVideoEnded);
|
|
31
32
|
this._video.addEventListener('error', this.onVideoError);
|
|
32
|
-
this._video.addEventListener('waiting',
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
this._video.addEventListener('canplay', () => {
|
|
36
|
-
this._waiting = false;
|
|
37
|
-
if (this._userPause)
|
|
38
|
-
this.pause();
|
|
39
|
-
else if (this._userPlay)
|
|
40
|
-
this.videoPlay();
|
|
41
|
-
});
|
|
42
|
-
if (url)
|
|
33
|
+
this._video.addEventListener('waiting', this.onVideoWaiting);
|
|
34
|
+
this._video.addEventListener('canplay', this.onVideoCanPlay);
|
|
35
|
+
if (url) {
|
|
43
36
|
this.load(url);
|
|
37
|
+
}
|
|
44
38
|
}
|
|
45
39
|
// ── Getters / Setters ─────────────────────────────────────────────────────
|
|
46
40
|
get src() {
|
|
@@ -54,11 +48,13 @@ export class Video extends DisplayObject {
|
|
|
54
48
|
return this._poster;
|
|
55
49
|
}
|
|
56
50
|
set poster(value) {
|
|
57
|
-
if (this._poster === value)
|
|
51
|
+
if (this._poster === value) {
|
|
58
52
|
return;
|
|
53
|
+
}
|
|
59
54
|
this._poster = value;
|
|
60
|
-
if (value)
|
|
55
|
+
if (value) {
|
|
61
56
|
this.loadPoster(value);
|
|
57
|
+
}
|
|
62
58
|
}
|
|
63
59
|
get volume() {
|
|
64
60
|
return this._video.volume;
|
|
@@ -66,6 +62,25 @@ export class Video extends DisplayObject {
|
|
|
66
62
|
set volume(value) {
|
|
67
63
|
this._video.volume = Math.max(0, Math.min(1, value));
|
|
68
64
|
}
|
|
65
|
+
get muted() {
|
|
66
|
+
return this._video.muted;
|
|
67
|
+
}
|
|
68
|
+
set muted(value) {
|
|
69
|
+
this._video.muted = value;
|
|
70
|
+
this._video.defaultMuted = value;
|
|
71
|
+
}
|
|
72
|
+
get loop() {
|
|
73
|
+
return this._video.loop;
|
|
74
|
+
}
|
|
75
|
+
set loop(value) {
|
|
76
|
+
this._video.loop = value;
|
|
77
|
+
}
|
|
78
|
+
get playsInline() {
|
|
79
|
+
return this._video.playsInline;
|
|
80
|
+
}
|
|
81
|
+
set playsInline(value) {
|
|
82
|
+
this._video.playsInline = value;
|
|
83
|
+
}
|
|
69
84
|
get position() {
|
|
70
85
|
return this._video.currentTime;
|
|
71
86
|
}
|
|
@@ -78,43 +93,18 @@ export class Video extends DisplayObject {
|
|
|
78
93
|
get length() {
|
|
79
94
|
return this._video.duration || 0;
|
|
80
95
|
}
|
|
81
|
-
get bitmapData() {
|
|
82
|
-
if (!this._video || !this._loaded)
|
|
83
|
-
return this._posterData;
|
|
84
|
-
if (!this._bitmapData) {
|
|
85
|
-
this._video.width = this._video.videoWidth;
|
|
86
|
-
this._video.height = this._video.videoHeight;
|
|
87
|
-
this._bitmapData = new BitmapData(this._video);
|
|
88
|
-
this._bitmapData.deleteSource = false;
|
|
89
|
-
}
|
|
90
|
-
// Invalidate each access so dependent Bitmaps redraw the current video frame
|
|
91
|
-
BitmapData.invalidate(this._bitmapData);
|
|
92
|
-
return this._bitmapData;
|
|
93
|
-
}
|
|
94
|
-
get width() {
|
|
95
|
-
return isNaN(this._widthSet) ? this.getPlayWidth() : this._widthSet;
|
|
96
|
-
}
|
|
97
|
-
set width(value) {
|
|
98
|
-
this._widthSet = value;
|
|
99
|
-
this.$renderDirty = true;
|
|
100
|
-
}
|
|
101
|
-
get height() {
|
|
102
|
-
return isNaN(this._heightSet) ? this.getPlayHeight() : this._heightSet;
|
|
103
|
-
}
|
|
104
|
-
set height(value) {
|
|
105
|
-
this._heightSet = value;
|
|
106
|
-
this.$renderDirty = true;
|
|
107
|
-
}
|
|
108
96
|
// ── Public methods ────────────────────────────────────────────────────────
|
|
109
97
|
load(url) {
|
|
98
|
+
this.cancelFrameUpdates();
|
|
110
99
|
this._src = url;
|
|
111
100
|
this._loaded = false;
|
|
112
|
-
|
|
101
|
+
this._isPlayed = false;
|
|
102
|
+
this.texture = this.makePosterTexture();
|
|
113
103
|
if (url.startsWith('http://') || url.startsWith('https://')) {
|
|
114
|
-
|
|
104
|
+
this._video.crossOrigin = 'anonymous';
|
|
115
105
|
}
|
|
116
|
-
|
|
117
|
-
|
|
106
|
+
this._video.src = url;
|
|
107
|
+
this._video.load();
|
|
118
108
|
}
|
|
119
109
|
play(startTime, loop = false) {
|
|
120
110
|
if (!this._loaded) {
|
|
@@ -123,10 +113,11 @@ export class Video extends DisplayObject {
|
|
|
123
113
|
return;
|
|
124
114
|
}
|
|
125
115
|
this._isPlayed = true;
|
|
126
|
-
this.
|
|
127
|
-
this.
|
|
128
|
-
if (startTime !== undefined)
|
|
116
|
+
this.loop = loop;
|
|
117
|
+
this.texture = this._videoTexture;
|
|
118
|
+
if (startTime !== undefined) {
|
|
129
119
|
this._video.currentTime = startTime;
|
|
120
|
+
}
|
|
130
121
|
if (this.fullscreen) {
|
|
131
122
|
this.enterFullscreen();
|
|
132
123
|
}
|
|
@@ -136,6 +127,7 @@ export class Video extends DisplayObject {
|
|
|
136
127
|
}
|
|
137
128
|
pause() {
|
|
138
129
|
this._userPlay = false;
|
|
130
|
+
this.cancelFrameUpdates();
|
|
139
131
|
if (this._waiting) {
|
|
140
132
|
this._userPause = true;
|
|
141
133
|
return;
|
|
@@ -144,23 +136,20 @@ export class Video extends DisplayObject {
|
|
|
144
136
|
this._video.pause();
|
|
145
137
|
}
|
|
146
138
|
close() {
|
|
139
|
+
this.cancelFrameUpdates();
|
|
140
|
+
this._video.pause();
|
|
147
141
|
this._video.removeEventListener('canplaythrough', this.onVideoLoaded);
|
|
148
142
|
this._video.removeEventListener('ended', this.onVideoEnded);
|
|
149
143
|
this._video.removeEventListener('error', this.onVideoError);
|
|
150
|
-
this._video.
|
|
151
|
-
this._video.
|
|
144
|
+
this._video.removeEventListener('waiting', this.onVideoWaiting);
|
|
145
|
+
this._video.removeEventListener('canplay', this.onVideoCanPlay);
|
|
146
|
+
this._video.removeAttribute('src');
|
|
147
|
+
this._video.load();
|
|
152
148
|
this._loaded = false;
|
|
153
|
-
this._bitmapData = undefined;
|
|
154
149
|
this._isPlayed = false;
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
const w = this.getPlayWidth();
|
|
159
|
-
const h = this.getPlayHeight();
|
|
160
|
-
if (w > 0 && h > 0)
|
|
161
|
-
bounds.setTo(0, 0, w, h);
|
|
162
|
-
else
|
|
163
|
-
bounds.setEmpty();
|
|
150
|
+
this.texture = this.makePosterTexture();
|
|
151
|
+
this._videoData = undefined;
|
|
152
|
+
this._videoTexture = undefined;
|
|
164
153
|
}
|
|
165
154
|
// ── Private methods ───────────────────────────────────────────────────────
|
|
166
155
|
videoPlay() {
|
|
@@ -170,73 +159,115 @@ export class Video extends DisplayObject {
|
|
|
170
159
|
return;
|
|
171
160
|
}
|
|
172
161
|
this._userPlay = false;
|
|
173
|
-
this._video.play()
|
|
162
|
+
void this._video.play().then(() => this.scheduleFrameUpdate()).catch(() => {
|
|
163
|
+
IOErrorEvent.dispatchIOErrorEvent(this);
|
|
164
|
+
});
|
|
174
165
|
}
|
|
175
166
|
enterFullscreen() {
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
void video.requestFullscreen();
|
|
167
|
+
if (!this._video.parentElement) {
|
|
168
|
+
document.body.appendChild(this._video);
|
|
169
|
+
}
|
|
170
|
+
void this._video.requestFullscreen();
|
|
181
171
|
this.videoPlay();
|
|
182
172
|
}
|
|
183
173
|
exitFullscreen() {
|
|
184
|
-
if (document.fullscreenElement)
|
|
174
|
+
if (document.fullscreenElement) {
|
|
185
175
|
void document.exitFullscreen();
|
|
186
|
-
if (this._video.parentElement) {
|
|
187
|
-
this._video.parentElement.removeChild(this._video);
|
|
188
176
|
}
|
|
177
|
+
this._video.remove();
|
|
189
178
|
}
|
|
190
179
|
loadPoster(url) {
|
|
191
180
|
const loader = new ImageLoader();
|
|
192
181
|
loader.once(Event.COMPLETE, () => {
|
|
193
|
-
if (loader.data)
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
this
|
|
198
|
-
this.$markDirty();
|
|
182
|
+
if (!loader.data)
|
|
183
|
+
return;
|
|
184
|
+
this._posterData = loader.data;
|
|
185
|
+
if (!this._isPlayed) {
|
|
186
|
+
this.texture = this.makePosterTexture();
|
|
199
187
|
}
|
|
200
188
|
});
|
|
201
189
|
loader.load(url);
|
|
202
190
|
}
|
|
203
|
-
|
|
204
|
-
if (!
|
|
205
|
-
return
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
191
|
+
makePosterTexture() {
|
|
192
|
+
if (!this._posterData)
|
|
193
|
+
return undefined;
|
|
194
|
+
const texture = new Texture();
|
|
195
|
+
texture.disposeBitmapData = false;
|
|
196
|
+
texture.setBitmapData(this._posterData);
|
|
197
|
+
return texture;
|
|
198
|
+
}
|
|
199
|
+
scheduleFrameUpdate() {
|
|
200
|
+
if (!this._isPlayed || this._frameCallbackId !== undefined)
|
|
201
|
+
return;
|
|
202
|
+
if (typeof this._video.requestVideoFrameCallback === 'function') {
|
|
203
|
+
this._usesAnimationFrame = false;
|
|
204
|
+
this._frameCallbackId = this._video.requestVideoFrameCallback(this.onVideoFrame);
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
this._usesAnimationFrame = true;
|
|
208
|
+
this._frameCallbackId = requestAnimationFrame(this.onAnimationFrame);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
cancelFrameUpdates() {
|
|
212
|
+
if (this._frameCallbackId === undefined)
|
|
213
|
+
return;
|
|
214
|
+
if (this._usesAnimationFrame) {
|
|
215
|
+
cancelAnimationFrame(this._frameCallbackId);
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
this._video.cancelVideoFrameCallback(this._frameCallbackId);
|
|
219
|
+
}
|
|
220
|
+
this._frameCallbackId = undefined;
|
|
221
|
+
}
|
|
222
|
+
updateVideoFrame() {
|
|
223
|
+
BitmapData.invalidate(this._videoData);
|
|
224
224
|
}
|
|
225
225
|
onVideoLoaded = () => {
|
|
226
226
|
this._loaded = true;
|
|
227
|
-
|
|
228
|
-
|
|
227
|
+
const bitmapData = new BitmapData(this._video);
|
|
228
|
+
bitmapData.deleteSource = false;
|
|
229
|
+
bitmapData.width = this._video.videoWidth;
|
|
230
|
+
bitmapData.height = this._video.videoHeight;
|
|
231
|
+
const texture = new Texture();
|
|
232
|
+
texture.disposeBitmapData = false;
|
|
233
|
+
texture.setBitmapData(bitmapData);
|
|
234
|
+
this._videoData = bitmapData;
|
|
235
|
+
this._videoTexture = texture;
|
|
236
|
+
this.texture = texture;
|
|
229
237
|
this.dispatchEventWith(Event.COMPLETE);
|
|
230
238
|
};
|
|
231
239
|
onVideoEnded = () => {
|
|
232
|
-
this.
|
|
240
|
+
this.cancelFrameUpdates();
|
|
233
241
|
this._isPlayed = false;
|
|
234
|
-
if (this.fullscreen)
|
|
242
|
+
if (this.fullscreen) {
|
|
235
243
|
this.exitFullscreen();
|
|
244
|
+
}
|
|
236
245
|
this.dispatchEventWith(Event.ENDED);
|
|
237
246
|
};
|
|
238
247
|
onVideoError = () => {
|
|
239
248
|
IOErrorEvent.dispatchIOErrorEvent(this);
|
|
240
249
|
};
|
|
250
|
+
onVideoWaiting = () => {
|
|
251
|
+
this._waiting = true;
|
|
252
|
+
};
|
|
253
|
+
onVideoCanPlay = () => {
|
|
254
|
+
this._waiting = false;
|
|
255
|
+
if (this._userPause) {
|
|
256
|
+
this.pause();
|
|
257
|
+
}
|
|
258
|
+
else if (this._userPlay) {
|
|
259
|
+
this.videoPlay();
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
onVideoFrame = () => {
|
|
263
|
+
this._frameCallbackId = undefined;
|
|
264
|
+
this.updateVideoFrame();
|
|
265
|
+
this.scheduleFrameUpdate();
|
|
266
|
+
};
|
|
267
|
+
onAnimationFrame = () => {
|
|
268
|
+
this._frameCallbackId = undefined;
|
|
269
|
+
this.updateVideoFrame();
|
|
270
|
+
this.scheduleFrameUpdate();
|
|
271
|
+
};
|
|
241
272
|
}
|
|
242
273
|
//# sourceMappingURL=Video.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Video.js","sourceRoot":"","sources":["../../../src/kurot/media/Video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Video.js","sourceRoot":"","sources":["../../../src/kurot/media/Video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,OAAO,KAAM,SAAQ,MAAM;IAChC,6EAA6E;IACtE,UAAU,GAAG,IAAI,CAAC;IAER,MAAM,CAAmB;IAClC,IAAI,GAAG,EAAE,CAAC;IACV,OAAO,GAAG,EAAE,CAAC;IACb,WAAW,CAAc;IACzB,UAAU,CAAc;IACxB,aAAa,CAAW;IACxB,OAAO,GAAG,KAAK,CAAC;IAChB,QAAQ,GAAG,KAAK,CAAC;IACjB,UAAU,GAAG,KAAK,CAAC;IACnB,SAAS,GAAG,KAAK,CAAC;IAClB,SAAS,GAAG,KAAK,CAAC;IAClB,gBAAgB,CAAU;IAC1B,mBAAmB,GAAG,KAAK,CAAC;IAEpC,6EAA6E;IAC7E,YAAmB,GAAY;QAC9B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;QAE7B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAE7D,IAAI,GAAG,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC;IACF,CAAC;IAED,6EAA6E;IAC7E,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IACD,IAAW,GAAG,CAAC,KAAa;QAC3B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IACD,IAAW,MAAM,CAAC,KAAa;QAC9B,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC5B,OAAO;QACR,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;IAED,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,IAAW,MAAM,CAAC,KAAa;QAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1B,CAAC;IACD,IAAW,KAAK,CAAC,KAAc;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IACzB,CAAC;IACD,IAAW,IAAI,CAAC,KAAc;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED,IAAW,WAAW;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IAChC,CAAC;IACD,IAAW,WAAW,CAAC,KAAc;QACpC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IAChC,CAAC;IACD,IAAW,QAAQ,CAAC,KAAa;QAChC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,6EAA6E;IACtE,IAAI,CAAC,GAAW;QACtB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAExC,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAEM,IAAI,CAAC,SAAkB,EAAE,IAAI,GAAG,KAAK;QAC3C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;YAC5D,OAAO;QACR,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;QAClC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC;QACrC,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;IACF,CAAC;IAEM,KAAK;QACX,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAEM,KAAK;QACX,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACxC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IAChC,CAAC;IAED,6EAA6E;IACrE,SAAS;QAChB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACzE,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,eAAe;QACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,KAAK,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,EAAE,CAAC;IAClB,CAAC;IAEO,cAAc;QACrB,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YAChC,KAAK,QAAQ,CAAC,cAAc,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IAEO,UAAU,CAAC,GAAW;QAC7B,MAAM,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE;YAChC,IAAI,CAAC,MAAM,CAAC,IAAI;gBAAE,OAAO;YACzB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzC,CAAC;QACF,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAEO,iBAAiB;QACxB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QAC9B,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAClC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC;IAChB,CAAC;IAEO,mBAAmB;QAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YAAE,OAAO;QACnE,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,yBAAyB,KAAK,UAAU,EAAE,CAAC;YACjE,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;YACjC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;IAEO,kBAAkB;QACzB,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YAAE,OAAO;QAChD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;IACnC,CAAC;IAEO,gBAAgB;QACvB,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAEO,aAAa,GAAG,GAAS,EAAE;QAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,UAAU,CAAC,YAAY,GAAG,KAAK,CAAC;QAChC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;QAC1C,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAE5C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QAC9B,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAClC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC,CAAC;IAEM,YAAY,GAAG,GAAS,EAAE;QACjC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC;IAEM,YAAY,GAAG,GAAS,EAAE;QACjC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC,CAAC;IAEM,cAAc,GAAG,GAAS,EAAE;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACtB,CAAC,CAAC;IAEM,cAAc,GAAG,GAAS,EAAE;QACnC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,EAAE,CAAC;QACd,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;IACF,CAAC,CAAC;IAEM,YAAY,GAAG,GAAS,EAAE;QACjC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC5B,CAAC,CAAC;IAEM,gBAAgB,GAAG,GAAS,EAAE;QACrC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC5B,CAAC,CAAC;CACF"}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
import type { DisplayObject } from '../display/DisplayObject.js';
|
|
2
2
|
/**
|
|
3
|
-
* A
|
|
4
|
-
* Each instruction captures everything needed to execute one draw operation
|
|
5
|
-
* without re-reading the scene graph.
|
|
6
|
-
*
|
|
7
|
-
* Inspired by Pixi.js 8's Instruction / InstructionSet pattern.
|
|
3
|
+
* A render operation captured without requiring scene-graph access at execution.
|
|
8
4
|
*/
|
|
9
5
|
export interface Instruction {
|
|
10
6
|
readonly renderPipeId: string;
|
|
@@ -16,24 +12,15 @@ export interface Instruction {
|
|
|
16
12
|
}
|
|
17
13
|
export type RenderableInstructionIndices = number | number[];
|
|
18
14
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* Key design points (from Pixi.js 8):
|
|
22
|
-
* - `instructions` is reused while a set is stable and cleared on rebuild so
|
|
23
|
-
* removed display objects are not retained by stale instruction slots.
|
|
24
|
-
* - `structureDirty` signals that the scene graph changed and the set must
|
|
25
|
-
* be fully rebuilt before the next render.
|
|
26
|
-
* - `dirtyRenderables` holds objects whose GPU data changed but whose
|
|
27
|
-
* position in the instruction list is still valid — only those need
|
|
28
|
-
* updateRenderable(), not a full rebuild.
|
|
15
|
+
* Stores ordered render instructions and incremental update state.
|
|
29
16
|
*/
|
|
30
17
|
export declare class InstructionSet {
|
|
31
18
|
readonly instructions: Instruction[];
|
|
19
|
+
readonly dirtyRenderables: DisplayObject[];
|
|
20
|
+
readonly renderableIndex: Map<DisplayObject, RenderableInstructionIndices>;
|
|
32
21
|
instructionSize: number;
|
|
33
22
|
structureDirty: boolean;
|
|
34
|
-
readonly dirtyRenderables: DisplayObject[];
|
|
35
23
|
dirtyRenderableCount: number;
|
|
36
|
-
readonly renderableIndex: Map<DisplayObject, RenderableInstructionIndices>;
|
|
37
24
|
private readonly _dirtyRenderableSet;
|
|
38
25
|
/**
|
|
39
26
|
* Reset all per-build and per-frame state, releasing stale object references.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstructionSet.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/InstructionSet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE
|
|
1
|
+
{"version":3,"file":"InstructionSet.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/InstructionSet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,UAAU,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;AAE7D;;GAEG;AACH,qBAAa,cAAc;IAG1B,SAAgB,YAAY,EAAE,WAAW,EAAE,CAAM;IACjD,SAAgB,gBAAgB,EAAE,aAAa,EAAE,CAAM;IACvD,SAAgB,eAAe,EAAE,GAAG,CAAC,aAAa,EAAE,4BAA4B,CAAC,CAAa;IAEpF,eAAe,SAAK;IACvB,cAAc,UAAQ;IACtB,oBAAoB,SAAK;IAE7B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA4B;IAInE;;OAEG;IACI,KAAK,IAAI,IAAI;IAOb,GAAG,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAI1C;;;OAGG;IACI,OAAO,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAI9C;;OAEG;IACI,UAAU,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAYjD;;OAEG;IACI,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAMpD;;OAEG;IACI,qBAAqB,IAAI,IAAI;CAKpC"}
|
|
@@ -1,30 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* Key design points (from Pixi.js 8):
|
|
5
|
-
* - `instructions` is reused while a set is stable and cleared on rebuild so
|
|
6
|
-
* removed display objects are not retained by stale instruction slots.
|
|
7
|
-
* - `structureDirty` signals that the scene graph changed and the set must
|
|
8
|
-
* be fully rebuilt before the next render.
|
|
9
|
-
* - `dirtyRenderables` holds objects whose GPU data changed but whose
|
|
10
|
-
* position in the instruction list is still valid — only those need
|
|
11
|
-
* updateRenderable(), not a full rebuild.
|
|
2
|
+
* Stores ordered render instructions and incremental update state.
|
|
12
3
|
*/
|
|
13
4
|
export class InstructionSet {
|
|
14
5
|
// ── Instance fields ───────────────────────────────────────────────────────
|
|
15
|
-
// Instructions in execution order for the current structure.
|
|
16
6
|
instructions = [];
|
|
17
|
-
|
|
7
|
+
dirtyRenderables = [];
|
|
8
|
+
renderableIndex = new Map();
|
|
18
9
|
instructionSize = 0;
|
|
19
|
-
// Whether the scene structure requires this set to be rebuilt.
|
|
20
10
|
structureDirty = true;
|
|
21
|
-
// Deduplicated renderables awaiting an incremental data update.
|
|
22
|
-
dirtyRenderables = [];
|
|
23
|
-
// Number of active entries in dirtyRenderables.
|
|
24
11
|
dirtyRenderableCount = 0;
|
|
25
|
-
// Transform-bearing instruction indices associated with each renderable.
|
|
26
|
-
renderableIndex = new Map();
|
|
27
|
-
// Membership set used to deduplicate dirty renderables within a frame.
|
|
28
12
|
_dirtyRenderableSet = new Set();
|
|
29
13
|
// ── Public methods ────────────────────────────────────────────────────────
|
|
30
14
|
/**
|
|
@@ -36,7 +20,6 @@ export class InstructionSet {
|
|
|
36
20
|
this.clearDirtyRenderables();
|
|
37
21
|
this.renderableIndex.clear();
|
|
38
22
|
}
|
|
39
|
-
// Append an instruction.
|
|
40
23
|
add(instruction) {
|
|
41
24
|
this.instructions[this.instructionSize++] = instruction;
|
|
42
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstructionSet.js","sourceRoot":"","sources":["../../../src/kurot/player/InstructionSet.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InstructionSet.js","sourceRoot":"","sources":["../../../src/kurot/player/InstructionSet.ts"],"names":[],"mappings":"AAgBA;;GAEG;AACH,MAAM,OAAO,cAAc;IAC1B,6EAA6E;IAE7D,YAAY,GAAkB,EAAE,CAAC;IACjC,gBAAgB,GAAoB,EAAE,CAAC;IACvC,eAAe,GAAqD,IAAI,GAAG,EAAE,CAAC;IAEpF,eAAe,GAAG,CAAC,CAAC;IACvB,cAAc,GAAG,IAAI,CAAC;IACtB,oBAAoB,GAAG,CAAC,CAAC;IAEZ,mBAAmB,GAAG,IAAI,GAAG,EAAiB,CAAC;IAEnE,6EAA6E;IAE7E;;OAEG;IACI,KAAK;QACX,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAEM,GAAG,CAAC,WAAwB;QAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,WAAW,CAAC;IACzD,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,WAAwB;QACtC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACI,UAAU,CAAC,WAAwB;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACxE,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACnF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,WAAW,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,GAAkB;QAC5C,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QAC9C,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,GAAG,GAAG,CAAC;IAC1D,CAAC;IAED;;OAEG;IACI,qBAAqB;QAC3B,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;CACD"}
|
|
@@ -2,24 +2,39 @@ import type { StageScaleMode } from '../display/enums/StageScaleMode.js';
|
|
|
2
2
|
import type { OrientationMode } from '../display/enums/OrientationMode.js';
|
|
3
3
|
/**
|
|
4
4
|
* Configuration options for initializing the Kurot engine.
|
|
5
|
-
* Equivalent to Egret's `PlayerOption` + `runEgretOptions`.
|
|
6
5
|
*/
|
|
7
6
|
export interface KurotOptions {
|
|
8
|
-
/**
|
|
7
|
+
/**
|
|
8
|
+
* The canvas element to render into.
|
|
9
|
+
*/
|
|
9
10
|
canvas: HTMLCanvasElement;
|
|
10
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Frame rate (default: 60).
|
|
13
|
+
*/
|
|
11
14
|
frameRate?: number;
|
|
12
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* Stage scale mode (default: 'showAll').
|
|
17
|
+
*/
|
|
13
18
|
scaleMode?: StageScaleMode;
|
|
14
|
-
/**
|
|
19
|
+
/**
|
|
20
|
+
* Initial content width in logical pixels.
|
|
21
|
+
*/
|
|
15
22
|
contentWidth?: number;
|
|
16
|
-
/**
|
|
23
|
+
/**
|
|
24
|
+
* Initial content height in logical pixels.
|
|
25
|
+
*/
|
|
17
26
|
contentHeight?: number;
|
|
18
|
-
/**
|
|
27
|
+
/**
|
|
28
|
+
* Screen orientation mode (default: 'auto').
|
|
29
|
+
*/
|
|
19
30
|
orientation?: OrientationMode;
|
|
20
|
-
/**
|
|
31
|
+
/**
|
|
32
|
+
* Maximum simultaneous touch points (default: 99).
|
|
33
|
+
*/
|
|
21
34
|
maxTouches?: number;
|
|
22
|
-
/**
|
|
35
|
+
/**
|
|
36
|
+
* Background color as a CSS string (default: '#000000').
|
|
37
|
+
*/
|
|
23
38
|
background?: string;
|
|
24
39
|
}
|
|
25
40
|
//# sourceMappingURL=KurotOptions.d.ts.map
|