@tolokoban/tgd 2.0.17 → 2.0.18
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/lib/dist/filter/filter.d.ts +8 -7
- package/lib/dist/filter/filter.d.ts.map +1 -1
- package/lib/dist/filter/filter.js +4 -2
- package/lib/dist/filter/index.d.ts +1 -0
- package/lib/dist/filter/index.d.ts.map +1 -1
- package/lib/dist/filter/index.js +2 -1
- package/lib/dist/filter/zoom.d.ts +10 -0
- package/lib/dist/filter/zoom.d.ts.map +1 -0
- package/lib/dist/filter/zoom.js +21 -0
- package/lib/dist/loader/asset.d.ts +5 -3
- package/lib/dist/loader/asset.d.ts.map +1 -1
- package/lib/dist/loader/asset.js +30 -20
- package/lib/dist/material/diffuse.d.ts +7 -3
- package/lib/dist/material/diffuse.d.ts.map +1 -1
- package/lib/dist/material/diffuse.js +14 -3
- package/lib/dist/material/ghost.d.ts +3 -3
- package/lib/dist/material/ghost.d.ts.map +1 -1
- package/lib/dist/material/ghost.js +1 -1
- package/lib/dist/material/hull.d.ts +24 -0
- package/lib/dist/material/hull.d.ts.map +1 -0
- package/lib/dist/material/hull.js +30 -0
- package/lib/dist/material/index.d.ts +1 -0
- package/lib/dist/material/index.d.ts.map +1 -1
- package/lib/dist/material/index.js +2 -1
- package/lib/dist/material/material.d.ts +12 -4
- package/lib/dist/material/material.d.ts.map +1 -1
- package/lib/dist/material/material.js +9 -1
- package/lib/dist/material/normals.d.ts +3 -3
- package/lib/dist/material/normals.d.ts.map +1 -1
- package/lib/dist/material/normals.js +1 -1
- package/lib/dist/material/solid.d.ts +5 -5
- package/lib/dist/material/solid.d.ts.map +1 -1
- package/lib/dist/material/solid.js +3 -3
- package/lib/dist/math/vec4.d.ts +3 -3
- package/lib/dist/math/vec4.d.ts.map +1 -1
- package/lib/dist/math/vec4.js +20 -1
- package/lib/dist/painter/filter/filter.d.ts.map +1 -1
- package/lib/dist/painter/filter/filter.js +8 -10
- package/lib/dist/painter/framebuffer.backup.d.ts +39 -0
- package/lib/dist/painter/framebuffer.backup.d.ts.map +1 -0
- package/lib/dist/painter/framebuffer.backup.js +125 -0
- package/lib/dist/painter/framebuffer.d.ts +18 -7
- package/lib/dist/painter/framebuffer.d.ts.map +1 -1
- package/lib/dist/painter/framebuffer.js +69 -87
- package/lib/dist/painter/index.d.ts +0 -1
- package/lib/dist/painter/index.d.ts.map +1 -1
- package/lib/dist/painter/index.js +1 -2
- package/lib/dist/painter/mesh/gltf/gltf.d.ts.map +1 -1
- package/lib/dist/painter/mesh/gltf/gltf.js +27 -49
- package/lib/dist/painter/mesh/hull/hull.d.ts +12 -0
- package/lib/dist/painter/mesh/hull/hull.d.ts.map +1 -0
- package/lib/dist/painter/mesh/hull/hull.js +11 -0
- package/lib/dist/painter/mesh/mesh/mesh.d.ts +1 -1
- package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
- package/lib/dist/painter/mesh/mesh/mesh.js +8 -6
- package/lib/dist/painter/state/state.d.ts +10 -1
- package/lib/dist/painter/state/state.d.ts.map +1 -1
- package/lib/dist/painter/state/state.js +20 -18
- package/lib/dist/shader/code.d.ts +8 -8
- package/lib/dist/shader/code.d.ts.map +1 -1
- package/lib/dist/shader/code.js +1 -1
- package/lib/dist/shader/fragment.d.ts +11 -11
- package/lib/dist/shader/fragment.d.ts.map +1 -1
- package/lib/dist/shader/fragment.js +1 -1
- package/lib/dist/shader/vertex.d.ts +11 -11
- package/lib/dist/shader/vertex.d.ts.map +1 -1
- package/lib/dist/shader/vertex.js +1 -1
- package/lib/dist/texture/texture2d.d.ts +2 -1
- package/lib/dist/texture/texture2d.d.ts.map +1 -1
- package/lib/dist/texture/texture2d.js +7 -1
- package/lib/dist/types/program.d.ts +3 -3
- package/lib/dist/types/program.d.ts.map +1 -1
- package/lib/dist/types/texture2d.d.ts +2 -1
- package/lib/dist/types/texture2d.d.ts.map +1 -1
- package/lib/dist/types/webgl.d.ts +12 -0
- package/lib/dist/types/webgl.d.ts.map +1 -1
- package/lib/dist/types/webgl.js +14 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/painter/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/painter/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA"}
|
|
@@ -4,7 +4,6 @@ export * from "./clear.js";
|
|
|
4
4
|
export * from "./depth.js";
|
|
5
5
|
export * from "./filter/index.js";
|
|
6
6
|
export * from "./framebuffer.js";
|
|
7
|
-
export * from "./framebuffer-old.js";
|
|
8
7
|
export * from "./group.js";
|
|
9
8
|
export * from "./logic.js";
|
|
10
9
|
export * from "./mesh/index.js";
|
|
@@ -12,4 +11,4 @@ export * from "./node/node.js";
|
|
|
12
11
|
export * from "./segments/index.js";
|
|
13
12
|
export * from "./skybox/index.js";
|
|
14
13
|
export * from "./state/state.js";
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFpbnRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFFBQVEsQ0FBQTtBQUN0QixjQUFjLGNBQWMsQ0FBQTtBQUM1QixjQUFjLFNBQVMsQ0FBQTtBQUN2QixjQUFjLFNBQVMsQ0FBQTtBQUN2QixjQUFjLFVBQVUsQ0FBQTtBQUN4QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLFNBQVMsQ0FBQTtBQUN2QixjQUFjLFNBQVMsQ0FBQTtBQUN2QixjQUFjLFFBQVEsQ0FBQTtBQUN0QixjQUFjLGFBQWEsQ0FBQTtBQUMzQixjQUFjLFlBQVksQ0FBQTtBQUMxQixjQUFjLFVBQVUsQ0FBQTtBQUN4QixjQUFjLGVBQWUsQ0FBQSJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gltf.d.ts","sourceRoot":"","sources":["../../../../src/painter/mesh/gltf/gltf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAW,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAsB,MAAM,eAAe,CAAA;AAG/D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAExC,MAAM,WAAW,yBAAyB;IACtC,KAAK,EAAE,gCAAgC,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,CACZ,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,GAAG,YAAY,CAAA;KAAE,GAC5C,WAAW,CAAA;CACjB;AAED;GACG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;gBACtC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB;
|
|
1
|
+
{"version":3,"file":"gltf.d.ts","sourceRoot":"","sources":["../../../../src/painter/mesh/gltf/gltf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAW,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAsB,MAAM,eAAe,CAAA;AAG/D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAExC,MAAM,WAAW,yBAAyB;IACtC,KAAK,EAAE,gCAAgC,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,CACZ,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,GAAG,YAAY,CAAA;KAAE,GAC5C,WAAW,CAAA;CACjB;AAED;GACG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;gBACtC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB;CA4CtE"}
|
|
@@ -12,58 +12,36 @@ export class TgdPainterMeshGltf extends TgdPainterMesh {
|
|
|
12
12
|
const color = figureColor(asset, meshIndex, primitiveIndex, context);
|
|
13
13
|
const material = materialFactory({ color });
|
|
14
14
|
let computeNormals = false;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
// We will compute them with a smooth shading.
|
|
27
|
-
console.warn("No normals found! We will apply smooth shading.");
|
|
28
|
-
computeNormals = true;
|
|
29
|
-
}
|
|
30
|
-
super(context, {
|
|
31
|
-
geometry: new TgdGeometry({
|
|
32
|
-
dataset,
|
|
33
|
-
elements: asset.getMeshPrimitiveIndices(meshIndex, primitiveIndex),
|
|
34
|
-
drawMode: "TRIANGLES",
|
|
35
|
-
computeNormalsIfMissing: computeNormals,
|
|
36
|
-
}),
|
|
37
|
-
material,
|
|
38
|
-
});
|
|
15
|
+
const attributes = {
|
|
16
|
+
POSITION: "vec3",
|
|
17
|
+
NORMAL: "vec3",
|
|
18
|
+
};
|
|
19
|
+
if (asset.getMeshPrimitive().attributes.TEXCOORD_0) {
|
|
20
|
+
attributes.TEXCOORD_0 = "vec2";
|
|
21
|
+
}
|
|
22
|
+
const dataset = new TgdDataset(attributes);
|
|
23
|
+
asset.setAttrib(dataset, "POSITION", meshIndex, primitiveIndex);
|
|
24
|
+
if (asset.getMeshPrimitive().attributes.NORMAL) {
|
|
25
|
+
asset.setAttrib(dataset, "NORMAL", meshIndex, primitiveIndex);
|
|
39
26
|
}
|
|
40
27
|
else {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
try {
|
|
48
|
-
asset.setAttrib(dataset, "NORMAL", meshIndex, primitiveIndex);
|
|
49
|
-
}
|
|
50
|
-
catch (ex) {
|
|
51
|
-
// It seems to be impossible to retrieve normals.
|
|
52
|
-
// We will compute them with a smooth shading.
|
|
53
|
-
console.warn("No normals found! We will apply smooth shading.");
|
|
54
|
-
computeNormals = true;
|
|
55
|
-
}
|
|
28
|
+
// It seems to be impossible to retrieve normals.
|
|
29
|
+
// We will compute them with a smooth shading.
|
|
30
|
+
console.warn("No normals found! We will apply smooth shading.");
|
|
31
|
+
computeNormals = true;
|
|
32
|
+
}
|
|
33
|
+
if (asset.getMeshPrimitive().attributes.TEXCOORD_0) {
|
|
56
34
|
asset.setAttrib(dataset, "TEXCOORD_0", meshIndex, primitiveIndex);
|
|
57
|
-
super(context, {
|
|
58
|
-
geometry: new TgdGeometry({
|
|
59
|
-
dataset,
|
|
60
|
-
elements: asset.getMeshPrimitiveIndices(meshIndex, primitiveIndex),
|
|
61
|
-
drawMode: "TRIANGLES",
|
|
62
|
-
computeNormalsIfMissing: computeNormals,
|
|
63
|
-
}),
|
|
64
|
-
material,
|
|
65
|
-
});
|
|
66
35
|
}
|
|
36
|
+
super(context, {
|
|
37
|
+
geometry: new TgdGeometry({
|
|
38
|
+
dataset,
|
|
39
|
+
elements: asset.getMeshPrimitiveIndices(meshIndex, primitiveIndex),
|
|
40
|
+
drawMode: "TRIANGLES",
|
|
41
|
+
computeNormalsIfMissing: computeNormals,
|
|
42
|
+
}),
|
|
43
|
+
material,
|
|
44
|
+
});
|
|
67
45
|
this.name = options.name ?? `Gltf/${this.name}`;
|
|
68
46
|
}
|
|
69
47
|
}
|
|
@@ -108,4 +86,4 @@ function makeMaterial({ color }) {
|
|
|
108
86
|
});
|
|
109
87
|
return material;
|
|
110
88
|
}
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2x0Zi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWludGVyL21lc2gvZ2x0Zi9nbHRmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBd0IsTUFBTSxjQUFjLENBQUE7QUFFL0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDNUMsT0FBTyxFQUFlLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQy9ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQWF4QztHQUNHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGNBQWM7SUFDbEQsWUFBWSxPQUFtQixFQUFFLE9BQWtDO1FBQy9ELE1BQU0sRUFDRixLQUFLLEVBQ0wsU0FBUyxHQUFHLENBQUMsRUFDYixjQUFjLEdBQUcsQ0FBQyxFQUNsQixlQUFlLEdBQUcsWUFBWSxHQUNqQyxHQUFHLE9BQU8sQ0FBQTtRQUNYLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FBQTtRQUNwRSxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFBO1FBQzNDLElBQUksY0FBYyxHQUFHLEtBQUssQ0FBQTtRQUMxQixNQUFNLFVBQVUsR0FBeUI7WUFDckMsUUFBUSxFQUFFLE1BQU07WUFDaEIsTUFBTSxFQUFFLE1BQU07U0FDakIsQ0FBQTtRQUNELElBQUksS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2pELFVBQVUsQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFBO1FBQ2xDLENB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
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TgdGeometry } from "./../../../geometry/geometry";
|
|
2
|
+
import { TgdContext } from "../../../context";
|
|
3
|
+
import { TgdPainterMesh } from "../mesh";
|
|
4
|
+
import { ArrayNumber4 } from "../../../types";
|
|
5
|
+
export interface TgdPainterMeshHullOptions {
|
|
6
|
+
geometry: TgdGeometry;
|
|
7
|
+
color?: ArrayNumber4;
|
|
8
|
+
}
|
|
9
|
+
export declare class TgdPainterMeshHull extends TgdPainterMesh {
|
|
10
|
+
constructor(context: TgdContext, options: TgdPainterMeshHullOptions);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=hull.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hull.d.ts","sourceRoot":"","sources":["../../../../src/painter/mesh/hull/hull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAGzC,MAAM,WAAW,yBAAyB;IACtC,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,CAAC,EAAE,YAAY,CAAA;CACvB;AAED,qBAAa,kBAAmB,SAAQ,cAAc;gBACtC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB;CAMtE"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TgdPainterMesh } from "../mesh/index.js";
|
|
2
|
+
import { TgdMaterialSolid } from "./../../../material/index.js";
|
|
3
|
+
export class TgdPainterMeshHull extends TgdPainterMesh {
|
|
4
|
+
constructor(context, options) {
|
|
5
|
+
super(context, {
|
|
6
|
+
geometry: options.geometry,
|
|
7
|
+
material: new TgdMaterialSolid({ color: options.color }),
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWludGVyL21lc2gvaHVsbC9odWxsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFFeEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBT2hELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxjQUFjO0lBQ2xELFlBQVksT0FBbUIsRUFBRSxPQUFrQztRQUMvRCxLQUFLLENBQUMsT0FBTyxFQUFFO1lBQ1gsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1lBQzFCLFFBQVEsRUFBRSxJQUFJLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMzRCxDQUFDLENBQUE7SUFDTixDQUFDO0NBQ0oifQ==
|
|
@@ -28,7 +28,7 @@ export declare class TgdPainterMesh extends TgdPainter implements TgdInterfaceTr
|
|
|
28
28
|
min: Readonly<TgdVec3>;
|
|
29
29
|
max: Readonly<TgdVec3>;
|
|
30
30
|
};
|
|
31
|
-
readonly paint: () => void;
|
|
31
|
+
readonly paint: (time: number, delay: number) => void;
|
|
32
32
|
delete(): void;
|
|
33
33
|
}
|
|
34
34
|
//# sourceMappingURL=mesh.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../../../src/painter/mesh/mesh/mesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAK5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../../../src/painter/mesh/mesh/mesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAK5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,WAAW,CAAA;IACrB,QAAQ,EAAE,WAAW,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;GACG;AACH,qBAAa,cACT,SAAQ,UACR,YAAW,yBAAyB;IAehC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU;IAbnC,mBAAmB,UAAgB;IAC1C,SAAgB,QAAQ,EAAE,WAAW,CAAA;IAErC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,OAAO,CAAuB;gBAGf,OAAO,EAAE,UAAU,EACtC,OAAO,EAAE,qBAAqB;IA0DlC,kBAAkB,IAAI;QAClB,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtB,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;KACzB;IA4BD,SAAgB,KAAK,SAAU,MAAM,SAAS,MAAM,UAuBnD;IAED,MAAM,IAAI,IAAI;CAGjB"}
|
|
@@ -2,6 +2,7 @@ import { TgdMat4, TgdVec3 } from "./../../../math/index.js";
|
|
|
2
2
|
import { TgdShaderFragment } from "./../../../shader/fragment.js";
|
|
3
3
|
import { TgdShaderVertex } from "./../../../shader/vertex.js";
|
|
4
4
|
import { TgdPainter } from "../../painter.js";
|
|
5
|
+
import { tgdCodeStringify } from "./../../../shader/index.js";
|
|
5
6
|
/**
|
|
6
7
|
*/
|
|
7
8
|
export class TgdPainterMesh extends TgdPainter {
|
|
@@ -40,10 +41,11 @@ export class TgdPainterMesh extends TgdPainter {
|
|
|
40
41
|
},
|
|
41
42
|
varying: material.varyings,
|
|
42
43
|
functions: {
|
|
43
|
-
"void applyMaterial()": material.vertexShaderCode,
|
|
44
|
+
"void applyMaterial()": tgdCodeStringify(material.vertexShaderCode),
|
|
45
|
+
"vec4 getPosition(vec4 pos)": material.vertexShaderCodeForGetPosition ?? "return pos;",
|
|
44
46
|
},
|
|
45
47
|
mainCode: [
|
|
46
|
-
"gl_Position = uniProjectionMatrix * uniModelViewMatrix * uniTransfoMatrix * POSITION;",
|
|
48
|
+
"gl_Position = uniProjectionMatrix * uniModelViewMatrix * uniTransfoMatrix * getPosition(POSITION);",
|
|
47
49
|
"applyMaterial();",
|
|
48
50
|
],
|
|
49
51
|
}).code;
|
|
@@ -52,7 +54,7 @@ export class TgdPainterMesh extends TgdPainter {
|
|
|
52
54
|
outputs: { FragColor: "vec4" },
|
|
53
55
|
varying: material.varyings,
|
|
54
56
|
functions: {
|
|
55
|
-
"vec4 applyMaterial()": material.fragmentShaderCode,
|
|
57
|
+
"vec4 applyMaterial()": tgdCodeStringify(material.fragmentShaderCode),
|
|
56
58
|
},
|
|
57
59
|
mainCode: [`FragColor = applyMaterial();`],
|
|
58
60
|
}).code;
|
|
@@ -93,11 +95,11 @@ export class TgdPainterMesh extends TgdPainter {
|
|
|
93
95
|
this.bboxMax = max;
|
|
94
96
|
return { min, max };
|
|
95
97
|
}
|
|
96
|
-
paint = () => {
|
|
98
|
+
paint = (time, delay) => {
|
|
97
99
|
const { context, prg, geometry, material, drawMode, count, matrixTransfoGlobal: matrixTransfo, } = this;
|
|
98
100
|
const { gl, camera } = context;
|
|
99
101
|
prg.use();
|
|
100
|
-
material.setUniforms(prg);
|
|
102
|
+
material.setUniforms(prg, time, delay);
|
|
101
103
|
prg.uniformMatrix4fv("uniTransfoMatrix", matrixTransfo);
|
|
102
104
|
prg.uniformMatrix4fv("uniModelViewMatrix", camera.matrixModelView);
|
|
103
105
|
prg.uniformMatrix4fv("uniProjectionMatrix", camera.matrixProjection);
|
|
@@ -114,4 +116,4 @@ export class TgdPainterMesh extends TgdPainter {
|
|
|
114
116
|
this.vao.delete();
|
|
115
117
|
}
|
|
116
118
|
}
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWludGVyL21lc2gvbWVzaC9tZXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRzVDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQVE5QztHQUNHO0FBQ0gsTUFBTSxPQUFPLGNBQ1QsU0FBUSxVQUFVO0lBZ0JLO0lBYmhCLG1CQUFtQixHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7SUFDMUIsUUFBUSxDQUFhO0lBRXBCLEdBQUcsQ0FBWTtJQUNmLEdBQUcsQ0FBZ0I7SUFDbkIsWUFBWSxDQUFRO0lBQ3BCLEtBQUssQ0FBUTtJQUNiLFFBQVEsQ0FBYTtJQUNyQixRQUFRLEdBQVcsQ0FBQyxDQUFBO0lBQzdCLE9BQU8sR0FBbUIsSUFBSSxDQUFBO0lBQzlCLE9BQU8sR0FBbUIsSUFBSSxDQUFBO0lBRXRDLFlBQ3VCLE9BQW1CLEVBQ3RDLE9BQThCO1FBRTlCLEtBQUssRUFBRSxDQUFBO1FBSFksWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUl0QyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUTtZQUNULE9BQU8sUUFBUSxDQUFDLFFBQVEsS0FBSyxRQUFRO2dCQUNqQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVE7Z0JBQ25C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
|
|
@@ -2,6 +2,7 @@ import { TgdContext } from "../../context";
|
|
|
2
2
|
import { TgdPainterGroup } from "../group";
|
|
3
3
|
import { TgdPainter } from "../painter";
|
|
4
4
|
import { WebglBlendOptions, WebglDepthOptions, WebglCullOptions, WebglStencilOptions } from "../../utils/state";
|
|
5
|
+
import { TgdPainterFunction } from "../../types/painter";
|
|
5
6
|
export interface TgdPainterStateOptions {
|
|
6
7
|
children: TgdPainter[];
|
|
7
8
|
color: boolean | [boolean, boolean, boolean, boolean];
|
|
@@ -10,6 +11,14 @@ export interface TgdPainterStateOptions {
|
|
|
10
11
|
cull: WebglCullOptions;
|
|
11
12
|
stencil: WebglStencilOptions;
|
|
12
13
|
name: string;
|
|
14
|
+
/**
|
|
15
|
+
* Function to execute before painting.
|
|
16
|
+
*/
|
|
17
|
+
onEnter?: TgdPainterFunction;
|
|
18
|
+
/**
|
|
19
|
+
* Function to execute after painting.
|
|
20
|
+
*/
|
|
21
|
+
onExit?: TgdPainterFunction;
|
|
13
22
|
}
|
|
14
23
|
export declare class TgdPainterState extends TgdPainterGroup {
|
|
15
24
|
private _color?;
|
|
@@ -17,6 +26,6 @@ export declare class TgdPainterState extends TgdPainterGroup {
|
|
|
17
26
|
private _depth?;
|
|
18
27
|
private _cull?;
|
|
19
28
|
private _stencil?;
|
|
20
|
-
constructor(context: TgdContext, { color, blend, depth, cull, stencil, name, children, }?: Partial<TgdPainterStateOptions>);
|
|
29
|
+
constructor(context: TgdContext, { color, blend, depth, cull, stencil, name, children, onEnter, onExit, }?: Partial<TgdPainterStateOptions>);
|
|
21
30
|
}
|
|
22
31
|
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/painter/state/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAEH,iBAAiB,EAGjB,iBAAiB,EAGjB,gBAAgB,EAEhB,mBAAmB,EAGtB,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/painter/state/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAEH,iBAAiB,EAGjB,iBAAiB,EAGjB,gBAAgB,EAEhB,mBAAmB,EAGtB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,KAAK,EAAE,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IACrD,KAAK,EAAE,iBAAiB,CAAA;IACxB,KAAK,EAAE,iBAAiB,CAAA;IACxB,IAAI,EAAE,gBAAgB,CAAA;IACtB,OAAO,EAAE,mBAAmB,CAAA;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAA;IAC5B;;OAEG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAA;CAC9B;AAED,qBAAa,eAAgB,SAAQ,eAAe;IAChD,OAAO,CAAC,MAAM,CAAC,CAAsC;IACrD,OAAO,CAAC,MAAM,CAAC,CAAmB;IAClC,OAAO,CAAC,MAAM,CAAC,CAAmB;IAClC,OAAO,CAAC,KAAK,CAAC,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAC,CAAqB;gBAGlC,OAAO,EAAE,UAAU,EACnB,EACI,KAAK,EACL,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,QAAa,EACb,OAAO,EACP,MAAM,GACT,GAAE,OAAO,CAAC,sBAAsB,CAAM;CAqE9C"}
|
|
@@ -6,66 +6,68 @@ export class TgdPainterState extends TgdPainterGroup {
|
|
|
6
6
|
_depth;
|
|
7
7
|
_cull;
|
|
8
8
|
_stencil;
|
|
9
|
-
constructor(context, { color, blend, depth, cull, stencil, name, children = [], } = {}) {
|
|
9
|
+
constructor(context, { color, blend, depth, cull, stencil, name, children = [], onEnter, onExit, } = {}) {
|
|
10
10
|
const { gl } = context;
|
|
11
|
-
const
|
|
12
|
-
const
|
|
11
|
+
const onEnterActions = [];
|
|
12
|
+
const onExitActions = [];
|
|
13
13
|
const colorMask = figureOutColorMask(color);
|
|
14
14
|
if (Array.isArray(colorMask)) {
|
|
15
|
-
|
|
15
|
+
onEnterActions.push(() => {
|
|
16
16
|
this._color = gl.getParameter(gl.COLOR_WRITEMASK);
|
|
17
17
|
gl.colorMask(...colorMask);
|
|
18
18
|
});
|
|
19
|
-
|
|
19
|
+
onExitActions.push(() => {
|
|
20
20
|
gl.colorMask(...(this._color ?? [true, true, true, true]));
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
if (blend) {
|
|
24
|
-
|
|
24
|
+
onEnterActions.push(() => {
|
|
25
25
|
this._blend = webglBlendGet(gl);
|
|
26
26
|
webglBlendSet(gl, blend);
|
|
27
27
|
});
|
|
28
|
-
|
|
28
|
+
onExitActions.push(() => {
|
|
29
29
|
if (this._blend)
|
|
30
30
|
webglBlendSet(gl, this._blend);
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
if (depth) {
|
|
34
|
-
|
|
34
|
+
onEnterActions.push(() => {
|
|
35
35
|
this._depth = webglDepthGet(gl);
|
|
36
36
|
webglDepthSet(gl, depth);
|
|
37
37
|
});
|
|
38
|
-
|
|
38
|
+
onExitActions.push(() => {
|
|
39
39
|
if (this._depth)
|
|
40
40
|
webglDepthSet(gl, this._depth);
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
if (cull) {
|
|
44
|
-
|
|
44
|
+
onEnterActions.push(() => {
|
|
45
45
|
this._cull = webglCullGet(gl);
|
|
46
46
|
webglCullSet(gl, cull);
|
|
47
47
|
});
|
|
48
|
-
|
|
48
|
+
onExitActions.push(() => {
|
|
49
49
|
if (this._cull)
|
|
50
50
|
webglCullSet(gl, this._cull);
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
if (stencil) {
|
|
54
|
-
|
|
54
|
+
onEnterActions.push(() => {
|
|
55
55
|
this._stencil = webglStencilGet(gl);
|
|
56
56
|
webglStencilSet(gl, stencil);
|
|
57
57
|
});
|
|
58
|
-
|
|
58
|
+
onExitActions.push(() => {
|
|
59
59
|
if (this._stencil)
|
|
60
60
|
webglStencilSet(gl, this._stencil);
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
super(children, {
|
|
64
|
-
onEnter(
|
|
65
|
-
onEnter
|
|
64
|
+
onEnter(time, delay) {
|
|
65
|
+
onEnter?.(time, delay);
|
|
66
|
+
onEnterActions.forEach(f => f());
|
|
66
67
|
},
|
|
67
|
-
onExit(
|
|
68
|
-
|
|
68
|
+
onExit(time, delay) {
|
|
69
|
+
onExitActions.forEach(f => f());
|
|
70
|
+
onExit?.(time, delay);
|
|
69
71
|
},
|
|
70
72
|
});
|
|
71
73
|
this.name = name ?? `State/${this.name}`;
|
|
@@ -78,4 +80,4 @@ function figureOutColorMask(color) {
|
|
|
78
80
|
return [false, false, false, false];
|
|
79
81
|
return color;
|
|
80
82
|
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFpbnRlci9zdGF0ZS9zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRTFDLE9BQU8sRUFDSCxhQUFhLEVBRWIsYUFBYSxFQUNiLGFBQWEsRUFFYixhQUFhLEVBQ2IsWUFBWSxFQUVaLFlBQVksRUFFWixlQUFlLEVBQ2YsZUFBZSxHQUNsQixNQUFNLGtCQUFrQixDQUFBO0FBcUJ6QixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxlQUFlO0lBQ3hDLE1BQU0sQ0FBdUM7SUFDN0MsTUFBTSxDQUFvQjtJQUMxQixNQUFNLENBQW9CO0lBQzFCLEtBQUssQ0FBbUI7SUFDeEIsUUFBUSxDQUFzQjtJQUV0QyxZQUNJLE9BQW1CLEVBQ25CLEVBQ0ksS0FBSyxFQUNMLEtBQUssRUFDTCxLQUFLLEVBQ0wsSUFBSSxFQUNKLE9BQU8sRUFDUCxJQUFJLEVBQ0osUUFBUSxHQUFHLEVBQUUsRUFDYixPQUFPLEVBQ1AsTUFBTSxNQUMyQixFQUFFO1FBRXZDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUE7UUFDdEIsTUFBTSxjQUFjLEdBQXNCLEVBQUUsQ0FBQTtRQUM1QyxNQUFNLGFBQWEsR0FBc0IsRUFBRSxDQUFBO1FBQzNDLE1BQU0sU0FBUyxHQUNYLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzNCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FLL0MsQ0FBQTtnQkFDRCxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUE7WUFDOUIsQ0FBQyxDQUFD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
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { WebglAttributeType, WebglUniformType } from "..";
|
|
2
|
-
export interface
|
|
2
|
+
export interface TgdCodeVariables<Type extends WebglAttributeType | WebglUniformType> {
|
|
3
3
|
[name: string]: Type;
|
|
4
4
|
}
|
|
5
|
-
export interface
|
|
6
|
-
[name: string]:
|
|
5
|
+
export interface TgdCodeFunctions {
|
|
6
|
+
[name: string]: TgdCodeBloc;
|
|
7
7
|
}
|
|
8
|
-
export type
|
|
9
|
-
export declare function isCodeBloc(v: unknown): v is
|
|
10
|
-
export declare function tgdCodeStringify(code:
|
|
11
|
-
export declare function vars<Type extends WebglAttributeType | WebglUniformType>(def:
|
|
12
|
-
export declare function funcs(def:
|
|
8
|
+
export type TgdCodeBloc = string | null | TgdCodeBloc[];
|
|
9
|
+
export declare function isCodeBloc(v: unknown): v is TgdCodeBloc;
|
|
10
|
+
export declare function tgdCodeStringify(code: TgdCodeBloc, indent?: string): string;
|
|
11
|
+
export declare function vars<Type extends WebglAttributeType | WebglUniformType>(def: TgdCodeVariables<Type>, prefix: string, comment?: string): TgdCodeBloc[];
|
|
12
|
+
export declare function funcs(def: TgdCodeFunctions | TgdCodeBloc, comment?: string): TgdCodeBloc[];
|
|
13
13
|
//# sourceMappingURL=code.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/shader/code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AAEzD,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/shader/code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AAEzD,MAAM,WAAW,gBAAgB,CAC7B,IAAI,SAAS,kBAAkB,GAAG,gBAAgB;IAElD,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;CAC9B;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,WAAW,EAAE,CAAA;AAEvD,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,WAAW,CASvD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,SAAK,GAAG,MAAM,CAWvE;AAED,wBAAgB,IAAI,CAAC,IAAI,SAAS,kBAAkB,GAAG,gBAAgB,EACnE,GAAG,EAAE,gBAAgB,CAAC,IAAI,CAAC,EAC3B,MAAM,EAAE,MAAM,EACd,OAAO,SAA6C,GACrD,WAAW,EAAE,CAQf;AAED,wBAAgB,KAAK,CACjB,GAAG,EAAE,gBAAgB,GAAG,WAAW,EACnC,OAAO,SAAmB,GAC3B,WAAW,EAAE,CAWf"}
|
package/lib/dist/shader/code.js
CHANGED
|
@@ -42,4 +42,4 @@ export function funcs(def, comment = "Util functions") {
|
|
|
42
42
|
});
|
|
43
43
|
return result;
|
|
44
44
|
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaGFkZXIvY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjQSxNQUFNLFVBQVUsVUFBVSxDQUFDLENBQVU7SUFDakMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRO1FBQUUsT0FBTyxJQUFJLENBQUE7SUFFdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUE7SUFFbkMsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFBO0lBQ3ZDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNmLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBaUIsRUFBRSxNQUFNLEdBQUcsRUFBRTtJQUMzRCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFPLEdBQUcsTUFBTSxHQUFHLElBQUksRUFBRSxDQUFBO0lBRXZELElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFFcEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxNQUFNLE1BQU0sQ0FBQTtJQUNqQyxPQUFPLElBQUk7U0FDTixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDO1NBQzdCLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUN2RCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsSUFBSSxDQUNoQixHQUEyQixFQUMzQixNQUFjLEVBQ2QsT0FBTyxHQUFHLDBDQUEwQztJQUVwRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzlCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFFakMsT0FBTztRQUNILE1BQU0sT0FBTyxFQUFFO1FBQ2YsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDO0tBQzFELENBQUE7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLEtBQUssQ0FDakIsR0FBbUMsRUFDbkMsT0FBTyxHQUFHLGdCQUFnQjtJQUUxQixJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUM7UUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7SUFFakMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUM5QixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQztRQUFFLE9BQU8sRUFBRSxDQUFBO0lBRWpDLE1BQU0sTUFBTSxHQUFrQixDQUFDLE1BQU0sT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUMvQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ2hELENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxNQUFNLENBQUE7QUFDakIsQ0FBQyJ9
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { WebglAttributeType, WebglUniformType } from "..";
|
|
2
|
-
import {
|
|
2
|
+
import { TgdCodeBloc, TgdCodeFunctions, TgdCodeVariables } from "./code";
|
|
3
3
|
/**
|
|
4
4
|
* Helper to wirte the code of a fragment Shader.
|
|
5
5
|
* @see https://registry.khronos.org/OpenGL/specs/es/3.0/GLSL_ES_Specification_3.00.pdf
|
|
6
6
|
*/
|
|
7
7
|
export declare class TgdShaderFragment {
|
|
8
8
|
precision: "lowp" | "mediump" | "highp";
|
|
9
|
-
uniforms:
|
|
10
|
-
varying:
|
|
11
|
-
outputs:
|
|
9
|
+
uniforms: TgdCodeVariables<WebglUniformType>;
|
|
10
|
+
varying: TgdCodeVariables<WebglAttributeType>;
|
|
11
|
+
outputs: TgdCodeVariables<WebglAttributeType>;
|
|
12
12
|
/**
|
|
13
13
|
* The key should be the signatureof a function
|
|
14
14
|
* (like `vec2 scale(vec2 v, float s)`)
|
|
@@ -16,15 +16,15 @@ export declare class TgdShaderFragment {
|
|
|
16
16
|
*
|
|
17
17
|
* But if the key starts with a `_`, then the content of the value is uses verbatim.
|
|
18
18
|
*/
|
|
19
|
-
functions:
|
|
20
|
-
mainCode:
|
|
19
|
+
functions: TgdCodeFunctions | TgdCodeBloc;
|
|
20
|
+
mainCode: TgdCodeBloc;
|
|
21
21
|
constructor({ precision, uniforms, outputs, varying, functions, mainCode, }?: Partial<{
|
|
22
22
|
precision: "lowp" | "mediump" | "highp";
|
|
23
|
-
uniforms:
|
|
24
|
-
outputs:
|
|
25
|
-
varying:
|
|
26
|
-
functions:
|
|
27
|
-
mainCode:
|
|
23
|
+
uniforms: TgdCodeVariables<WebglUniformType>;
|
|
24
|
+
outputs: TgdCodeVariables<WebglAttributeType>;
|
|
25
|
+
varying: TgdCodeVariables<WebglAttributeType>;
|
|
26
|
+
functions: TgdCodeFunctions | TgdCodeBloc;
|
|
27
|
+
mainCode: TgdCodeBloc;
|
|
28
28
|
}>);
|
|
29
29
|
get code(): string;
|
|
30
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fragment.d.ts","sourceRoot":"","sources":["../../src/shader/fragment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AACzD,OAAO,EACH,
|
|
1
|
+
{"version":3,"file":"fragment.d.ts","sourceRoot":"","sources":["../../src/shader/fragment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AACzD,OAAO,EACH,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAInB,MAAM,QAAQ,CAAA;AAEf;;;GAGG;AACH,qBAAa,iBAAiB;IACnB,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAY;IACnD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;IAC5C,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;IAC7C,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;IACpD;;;;;;OAMG;IACI,SAAS,EAAE,gBAAgB,GAAG,WAAW,CAAA;IACzC,QAAQ,EAAE,WAAW,CAAA;gBAEhB,EACR,SAAqB,EACrB,QAAa,EACb,OAEC,EACD,OAAY,EACZ,SAAc,EACd,QAAgD,GACnD,GAAE,OAAO,CAAC;QACP,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;QACvC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;QAC5C,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;QAC7C,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;QAC7C,SAAS,EAAE,gBAAgB,GAAG,WAAW,CAAA;QACzC,QAAQ,EAAE,WAAW,CAAA;KACxB,CAAM;IASP,IAAI,IAAI,WAaP;CACJ"}
|
|
@@ -42,4 +42,4 @@ export class TgdShaderFragment {
|
|
|
42
42
|
]);
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhZ21lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2hhZGVyL2ZyYWdtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFJSCxLQUFLLEVBQ0wsZ0JBQWdCLEVBQ2hCLElBQUksR0FDUCxNQUFNLFFBQVEsQ0FBQTtBQUVmOzs7R0FHRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFDbkIsU0FBUyxHQUFpQyxTQUFTLENBQUE7SUFDbkQsUUFBUSxDQUFvQztJQUM1QyxPQUFPLENBQXNDO0lBQzdDLE9BQU8sQ0FBc0M7SUFDcEQ7Ozs7OztPQU1HO0lBQ0ksU0FBUyxDQUFnQztJQUN6QyxRQUFRLENBQWE7SUFFNUIsWUFBWSxFQUNSLFNBQVMsR0FBRyxTQUFTLEVBQ3JCLFFBQVEsR0FBRyxFQUFFLEVBQ2IsT0FBTyxHQUFHO1FBQ04sU0FBUyxFQUFFLE1BQU07S0FDcEIsRUFDRCxPQUFPLEdBQUcsRUFBRSxFQUNaLFNBQVMsR0FBRyxFQUFFLEVBQ2QsUUFBUSxHQUFHLENBQUMsbUNBQW1DLENBQUMsTUFRL0MsRUFBRTtRQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO0lBQzVCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLGdCQUFnQixDQUFDO1lBQ3BCLGlCQUFpQjtZQUNqQixhQUFhLElBQUksQ0FBQyxTQUFTLFNBQVM7WUFDcEMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUM7WUFDakMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7WUFDM0IsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDNUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN4QixFQUFFO1lBQ0YsZUFBZTtZQUNmLElBQUksQ0FBQyxRQUFRO1lBQ2IsR0FBRztTQUNOLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSiJ9
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WebglAttributeType, WebglUniformType } from "..";
|
|
2
|
-
import {
|
|
2
|
+
import { TgdCodeBloc, TgdCodeFunctions, TgdCodeVariables } from "./code";
|
|
3
3
|
/**
|
|
4
4
|
* Helper to create a Vertex Shader.
|
|
5
5
|
*
|
|
@@ -11,18 +11,18 @@ import { CodeBloc, Functions, Variables } from "./code";
|
|
|
11
11
|
*/
|
|
12
12
|
export declare class TgdShaderVertex {
|
|
13
13
|
precision: "lowp" | "mediump" | "highp";
|
|
14
|
-
uniforms:
|
|
15
|
-
attributes:
|
|
16
|
-
varying:
|
|
17
|
-
functions:
|
|
18
|
-
mainCode:
|
|
14
|
+
uniforms: TgdCodeVariables<WebglUniformType>;
|
|
15
|
+
attributes: TgdCodeVariables<WebglAttributeType>;
|
|
16
|
+
varying: TgdCodeVariables<WebglAttributeType>;
|
|
17
|
+
functions: TgdCodeFunctions;
|
|
18
|
+
mainCode: TgdCodeBloc;
|
|
19
19
|
constructor({ precision, uniforms, attributes, varying, functions, mainCode, }?: Partial<{
|
|
20
20
|
precision: "lowp" | "mediump" | "highp";
|
|
21
|
-
uniforms:
|
|
22
|
-
attributes:
|
|
23
|
-
varying:
|
|
24
|
-
functions:
|
|
25
|
-
mainCode:
|
|
21
|
+
uniforms: TgdCodeVariables<WebglUniformType>;
|
|
22
|
+
attributes: TgdCodeVariables<WebglAttributeType>;
|
|
23
|
+
varying: TgdCodeVariables<WebglAttributeType>;
|
|
24
|
+
functions: TgdCodeFunctions;
|
|
25
|
+
mainCode: TgdCodeBloc;
|
|
26
26
|
}>);
|
|
27
27
|
get code(): string;
|
|
28
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../src/shader/vertex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AACzD,OAAO,EACH,
|
|
1
|
+
{"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../src/shader/vertex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AACzD,OAAO,EACH,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAInB,MAAM,QAAQ,CAAA;AAEf;;;;;;;;GAQG;AACH,qBAAa,eAAe;IACjB,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAY;IACnD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;IAC5C,UAAU,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;IAChD,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;IAC7C,SAAS,EAAE,gBAAgB,CAAA;IAC3B,QAAQ,EAAE,WAAW,CAAA;gBAEhB,EACR,SAAqB,EACrB,QAAa,EACb,UAAe,EACf,OAAY,EACZ,SAAc,EACd,QAAa,GAChB,GAAE,OAAO,CAAC;QACP,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;QACvC,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;QAC5C,UAAU,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;QAChD,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;QAC7C,SAAS,EAAE,gBAAgB,CAAA;QAC3B,QAAQ,EAAE,WAAW,CAAA;KACxB,CAAM;IASP,IAAI,IAAI,WAaP;CACJ"}
|
|
@@ -38,4 +38,4 @@ export class TgdShaderVertex {
|
|
|
38
38
|
]);
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NoYWRlci92ZXJ0ZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUlILEtBQUssRUFDTCxnQkFBZ0IsSUFBSSxlQUFlLEVBQ25DLElBQUksR0FDUCxNQUFNLFFBQVEsQ0FBQTtBQUVmOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFDakIsU0FBUyxHQUFpQyxTQUFTLENBQUE7SUFDbkQsUUFBUSxDQUFvQztJQUM1QyxVQUFVLENBQXNDO0lBQ2hELE9BQU8sQ0FBc0M7SUFDN0MsU0FBUyxDQUFrQjtJQUMzQixRQUFRLENBQWE7SUFFNUIsWUFBWSxFQUNSLFNBQVMsR0FBRyxTQUFTLEVBQ3JCLFFBQVEsR0FBRyxFQUFFLEVBQ2IsVUFBVSxHQUFHLEVBQUUsRUFDZixPQUFPLEdBQUcsRUFBRSxFQUNaLFNBQVMsR0FBRyxFQUFFLEVBQ2QsUUFBUSxHQUFHLEVBQUUsTUFRWixFQUFFO1FBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7UUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUE7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7SUFDNUIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNKLE9BQU8sZUFBZSxDQUFDO1lBQ25CLGlCQUFpQjtZQUNqQixhQUFhLElBQUksQ0FBQyxTQUFTLFNBQVM7WUFDcEMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUM7WUFDakMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7WUFDOUIsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDNUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN4QixFQUFFO1lBQ0YsZUFBZTtZQUNmLElBQUksQ0FBQyxRQUFRO1lBQ2IsR0FBRztTQUNOLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSiJ9
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TgdEvent } from "../event/event";
|
|
2
|
-
import { TgdProgram, TgdTexture2D, TgdTexture2DOptions, TgdContextInterface, WebglImage, WebglTexParameter } from "../types";
|
|
2
|
+
import { TgdProgram, TgdTexture2D, TgdTexture2DOptions, TgdContextInterface, WebglImage, WebglTexParameter, WebglEnumTex2DInternalFormat } from "../types";
|
|
3
3
|
export declare class TgdTexture2DImpl implements TgdTexture2D {
|
|
4
4
|
readonly context: TgdContextInterface;
|
|
5
5
|
readonly id: string;
|
|
@@ -12,6 +12,7 @@ export declare class TgdTexture2DImpl implements TgdTexture2D {
|
|
|
12
12
|
private _image;
|
|
13
13
|
private static counter;
|
|
14
14
|
constructor(context: TgdContextInterface, id: string, options?: Partial<TgdTexture2DOptions>);
|
|
15
|
+
copyTexImage2D(level?: number, internalFormat?: WebglEnumTex2DInternalFormat, x?: number, y?: number, width?: number, height?: number, border?: number): void;
|
|
15
16
|
resize(width: number, height: number): void;
|
|
16
17
|
getParameter(param: WebglTexParameter): number | boolean | null;
|
|
17
18
|
makePalette(colors: string[], colums?: number): void;
|