@tolokoban/tgd 2.0.28 → 2.0.30

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 (205) hide show
  1. package/lib/dist/camera/camera-orthographic.d.ts.map +1 -1
  2. package/lib/dist/camera/camera-orthographic.js +2 -1
  3. package/lib/dist/camera/camera-perspective.d.ts.map +1 -1
  4. package/lib/dist/camera/camera-perspective.js +4 -10
  5. package/lib/dist/canvas/gizmo/gizmo.js +2 -2
  6. package/lib/dist/canvas/landscape/landscape.js +2 -2
  7. package/lib/dist/color/color.d.ts +22 -7
  8. package/lib/dist/color/color.d.ts.map +1 -1
  9. package/lib/dist/color/color.js +59 -8
  10. package/lib/dist/color/index.d.ts +1 -0
  11. package/lib/dist/color/index.d.ts.map +1 -1
  12. package/lib/dist/color/index.js +2 -1
  13. package/lib/dist/color/utils.d.ts +12 -0
  14. package/lib/dist/color/utils.d.ts.map +1 -0
  15. package/lib/dist/color/utils.js +21 -0
  16. package/lib/dist/context/context.d.ts +14 -31
  17. package/lib/dist/context/context.d.ts.map +1 -1
  18. package/lib/dist/context/context.js +54 -69
  19. package/lib/dist/factory/mesh-glb.js +2 -2
  20. package/lib/dist/filter/hue-rotation.d.ts.map +1 -1
  21. package/lib/dist/filter/hue-rotation.js +1 -1
  22. package/lib/dist/filter/zoom.d.ts.map +1 -1
  23. package/lib/dist/filter/zoom.js +1 -1
  24. package/lib/dist/geometry/gltf.d.ts +12 -0
  25. package/lib/dist/geometry/gltf.d.ts.map +1 -0
  26. package/lib/dist/geometry/gltf.js +36 -0
  27. package/lib/dist/geometry/index.d.ts +2 -0
  28. package/lib/dist/geometry/index.d.ts.map +1 -1
  29. package/lib/dist/geometry/index.js +3 -1
  30. package/lib/dist/geometry/tools/index.d.ts +2 -0
  31. package/lib/dist/geometry/tools/index.d.ts.map +1 -0
  32. package/lib/dist/geometry/tools/index.js +2 -0
  33. package/lib/dist/geometry/tools/marching-cubes/data.d.ts +64 -0
  34. package/lib/dist/geometry/tools/marching-cubes/data.d.ts.map +1 -0
  35. package/lib/dist/geometry/tools/marching-cubes/data.js +361 -0
  36. package/lib/dist/geometry/tools/marching-cubes/index.d.ts +3 -0
  37. package/lib/dist/geometry/tools/marching-cubes/index.d.ts.map +1 -0
  38. package/lib/dist/geometry/tools/marching-cubes/index.js +3 -0
  39. package/lib/dist/geometry/tools/marching-cubes/marching-cubes.d.ts +29 -0
  40. package/lib/dist/geometry/tools/marching-cubes/marching-cubes.d.ts.map +1 -0
  41. package/lib/dist/geometry/tools/marching-cubes/marching-cubes.js +245 -0
  42. package/lib/dist/index.d.ts +3 -0
  43. package/lib/dist/index.d.ts.map +1 -1
  44. package/lib/dist/index.js +4 -1
  45. package/lib/dist/loader/binary.d.ts.map +1 -1
  46. package/lib/dist/loader/binary.js +3 -1
  47. package/lib/dist/material/face-orientation.d.ts +34 -0
  48. package/lib/dist/material/face-orientation.d.ts.map +1 -0
  49. package/lib/dist/material/face-orientation.js +68 -0
  50. package/lib/dist/material/flat.d.ts.map +1 -1
  51. package/lib/dist/material/flat.js +1 -1
  52. package/lib/dist/material/ghost.d.ts +2 -2
  53. package/lib/dist/material/ghost.d.ts.map +1 -1
  54. package/lib/dist/material/ghost.js +1 -1
  55. package/lib/dist/material/hull.d.ts +14 -1
  56. package/lib/dist/material/hull.d.ts.map +1 -1
  57. package/lib/dist/material/hull.js +18 -6
  58. package/lib/dist/material/index.d.ts +2 -0
  59. package/lib/dist/material/index.d.ts.map +1 -1
  60. package/lib/dist/material/index.js +3 -1
  61. package/lib/dist/material/material.d.ts +7 -2
  62. package/lib/dist/material/material.d.ts.map +1 -1
  63. package/lib/dist/material/material.js +9 -1
  64. package/lib/dist/material/toon.d.ts +38 -0
  65. package/lib/dist/material/toon.d.ts.map +1 -0
  66. package/lib/dist/material/toon.js +95 -0
  67. package/lib/dist/math/mat4.d.ts +1 -0
  68. package/lib/dist/math/mat4.d.ts.map +1 -1
  69. package/lib/dist/math/mat4.js +18 -1
  70. package/lib/dist/math/transfo.d.ts.map +1 -1
  71. package/lib/dist/math/transfo.js +13 -4
  72. package/lib/dist/math/vec3.js +1 -1
  73. package/lib/dist/painter/axes/axes.d.ts +4 -0
  74. package/lib/dist/painter/axes/axes.d.ts.map +1 -1
  75. package/lib/dist/painter/axes/axes.js +14 -1
  76. package/lib/dist/painter/background-with-depth/background-with-depth.d.ts.map +1 -1
  77. package/lib/dist/painter/background-with-depth/background-with-depth.js +1 -1
  78. package/lib/dist/painter/framebuffer-msaa.d.ts +87 -0
  79. package/lib/dist/painter/framebuffer-msaa.d.ts.map +1 -0
  80. package/lib/dist/painter/framebuffer-msaa.js +241 -0
  81. package/lib/dist/painter/framebuffer.js +11 -5
  82. package/lib/dist/painter/group.d.ts +9 -3
  83. package/lib/dist/painter/group.d.ts.map +1 -1
  84. package/lib/dist/painter/group.js +44 -6
  85. package/lib/dist/painter/index.d.ts +5 -1
  86. package/lib/dist/painter/index.d.ts.map +1 -1
  87. package/lib/dist/painter/index.js +6 -2
  88. package/lib/dist/painter/lines/index.d.ts +2 -0
  89. package/lib/dist/painter/lines/index.d.ts.map +1 -0
  90. package/lib/dist/painter/lines/index.js +2 -0
  91. package/lib/dist/painter/lines/lines.d.ts +34 -0
  92. package/lib/dist/painter/lines/lines.d.ts.map +1 -0
  93. package/lib/dist/painter/lines/lines.js +98 -0
  94. package/lib/dist/painter/mesh/gltf/gltf.d.ts +2 -2
  95. package/lib/dist/painter/mesh/gltf/gltf.d.ts.map +1 -1
  96. package/lib/dist/painter/mesh/gltf/gltf.js +6 -4
  97. package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
  98. package/lib/dist/painter/mesh/mesh/mesh.js +22 -16
  99. package/lib/dist/painter/node/node.d.ts +1 -1
  100. package/lib/dist/painter/node/node.d.ts.map +1 -1
  101. package/lib/dist/painter/node/node.js +1 -1
  102. package/lib/dist/painter/painter.d.ts +2 -2
  103. package/lib/dist/painter/painter.d.ts.map +1 -1
  104. package/lib/dist/painter/painter.js +2 -2
  105. package/lib/dist/painter/points-cloud/index.d.ts +2 -0
  106. package/lib/dist/painter/points-cloud/index.d.ts.map +1 -0
  107. package/lib/dist/painter/points-cloud/index.js +2 -0
  108. package/lib/dist/painter/points-cloud/points-cloud.d.ts +49 -0
  109. package/lib/dist/painter/points-cloud/points-cloud.d.ts.map +1 -0
  110. package/lib/dist/painter/points-cloud/points-cloud.js +118 -0
  111. package/lib/dist/painter/segments/capsule.d.ts +11 -0
  112. package/lib/dist/painter/segments/capsule.d.ts.map +1 -0
  113. package/lib/dist/painter/segments/capsule.js +109 -0
  114. package/lib/dist/painter/segments/segments.d.ts +22 -27
  115. package/lib/dist/painter/segments/segments.d.ts.map +1 -1
  116. package/lib/dist/painter/segments/segments.js +134 -140
  117. package/lib/dist/painter/segments.backup/index.d.ts +2 -0
  118. package/lib/dist/painter/segments.backup/index.d.ts.map +1 -0
  119. package/lib/dist/painter/segments.backup/index.js +2 -0
  120. package/lib/dist/painter/segments.backup/segments.d.ts +95 -0
  121. package/lib/dist/painter/segments.backup/segments.d.ts.map +1 -0
  122. package/lib/dist/painter/segments.backup/segments.frag +22 -0
  123. package/lib/dist/painter/segments.backup/segments.js +223 -0
  124. package/lib/dist/painter/segments.backup/segments.vert +121 -0
  125. package/lib/dist/painter/skybox/skybox.d.ts.map +1 -1
  126. package/lib/dist/painter/skybox/skybox.js +4 -3
  127. package/lib/dist/painter/state/state.d.ts.map +1 -1
  128. package/lib/dist/painter/state/state.js +1 -1
  129. package/lib/dist/painter/x-ray/index.d.ts +2 -0
  130. package/lib/dist/painter/x-ray/index.d.ts.map +1 -0
  131. package/lib/dist/painter/x-ray/index.js +2 -0
  132. package/lib/dist/painter/x-ray/x-ray.d.ts +20 -0
  133. package/lib/dist/painter/x-ray/x-ray.d.ts.map +1 -0
  134. package/lib/dist/painter/x-ray/x-ray.js +60 -0
  135. package/lib/dist/parser/gltf/gltf.d.ts +4 -4
  136. package/lib/dist/parser/gltf/gltf.d.ts.map +1 -1
  137. package/lib/dist/parser/gltf/gltf.js +29 -17
  138. package/lib/dist/program/program.js +2 -2
  139. package/lib/dist/sdf/_common.d.ts +9 -0
  140. package/lib/dist/sdf/_common.d.ts.map +1 -0
  141. package/lib/dist/sdf/_common.js +23 -0
  142. package/lib/dist/sdf/capsule.d.ts +3 -0
  143. package/lib/dist/sdf/capsule.d.ts.map +1 -0
  144. package/lib/dist/sdf/capsule.js +24 -0
  145. package/lib/dist/sdf/index.d.ts +3 -0
  146. package/lib/dist/sdf/index.d.ts.map +1 -0
  147. package/lib/dist/sdf/index.js +3 -0
  148. package/lib/dist/sdf/sphere.d.ts +3 -0
  149. package/lib/dist/sdf/sphere.d.ts.map +1 -0
  150. package/lib/dist/sdf/sphere.js +7 -0
  151. package/lib/dist/sound.d.ts +8 -0
  152. package/lib/dist/sound.d.ts.map +1 -0
  153. package/lib/dist/sound.js +43 -0
  154. package/lib/dist/texture/texture-cube.d.ts +2 -3
  155. package/lib/dist/texture/texture-cube.d.ts.map +1 -1
  156. package/lib/dist/texture/texture-cube.js +14 -19
  157. package/lib/dist/texture/texture2d.d.ts +3 -2
  158. package/lib/dist/texture/texture2d.d.ts.map +1 -1
  159. package/lib/dist/texture/texture2d.js +56 -19
  160. package/lib/dist/utils/action/camera.d.ts.map +1 -1
  161. package/lib/dist/utils/action/camera.js +1 -2
  162. package/lib/dist/utils/canvas.d.ts +5 -4
  163. package/lib/dist/utils/canvas.d.ts.map +1 -1
  164. package/lib/dist/utils/canvas.js +6 -3
  165. package/lib/dist/utils/framebuffer.d.ts +1 -0
  166. package/lib/dist/utils/framebuffer.d.ts.map +1 -1
  167. package/lib/dist/utils/framebuffer.js +19 -1
  168. package/lib/dist/vao/vao.d.ts +2 -1
  169. package/lib/dist/vao/vao.d.ts.map +1 -1
  170. package/lib/dist/vao/vao.js +23 -1
  171. package/lib/dist/wasm/code.d.ts +165 -0
  172. package/lib/dist/wasm/code.d.ts.map +1 -0
  173. package/lib/dist/wasm/code.js +605 -0
  174. package/lib/dist/wasm/flow.d.ts +31 -0
  175. package/lib/dist/wasm/flow.d.ts.map +1 -0
  176. package/lib/dist/wasm/flow.js +69 -0
  177. package/lib/dist/wasm/function.d.ts +5 -0
  178. package/lib/dist/wasm/function.d.ts.map +1 -0
  179. package/lib/dist/wasm/function.js +36 -0
  180. package/lib/dist/wasm/index.d.ts +9 -0
  181. package/lib/dist/wasm/index.d.ts.map +1 -0
  182. package/lib/dist/wasm/index.js +31 -0
  183. package/lib/dist/wasm/local.d.ts +9 -0
  184. package/lib/dist/wasm/local.d.ts.map +1 -0
  185. package/lib/dist/wasm/local.js +14 -0
  186. package/lib/dist/wasm/memory.d.ts +13 -0
  187. package/lib/dist/wasm/memory.d.ts.map +1 -0
  188. package/lib/dist/wasm/memory.js +16 -0
  189. package/lib/dist/wasm/module.d.ts +4 -0
  190. package/lib/dist/wasm/module.d.ts.map +1 -0
  191. package/lib/dist/wasm/module.js +22 -0
  192. package/lib/dist/wasm/types.d.ts +22 -0
  193. package/lib/dist/wasm/types.d.ts.map +1 -0
  194. package/lib/dist/wasm/types.js +2 -0
  195. package/lib/dist/wasm/wast.d.ts +2 -0
  196. package/lib/dist/wasm/wast.d.ts.map +1 -0
  197. package/lib/dist/wasm/wast.js +105863 -0
  198. package/lib/dist/webgl/texture/texture2d.js +3 -3
  199. package/package.json +1 -1
  200. package/lib/dist/camera/camera-node.d.ts +0 -16
  201. package/lib/dist/camera/camera-node.d.ts.map +0 -1
  202. package/lib/dist/camera/camera-node.js +0 -17
  203. package/lib/dist/painter/background-with-depth/background.d.ts +0 -55
  204. package/lib/dist/painter/background-with-depth/background.d.ts.map +0 -1
  205. package/lib/dist/painter/background-with-depth/background.js +0 -99
@@ -1,27 +1,27 @@
1
- export class TgdTextureCubeImpl {
1
+ export class TgdTextureCube {
2
2
  constructor(context, options) {
3
3
  this.context = context;
4
4
  this._width = 0;
5
5
  this._height = 0;
6
- this.numberOfImagesToLoad = 6;
7
6
  const { gl } = context;
8
7
  const texture = gl.createTexture();
9
8
  if (!texture)
10
9
  throw new Error("Unable to create a WebGLTexture!");
11
10
  this.texture = texture;
11
+ const flipY = gl.getParameter(gl.UNPACK_FLIP_Y_WEBGL);
12
12
  this.loadImage(gl.TEXTURE_CUBE_MAP_POSITIVE_X, options.imagePosX);
13
13
  this.loadImage(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, options.imageNegX);
14
14
  this.loadImage(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, options.imagePosY);
15
15
  this.loadImage(gl.TEXTURE_CUBE_MAP_NEGATIVE_Y, options.imageNegY);
16
16
  this.loadImage(gl.TEXTURE_CUBE_MAP_POSITIVE_Z, options.imagePosZ);
17
17
  this.loadImage(gl.TEXTURE_CUBE_MAP_NEGATIVE_Z, options.imageNegZ);
18
+ gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, flipY);
19
+ gl.generateMipmap(gl.TEXTURE_CUBE_MAP);
20
+ gl.texParameteri(gl.TEXTURE_CUBE_MAP, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
18
21
  }
19
22
  delete() {
20
23
  this.context.gl.deleteTexture(this.texture);
21
24
  }
22
- get ready() {
23
- return this.numberOfImagesToLoad === 0;
24
- }
25
25
  get width() {
26
26
  return this._width;
27
27
  }
@@ -32,13 +32,14 @@ export class TgdTextureCubeImpl {
32
32
  const { gl } = this.context;
33
33
  gl.bindTexture(gl.TEXTURE_CUBE_MAP, this.texture);
34
34
  }
35
+ unbind() {
36
+ const { gl } = this.context;
37
+ gl.bindTexture(gl.TEXTURE_CUBE_MAP, null);
38
+ }
35
39
  activate(unit, program, uniformName) {
36
- if (!this.ready)
37
- return;
38
- const { context, texture } = this;
39
- const { gl } = context;
40
+ const { gl } = this.context;
40
41
  gl.activeTexture(gl.TEXTURE0 + unit);
41
- gl.bindTexture(gl.TEXTURE_CUBE_MAP, texture);
42
+ this.bind();
42
43
  program.uniform1i(uniformName, unit);
43
44
  }
44
45
  loadImage(target, image) {
@@ -53,17 +54,11 @@ export class TgdTextureCubeImpl {
53
54
  else if (this._width !== width || this._height !== height) {
54
55
  throw new Error(`Images in a CubeMap must all have the same size, but we got ${this._width}×${this._height} and ${width}×${height}!`);
55
56
  }
56
- const { context, texture } = this;
57
+ const { context } = this;
57
58
  const { gl } = context;
58
- gl.bindTexture(gl.TEXTURE_CUBE_MAP, texture);
59
+ this.bind();
59
60
  gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, image instanceof Image);
60
61
  gl.texImage2D(target, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);
61
- this.numberOfImagesToLoad--;
62
- if (this.numberOfImagesToLoad === 0) {
63
- gl.generateMipmap(gl.TEXTURE_CUBE_MAP);
64
- gl.texParameteri(gl.TEXTURE_CUBE_MAP, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
65
- context.paint();
66
- }
67
62
  }
68
63
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dHVyZS1jdWJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RleHR1cmUvdGV4dHVyZS1jdWJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxrQkFBa0I7SUFPM0IsWUFDb0IsT0FHZixFQUNELE9BQThCO1FBSmQsWUFBTyxHQUFQLE9BQU8sQ0FHdEI7UUFSRyxXQUFNLEdBQUcsQ0FBQyxDQUFBO1FBQ1YsWUFBTyxHQUFHLENBQUMsQ0FBQTtRQUNYLHlCQUFvQixHQUFHLENBQUMsQ0FBQTtRQVM1QixNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUNsQyxJQUFJLENBQUMsT0FBTztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQTtRQUVqRSxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsMkJBQTJCLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pFLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNqRSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsMkJBQTJCLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pFLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FB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
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dHVyZS1jdWJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RleHR1cmUvdGV4dHVyZS1jdWJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxjQUFjO0lBTXZCLFlBQ29CLE9BR2YsRUFDRCxPQUE4QjtRQUpkLFlBQU8sR0FBUCxPQUFPLENBR3RCO1FBUEcsV0FBTSxHQUFHLENBQUMsQ0FBQTtRQUNWLFlBQU8sR0FBRyxDQUFDLENBQUE7UUFTZixNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUNsQyxJQUFJLENBQUMsT0FBTztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQTtRQUVqRSxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBO1FBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNqRSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsMkJBQTJCLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pFLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNqRSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENB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
@@ -16,7 +16,7 @@ interface TgdTexture2DStorage {
16
16
  }
17
17
  export declare class TgdTexture2D {
18
18
  private readonly context;
19
- readonly name: string;
19
+ name: string;
20
20
  readonly gl: WebGL2RenderingContext;
21
21
  readonly eventChange: TgdEvent<TgdTexture2D>;
22
22
  private _texture;
@@ -37,6 +37,7 @@ export declare class TgdTexture2D {
37
37
  private checkError;
38
38
  get glTexture(): WebGLTexture;
39
39
  bind(): void;
40
+ unbind(): void;
40
41
  loadBitmap(bmp: string | WebglImage | null | Promise<WebglImage | null>, options?: {
41
42
  level?: number;
42
43
  generateMipmap?: boolean;
@@ -54,7 +55,7 @@ export declare class TgdTexture2D {
54
55
  *
55
56
  * @param unit Unit to link the texture to
56
57
  * @param program The program that owns the uniform to update
57
- * @param uniformName The uniform that hold the texture
58
+ * @param uniformName The uniform that holds the texture
58
59
  */
59
60
  activate(unit: number, program?: TgdProgram, uniformName?: string): this;
60
61
  generateMipmap(): this;
@@ -1 +1 @@
1
- {"version":3,"file":"texture2d.d.ts","sourceRoot":"","sources":["../../src/texture/texture2d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"texture2d.d.ts","sourceRoot":"","sources":["../../src/texture/texture2d.ts"],"names":[],"mappings":"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"}
@@ -43,13 +43,12 @@ export class TgdTexture2D {
43
43
  }
44
44
  createTexture() {
45
45
  this.delete();
46
- const texture = this.gl.createTexture();
46
+ const { gl } = this;
47
+ const texture = gl.createTexture();
47
48
  if (!texture)
48
49
  throw new Error("Unable to create a WebGLTexture!");
49
- const { gl } = this;
50
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.storage.flipY);
51
- gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.storage.premultipliedAlpha);
52
50
  this._texture = texture;
51
+ this.bind();
53
52
  this.setParams(this.params);
54
53
  }
55
54
  resize(width, height) {
@@ -61,9 +60,6 @@ export class TgdTexture2D {
61
60
  this._height = height;
62
61
  storage.width = width;
63
62
  storage.height = height;
64
- this.bind();
65
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.storage.flipY);
66
- gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.storage.premultipliedAlpha);
67
63
  const { internalFormat, levels } = this.storage;
68
64
  if (internalFormat.startsWith("COMPRESSED_")) {
69
65
  // We need to load an extension for that.
@@ -71,14 +67,25 @@ export class TgdTexture2D {
71
67
  if (!extension)
72
68
  throw new Error('Your browser does not support extension "WEBGL_compressed_texture_etc" on this device!');
73
69
  }
70
+ this.bind();
71
+ gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.storage.flipY);
72
+ gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.storage.premultipliedAlpha);
74
73
  gl.texStorage2D(gl.TEXTURE_2D, levels, gl[internalFormat], width, height);
75
- this.checkError();
74
+ this.checkError(`resize(${width}, ${height})
75
+ gl.texStorage2D(
76
+ gl.TEXTURE_2D,
77
+ ${levels},
78
+ gl.${internalFormat},
79
+ ${width},
80
+ ${height}
81
+ )`);
82
+ this.unbind();
76
83
  }
77
- checkError() {
84
+ checkError(caption) {
78
85
  const { gl } = this;
79
86
  const error = gl.getError();
80
87
  if (error !== gl.NO_ERROR) {
81
- console.error(`[TgdTexture2D::${this.name}] Error:`, webglLookup(error));
88
+ console.error(`[TgdTexture2D::${this.name}] Error in ${caption}:`, webglLookup(error), this);
82
89
  }
83
90
  }
84
91
  get glTexture() {
@@ -89,6 +96,9 @@ export class TgdTexture2D {
89
96
  bind() {
90
97
  this.gl.bindTexture(this.gl.TEXTURE_2D, this.glTexture);
91
98
  }
99
+ unbind() {
100
+ this.gl.bindTexture(this.gl.TEXTURE_2D, null);
101
+ }
92
102
  loadBitmap(bmp, options = {}) {
93
103
  var _a, _b, _c;
94
104
  if (!bmp)
@@ -105,12 +115,21 @@ export class TgdTexture2D {
105
115
  this._width = bmp.width;
106
116
  this._height = bmp.height;
107
117
  this.bind();
118
+ gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.storage.flipY);
119
+ gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.storage.premultipliedAlpha);
108
120
  gl.texImage2D(gl.TEXTURE_2D, level, gl[storage.internalFormat], gl[figureOutCompatibleFormat(storage.internalFormat)], gl.UNSIGNED_BYTE, bmp);
109
- this.checkError();
121
+ this.checkError(`loadBitmap(${JSON.stringify({
122
+ width: bmp.width,
123
+ height: bmp.height,
124
+ })})\ngl.texImage2D(gl.TEXTURE_2D, ${level}, gl.${storage.internalFormat}, gl.${figureOutCompatibleFormat(storage.internalFormat)}, gl.UNSIGNED_BYTE, bmp)`);
110
125
  if (options.generateMipmap) {
111
126
  this.generateMipmap();
112
- this.checkError();
127
+ this.checkError(`loadBitmap(${JSON.stringify({
128
+ width: bmp.width,
129
+ height: bmp.height,
130
+ })})\ngl.texImage2D(gl.TEXTURE_2D, ${level}, gl.${storage.internalFormat}, gl.${figureOutCompatibleFormat(storage.internalFormat)}, gl.UNSIGNED_BYTE, bmp)\ngenerateMipmap()`);
113
131
  }
132
+ this.unbind();
114
133
  (_b = (_a = this.context).paint) === null || _b === void 0 ? void 0 : _b.call(_a);
115
134
  (_c = options.onLoad) === null || _c === void 0 ? void 0 : _c.call(options);
116
135
  this.eventChange.dispatch(this);
@@ -122,10 +141,13 @@ export class TgdTexture2D {
122
141
  } = options;
123
142
  const { gl } = this;
124
143
  this.bind();
144
+ gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, this.storage.flipY);
145
+ gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.storage.premultipliedAlpha);
125
146
  gl.texImage2D(gl.TEXTURE_2D, level, gl[internalFormat], width, height, 0, gl[format], gl.UNSIGNED_BYTE, data
126
147
  // offset
127
148
  );
128
- this.checkError();
149
+ this.checkError(`loadData(${printArray(data)}, ${JSON.stringify(options)})`);
150
+ this.unbind();
129
151
  this.eventChange.dispatch(this);
130
152
  return this;
131
153
  }
@@ -133,7 +155,7 @@ export class TgdTexture2D {
133
155
  *
134
156
  * @param unit Unit to link the texture to
135
157
  * @param program The program that owns the uniform to update
136
- * @param uniformName The uniform that hold the texture
158
+ * @param uniformName The uniform that holds the texture
137
159
  */
138
160
  activate(unit, program, uniformName) {
139
161
  const { gl } = this;
@@ -148,38 +170,47 @@ export class TgdTexture2D {
148
170
  const { gl } = this;
149
171
  this.bind();
150
172
  gl.generateMipmap(gl.TEXTURE_2D);
173
+ this.unbind();
151
174
  return this;
152
175
  }
153
176
  setParams(parameters) {
154
177
  this.bind();
155
178
  webglTextureParametersSet(this.gl, parameters);
156
179
  this.params = Object.assign(Object.assign({}, this.params), parameters);
180
+ this.unbind();
157
181
  return this;
158
182
  }
159
183
  set textureBaseLevel(value) {
160
184
  const { gl } = this;
161
185
  this.bind();
162
186
  gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_BASE_LEVEL, value);
187
+ this.unbind();
163
188
  }
164
189
  get textureBaseLevel() {
165
190
  const { gl } = this;
166
191
  this.bind();
167
- return gl.getTexParameter(gl.TEXTURE_2D, gl.TEXTURE_BASE_LEVEL);
192
+ const value = gl.getTexParameter(gl.TEXTURE_2D, gl.TEXTURE_BASE_LEVEL);
193
+ this.unbind();
194
+ return value;
168
195
  }
169
196
  set textureMaxLevel(value) {
170
197
  const { gl } = this;
171
198
  this.bind();
172
199
  gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAX_LEVEL, value);
200
+ this.unbind();
173
201
  }
174
202
  get textureMaxLevel() {
175
203
  const { gl } = this;
176
204
  this.bind();
177
- return gl.getTexParameter(gl.TEXTURE_2D, gl.TEXTURE_MAX_LEVEL);
205
+ const value = gl.getTexParameter(gl.TEXTURE_2D, gl.TEXTURE_MAX_LEVEL);
206
+ this.unbind();
207
+ return value;
178
208
  }
179
209
  getParameter(parameter) {
180
- const { gl, glTexture } = this;
181
- gl.bindTexture(gl.TEXTURE_2D, glTexture);
210
+ const { gl } = this;
211
+ this.bind();
182
212
  const value = gl.getTexParameter(gl.TEXTURE_2D, gl[parameter]);
213
+ this.unbind();
183
214
  return value;
184
215
  }
185
216
  debug(title) {
@@ -256,4 +287,10 @@ function figureOutCompatibleFormat(internalFormat) {
256
287
  }
257
288
  throw new Error(`There is no compatible format for internalFormat "${internalFormat}" and type "UNSIGNED_BYTE"!`);
258
289
  }
259
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dHVyZTJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RleHR1cmUvdGV4dHVyZTJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRWhELE9BQU8sRUFBRSxZQUFZLEVBQWlDLE1BQU0sWUFBWSxDQUFBO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDeEMsT0FBTyxFQUdILHlCQUF5QixHQUM1QixNQUFNLFlBQVksQ0FBQTtBQWdEbkIsTUFBTSxPQUFPLFlBQVk7SUFtQnJCLFlBQ3FCLE9BR2hCLEVBQ0QsT0FBc0M7UUFKckIsWUFBTyxHQUFQLE9BQU8sQ0FHdkI7UUFwQlcsZ0JBQVcsR0FBRyxJQUFJLFFBQVEsRUFBZ0IsQ0FBQTtRQUVsRCxhQUFRLEdBQXdCLElBQUksQ0FBQTtRQUNwQyxXQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFDWCxZQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFFWixXQUFNLEdBQTJCO1lBQ3JDLFNBQVMsRUFBRSxRQUFRO1lBQ25CLFNBQVMsRUFBRSxRQUFRO1lBQ25CLEtBQUssRUFBRSxRQUFRO1lBQ2YsS0FBSyxFQUFFLFFBQVE7WUFDZixLQUFLLEVBQUUsUUFBUTtTQUNsQixDQUFBO1FBV0csTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQTtRQUNaLElBQUksQ0FBQyxJQUFJLEdBQUcsYUFBYSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQTtRQUNqRCxJQUFJLENBQUMsT0FBTyxtQkFDUixLQUFLLEVBQUUsQ0FBQyxFQUNSLE1BQU0sRUFBRSxDQUFDLEVBQ1QsY0FBYyxFQUFFLE9BQU8sRUFDdkIsTUFBTSxFQUFFLENB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
290
+ function printArray(data) {
291
+ if (data.length > 10) {
292
+ return `[${data.slice(0, 10).join(", ")}, ...] (${data.length} elements)`;
293
+ }
294
+ return JSON.stringify(data);
295
+ }
296
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dHVyZTJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RleHR1cmUvdGV4dHVyZTJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRWhELE9BQU8sRUFBRSxZQUFZLEVBQWlDLE1BQU0sWUFBWSxDQUFBO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDeEMsT0FBTyxFQUdILHlCQUF5QixHQUM1QixNQUFNLFlBQVksQ0FBQTtBQWdEbkIsTUFBTSxPQUFPLFlBQVk7SUFtQnJCLFlBQ3FCLE9BR2hCLEVBQ0QsT0FBc0M7UUFKckIsWUFBTyxHQUFQLE9BQU8sQ0FHdkI7UUFwQlcsZ0JBQVcsR0FBRyxJQUFJLFFBQVEsRUFBZ0IsQ0FBQTtRQUVsRCxhQUFRLEdBQXdCLElBQUksQ0FBQTtRQUNwQyxXQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFDWCxZQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFFWixXQUFNLEdBQTJCO1lBQ3JDLFNBQVMsRUFBRSxRQUFRO1lBQ25CLFNBQVMsRUFBRSxRQUFRO1lBQ25CLEtBQUssRUFBRSxRQUFRO1lBQ2YsS0FBSyxFQUFFLFFBQVE7WUFDZixLQUFLLEVBQUUsUUFBUTtTQUNsQixDQUFBO1FBV0csTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQTtRQUNaLElBQUksQ0FBQyxJQUFJLEdBQUcsYUFBYSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQTtRQUNqRCxJQUFJLENBQUMsT0FBTyxtQkFDUixLQUFLLEVBQUUsQ0FBQyxFQUNSLE1BQU0sRUFBRSxDQUFDLEVBQ1QsY0FBYyxFQUFFLE9BQU8sRUFDdkIsTUFBTSxFQUFFLENB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
@@ -1 +1 @@
1
- {"version":3,"file":"camera.d.ts","sourceRoot":"","sources":["../../../src/utils/action/camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAKvD,wBAAgB,kCAAkC,CAC9C,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,IAiB5B,GAAG,MAAM,UAWpB"}
1
+ {"version":3,"file":"camera.d.ts","sourceRoot":"","sources":["../../../src/utils/action/camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAKvD,wBAAgB,kCAAkC,CAC9C,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,IAgB5B,GAAG,MAAM,UAWpB"}
@@ -4,7 +4,6 @@ import { tgdActionCreateTransfoInterpolation } from "./transfo.js";
4
4
  export function tgdActionCreateCameraInterpolation(camera, destination) {
5
5
  var _a, _b;
6
6
  const transfoDestination = new TgdTransfo(camera.transfo).from(destination);
7
- transfoDestination.debug();
8
7
  if (typeof destination.distance === "number")
9
8
  transfoDestination.distance = destination.distance;
10
9
  const beginZoom = camera.zoom;
@@ -20,4 +19,4 @@ export function tgdActionCreateCameraInterpolation(camera, destination) {
20
19
  camera.zoom = tgdCalcMix(beginZoom, endZoom, t);
21
20
  };
22
21
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2FjdGlvbi9jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUUvRCxNQUFNLFVBQVUsa0NBQWtDLENBQzlDLE1BQWlCLEVBQ2pCLFdBQW9DOztJQUVwQyxNQUFNLGtCQUFrQixHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDM0Usa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDMUIsSUFBSSxPQUFPLFdBQVcsQ0FBQyxRQUFRLEtBQUssUUFBUTtRQUN4QyxrQkFBa0IsQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQTtJQUN0RCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFBO0lBQzdCLE1BQU0sT0FBTyxHQUFHLE1BQUEsV0FBVyxDQUFDLElBQUksbUNBQUksU0FBUyxDQUFBO0lBQzdDLE1BQU0sTUFBTSxHQUFHLG1DQUFtQyxDQUM5QyxNQUFNLENBQUMsT0FBTyxFQUNkLEVBQUUsRUFDRixrQkFBa0IsQ0FDckIsQ0FBQTtJQUNELE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFBO0lBQzNELE1BQU0sc0JBQXNCLEdBQ3hCLE1BQUEsV0FBVyxDQUFDLG1CQUFtQixtQ0FBSSxNQUFNLENBQUMsbUJBQW1CLENBQUE7SUFFakUsT0FBTyxDQUFDLENBQVMsRUFBRSxFQUFFO1FBQ2pCLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNULElBQUksT0FBTyxXQUFXLENBQUMsbUJBQW1CLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDdEQsTUFBTSxDQUFDLG1CQUFtQixHQUFHLFVBQVUsQ0FDbkMsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixDQUFDLENBQ0osQ0FBQTtRQUNMLENBQUM7UUFDRCxNQUFNLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ25ELENBQUMsQ0FBQTtBQUNMLENBQUMifQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2FjdGlvbi9jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUUvRCxNQUFNLFVBQVUsa0NBQWtDLENBQzlDLE1BQWlCLEVBQ2pCLFdBQW9DOztJQUVwQyxNQUFNLGtCQUFrQixHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDM0UsSUFBSSxPQUFPLFdBQVcsQ0FBQyxRQUFRLEtBQUssUUFBUTtRQUN4QyxrQkFBa0IsQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQTtJQUN0RCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFBO0lBQzdCLE1BQU0sT0FBTyxHQUFHLE1BQUEsV0FBVyxDQUFDLElBQUksbUNBQUksU0FBUyxDQUFBO0lBQzdDLE1BQU0sTUFBTSxHQUFHLG1DQUFtQyxDQUM5QyxNQUFNLENBQUMsT0FBTyxFQUNkLEVBQUUsRUFDRixrQkFBa0IsQ0FDckIsQ0FBQTtJQUNELE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFBO0lBQzNELE1BQU0sc0JBQXNCLEdBQ3hCLE1BQUEsV0FBVyxDQUFDLG1CQUFtQixtQ0FBSSxNQUFNLENBQUMsbUJBQW1CLENBQUE7SUFFakUsT0FBTyxDQUFDLENBQVMsRUFBRSxFQUFFO1FBQ2pCLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNULElBQUksT0FBTyxXQUFXLENBQUMsbUJBQW1CLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDdEQsTUFBTSxDQUFDLG1CQUFtQixHQUFHLFVBQVUsQ0FDbkMsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixDQUFDLENBQ0osQ0FBQTtRQUNMLENBQUM7UUFDRCxNQUFNLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ25ELENBQUMsQ0FBQTtBQUNMLENBQUMifQ==
@@ -1,3 +1,4 @@
1
+ import { TgdColor } from "../color";
1
2
  /**
2
3
  * Helper to get a canvas with the given size.
3
4
  */
@@ -27,9 +28,9 @@ export declare function tgdCanvasCreateWithContext2D(width: number, height: numb
27
28
  * ```
28
29
  */
29
30
  export declare function tgdCanvasCreatePalette(colors: string[], colums?: number, rows?: number): HTMLCanvasElement;
30
- export declare function tgdCanvasCreateFill(width: number, height: number, fillColor?: string): HTMLCanvasElement;
31
- export declare function tgdCanvasCreateGradientHorizontal(size: number, colors: string[]): HTMLCanvasElement;
32
- export declare function tgdCanvasCreateCreateGradientvertical(size: number, colors: string[]): HTMLCanvasElement;
31
+ export declare function tgdCanvasCreateFill(width: number, height: number, fillColor?: string | TgdColor): HTMLCanvasElement;
32
+ export declare function tgdCanvasCreateGradientHorizontal(size: number, colors: Array<string | TgdColor>): HTMLCanvasElement;
33
+ export declare function tgdCanvasCreateCreateGradientvertical(size: number, colors: Array<string | TgdColor>): HTMLCanvasElement;
33
34
  /**
34
35
  * Create a canvas with a linear gradient.
35
36
  * @param width Width of the resulting canvas.
@@ -38,5 +39,5 @@ export declare function tgdCanvasCreateCreateGradientvertical(size: number, colo
38
39
  * @param directionY Y coord of the direction vector.
39
40
  * @param colors CSS colors of each step
40
41
  */
41
- export declare function tgdCanvasCreateGradient(width: number, height: number, directionX: number, directionY: number, colors: string[]): HTMLCanvasElement;
42
+ export declare function tgdCanvasCreateGradient(width: number, height: number, directionX: number, directionY: number, colors: Array<string | TgdColor>): HTMLCanvasElement;
42
43
  //# sourceMappingURL=canvas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../src/utils/canvas.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACf,iBAAiB,CAKnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,gCAAgC,GAC5C;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,GAAG,EAAE,wBAAwB,CAAA;CAAE,CAQ9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,SAAI,EAAE,IAAI,SAAI,qBAa5E;AAED,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAe,qBAM7B;AAED,wBAAgB,iCAAiC,CAC7C,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EAAE,qBAGnB;AAED,wBAAgB,qCAAqC,CACjD,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EAAE,qBAGnB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EAAE,qBAkBnB"}
1
+ {"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../src/utils/canvas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC;;GAEG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACf,iBAAiB,CAKnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,gCAAgC,GAC5C;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,GAAG,EAAE,wBAAwB,CAAA;CAAE,CAQ9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,SAAI,EAAE,IAAI,SAAI,qBAa5E;AAED,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAM,GAAG,QAAiB,qBAMxC;AAED,wBAAgB,iCAAiC,CAC7C,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,qBAGnC;AAED,wBAAgB,qCAAqC,CACjD,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,qBAGnC;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,qBAiBnC"}
@@ -1,3 +1,4 @@
1
+ import { isString } from "./../types/guards.js";
1
2
  /**
2
3
  * Helper to get a canvas with the given size.
3
4
  */
@@ -52,7 +53,7 @@ export function tgdCanvasCreatePalette(colors, colums = 0, rows = 0) {
52
53
  }
53
54
  export function tgdCanvasCreateFill(width, height, fillColor = "#000") {
54
55
  const { canvas, ctx } = tgdCanvasCreateWithContext2D(width, height);
55
- ctx.fillStyle = fillColor;
56
+ ctx.fillStyle = isString(fillColor) ? fillColor : fillColor.toString();
56
57
  ctx.fillRect(0, 0, width, height);
57
58
  return canvas;
58
59
  }
@@ -74,10 +75,12 @@ export function tgdCanvasCreateGradient(width, height, directionX, directionY, c
74
75
  const { canvas, ctx } = tgdCanvasCreateWithContext2D(width, height);
75
76
  const gradient = ctx.createLinearGradient(0, 0, width * directionX, height * directionY);
76
77
  for (let colorIndex = 0; colorIndex < colors.length; colorIndex++) {
77
- gradient.addColorStop(colorIndex / (colors.length - 1), colors[colorIndex]);
78
+ const color = colors[colorIndex];
79
+ const cssColor = isString(color) ? color : color.toString();
80
+ gradient.addColorStop(colorIndex / (colors.length - 1), cssColor);
78
81
  }
79
82
  ctx.fillStyle = gradient;
80
83
  ctx.fillRect(0, 0, width, height);
81
84
  return canvas;
82
85
  }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2NhbnZhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQzNCLEtBQWEsRUFDYixNQUFjO0lBRWQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUMvQyxNQUFNLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtJQUNwQixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtJQUN0QixPQUFPLE1BQU0sQ0FBQTtBQUNqQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxLQUFhLEVBQ2IsTUFBYyxFQUNkLFFBQTJDO0lBRTNDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDL0MsTUFBTSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7SUFDcEIsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7SUFDdEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDakQsSUFBSSxDQUFDLE9BQU87UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUE7SUFFN0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUE7QUFDbkMsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxNQUFnQixFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLENBQUM7SUFDekUsTUFBTSxLQUFLLEdBQUcsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFBO0lBQ2pE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
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2NhbnZhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFNUM7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUMzQixLQUFhLEVBQ2IsTUFBYztJQUVkLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDL0MsTUFBTSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7SUFDcEIsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7SUFDdEIsT0FBTyxNQUFNLENBQUE7QUFDakIsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSw0QkFBNEIsQ0FDeEMsS0FBYSxFQUNiLE1BQWMsRUFDZCxRQUEyQztJQUUzQyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQy9DLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO0lBQ3BCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO0lBQ3RCLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQ2pELElBQUksQ0FBQyxPQUFPO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO0lBRTdELE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxDQUFBO0FBQ25DLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBZ0IsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDO0lBQ3pFLE1BQU0sS0FBSyxHQUFHLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1B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
@@ -1,2 +1,3 @@
1
1
  export declare function webglCreateFramebuffer(gl: WebGL2RenderingContext): WebGLFramebuffer;
2
+ export declare function webglRenderbufferStorageMultisample(gl: WebGL2RenderingContext, samples: number, internalFormat: number, width: number, height: number): boolean;
2
3
  //# sourceMappingURL=framebuffer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/utils/framebuffer.ts"],"names":[],"mappings":"AAAA,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,sBAAsB,GAC3B,gBAAgB,CAKlB"}
1
+ {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/utils/framebuffer.ts"],"names":[],"mappings":"AAEA,wBAAgB,sBAAsB,CAClC,EAAE,EAAE,sBAAsB,GAC3B,gBAAgB,CAKlB;AAED,wBAAgB,mCAAmC,CAC/C,EAAE,EAAE,sBAAsB,EAC1B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,WAsCjB"}
@@ -1,7 +1,25 @@
1
+ import { webglLookup } from "./webgl.js";
1
2
  export function webglCreateFramebuffer(gl) {
2
3
  const fb = gl.createFramebuffer();
3
4
  if (!fb)
4
5
  throw new Error("Unable to create a WebGLFramebuffer!");
5
6
  return fb;
6
7
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWVidWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZnJhbWVidWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLHNCQUFzQixDQUNsQyxFQUEwQjtJQUUxQixNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtJQUNqQyxJQUFJLENBQUMsRUFBRTtRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLENBQUMsQ0FBQTtJQUVoRSxPQUFPLEVBQUUsQ0FBQTtBQUNiLENBQUMifQ==
8
+ export function webglRenderbufferStorageMultisample(gl, samples, internalFormat, width, height) {
9
+ gl.renderbufferStorageMultisample(gl.RENDERBUFFER, samples, internalFormat, width, height);
10
+ const error = gl.getError();
11
+ if (error !== gl.NO_ERROR) {
12
+ console.error(`WebGL Error in renderbufferStorageMultisample: ${webglLookup(error)} (${error})\n
13
+ samples: ${samples}
14
+ internalFormat: gl.${webglLookup(internalFormat)}
15
+ width: ${width}
16
+ height: ${height}`, webglLookup(error));
17
+ const availableSamples = gl.getInternalformatParameter(gl.RENDERBUFFER, internalFormat, gl.SAMPLES);
18
+ if (!availableSamples.includes(samples)) {
19
+ console.error(`Available samples for format gl.${webglLookup(internalFormat)} are ${JSON.stringify(availableSamples)}, but you provided ${samples}!`);
20
+ }
21
+ return false;
22
+ }
23
+ return true;
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWVidWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZnJhbWVidWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUVyQyxNQUFNLFVBQVUsc0JBQXNCLENBQ2xDLEVBQTBCO0lBRTFCLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO0lBQ2pDLElBQUksQ0FBQyxFQUFFO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO0lBRWhFLE9BQU8sRUFBRSxDQUFBO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxtQ0FBbUMsQ0FDL0MsRUFBMEIsRUFDMUIsT0FBZSxFQUNmLGNBQXNCLEVBQ3RCLEtBQWEsRUFDYixNQUFjO0lBRWQsRUFBRSxDQUFDLDhCQUE4QixDQUM3QixFQUFFLENBQUMsWUFBWSxFQUNmLE9BQU8sRUFDUCxjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sQ0FDVCxDQUFBO0lBQ0QsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQzNCLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QixPQUFPLENBQUMsS0FBSyxDQUNULGtEQUFrRCxXQUFXLENBQ3pELEtBQUssQ0FDUixLQUFLLEtBQUs7a0JBQ0wsT0FBTztxQkFDSixXQUFXLENBQUMsY0FBYyxDQUFDO2tCQUM5QixLQUFLO2tCQUNMLE1BQU0sRUFBRSxFQUNkLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FDckIsQ0FBQTtRQUNELE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUNsRCxFQUFFLENBQUMsWUFBWSxFQUNmLGNBQWMsRUFDZCxFQUFFLENBQUMsT0FBTyxDQUNiLENBQUE7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDdEMsT0FBTyxDQUFDLEtBQUssQ0FDVCxtQ0FBbUMsV0FBVyxDQUMxQyxjQUFjLENBQ2pCLFFBQVEsSUFBSSxDQUFDLFNBQVMsQ0FDbkIsZ0JBQWdCLENBQ25CLHNCQUFzQixPQUFPLEdBQUcsQ0FDcEMsQ0FBQTtRQUNMLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNoQixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUE7QUFDZixDQUFDIn0=
@@ -6,7 +6,7 @@ export declare class TgdVertexArray {
6
6
  readonly gl: WebGL2RenderingContext;
7
7
  private readonly program?;
8
8
  private readonly datasets?;
9
- private readonly elements?;
9
+ private elements?;
10
10
  readonly vao: WebGLVertexArrayObject;
11
11
  private readonly drawBuffers;
12
12
  private readonly elemBuffer;
@@ -17,6 +17,7 @@ export declare class TgdVertexArray {
17
17
  * Because datasets do not own any buffer.
18
18
  */
19
19
  updateDataset(dataset: TgdDataset): boolean;
20
+ updateElements(elements: number[]): void;
20
21
  getBuffer(index: number): TgdBuffer | undefined;
21
22
  toCode({ indent }?: Partial<{
22
23
  indent: string;
@@ -1 +1 @@
1
- {"version":3,"file":"vao.d.ts","sourceRoot":"","sources":["../../src/vao/vao.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAEpD,qBAAa,cAAc;aAOH,EAAE,EAAE,sBAAsB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAT9B,SAAgB,GAAG,EAAE,sBAAsB,CAAA;IAE3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;gBAGhC,EAAE,EAAE,sBAAsB,EACzB,OAAO,CAAC,EAAE,UAAU,YAAA,EACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,YAAA,EACjC,QAAQ,CAAC,EAAE,uBAAuB,YAAA;IA8BvD;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU;IA6BjC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAI/C,MAAM,CAAC,EAAE,MAAW,EAAE,GAAE,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAM;IAwBxD,KAAK,CAAC,OAAO,SAAmB;IAWhC,IAAI;IAIJ,MAAM;IAIN,MAAM;CAMT"}
1
+ {"version":3,"file":"vao.d.ts","sourceRoot":"","sources":["../../src/vao/vao.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAEpD,qBAAa,cAAc;aAOH,EAAE,EAAE,sBAAsB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC;IATrB,SAAgB,GAAG,EAAE,sBAAsB,CAAA;IAE3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;gBAGhC,EAAE,EAAE,sBAAsB,EACzB,OAAO,CAAC,EAAE,UAAU,YAAA,EACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,YAAA,EAC1C,QAAQ,CAAC,EAAE,uBAAuB,YAAA;IA8B9C;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,UAAU;IA6BjC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE;IAyBjC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAI/C,MAAM,CAAC,EAAE,MAAW,EAAE,GAAE,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAM;IAwBxD,KAAK,CAAC,OAAO,SAAmB;IAWhC,IAAI;IAIJ,MAAM;IAIN,MAAM;CAMT"}
@@ -63,6 +63,28 @@ export class TgdVertexArray {
63
63
  });
64
64
  return true;
65
65
  }
66
+ updateElements(elements) {
67
+ if (!this.elements) {
68
+ throw new Error("This VAO has no elements data!");
69
+ }
70
+ if (!this.elemBuffer) {
71
+ throw new Error("This VAO has no elements buffer!");
72
+ }
73
+ switch (this.elements.BYTES_PER_ELEMENT) {
74
+ case 1:
75
+ this.elements = new Uint8Array(elements);
76
+ break;
77
+ case 2:
78
+ this.elements = new Uint16Array(elements);
79
+ break;
80
+ case 4:
81
+ this.elements = new Uint32Array(elements);
82
+ break;
83
+ default:
84
+ throw new Error(`Don't know how to deal with ${this.elements.BYTES_PER_ELEMENT} bytes per element!`);
85
+ }
86
+ this.elemBuffer.bufferData({ data: this.elements });
87
+ }
66
88
  getBuffer(index) {
67
89
  return this.drawBuffers[index];
68
90
  }
@@ -110,4 +132,4 @@ export class TgdVertexArray {
110
132
  elemBuffer.delete();
111
133
  }
112
134
  }
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Zhby92YW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUt2QyxNQUFNLE9BQU8sY0FBYztJQU12QixZQUNvQixFQUEwQixFQUN6QixPQUFvQixFQUNwQixRQUFpQyxFQUNqQyxRQUFrQztRQUhuQyxPQUFFLEdBQUYsRUFBRSxDQUF3QjtRQUN6QixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQ3BCLGFBQVEsR0FBUixRQUFRLENBQXlCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBUHRDLGdCQUFXLEdBQWdCLEVBQUUsQ0FBQTtRQUM3QixlQUFVLEdBQXFCLElBQUksQ0FBQTtRQVFoRCxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtRQUNsQyxJQUFJLENBQUMsR0FBRztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQTtRQUVoRSxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQTtRQUNkLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTTtRQUVqQyxFQUFFLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN0QyxNQUFNLE1BQU0sR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtnQkFDbEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7YUFDdkIsQ0FBQyxDQUFBO1lBQ0YsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ2IsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUNyQyxPQUFPLE1BQU0sQ0FBQTtRQUNqQixDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksUUFBUSxFQUFFLENBQUM7WUFDWCxNQUFNLE1BQU0sR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksRUFBRSxRQUFRO2dCQUNkLE1BQU0sRUFBRSxzQkFBc0I7YUFDakMsQ0FBQyxDQUFBO1lBQ0YsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUE7UUFDNUIsQ0FBQztRQUNELEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxhQUFhLENBQUMsT0FBbUI7UUFDN0IsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQTtRQUN6QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDWixPQUFPLENBQUMsS0FBSyxDQUNULHFGQUFxRixDQUN4RixDQUFBO1lBQ0QsT0FBTyxLQUFLLENBQUE7UUFDaEIsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdkMsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsd0NBQXdDLENBQUMsQ0FBQTtZQUN2RCxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDZixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDWixPQUFPLEtBQUssQ0FBQTtRQUNoQixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDVixPQUFPLENBQUMsS0FBSyxDQUNULGtDQUFrQyxLQUFLLGVBQWUsQ0FDekQsQ0FBQTtZQUNELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtZQUNaLE9BQU8sS0FBSyxDQUFBO1FBQ2hCLENBQUM7UUFDRCxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ2QsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1NBQ3JCLENBQUMsQ0FBQTtRQUNGLE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFhO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQUUsTUFBTSxHQUFHLEVBQUUsS0FBa0MsRUFBRTs7UUFDcEQsTUFBTSxLQUFLLEdBQWE7WUFDcEIscUJBQXFCO1lBQ3JCLCtCQUErQjtZQUMvQixzQkFBc0IsTUFBQSxJQUFJLENBQUMsUUFBUSwwQ0FDN0IsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsU0FBUyxLQUFLLGVBQWUsRUFDbEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ2YsS0FBSztZQUNMLHNDQUFzQztZQUN0QywyQkFBMkI7U0FDOUIsQ0FBQTtRQUNELElBQUksSUFBSSxDQUFDLFFBQVE7WUFDYixLQUFLLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO2dCQUNyRCxLQUFLLENBQUMsSUFBSSxDQUNOLGVBQWUsS0FBSyxzQkFBc0IsRUFDMUMsc0JBQXNCLE9BQU8sQ0FBQyxNQUFNLFNBQVMsS0FBSyxHQUFHLEVBQ3JELHNCQUFzQixPQUFPLENBQUMsTUFBTSxTQUFTLEtBQUssUUFBUSxPQUFPLENBQUMsS0FBSyxHQUFHLEVBQzFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLElBQUksRUFBRSxDQUFDLENBQzVDLENBQUE7WUFDTCxDQUFDO1FBQ0wsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUE7UUFDL0IsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLEdBQUcsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDM0QsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCO1FBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDcEIsSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDdEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEIsS0FBSyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztnQkFDckQsT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLEtBQUssRUFBRSxDQUFDLENBQUE7WUFDekMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzlELENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDakMsQ0FBQztJQUVELE1BQU07UUFDRixNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQ2pELEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN6QixLQUFLLE1BQU0sSUFBSSxJQUFJLFdBQVc7WUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDN0MsSUFBSSxVQUFVO1lBQUUsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFBO0lBQ3ZDLENBQUM7Q0FDSiJ9
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Zhby92YW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUt2QyxNQUFNLE9BQU8sY0FBYztJQU12QixZQUNvQixFQUEwQixFQUN6QixPQUFvQixFQUNwQixRQUFpQyxFQUMxQyxRQUFrQztRQUgxQixPQUFFLEdBQUYsRUFBRSxDQUF3QjtRQUN6QixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQ3BCLGFBQVEsR0FBUixRQUFRLENBQXlCO1FBQzFDLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBUDdCLGdCQUFXLEdBQWdCLEVBQUUsQ0FBQTtRQUM3QixlQUFVLEdBQXFCLElBQUksQ0FBQTtRQVFoRCxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtRQUNsQyxJQUFJLENBQUMsR0FBRztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQTtRQUVoRSxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQTtRQUNkLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTTtRQUVqQyxFQUFFLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN0QyxNQUFNLE1BQU0sR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtnQkFDbEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7YUFDdkIsQ0FBQyxDQUFBO1lBQ0YsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ2IsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxP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