@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.
Files changed (78) hide show
  1. package/lib/dist/filter/filter.d.ts +8 -7
  2. package/lib/dist/filter/filter.d.ts.map +1 -1
  3. package/lib/dist/filter/filter.js +4 -2
  4. package/lib/dist/filter/index.d.ts +1 -0
  5. package/lib/dist/filter/index.d.ts.map +1 -1
  6. package/lib/dist/filter/index.js +2 -1
  7. package/lib/dist/filter/zoom.d.ts +10 -0
  8. package/lib/dist/filter/zoom.d.ts.map +1 -0
  9. package/lib/dist/filter/zoom.js +21 -0
  10. package/lib/dist/loader/asset.d.ts +5 -3
  11. package/lib/dist/loader/asset.d.ts.map +1 -1
  12. package/lib/dist/loader/asset.js +30 -20
  13. package/lib/dist/material/diffuse.d.ts +7 -3
  14. package/lib/dist/material/diffuse.d.ts.map +1 -1
  15. package/lib/dist/material/diffuse.js +14 -3
  16. package/lib/dist/material/ghost.d.ts +3 -3
  17. package/lib/dist/material/ghost.d.ts.map +1 -1
  18. package/lib/dist/material/ghost.js +1 -1
  19. package/lib/dist/material/hull.d.ts +24 -0
  20. package/lib/dist/material/hull.d.ts.map +1 -0
  21. package/lib/dist/material/hull.js +30 -0
  22. package/lib/dist/material/index.d.ts +1 -0
  23. package/lib/dist/material/index.d.ts.map +1 -1
  24. package/lib/dist/material/index.js +2 -1
  25. package/lib/dist/material/material.d.ts +12 -4
  26. package/lib/dist/material/material.d.ts.map +1 -1
  27. package/lib/dist/material/material.js +9 -1
  28. package/lib/dist/material/normals.d.ts +3 -3
  29. package/lib/dist/material/normals.d.ts.map +1 -1
  30. package/lib/dist/material/normals.js +1 -1
  31. package/lib/dist/material/solid.d.ts +5 -5
  32. package/lib/dist/material/solid.d.ts.map +1 -1
  33. package/lib/dist/material/solid.js +3 -3
  34. package/lib/dist/math/vec4.d.ts +3 -3
  35. package/lib/dist/math/vec4.d.ts.map +1 -1
  36. package/lib/dist/math/vec4.js +20 -1
  37. package/lib/dist/painter/filter/filter.d.ts.map +1 -1
  38. package/lib/dist/painter/filter/filter.js +8 -10
  39. package/lib/dist/painter/framebuffer.backup.d.ts +39 -0
  40. package/lib/dist/painter/framebuffer.backup.d.ts.map +1 -0
  41. package/lib/dist/painter/framebuffer.backup.js +125 -0
  42. package/lib/dist/painter/framebuffer.d.ts +18 -7
  43. package/lib/dist/painter/framebuffer.d.ts.map +1 -1
  44. package/lib/dist/painter/framebuffer.js +69 -87
  45. package/lib/dist/painter/index.d.ts +0 -1
  46. package/lib/dist/painter/index.d.ts.map +1 -1
  47. package/lib/dist/painter/index.js +1 -2
  48. package/lib/dist/painter/mesh/gltf/gltf.d.ts.map +1 -1
  49. package/lib/dist/painter/mesh/gltf/gltf.js +27 -49
  50. package/lib/dist/painter/mesh/hull/hull.d.ts +12 -0
  51. package/lib/dist/painter/mesh/hull/hull.d.ts.map +1 -0
  52. package/lib/dist/painter/mesh/hull/hull.js +11 -0
  53. package/lib/dist/painter/mesh/mesh/mesh.d.ts +1 -1
  54. package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
  55. package/lib/dist/painter/mesh/mesh/mesh.js +8 -6
  56. package/lib/dist/painter/state/state.d.ts +10 -1
  57. package/lib/dist/painter/state/state.d.ts.map +1 -1
  58. package/lib/dist/painter/state/state.js +20 -18
  59. package/lib/dist/shader/code.d.ts +8 -8
  60. package/lib/dist/shader/code.d.ts.map +1 -1
  61. package/lib/dist/shader/code.js +1 -1
  62. package/lib/dist/shader/fragment.d.ts +11 -11
  63. package/lib/dist/shader/fragment.d.ts.map +1 -1
  64. package/lib/dist/shader/fragment.js +1 -1
  65. package/lib/dist/shader/vertex.d.ts +11 -11
  66. package/lib/dist/shader/vertex.d.ts.map +1 -1
  67. package/lib/dist/shader/vertex.js +1 -1
  68. package/lib/dist/texture/texture2d.d.ts +2 -1
  69. package/lib/dist/texture/texture2d.d.ts.map +1 -1
  70. package/lib/dist/texture/texture2d.js +7 -1
  71. package/lib/dist/types/program.d.ts +3 -3
  72. package/lib/dist/types/program.d.ts.map +1 -1
  73. package/lib/dist/types/texture2d.d.ts +2 -1
  74. package/lib/dist/types/texture2d.d.ts.map +1 -1
  75. package/lib/dist/types/webgl.d.ts +12 -0
  76. package/lib/dist/types/webgl.d.ts.map +1 -1
  77. package/lib/dist/types/webgl.js +14 -1
  78. package/package.json +3 -3
@@ -4,7 +4,6 @@ export * from "./clear";
4
4
  export * from "./depth";
5
5
  export * from "./filter";
6
6
  export * from "./framebuffer";
7
- export * from "./framebuffer-old";
8
7
  export * from "./group";
9
8
  export * from "./logic";
10
9
  export * from "./mesh";
@@ -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,mBAAmB,CAAA;AACjC,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"}
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFpbnRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFFBQVEsQ0FBQTtBQUN0QixjQUFjLGNBQWMsQ0FBQTtBQUM1QixjQUFjLFNBQVMsQ0FBQTtBQUN2QixjQUFjLFNBQVMsQ0FBQTtBQUN2QixjQUFjLFVBQVUsQ0FBQTtBQUN4QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsUUFBUSxDQUFBO0FBQ3RCLGNBQWMsYUFBYSxDQUFBO0FBQzNCLGNBQWMsWUFBWSxDQUFBO0FBQzFCLGNBQWMsVUFBVSxDQUFBO0FBQ3hCLGNBQWMsZUFBZSxDQUFBIn0=
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;CAmEtE"}
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
- if (color instanceof TgdVec4) {
16
- const dataset = new TgdDataset({
17
- POSITION: "vec3",
18
- NORMAL: "vec3",
19
- });
20
- asset.setAttrib(dataset, "POSITION", meshIndex, primitiveIndex);
21
- try {
22
- asset.setAttrib(dataset, "NORMAL", meshIndex, primitiveIndex);
23
- }
24
- catch (ex) {
25
- // It seems to be impossible to retrieve normals.
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
- const dataset = new TgdDataset({
42
- POSITION: "vec3",
43
- NORMAL: "vec3",
44
- TEXCOORD_0: "vec2",
45
- });
46
- asset.setAttrib(dataset, "POSITION", meshIndex, primitiveIndex);
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2x0Zi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWludGVyL21lc2gvZ2x0Zi9nbHRmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV6QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUM1QyxPQUFPLEVBQWUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDL0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUVyQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBYXhDO0dBQ0c7QUFDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsY0FBYztJQUNsRCxZQUFZLE9BQW1CLEVBQUUsT0FBa0M7UUFDL0QsTUFBTSxFQUNGLEtBQUssRUFDTCxTQUFTLEdBQUcsQ0FBQyxFQUNiLGNBQWMsR0FBRyxDQUFDLEVBQ2xCLGVBQWUsR0FBRyxZQUFZLEdBQ2pDLEdBQUcsT0FBTyxDQUFBO1FBQ1gsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1FBQ3BFLE1BQU0sUUFBUSxHQUFHLGVBQWUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUE7UUFDM0MsSUFBSSxjQUFjLEdBQUcsS0FBSyxDQUFBO1FBQzFCLElBQUksS0FBSyxZQUFZLE9BQU8sRUFBRSxDQUFDO1lBQzNCLE1BQU0sT0FBTyxHQUFHLElBQUksVUFBVSxDQUFDO2dCQUMzQixRQUFRLEVBQUUsTUFBTTtnQkFDaEIsTUFBTSxFQUFFLE1BQU07YUFDakIsQ0FBQyxDQUFBO1lBQ0YsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMs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
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;AAE1C,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;IAoDlC,kBAAkB,IAAI;QAClB,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtB,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;KACzB;IA4BD,SAAgB,KAAK,aAuBpB;IAED,MAAM,IAAI,IAAI;CAGjB"}
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWludGVyL21lc2gvbWVzaC9tZXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRzVDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBUTFDO0dBQ0c7QUFDSCxNQUFNLE9BQU8sY0FDVCxTQUFRLFVBQVU7SUFnQks7SUFiaEIsbUJBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUMxQixRQUFRLENBQWE7SUFFcEIsR0FBRyxDQUFZO0lBQ2YsR0FBRyxDQUFnQjtJQUNuQixZQUFZLENBQVE7SUFDcEIsS0FBSyxDQUFRO0lBQ2IsUUFBUSxDQUFhO0lBQ3JCLFFBQVEsR0FBVyxDQUFDLENBQUE7SUFDN0IsT0FBTyxHQUFtQixJQUFJLENBQUE7SUFDOUIsT0FBTyxHQUFtQixJQUFJLENBQUE7SUFFdEMsWUFDdUIsT0FBbUIsRUFDdEMsT0FBOEI7UUFFOUIsS0FBSyxFQUFFLENBQUE7UUFIWSxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBSXRDLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxRQUFRO1lBQ1QsT0FBTyxRQUFRLENBQUMsUUFBUSxLQUFLLFFBQVE7Z0JBQ2pDLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUTtnQkFDbkIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3ZDLE1BQU0sSUFBSSxHQUFHLElBQUksZUFBZSxDQUFDO1lBQzdCLFFBQVEsRUFBRTtnQkFDTixnQkFBZ0IsRUFBRSxNQUFNO2dCQUN4QixrQkFBa0IsRUFBRSxNQUFNO2dCQUMxQixtQkFBbUIsRUFBRSxNQUFNO2dCQUMzQixHQUFHLFFBQVEsQ0FBQyxRQUFRO2FBQ3ZCO1lBQ0QsVUFBVSxFQUFFO2dCQUNSLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFLE1BQU07Z0JBQzlCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU07Z0JBQzVCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU07YUFDM0I7WUFDRCxPQUFPLEVBQUUsUUFBUSxDQUFDLFFBQVE7WUFDMUIsU0FBUyxFQUFFO2dCQUNQLHNCQUFzQixFQUFFLFFBQVEsQ0FBQyxnQkFBZ0I7YUFDcEQ7WUFDRCxRQUFRLEVBQUU7Z0JBQ04sdUZBQXVGO2dCQUN2RixrQkFBa0I7YUFDckI7U0FDSixDQUFDLENBQUMsSUFBSSxDQUFBO1FBQ1AsTUFBTSxJQUFJLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQztZQUMvQixRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7WUFDM0IsT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRTtZQUM5QixPQUFPLEVBQUUsUUFBUSxDQUFDLFFBQVE7WUFDMUIsU0FBUyxFQUFFO2dCQUNQLHNCQUFzQixFQUFFLFFBQVEsQ0FBQyxrQkFBa0I7YUFDdEQ7WUFDRCxRQUFRLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQztTQUM3QyxDQUFDLENBQUMsSUFBSSxDQUFBO1FBQ1AsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDaEMsSUFBSTtZQUNKLElBQUk7U0FDUCxDQUFDLENBQUE7UUFDRixHQUFHLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDWCxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQTtRQUNkLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3hFLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQTtRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUE7UUFDM0IsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ25ELENBQUM7SUFFRCxrQkFBa0I7UUFJZCxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQy9CLE9BQU87Z0JBQ0gsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPO2dCQUNqQixHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU87YUFDcEIsQ0FBQTtRQUNMLENBQUM7UUFFRCxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQTtRQUNqQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JELE1BQU0sR0FBRyxHQUFHLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDeEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDNUIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNqRCxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3ZCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7WUFDdkIsTUFBTSxDQUFDLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUN2QixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUMxQixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUMxQixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUMxQixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUMxQixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUMxQixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUM5QixDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUE7UUFDbEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUE7UUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQTtJQUN2QixDQUFDO0lBRWUsS0FBSyxHQUFHLEdBQUcsRUFBRTtRQUN6QixNQUFNLEVBQ0YsT0FBTyxFQUNQLEdBQUcsRUFDSCxRQUFRLEVBQ1IsUUFBUSxFQUNSLFFBQVEsRUFDUixLQUFLLEVBQ0wsbUJBQW1CLEVBQUUsYUFBYSxHQUNyQyxHQUFHLElBQUksQ0FBQTtRQUNSLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQzlCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUNULFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDekIsR0FBRyxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLGFBQWEsQ0FBQyxDQUFBO1FBQ3ZELEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUE7UUFDbEUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBQ3BFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDZixJQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUMxRCxDQUFDO2FBQU0sQ0FBQztZQUNKLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUNyQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNyQixDQUFDLENBQUE7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNyQixDQUFDO0NBQ0oifQ==
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;AAEzB,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;CACf;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,GAChB,GAAE,OAAO,CAAC,sBAAsB,CAAM;CAmE9C"}
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 onEnter = [];
12
- const onExit = [];
11
+ const onEnterActions = [];
12
+ const onExitActions = [];
13
13
  const colorMask = figureOutColorMask(color);
14
14
  if (Array.isArray(colorMask)) {
15
- onEnter.push(() => {
15
+ onEnterActions.push(() => {
16
16
  this._color = gl.getParameter(gl.COLOR_WRITEMASK);
17
17
  gl.colorMask(...colorMask);
18
18
  });
19
- onExit.push(() => {
19
+ onExitActions.push(() => {
20
20
  gl.colorMask(...(this._color ?? [true, true, true, true]));
21
21
  });
22
22
  }
23
23
  if (blend) {
24
- onEnter.push(() => {
24
+ onEnterActions.push(() => {
25
25
  this._blend = webglBlendGet(gl);
26
26
  webglBlendSet(gl, blend);
27
27
  });
28
- onExit.push(() => {
28
+ onExitActions.push(() => {
29
29
  if (this._blend)
30
30
  webglBlendSet(gl, this._blend);
31
31
  });
32
32
  }
33
33
  if (depth) {
34
- onEnter.push(() => {
34
+ onEnterActions.push(() => {
35
35
  this._depth = webglDepthGet(gl);
36
36
  webglDepthSet(gl, depth);
37
37
  });
38
- onExit.push(() => {
38
+ onExitActions.push(() => {
39
39
  if (this._depth)
40
40
  webglDepthSet(gl, this._depth);
41
41
  });
42
42
  }
43
43
  if (cull) {
44
- onEnter.push(() => {
44
+ onEnterActions.push(() => {
45
45
  this._cull = webglCullGet(gl);
46
46
  webglCullSet(gl, cull);
47
47
  });
48
- onExit.push(() => {
48
+ onExitActions.push(() => {
49
49
  if (this._cull)
50
50
  webglCullSet(gl, this._cull);
51
51
  });
52
52
  }
53
53
  if (stencil) {
54
- onEnter.push(() => {
54
+ onEnterActions.push(() => {
55
55
  this._stencil = webglStencilGet(gl);
56
56
  webglStencilSet(gl, stencil);
57
57
  });
58
- onExit.push(() => {
58
+ onExitActions.push(() => {
59
59
  if (this._stencil)
60
60
  webglStencilSet(gl, this._stencil);
61
61
  });
62
62
  }
63
63
  super(children, {
64
- onEnter(_time, _delay) {
65
- onEnter.forEach(f => f());
64
+ onEnter(time, delay) {
65
+ onEnter?.(time, delay);
66
+ onEnterActions.forEach(f => f());
66
67
  },
67
- onExit(_time, _delay) {
68
- onExit.forEach(f => f());
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFpbnRlci9zdGF0ZS9zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRTFDLE9BQU8sRUFDSCxhQUFhLEVBRWIsYUFBYSxFQUNiLGFBQWEsRUFFYixhQUFhLEVBQ2IsWUFBWSxFQUVaLFlBQVksRUFFWixlQUFlLEVBQ2YsZUFBZSxHQUNsQixNQUFNLGtCQUFrQixDQUFBO0FBWXpCLE1BQU0sT0FBTyxlQUFnQixTQUFRLGVBQWU7SUFDeEMsTUFBTSxDQUF1QztJQUM3QyxNQUFNLENBQW9CO0lBQzFCLE1BQU0sQ0FBb0I7SUFDMUIsS0FBSyxDQUFtQjtJQUN4QixRQUFRLENBQXNCO0lBRXRDLFlBQ0ksT0FBbUIsRUFDbkIsRUFDSSxLQUFLLEVBQ0wsS0FBSyxFQUNMLEtBQUssRUFDTCxJQUFJLEVBQ0osT0FBTyxFQUNQLElBQUksRUFDSixRQUFRLEdBQUcsRUFBRSxNQUNvQixFQUFFO1FBRXZDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUE7UUFDdEIsTUFBTSxPQUFPLEdBQXNCLEVBQUUsQ0FBQTtRQUNyQyxNQUFNLE1BQU0sR0FBc0IsRUFBRSxDQUFBO1FBQ3BDLE1BQU0sU0FBUyxHQUNYLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUsvQyxDQUFBO2dCQUNELEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQTtZQUM5QixDQUFDLENBQUMsQ0FBQTtZQUNGLE1BQU0sQ0FBQyxJ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
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFpbnRlci9zdGF0ZS9zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRTFDLE9BQU8sRUFDSCxhQUFhLEVBRWIsYUFBYSxFQUNiLGFBQWEsRUFFYixhQUFhLEVBQ2IsWUFBWSxFQUVaLFlBQVksRUFFWixlQUFlLEVBQ2YsZUFBZSxHQUNsQixNQUFNLGtCQUFrQixDQUFBO0FBcUJ6QixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxlQUFlO0lBQ3hDLE1BQU0sQ0FBdUM7SUFDN0MsTUFBTSxDQUFvQjtJQUMxQixNQUFNLENBQW9CO0lBQzFCLEtBQUssQ0FBbUI7SUFDeEIsUUFBUSxDQUFzQjtJQUV0QyxZQUNJLE9BQW1CLEVBQ25CLEVBQ0ksS0FBSyxFQUNMLEtBQUssRUFDTCxLQUFLLEVBQ0wsSUFBSSxFQUNKLE9BQU8sRUFDUCxJQUFJLEVBQ0osUUFBUSxHQUFHLEVBQUUsRUFDYixPQUFPLEVBQ1AsTUFBTSxNQUMyQixFQUFFO1FBRXZDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUE7UUFDdEIsTUFBTSxjQUFjLEdBQXNCLEVBQUUsQ0FBQTtRQUM1QyxNQUFNLGFBQWEsR0FBc0IsRUFBRSxDQUFBO1FBQzNDLE1BQU0sU0FBUyxHQUNYLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzNCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FLL0MsQ0FBQTtnQkFDRCxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUE7WUFDOUIsQ0FBQyxDQUFDLENBQUE7WUFDRixhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDcEIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM5RCxDQUFDLENBQUMsQ0FBQTtRQUNOLENBQUM7UUFDRCxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1IsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFBO2dCQUMvQixhQUFhLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBQzVCLENBQUMsQ0FBQyxDQUFBO1lBQ0YsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksSUFBSSxDQUFDLE1BQU07b0JBQUUsYUFBYSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDbkQsQ0FBQyxDQUFDLENBQUE7UUFDTixDQUFDO1FBQ0QsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNSLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQTtnQkFDL0IsYUFBYSxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQTtZQUM1QixDQUFDLENBQUMsQ0FBQTtZQUNGLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNwQixJQUFJLElBQUksQ0FBQyxNQUFNO29CQUFFLGFBQWEsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1lBQ25ELENBQUMsQ0FBQyxDQUFBO1FBQ04sQ0FBQztRQUNELElBQUksSUFBSSxFQUFFLENBQUM7WUFDUCxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7Z0JBQzdCLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFDMUIsQ0FBQyxDQUFDLENBQUE7WUFDRixhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDcEIsSUFBSSxJQUFJLENBQUMsS0FBSztvQkFBRSxZQUFZLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUNoRCxDQUFDLENBQUMsQ0FBQTtRQUNOLENBQUM7UUFDRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFBO2dCQUNuQyxlQUFlLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFBO1lBQ2hDLENBQUMsQ0FBQyxDQUFBO1lBQ0YsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVE7b0JBQUUsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDekQsQ0FBQyxDQUFDLENBQUE7UUFDTixDQUFDO1FBQ0QsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUNaLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSztnQkFDZixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUE7Z0JBQ3RCLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ3BDLENBQUM7WUFDRCxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUs7Z0JBQ2QsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7Z0JBQy9CLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQTtZQUN6QixDQUFDO1NBQ0osQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksU0FBUyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUMsQ0FBQztDQUNKO0FBRUQsU0FBUyxrQkFBa0IsQ0FDdkIsS0FBaUU7SUFFakUsSUFBSSxLQUFLLEtBQUssSUFBSTtRQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNuRCxJQUFJLEtBQUssS0FBSyxLQUFLO1FBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ3hELE9BQU8sS0FBSyxDQUFBO0FBQ2hCLENBQUMifQ==
@@ -1,13 +1,13 @@
1
1
  import { WebglAttributeType, WebglUniformType } from "..";
2
- export interface Variables<Type extends WebglAttributeType | WebglUniformType> {
2
+ export interface TgdCodeVariables<Type extends WebglAttributeType | WebglUniformType> {
3
3
  [name: string]: Type;
4
4
  }
5
- export interface Functions {
6
- [name: string]: CodeBloc;
5
+ export interface TgdCodeFunctions {
6
+ [name: string]: TgdCodeBloc;
7
7
  }
8
- export type CodeBloc = string | null | CodeBloc[];
9
- export declare function isCodeBloc(v: unknown): v is CodeBloc;
10
- export declare function tgdCodeStringify(code: CodeBloc, indent?: string): string;
11
- export declare function vars<Type extends WebglAttributeType | WebglUniformType>(def: Variables<Type>, prefix: string, comment?: string): CodeBloc[];
12
- export declare function funcs(def: Functions | CodeBloc, comment?: string): CodeBloc[];
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,SAAS,CAAC,IAAI,SAAS,kBAAkB,GAAG,gBAAgB;IACzE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,SAAS;IACtB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;CAC3B;AAED,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAA;AAEjD,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,QAAQ,CASpD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAK,GAAG,MAAM,CAWpE;AAED,wBAAgB,IAAI,CAAC,IAAI,SAAS,kBAAkB,GAAG,gBAAgB,EACnE,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,EACpB,MAAM,EAAE,MAAM,EACd,OAAO,SAA6C,GACrD,QAAQ,EAAE,CAQZ;AAED,wBAAgB,KAAK,CACjB,GAAG,EAAE,SAAS,GAAG,QAAQ,EACzB,OAAO,SAAmB,GAC3B,QAAQ,EAAE,CAWZ"}
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"}
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaGFkZXIvY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQSxNQUFNLFVBQVUsVUFBVSxDQUFDLENBQVU7SUFDakMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRO1FBQUUsT0FBTyxJQUFJLENBQUE7SUFFdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUE7SUFFbkMsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFBO0lBQ3ZDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNmLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBYyxFQUFFLE1BQU0sR0FBRyxFQUFFO0lBQ3hELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUTtRQUFFLE9BQU8sR0FBRyxNQUFNLEdBQUcsSUFBSSxFQUFFLENBQUE7SUFFdkQsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLEVBQUUsQ0FBQTtJQUVwQixNQUFNLFNBQVMsR0FBRyxHQUFHLE1BQU0sTUFBTSxDQUFBO0lBQ2pDLE9BQU8sSUFBSTtTQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUM7U0FDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztTQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDbkIsQ0FBQztBQUVELE1BQU0sVUFBVSxJQUFJLENBQ2hCLEdBQW9CLEVBQ3BCLE1BQWMsRUFDZCxPQUFPLEdBQUcsMENBQTBDO0lBRXBELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDOUIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxPQUFPLEVBQUUsQ0FBQTtJQUVqQyxPQUFPO1FBQ0gsTUFBTSxPQUFPLEVBQUU7UUFDZixHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxHQUFHLENBQUM7S0FDMUQsQ0FBQTtBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsS0FBSyxDQUNqQixHQUF5QixFQUN6QixPQUFPLEdBQUcsZ0JBQWdCO0lBRTFCLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQztRQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUVqQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzlCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFFakMsTUFBTSxNQUFNLEdBQWUsQ0FBQyxNQUFNLE9BQU8sRUFBRSxDQUFDLENBQUE7SUFDNUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUNoRCxDQUFDLENBQUMsQ0FBQTtJQUNGLE9BQU8sTUFBTSxDQUFBO0FBQ2pCLENBQUMifQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaGFkZXIvY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjQSxNQUFNLFVBQVUsVUFBVSxDQUFDLENBQVU7SUFDakMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRO1FBQUUsT0FBTyxJQUFJLENBQUE7SUFFdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUE7SUFFbkMsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFBO0lBQ3ZDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNmLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBaUIsRUFBRSxNQUFNLEdBQUcsRUFBRTtJQUMzRCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFPLEdBQUcsTUFBTSxHQUFHLElBQUksRUFBRSxDQUFBO0lBRXZELElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFFcEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxNQUFNLE1BQU0sQ0FBQTtJQUNqQyxPQUFPLElBQUk7U0FDTixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDO1NBQzdCLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUN2RCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsSUFBSSxDQUNoQixHQUEyQixFQUMzQixNQUFjLEVBQ2QsT0FBTyxHQUFHLDBDQUEwQztJQUVwRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzlCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFFakMsT0FBTztRQUNILE1BQU0sT0FBTyxFQUFFO1FBQ2YsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDO0tBQzFELENBQUE7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLEtBQUssQ0FDakIsR0FBbUMsRUFDbkMsT0FBTyxHQUFHLGdCQUFnQjtJQUUxQixJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUM7UUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7SUFFakMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUM5QixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQztRQUFFLE9BQU8sRUFBRSxDQUFBO0lBRWpDLE1BQU0sTUFBTSxHQUFrQixDQUFDLE1BQU0sT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUMvQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ2hELENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxNQUFNLENBQUE7QUFDakIsQ0FBQyJ9
@@ -1,14 +1,14 @@
1
1
  import { WebglAttributeType, WebglUniformType } from "..";
2
- import { CodeBloc, Functions, Variables } from "./code";
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: Variables<WebglUniformType>;
10
- varying: Variables<WebglAttributeType>;
11
- outputs: Variables<WebglAttributeType>;
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: Functions | CodeBloc;
20
- mainCode: CodeBloc;
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: Variables<WebglUniformType>;
24
- outputs: Variables<WebglAttributeType>;
25
- varying: Variables<WebglAttributeType>;
26
- functions: Functions | CodeBloc;
27
- mainCode: CodeBloc;
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,QAAQ,EACR,SAAS,EACT,SAAS,EAIZ,MAAM,QAAQ,CAAA;AAEf;;;GAGG;AACH,qBAAa,iBAAiB;IACnB,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAY;IACnD,QAAQ,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA;IACrC,OAAO,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;IACtC,OAAO,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;IAC7C;;;;;;OAMG;IACI,SAAS,EAAE,SAAS,GAAG,QAAQ,CAAA;IAC/B,QAAQ,EAAE,QAAQ,CAAA;gBAEb,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,SAAS,CAAC,gBAAgB,CAAC,CAAA;QACrC,OAAO,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;QACtC,OAAO,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;QACtC,SAAS,EAAE,SAAS,GAAG,QAAQ,CAAA;QAC/B,QAAQ,EAAE,QAAQ,CAAA;KACrB,CAAM;IASP,IAAI,IAAI,WAaP;CACJ"}
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhZ21lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2hhZGVyL2ZyYWdtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFJSCxLQUFLLEVBQ0wsZ0JBQWdCLEVBQ2hCLElBQUksR0FDUCxNQUFNLFFBQVEsQ0FBQTtBQUVmOzs7R0FHRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFDbkIsU0FBUyxHQUFpQyxTQUFTLENBQUE7SUFDbkQsUUFBUSxDQUE2QjtJQUNyQyxPQUFPLENBQStCO0lBQ3RDLE9BQU8sQ0FBK0I7SUFDN0M7Ozs7OztPQU1HO0lBQ0ksU0FBUyxDQUFzQjtJQUMvQixRQUFRLENBQVU7SUFFekIsWUFBWSxFQUNSLFNBQVMsR0FBRyxTQUFTLEVBQ3JCLFFBQVEsR0FBRyxFQUFFLEVBQ2IsT0FBTyxHQUFHO1FBQ04sU0FBUyxFQUFFLE1BQU07S0FDcEIsRUFDRCxPQUFPLEdBQUcsRUFBRSxFQUNaLFNBQVMsR0FBRyxFQUFFLEVBQ2QsUUFBUSxHQUFHLENBQUMsbUNBQW1DLENBQUMsTUFRL0MsRUFBRTtRQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO0lBQzVCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLGdCQUFnQixDQUFDO1lBQ3BCLGlCQUFpQjtZQUNqQixhQUFhLElBQUksQ0FBQyxTQUFTLFNBQVM7WUFDcEMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUM7WUFDakMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7WUFDM0IsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDNUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN4QixFQUFFO1lBQ0YsZUFBZTtZQUNmLElBQUksQ0FBQyxRQUFRO1lBQ2IsR0FBRztTQUNOLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSiJ9
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhZ21lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2hhZGVyL2ZyYWdtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFJSCxLQUFLLEVBQ0wsZ0JBQWdCLEVBQ2hCLElBQUksR0FDUCxNQUFNLFFBQVEsQ0FBQTtBQUVmOzs7R0FHRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFDbkIsU0FBUyxHQUFpQyxTQUFTLENBQUE7SUFDbkQsUUFBUSxDQUFvQztJQUM1QyxPQUFPLENBQXNDO0lBQzdDLE9BQU8sQ0FBc0M7SUFDcEQ7Ozs7OztPQU1HO0lBQ0ksU0FBUyxDQUFnQztJQUN6QyxRQUFRLENBQWE7SUFFNUIsWUFBWSxFQUNSLFNBQVMsR0FBRyxTQUFTLEVBQ3JCLFFBQVEsR0FBRyxFQUFFLEVBQ2IsT0FBTyxHQUFHO1FBQ04sU0FBUyxFQUFFLE1BQU07S0FDcEIsRUFDRCxPQUFPLEdBQUcsRUFBRSxFQUNaLFNBQVMsR0FBRyxFQUFFLEVBQ2QsUUFBUSxHQUFHLENBQUMsbUNBQW1DLENBQUMsTUFRL0MsRUFBRTtRQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO0lBQzVCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLGdCQUFnQixDQUFDO1lBQ3BCLGlCQUFpQjtZQUNqQixhQUFhLElBQUksQ0FBQyxTQUFTLFNBQVM7WUFDcEMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUM7WUFDakMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7WUFDM0IsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDNUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN4QixFQUFFO1lBQ0YsZUFBZTtZQUNmLElBQUksQ0FBQyxRQUFRO1lBQ2IsR0FBRztTQUNOLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSiJ9
@@ -1,5 +1,5 @@
1
1
  import { WebglAttributeType, WebglUniformType } from "..";
2
- import { CodeBloc, Functions, Variables } from "./code";
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: Variables<WebglUniformType>;
15
- attributes: Variables<WebglAttributeType>;
16
- varying: Variables<WebglAttributeType>;
17
- functions: Functions;
18
- mainCode: CodeBloc;
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: Variables<WebglUniformType>;
22
- attributes: Variables<WebglAttributeType>;
23
- varying: Variables<WebglAttributeType>;
24
- functions: Functions;
25
- mainCode: CodeBloc;
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,QAAQ,EACR,SAAS,EACT,SAAS,EAIZ,MAAM,QAAQ,CAAA;AAEf;;;;;;;;GAQG;AACH,qBAAa,eAAe;IACjB,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAY;IACnD,QAAQ,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA;IACrC,UAAU,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;IACzC,OAAO,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;IACtC,SAAS,EAAE,SAAS,CAAA;IACpB,QAAQ,EAAE,QAAQ,CAAA;gBAEb,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,SAAS,CAAC,gBAAgB,CAAC,CAAA;QACrC,UAAU,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;QACzC,OAAO,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;QACtC,SAAS,EAAE,SAAS,CAAA;QACpB,QAAQ,EAAE,QAAQ,CAAA;KACrB,CAAM;IASP,IAAI,IAAI,WAaP;CACJ"}
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NoYWRlci92ZXJ0ZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUlILEtBQUssRUFDTCxnQkFBZ0IsSUFBSSxlQUFlLEVBQ25DLElBQUksR0FDUCxNQUFNLFFBQVEsQ0FBQTtBQUVmOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFDakIsU0FBUyxHQUFpQyxTQUFTLENBQUE7SUFDbkQsUUFBUSxDQUE2QjtJQUNyQyxVQUFVLENBQStCO0lBQ3pDLE9BQU8sQ0FBK0I7SUFDdEMsU0FBUyxDQUFXO0lBQ3BCLFFBQVEsQ0FBVTtJQUV6QixZQUFZLEVBQ1IsU0FBUyxHQUFHLFNBQVMsRUFDckIsUUFBUSxHQUFHLEVBQUUsRUFDYixVQUFVLEdBQUcsRUFBRSxFQUNmLE9BQU8sR0FBRyxFQUFFLEVBQ1osU0FBUyxHQUFHLEVBQUUsRUFDZCxRQUFRLEdBQUcsRUFBRSxNQVFaLEVBQUU7UUFDSCxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQTtRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQTtRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtJQUM1QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osT0FBTyxlQUFlLENBQUM7WUFDbkIsaUJBQWlCO1lBQ2pCLGFBQWEsSUFBSSxDQUFDLFNBQVMsU0FBUztZQUNwQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQztZQUNqQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztZQUM5QixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztZQUM1QixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3hCLEVBQUU7WUFDRixlQUFlO1lBQ2YsSUFBSSxDQUFDLFFBQVE7WUFDYixHQUFHO1NBQ04sQ0FBQyxDQUFBO0lBQ04sQ0FBQztDQUNKIn0=
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;