@kurot/core 1.0.20 → 1.0.22
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/dist/kurot/display/DisplayObject.d.ts.map +1 -1
- package/dist/kurot/display/DisplayObject.js +6 -0
- package/dist/kurot/display/DisplayObject.js.map +1 -1
- package/dist/kurot/display/Mesh.d.ts +5 -2
- package/dist/kurot/display/Mesh.d.ts.map +1 -1
- package/dist/kurot/display/Mesh.js +5 -2
- package/dist/kurot/display/Mesh.js.map +1 -1
- package/dist/kurot/filters/BloomFilter.d.ts +40 -0
- package/dist/kurot/filters/BloomFilter.d.ts.map +1 -0
- package/dist/kurot/filters/BloomFilter.js +51 -0
- package/dist/kurot/filters/BloomFilter.js.map +1 -0
- package/dist/kurot/filters/BloomShaders.d.ts +10 -0
- package/dist/kurot/filters/BloomShaders.d.ts.map +1 -0
- package/dist/kurot/filters/BloomShaders.js +54 -0
- package/dist/kurot/filters/BloomShaders.js.map +1 -0
- package/dist/kurot/filters/BlurFilter.d.ts +4 -0
- package/dist/kurot/filters/BlurFilter.d.ts.map +1 -1
- package/dist/kurot/filters/BlurFilter.js +23 -6
- package/dist/kurot/filters/BlurFilter.js.map +1 -1
- package/dist/kurot/filters/CustomFilter.d.ts +44 -1
- package/dist/kurot/filters/CustomFilter.d.ts.map +1 -1
- package/dist/kurot/filters/CustomFilter.js +56 -17
- package/dist/kurot/filters/CustomFilter.js.map +1 -1
- package/dist/kurot/filters/DropShadowFilter.d.ts.map +1 -1
- package/dist/kurot/filters/DropShadowFilter.js +1 -0
- package/dist/kurot/filters/DropShadowFilter.js.map +1 -1
- package/dist/kurot/filters/Filter.d.ts +15 -0
- package/dist/kurot/filters/Filter.d.ts.map +1 -1
- package/dist/kurot/filters/Filter.js +58 -0
- package/dist/kurot/filters/Filter.js.map +1 -1
- package/dist/kurot/filters/FilterTexture.d.ts +21 -0
- package/dist/kurot/filters/FilterTexture.d.ts.map +1 -0
- package/dist/kurot/filters/FilterTexture.js +2 -0
- package/dist/kurot/filters/FilterTexture.js.map +1 -0
- package/dist/kurot/filters/GlowFilter.d.ts.map +1 -1
- package/dist/kurot/filters/GlowFilter.js +6 -0
- package/dist/kurot/filters/GlowFilter.js.map +1 -1
- package/dist/kurot/filters/MultiPassFilter.d.ts +41 -0
- package/dist/kurot/filters/MultiPassFilter.d.ts.map +1 -0
- package/dist/kurot/filters/MultiPassFilter.js +53 -0
- package/dist/kurot/filters/MultiPassFilter.js.map +1 -0
- package/dist/kurot/filters/index.d.ts +6 -0
- package/dist/kurot/filters/index.d.ts.map +1 -1
- package/dist/kurot/filters/index.js +2 -0
- package/dist/kurot/filters/index.js.map +1 -1
- package/dist/kurot/player/Player.d.ts.map +1 -1
- package/dist/kurot/player/Player.js +1 -0
- package/dist/kurot/player/Player.js.map +1 -1
- package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -1
- package/dist/kurot/player/canvas/CanvasRenderer.js +26 -16
- package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -1
- package/dist/kurot/player/pipes/BitmapPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/BitmapPipe.js +20 -10
- package/dist/kurot/player/pipes/BitmapPipe.js.map +1 -1
- package/dist/kurot/player/pipes/FilterPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/FilterPipe.js +23 -18
- package/dist/kurot/player/pipes/FilterPipe.js.map +1 -1
- package/dist/kurot/player/pipes/MaskPipe.d.ts.map +1 -1
- package/dist/kurot/player/pipes/MaskPipe.js +6 -0
- package/dist/kurot/player/pipes/MaskPipe.js.map +1 -1
- package/dist/kurot/player/pipes/filter-bounds.d.ts +8 -0
- package/dist/kurot/player/pipes/filter-bounds.d.ts.map +1 -0
- package/dist/kurot/player/pipes/filter-bounds.js +25 -0
- package/dist/kurot/player/pipes/filter-bounds.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLFilterSystem.d.ts +27 -0
- package/dist/kurot/player/webgl/WebGLFilterSystem.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLFilterSystem.js +119 -0
- package/dist/kurot/player/webgl/WebGLFilterSystem.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLFilterTargetPool.d.ts +18 -0
- package/dist/kurot/player/webgl/WebGLFilterTargetPool.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLFilterTargetPool.js +80 -0
- package/dist/kurot/player/webgl/WebGLFilterTargetPool.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLFilterTextures.d.ts +17 -0
- package/dist/kurot/player/webgl/WebGLFilterTextures.d.ts.map +1 -0
- package/dist/kurot/player/webgl/WebGLFilterTextures.js +124 -0
- package/dist/kurot/player/webgl/WebGLFilterTextures.js.map +1 -0
- package/dist/kurot/player/webgl/WebGLProgram.d.ts +6 -2
- package/dist/kurot/player/webgl/WebGLProgram.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLProgram.js +29 -8
- 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 +3 -0
- package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +15 -6
- package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderContext.js +200 -145
- package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLRenderer.js +143 -110
- package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLUtils.d.ts +2 -2
- package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLUtils.js +35 -12
- package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -1
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts +2 -0
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts.map +1 -1
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.js +3 -1
- package/dist/kurot/player/webgl/WebGLVertexArrayObject.js.map +1 -1
- package/dist/kurot/player/webgl/custom-filter-uniforms.d.ts +6 -0
- package/dist/kurot/player/webgl/custom-filter-uniforms.d.ts.map +1 -0
- package/dist/kurot/player/webgl/custom-filter-uniforms.js +116 -0
- package/dist/kurot/player/webgl/custom-filter-uniforms.js.map +1 -0
- package/dist/kurot/player/webgl/split-mesh.d.ts +9 -0
- package/dist/kurot/player/webgl/split-mesh.d.ts.map +1 -0
- package/dist/kurot/player/webgl/split-mesh.js +29 -0
- package/dist/kurot/player/webgl/split-mesh.js.map +1 -0
- package/dist/kurot/system/Capabilities.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGLRenderer.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLRenderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WebGLRenderer.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLRenderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ export declare const SYM_SMOOTHING = "__kurotSmoothing";
|
|
|
9
9
|
* WebGL context accepted by shared rendering utilities.
|
|
10
10
|
*/
|
|
11
11
|
export type GL = WebGL2RenderingContext | WebGLRenderingContext;
|
|
12
|
-
export declare function compileShader(gl: GL, type: number, source: string): WebGLShader;
|
|
13
|
-
export declare function createProgram(gl: GL, vertSrc: string, fragSrc: string): WebGLProgram;
|
|
12
|
+
export declare function compileShader(gl: GL, type: number, source: string, name?: string): WebGLShader;
|
|
13
|
+
export declare function createProgram(gl: GL, vertSrc: string, fragSrc: string, name?: string): WebGLProgram;
|
|
14
14
|
export declare function deleteWebGLTexture(gl: GL | undefined, texture: WebGLTexture | undefined): void;
|
|
15
15
|
export declare function premultiplyTint(tint: number, alpha: number): number;
|
|
16
16
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGLUtils.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AACxD,eAAO,MAAM,iBAAiB,wBAAwB,CAAC;AACvD,eAAO,MAAM,aAAa,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,EAAE,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAEhE,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"WebGLUtils.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AACxD,eAAO,MAAM,iBAAiB,wBAAwB,CAAC;AACvD,eAAO,MAAM,aAAa,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,EAAE,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAEhE,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,SAAY,GAAG,WAAW,CAYjG;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,SAAY,GAAG,YAAY,CA0BtG;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,CAI9F;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQnE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,GACpB,MAAM,CAGR;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAO3C"}
|
|
@@ -5,26 +5,49 @@ export const SYM_GL_CONTEXT = '__kurotGlContext';
|
|
|
5
5
|
export const SYM_PREMULTIPLIED = '__kurotPremultiplied';
|
|
6
6
|
export const SYM_DEFAULT_EMPTY = '__kurotDefaultEmpty';
|
|
7
7
|
export const SYM_SMOOTHING = '__kurotSmoothing';
|
|
8
|
-
export function compileShader(gl, type, source) {
|
|
8
|
+
export function compileShader(gl, type, source, name = 'unnamed') {
|
|
9
9
|
const shader = gl.createShader(type);
|
|
10
|
+
if (!shader)
|
|
11
|
+
throw new Error(`Cannot allocate shader: ${name}`);
|
|
10
12
|
gl.shaderSource(shader, source);
|
|
11
13
|
gl.compileShader(shader);
|
|
12
14
|
if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {
|
|
13
|
-
|
|
15
|
+
const log = gl.getShaderInfoLog(shader);
|
|
16
|
+
gl.deleteShader(shader);
|
|
17
|
+
const numberedSource = source.split('\n').map((line, index) => `${index + 1}: ${line}`).join('\n');
|
|
18
|
+
throw new Error(`Shader compile failed (${name}, ${type === gl.VERTEX_SHADER ? 'vertex' : 'fragment'}):\n${log}\n${numberedSource}`);
|
|
14
19
|
}
|
|
15
20
|
return shader;
|
|
16
21
|
}
|
|
17
|
-
export function createProgram(gl, vertSrc, fragSrc) {
|
|
18
|
-
const vert = compileShader(gl, gl.VERTEX_SHADER, vertSrc);
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
export function createProgram(gl, vertSrc, fragSrc, name = 'unnamed') {
|
|
23
|
+
const vert = compileShader(gl, gl.VERTEX_SHADER, vertSrc, name);
|
|
24
|
+
let frag;
|
|
25
|
+
let program;
|
|
26
|
+
try {
|
|
27
|
+
frag = compileShader(gl, gl.FRAGMENT_SHADER, fragSrc, name);
|
|
28
|
+
program = gl.createProgram() ?? undefined;
|
|
29
|
+
if (!program)
|
|
30
|
+
throw new Error(`Cannot allocate program: ${name}`);
|
|
31
|
+
gl.attachShader(program, vert);
|
|
32
|
+
gl.attachShader(program, frag);
|
|
33
|
+
gl.linkProgram(program);
|
|
34
|
+
if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {
|
|
35
|
+
throw new Error(`Program link failed (${name}):\n${gl.getProgramInfoLog(program)}`);
|
|
36
|
+
}
|
|
37
|
+
return program;
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
if (program) {
|
|
41
|
+
gl.deleteProgram(program);
|
|
42
|
+
}
|
|
43
|
+
throw error;
|
|
44
|
+
}
|
|
45
|
+
finally {
|
|
46
|
+
gl.deleteShader(vert);
|
|
47
|
+
if (frag) {
|
|
48
|
+
gl.deleteShader(frag);
|
|
49
|
+
}
|
|
26
50
|
}
|
|
27
|
-
return program;
|
|
28
51
|
}
|
|
29
52
|
export function deleteWebGLTexture(gl, texture) {
|
|
30
53
|
if (!texture)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGLUtils.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC;AACjD,MAAM,CAAC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AACxD,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AACvD,MAAM,CAAC,MAAM,aAAa,GAAG,kBAAkB,CAAC;AAOhD,MAAM,UAAU,aAAa,CAAC,EAAM,EAAE,IAAY,EAAE,MAAc;
|
|
1
|
+
{"version":3,"file":"WebGLUtils.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@ import type { WebGLRenderBuffer } from './WebGLRenderBuffer.js';
|
|
|
2
2
|
export declare const MULTI_VERT_SIZE = 6;
|
|
3
3
|
export declare const MULTI_VERT_BYTE_SIZE: number;
|
|
4
4
|
export declare class WebGLVertexArrayObject {
|
|
5
|
+
static readonly MAX_VERTICES: number;
|
|
6
|
+
static readonly MAX_INDICES: number;
|
|
5
7
|
/**
|
|
6
8
|
* Maximum byte size of the vertex buffer (single-texture layout).
|
|
7
9
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGLVertexArrayObject.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLVertexArrayObject.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAOhE,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,oBAAoB,EAAE,MAA4B,CAAC;AAMhE,qBAAa,sBAAsB;
|
|
1
|
+
{"version":3,"file":"WebGLVertexArrayObject.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLVertexArrayObject.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAOhE,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,oBAAoB,EAAE,MAA4B,CAAC;AAMhE,qBAAa,sBAAsB;IAElC,gBAAuB,YAAY,EAAE,MAAM,CAAa;IACxD,gBAAuB,WAAW,EAAE,MAAM,CAAe;IAEzD;;OAEG;IACH,gBAAuB,gBAAgB,EAAE,MAAM,CAA8B;IAE7E;;OAEG;IACH,gBAAuB,sBAAsB,EAAE,MAAM,CAAoC;IAIzF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IAEtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAE3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAc;IAE9C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,QAAQ,CAAS;;IAwBlB,YAAY,CAAC,WAAW,SAAI,EAAE,UAAU,SAAI,GAAG,OAAO;IAItD,WAAW,IAAI,YAAY;IAO3B,qBAAqB,IAAI,MAAM;IAO/B,iBAAiB,IAAI,WAAW;IAIhC,UAAU,IAAI,WAAW;IAIzB,cAAc,IAAI,WAAW;IAI7B,mBAAmB,IAAI,IAAI;IAS3B,MAAM,IAAI,OAAO;IAIjB,cAAc,IAAI,OAAO;IAIzB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIvC,WAAW,CACjB,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,kBAAkB,EAAE,MAAM,EAC1B,mBAAmB,EAAE,MAAM,EAC3B,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,OAAO,EACjB,SAAS,SAAI,EACb,KAAK,UAAQ,GACX,IAAI;IAmEP,OAAO,CAAC,YAAY;IAgFpB,OAAO,CAAC,gBAAgB;IAsHxB,OAAO,CAAC,WAAW;IAmFnB,OAAO,CAAC,eAAe;IA+HhB,KAAK,IAAI,IAAI;CAMpB"}
|
|
@@ -9,7 +9,9 @@ const MAX_QUADS = 2048;
|
|
|
9
9
|
const MAX_VERTS = MAX_QUADS * 4;
|
|
10
10
|
const MAX_INDICES = MAX_QUADS * 6;
|
|
11
11
|
export class WebGLVertexArrayObject {
|
|
12
|
-
// ── Static fields
|
|
12
|
+
// ── Static fields ───────────────────────────────────────────────────────
|
|
13
|
+
static MAX_VERTICES = MAX_VERTS;
|
|
14
|
+
static MAX_INDICES = MAX_INDICES;
|
|
13
15
|
/**
|
|
14
16
|
* Maximum byte size of the vertex buffer (single-texture layout).
|
|
15
17
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGLVertexArrayObject.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLVertexArrayObject.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WebGLVertexArrayObject.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/WebGLVertexArrayObject.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CustomFilter } from '../../filters/CustomFilter.js';
|
|
2
|
+
import type { WebGLProgram } from './WebGLProgram.js';
|
|
3
|
+
import type { GL } from './WebGLUtils.js';
|
|
4
|
+
import type { FilterSampler } from './WebGLFilterSystem.js';
|
|
5
|
+
export declare function uploadCustomUniforms(gl: GL, program: WebGLProgram, filter: CustomFilter, width: number, height: number, resolution: number, outputWidth: number, outputHeight: number, inputs: Record<string, FilterSampler>): void;
|
|
6
|
+
//# sourceMappingURL=custom-filter-uniforms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-filter-uniforms.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/custom-filter-uniforms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAI5D,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EACvF,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAC5F,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAgC5C"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
const RESERVED = new Set(['projectionVector', 'uSampler', 'uTextureSize', 'uInputSize', 'uInputClamp', 'uResolution', 'uOutputSize']);
|
|
2
|
+
export function uploadCustomUniforms(gl, program, filter, width, height, resolution, outputWidth, outputHeight, inputs) {
|
|
3
|
+
const locations = program.uniforms;
|
|
4
|
+
const automaticTypes = {
|
|
5
|
+
projectionVector: gl.FLOAT_VEC2, uSampler: gl.SAMPLER_2D, uTextureSize: gl.FLOAT_VEC2,
|
|
6
|
+
uInputSize: gl.FLOAT_VEC4, uInputClamp: gl.FLOAT_VEC4, uResolution: gl.FLOAT, uOutputSize: gl.FLOAT_VEC4,
|
|
7
|
+
};
|
|
8
|
+
for (const [name, type] of Object.entries(automaticTypes)) {
|
|
9
|
+
const info = program.uniformInfo[name];
|
|
10
|
+
if (info && (info.type !== type || info.size !== 1)) {
|
|
11
|
+
throw new Error(`CustomFilter ${name} has an invalid automatic uniform type.`);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
if (locations.uTextureSize) {
|
|
15
|
+
gl.uniform2f(locations.uTextureSize, width, height);
|
|
16
|
+
}
|
|
17
|
+
if (locations.uInputSize) {
|
|
18
|
+
gl.uniform4f(locations.uInputSize, width, height, 1 / width, 1 / height);
|
|
19
|
+
}
|
|
20
|
+
if (locations.uInputClamp) {
|
|
21
|
+
gl.uniform4f(locations.uInputClamp, 0.5 / width, 0.5 / height, 1 - 0.5 / width, 1 - 0.5 / height);
|
|
22
|
+
}
|
|
23
|
+
if (locations.uResolution) {
|
|
24
|
+
gl.uniform1f(locations.uResolution, resolution);
|
|
25
|
+
}
|
|
26
|
+
if (locations.uOutputSize) {
|
|
27
|
+
gl.uniform4f(locations.uOutputSize, outputWidth, outputHeight, 1 / outputWidth, 1 / outputHeight);
|
|
28
|
+
}
|
|
29
|
+
for (const name of Object.keys(filter.uniforms)) {
|
|
30
|
+
if (RESERVED.has(name))
|
|
31
|
+
throw new Error(`CustomFilter uniform ${name} is reserved.`);
|
|
32
|
+
}
|
|
33
|
+
const resources = { ...filter.textures, ...inputs };
|
|
34
|
+
for (const [name, info] of Object.entries(program.uniformInfo)) {
|
|
35
|
+
if (RESERVED.has(name))
|
|
36
|
+
continue;
|
|
37
|
+
if (resources[name] || (name.endsWith('Matrix') && resources[name.slice(0, -6)])
|
|
38
|
+
|| (name.endsWith('Clamp') && resources[name.slice(0, -5)]))
|
|
39
|
+
continue;
|
|
40
|
+
const baseName = name.replace(/\[0\]$/, '');
|
|
41
|
+
const value = filter.uniforms[baseName];
|
|
42
|
+
if (value === undefined)
|
|
43
|
+
throw new Error(`CustomFilter uniform ${baseName} is missing.`);
|
|
44
|
+
uploadUniform(gl, locations[name], info.type, info.size, value, baseName);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function uploadUniform(gl, location, type, size, value, name) {
|
|
48
|
+
const integerTypes = [gl.INT, gl.BOOL, gl.INT_VEC2, gl.INT_VEC3, gl.INT_VEC4, gl.BOOL_VEC2, gl.BOOL_VEC3, gl.BOOL_VEC4];
|
|
49
|
+
const integer = integerTypes.includes(type);
|
|
50
|
+
const components = {
|
|
51
|
+
[gl.FLOAT]: 1, [gl.INT]: 1, [gl.BOOL]: 1,
|
|
52
|
+
[gl.FLOAT_VEC2]: 2, [gl.FLOAT_VEC3]: 3, [gl.FLOAT_VEC4]: 4,
|
|
53
|
+
[gl.INT_VEC2]: 2, [gl.INT_VEC3]: 3, [gl.INT_VEC4]: 4,
|
|
54
|
+
[gl.BOOL_VEC2]: 2, [gl.BOOL_VEC3]: 3, [gl.BOOL_VEC4]: 4,
|
|
55
|
+
[gl.FLOAT_MAT2]: 4, [gl.FLOAT_MAT3]: 9, [gl.FLOAT_MAT4]: 16,
|
|
56
|
+
};
|
|
57
|
+
const count = components[type];
|
|
58
|
+
if (!count)
|
|
59
|
+
throw new Error(`CustomFilter uniform ${name} has unsupported GLSL type ${type}.`);
|
|
60
|
+
let values;
|
|
61
|
+
if (typeof value === 'number' || typeof value === 'boolean') {
|
|
62
|
+
values = [Number(value)];
|
|
63
|
+
}
|
|
64
|
+
else if (Array.isArray(value) || value instanceof Float32Array || value instanceof Int32Array) {
|
|
65
|
+
values = Array.from(value);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
throw new TypeError(`CustomFilter uniform ${name} requires a numeric value or array.`);
|
|
69
|
+
}
|
|
70
|
+
if (values.length !== count * size || values.some(v => typeof v !== 'number' || !Number.isFinite(v)
|
|
71
|
+
|| (integer && (!Number.isInteger(v) || v < -2147483648 || v > 2147483647)))) {
|
|
72
|
+
throw new TypeError(`CustomFilter uniform ${name} requires ${count * size} finite ${integer ? 'integer' : 'numeric'} values.`);
|
|
73
|
+
}
|
|
74
|
+
if (integer) {
|
|
75
|
+
const data = new Int32Array(values);
|
|
76
|
+
switch (count) {
|
|
77
|
+
case 1:
|
|
78
|
+
gl.uniform1iv(location, data);
|
|
79
|
+
return;
|
|
80
|
+
case 2:
|
|
81
|
+
gl.uniform2iv(location, data);
|
|
82
|
+
return;
|
|
83
|
+
case 3:
|
|
84
|
+
gl.uniform3iv(location, data);
|
|
85
|
+
return;
|
|
86
|
+
case 4:
|
|
87
|
+
gl.uniform4iv(location, data);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
const data = new Float32Array(values);
|
|
92
|
+
switch (type) {
|
|
93
|
+
case gl.FLOAT:
|
|
94
|
+
gl.uniform1fv(location, data);
|
|
95
|
+
return;
|
|
96
|
+
case gl.FLOAT_VEC2:
|
|
97
|
+
gl.uniform2fv(location, data);
|
|
98
|
+
return;
|
|
99
|
+
case gl.FLOAT_VEC3:
|
|
100
|
+
gl.uniform3fv(location, data);
|
|
101
|
+
return;
|
|
102
|
+
case gl.FLOAT_VEC4:
|
|
103
|
+
gl.uniform4fv(location, data);
|
|
104
|
+
return;
|
|
105
|
+
case gl.FLOAT_MAT2:
|
|
106
|
+
gl.uniformMatrix2fv(location, false, data);
|
|
107
|
+
return;
|
|
108
|
+
case gl.FLOAT_MAT3:
|
|
109
|
+
gl.uniformMatrix3fv(location, false, data);
|
|
110
|
+
return;
|
|
111
|
+
case gl.FLOAT_MAT4:
|
|
112
|
+
gl.uniformMatrix4fv(location, false, data);
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=custom-filter-uniforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-filter-uniforms.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/custom-filter-uniforms.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
interface MeshChunk {
|
|
2
|
+
vertices: number[];
|
|
3
|
+
uvs: number[];
|
|
4
|
+
indices: number[];
|
|
5
|
+
}
|
|
6
|
+
/** Preserves triangle order while remapping each batch to local Uint16 indices. */
|
|
7
|
+
export declare function splitMesh(vertices: readonly number[], uvs: readonly number[], indices: readonly number[]): Generator<MeshChunk>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=split-mesh.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-mesh.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/split-mesh.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,mFAAmF;AACnF,wBAAiB,SAAS,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,CAwBhI"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { WebGLVertexArrayObject } from './WebGLVertexArrayObject.js';
|
|
2
|
+
/** Preserves triangle order while remapping each batch to local Uint16 indices. */
|
|
3
|
+
export function* splitMesh(vertices, uvs, indices) {
|
|
4
|
+
let chunk = { vertices: [], uvs: [], indices: [] };
|
|
5
|
+
const mapped = new Map();
|
|
6
|
+
for (let i = 0; i + 2 < indices.length; i += 3) {
|
|
7
|
+
const triangle = [indices[i], indices[i + 1], indices[i + 2]];
|
|
8
|
+
const added = new Set(triangle.filter(index => !mapped.has(index))).size;
|
|
9
|
+
if (mapped.size + added > WebGLVertexArrayObject.MAX_VERTICES
|
|
10
|
+
|| chunk.indices.length + 3 > WebGLVertexArrayObject.MAX_INDICES) {
|
|
11
|
+
yield chunk;
|
|
12
|
+
chunk = { vertices: [], uvs: [], indices: [] };
|
|
13
|
+
mapped.clear();
|
|
14
|
+
}
|
|
15
|
+
for (const index of triangle) {
|
|
16
|
+
let local = mapped.get(index);
|
|
17
|
+
if (local === undefined) {
|
|
18
|
+
local = mapped.size;
|
|
19
|
+
mapped.set(index, local);
|
|
20
|
+
chunk.vertices.push(vertices[index * 2], vertices[index * 2 + 1]);
|
|
21
|
+
chunk.uvs.push(uvs[index * 2], uvs[index * 2 + 1]);
|
|
22
|
+
}
|
|
23
|
+
chunk.indices.push(local);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (chunk.indices.length)
|
|
27
|
+
yield chunk;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=split-mesh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-mesh.js","sourceRoot":"","sources":["../../../../src/kurot/player/webgl/split-mesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAQrE,mFAAmF;AACnF,MAAM,SAAS,CAAC,CAAC,SAAS,CAAC,QAA2B,EAAE,GAAsB,EAAE,OAA0B;IACzG,IAAI,KAAK,GAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC9D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,IAAI,MAAM,CAAC,IAAI,GAAG,KAAK,GAAG,sBAAsB,CAAC,YAAY;eACzD,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,sBAAsB,CAAC,WAAW,EAAE,CAAC;YACnE,MAAM,KAAK,CAAC;YACZ,KAAK,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YAC/C,MAAM,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC9B,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACzB,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;gBACpB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACzB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACF,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM;QAAE,MAAM,KAAK,CAAC;AACvC,CAAC"}
|
|
@@ -26,7 +26,7 @@ export class Capabilities {
|
|
|
26
26
|
/**
|
|
27
27
|
* Current Kurot engine version.
|
|
28
28
|
*/
|
|
29
|
-
static engineVersion = '1.0.
|
|
29
|
+
static engineVersion = '1.0.21';
|
|
30
30
|
/**
|
|
31
31
|
* Width of the canvas bounding client rect in CSS pixels.
|
|
32
32
|
* Updated by ScreenAdapter on every resize.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kurot/core",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.22",
|
|
4
4
|
"description": "Modern rewrite of the Egret game engine — WebGL multi-texture batching, instruction-driven render pipeline, strict TypeScript, Egret-compatible API",
|
|
5
5
|
"author": "Kelvin <kyia.x52@gmail.com>",
|
|
6
6
|
"license": "MIT",
|