@tolokoban/tgd 2.0.18 → 2.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/lib/dist/buffer/buffer.d.ts +5 -2
  2. package/lib/dist/buffer/buffer.d.ts.map +1 -1
  3. package/lib/dist/buffer/buffer.js +14 -14
  4. package/lib/dist/camera/camera-node.d.ts +2 -2
  5. package/lib/dist/camera/camera-node.d.ts.map +1 -1
  6. package/lib/dist/camera/camera-node.js +4 -5
  7. package/lib/dist/camera/camera-orthographic.d.ts.map +1 -1
  8. package/lib/dist/camera/camera-orthographic.js +14 -12
  9. package/lib/dist/camera/camera-perspective.d.ts.map +1 -1
  10. package/lib/dist/camera/camera-perspective.js +20 -38
  11. package/lib/dist/camera/camera.d.ts +9 -56
  12. package/lib/dist/camera/camera.d.ts.map +1 -1
  13. package/lib/dist/camera/camera.js +50 -279
  14. package/lib/dist/camera/index.d.ts +0 -1
  15. package/lib/dist/camera/index.d.ts.map +1 -1
  16. package/lib/dist/camera/index.js +1 -2
  17. package/lib/dist/canvas/gizmo/gizmo.d.ts.map +1 -1
  18. package/lib/dist/canvas/gizmo/gizmo.js +72 -78
  19. package/lib/dist/canvas/gizmo/painter/tips.d.ts +0 -1
  20. package/lib/dist/canvas/gizmo/painter/tips.d.ts.map +1 -1
  21. package/lib/dist/canvas/gizmo/painter/tips.js +38 -36
  22. package/lib/dist/canvas/landscape/landscape.js +4 -11
  23. package/lib/dist/code/color.d.ts +12 -0
  24. package/lib/dist/code/color.d.ts.map +1 -0
  25. package/lib/dist/code/color.js +26 -0
  26. package/lib/dist/code/consts.d.ts +16 -0
  27. package/lib/dist/code/consts.d.ts.map +1 -0
  28. package/lib/dist/code/consts.js +20 -0
  29. package/lib/dist/code/coords.d.ts +46 -0
  30. package/lib/dist/code/coords.d.ts.map +1 -0
  31. package/lib/dist/code/coords.js +95 -0
  32. package/lib/dist/code/index.d.ts +6 -0
  33. package/lib/dist/code/index.d.ts.map +1 -0
  34. package/lib/dist/code/index.js +6 -0
  35. package/lib/dist/code/random.d.ts +8 -0
  36. package/lib/dist/code/random.d.ts.map +1 -0
  37. package/lib/dist/code/random.js +13 -0
  38. package/lib/dist/code/transfo.d.ts +8 -0
  39. package/lib/dist/code/transfo.d.ts.map +1 -0
  40. package/lib/dist/code/transfo.js +19 -0
  41. package/lib/dist/color/color.js +24 -24
  42. package/lib/dist/context/animation/animation-manager.js +9 -6
  43. package/lib/dist/context/context.d.ts +11 -18
  44. package/lib/dist/context/context.d.ts.map +1 -1
  45. package/lib/dist/context/context.js +71 -96
  46. package/lib/dist/controller/camera/orbit.d.ts +33 -4
  47. package/lib/dist/controller/camera/orbit.d.ts.map +1 -1
  48. package/lib/dist/controller/camera/orbit.js +163 -117
  49. package/lib/dist/dataset/dataset.d.ts +1 -1
  50. package/lib/dist/dataset/dataset.d.ts.map +1 -1
  51. package/lib/dist/dataset/dataset.js +72 -72
  52. package/lib/dist/debug/debug.d.ts +1 -1
  53. package/lib/dist/debug/debug.d.ts.map +1 -1
  54. package/lib/dist/debug/debug.js +8 -7
  55. package/lib/dist/debug/tools.js +3 -3
  56. package/lib/dist/event/event.js +6 -3
  57. package/lib/dist/filter/blur.d.ts.map +1 -1
  58. package/lib/dist/filter/blur.js +9 -8
  59. package/lib/dist/filter/chromatic-aberration.js +10 -10
  60. package/lib/dist/filter/filter.d.ts +2 -1
  61. package/lib/dist/filter/filter.d.ts.map +1 -1
  62. package/lib/dist/filter/filter.js +22 -22
  63. package/lib/dist/filter/hue-rotation.d.ts +1 -1
  64. package/lib/dist/filter/hue-rotation.d.ts.map +1 -1
  65. package/lib/dist/filter/hue-rotation.js +5 -5
  66. package/lib/dist/filter/index.d.ts +1 -0
  67. package/lib/dist/filter/index.d.ts.map +1 -1
  68. package/lib/dist/filter/index.js +2 -1
  69. package/lib/dist/filter/verbatim.d.ts +8 -0
  70. package/lib/dist/filter/verbatim.d.ts.map +1 -0
  71. package/lib/dist/filter/verbatim.js +20 -0
  72. package/lib/dist/filter/zoom.d.ts +3 -1
  73. package/lib/dist/filter/zoom.d.ts.map +1 -1
  74. package/lib/dist/filter/zoom.js +10 -6
  75. package/lib/dist/geometry/box.d.ts +2 -1
  76. package/lib/dist/geometry/box.d.ts.map +1 -1
  77. package/lib/dist/geometry/box.js +103 -115
  78. package/lib/dist/geometry/geometry.d.ts.map +1 -1
  79. package/lib/dist/geometry/geometry.js +38 -48
  80. package/lib/dist/geometry/index.d.ts +1 -0
  81. package/lib/dist/geometry/index.d.ts.map +1 -1
  82. package/lib/dist/geometry/index.js +2 -1
  83. package/lib/dist/geometry/plane.d.ts +12 -0
  84. package/lib/dist/geometry/plane.d.ts.map +1 -0
  85. package/lib/dist/geometry/plane.js +51 -0
  86. package/lib/dist/index.d.ts +6 -1
  87. package/lib/dist/index.d.ts.map +1 -1
  88. package/lib/dist/index.js +7 -2
  89. package/lib/dist/input/inputs.js +3 -4
  90. package/lib/dist/input/keyboard.js +14 -14
  91. package/lib/dist/input/pointer.d.ts.map +1 -1
  92. package/lib/dist/input/pointer.js +85 -112
  93. package/lib/dist/interface/transformable.d.ts +3 -1
  94. package/lib/dist/interface/transformable.d.ts.map +1 -1
  95. package/lib/dist/light/light.js +5 -8
  96. package/lib/dist/loader/asset.js +15 -12
  97. package/lib/dist/loader/binary.js +29 -24
  98. package/lib/dist/loader/image.js +31 -24
  99. package/lib/dist/loader/index.d.ts +1 -0
  100. package/lib/dist/loader/index.d.ts.map +1 -1
  101. package/lib/dist/loader/index.js +2 -1
  102. package/lib/dist/loader/video.d.ts +6 -0
  103. package/lib/dist/loader/video.d.ts.map +1 -0
  104. package/lib/dist/loader/video.js +23 -0
  105. package/lib/dist/log.d.ts +1 -1
  106. package/lib/dist/log.d.ts.map +1 -1
  107. package/lib/dist/log.js +19 -16
  108. package/lib/dist/material/diffuse.d.ts +3 -1
  109. package/lib/dist/material/diffuse.d.ts.map +1 -1
  110. package/lib/dist/material/diffuse.js +17 -20
  111. package/lib/dist/material/ghost.d.ts +2 -1
  112. package/lib/dist/material/ghost.d.ts.map +1 -1
  113. package/lib/dist/material/ghost.js +1 -4
  114. package/lib/dist/material/hull.d.ts +2 -1
  115. package/lib/dist/material/hull.d.ts.map +1 -1
  116. package/lib/dist/material/hull.js +10 -13
  117. package/lib/dist/material/material.d.ts +2 -1
  118. package/lib/dist/material/material.d.ts.map +1 -1
  119. package/lib/dist/material/material.js +14 -20
  120. package/lib/dist/material/normals.d.ts +2 -1
  121. package/lib/dist/material/normals.d.ts.map +1 -1
  122. package/lib/dist/material/normals.js +1 -4
  123. package/lib/dist/material/solid.d.ts +2 -1
  124. package/lib/dist/material/solid.d.ts.map +1 -1
  125. package/lib/dist/material/solid.js +6 -9
  126. package/lib/dist/math/common.test.d.ts +2 -0
  127. package/lib/dist/math/common.test.d.ts.map +1 -0
  128. package/lib/dist/math/common.test.js +22 -0
  129. package/lib/dist/math/index.d.ts +0 -1
  130. package/lib/dist/math/index.d.ts.map +1 -1
  131. package/lib/dist/math/index.js +1 -2
  132. package/lib/dist/math/mat3.d.ts +44 -16
  133. package/lib/dist/math/mat3.d.ts.map +1 -1
  134. package/lib/dist/math/mat3.js +140 -74
  135. package/lib/dist/math/mat3.test.d.ts +2 -0
  136. package/lib/dist/math/mat3.test.d.ts.map +1 -0
  137. package/lib/dist/math/mat3.test.js +32 -0
  138. package/lib/dist/math/mat4.d.ts +54 -121
  139. package/lib/dist/math/mat4.d.ts.map +1 -1
  140. package/lib/dist/math/mat4.js +167 -288
  141. package/lib/dist/math/quat.d.ts +9 -4
  142. package/lib/dist/math/quat.d.ts.map +1 -1
  143. package/lib/dist/math/quat.js +57 -70
  144. package/lib/dist/math/quat.test.d.ts +1 -0
  145. package/lib/dist/math/quat.test.d.ts.map +1 -1
  146. package/lib/dist/math/quat.test.js +81 -27
  147. package/lib/dist/math/transfo.d.ts +32 -5
  148. package/lib/dist/math/transfo.d.ts.map +1 -1
  149. package/lib/dist/math/transfo.js +135 -46
  150. package/lib/dist/math/vec2.js +6 -6
  151. package/lib/dist/math/vec3.d.ts +11 -3
  152. package/lib/dist/math/vec3.d.ts.map +1 -1
  153. package/lib/dist/math/vec3.js +30 -17
  154. package/lib/dist/math/vec3.test.js +20 -1
  155. package/lib/dist/math/vec4.d.ts +12 -3
  156. package/lib/dist/math/vec4.d.ts.map +1 -1
  157. package/lib/dist/math/vec4.js +36 -18
  158. package/lib/dist/painter/{axis/axis.d.ts → axes/axes.d.ts} +4 -4
  159. package/lib/dist/painter/{axis/axis.d.ts.map → axes/axes.d.ts.map} +1 -1
  160. package/lib/dist/painter/{axis/axis.frag → axes/axes.frag} +0 -0
  161. package/lib/dist/painter/axes/axes.js +82 -0
  162. package/lib/dist/painter/{axis/axis.vert → axes/axes.vert} +0 -0
  163. package/lib/dist/painter/axes/index.d.ts +2 -0
  164. package/lib/dist/painter/axes/index.d.ts.map +1 -0
  165. package/lib/dist/painter/axes/index.js +2 -0
  166. package/lib/dist/painter/background/background.d.ts +4 -3
  167. package/lib/dist/painter/background/background.d.ts.map +1 -1
  168. package/lib/dist/painter/background/background.js +15 -17
  169. package/lib/dist/painter/clear.d.ts +4 -3
  170. package/lib/dist/painter/clear.d.ts.map +1 -1
  171. package/lib/dist/painter/clear.js +18 -22
  172. package/lib/dist/painter/debug/index.d.ts +2 -0
  173. package/lib/dist/painter/debug/index.d.ts.map +1 -0
  174. package/lib/dist/painter/debug/index.js +2 -0
  175. package/lib/dist/painter/debug/stencil/index.d.ts +2 -0
  176. package/lib/dist/painter/debug/stencil/index.d.ts.map +1 -0
  177. package/lib/dist/painter/debug/stencil/index.js +2 -0
  178. package/lib/dist/painter/debug/stencil/stencil.d.ts +11 -0
  179. package/lib/dist/painter/debug/stencil/stencil.d.ts.map +1 -0
  180. package/lib/dist/painter/debug/stencil/stencil.frag +10 -0
  181. package/lib/dist/painter/debug/stencil/stencil.js +53 -0
  182. package/lib/dist/painter/debug/stencil/stencil.vert +7 -0
  183. package/lib/dist/painter/depth.d.ts +7 -5
  184. package/lib/dist/painter/depth.d.ts.map +1 -1
  185. package/lib/dist/painter/depth.js +5 -11
  186. package/lib/dist/painter/filter/filter.d.ts +3 -3
  187. package/lib/dist/painter/filter/filter.d.ts.map +1 -1
  188. package/lib/dist/painter/filter/filter.js +44 -46
  189. package/lib/dist/painter/framebuffer.d.ts +25 -4
  190. package/lib/dist/painter/framebuffer.d.ts.map +1 -1
  191. package/lib/dist/painter/framebuffer.js +76 -43
  192. package/lib/dist/painter/group.js +11 -12
  193. package/lib/dist/painter/index.d.ts +2 -1
  194. package/lib/dist/painter/index.d.ts.map +1 -1
  195. package/lib/dist/painter/index.js +3 -2
  196. package/lib/dist/painter/logic.js +3 -3
  197. package/lib/dist/painter/mesh/gltf/gltf.d.ts +1 -1
  198. package/lib/dist/painter/mesh/gltf/gltf.d.ts.map +1 -1
  199. package/lib/dist/painter/mesh/gltf/gltf.js +9 -10
  200. package/lib/dist/painter/mesh/mesh/mesh.d.ts +2 -2
  201. package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
  202. package/lib/dist/painter/mesh/mesh/mesh.js +45 -43
  203. package/lib/dist/painter/mesh/normals/normals.d.ts.map +1 -1
  204. package/lib/dist/painter/mesh/normals/normals.js +19 -22
  205. package/lib/dist/painter/node/node.d.ts +12 -12
  206. package/lib/dist/painter/node/node.d.ts.map +1 -1
  207. package/lib/dist/painter/node/node.js +32 -43
  208. package/lib/dist/painter/painter.js +11 -9
  209. package/lib/dist/painter/segments/segments.d.ts +11 -3
  210. package/lib/dist/painter/segments/segments.d.ts.map +1 -1
  211. package/lib/dist/painter/segments/segments.js +38 -38
  212. package/lib/dist/painter/skybox/skybox.d.ts.map +1 -1
  213. package/lib/dist/painter/skybox/skybox.js +13 -14
  214. package/lib/dist/painter/state/state.d.ts +4 -6
  215. package/lib/dist/painter/state/state.d.ts.map +1 -1
  216. package/lib/dist/painter/state/state.js +83 -65
  217. package/lib/dist/parser/for-each-line.d.ts.map +1 -1
  218. package/lib/dist/parser/for-each-line.js +5 -5
  219. package/lib/dist/parser/gltf/gltf.d.ts +5 -2
  220. package/lib/dist/parser/gltf/gltf.d.ts.map +1 -1
  221. package/lib/dist/parser/gltf/gltf.js +114 -83
  222. package/lib/dist/parser/gltf/parser.js +10 -11
  223. package/lib/dist/parser/mesh/wavefront.d.ts.map +1 -1
  224. package/lib/dist/parser/mesh/wavefront.js +106 -111
  225. package/lib/dist/program/program.d.ts +2 -2
  226. package/lib/dist/program/program.d.ts.map +1 -1
  227. package/lib/dist/program/program.js +27 -33
  228. package/lib/dist/{ref-map.d.ts → reference-map.d.ts} +4 -4
  229. package/lib/dist/reference-map.d.ts.map +1 -0
  230. package/lib/dist/reference-map.js +52 -0
  231. package/lib/dist/shader/code.d.ts +2 -2
  232. package/lib/dist/shader/code.d.ts.map +1 -1
  233. package/lib/dist/shader/code.js +12 -12
  234. package/lib/dist/shader/fragment.js +7 -19
  235. package/lib/dist/shader/vertex.js +7 -12
  236. package/lib/dist/table/index.d.ts +2 -0
  237. package/lib/dist/table/index.d.ts.map +1 -0
  238. package/lib/dist/table/index.js +2 -0
  239. package/lib/dist/table/table.d.ts +41 -0
  240. package/lib/dist/table/table.d.ts.map +1 -0
  241. package/lib/dist/table/table.js +104 -0
  242. package/lib/dist/texture/index.d.ts +1 -1
  243. package/lib/dist/texture/index.d.ts.map +1 -1
  244. package/lib/dist/texture/index.js +2 -2
  245. package/lib/dist/texture/texture-cube.d.ts +24 -0
  246. package/lib/dist/texture/texture-cube.d.ts.map +1 -0
  247. package/lib/dist/texture/texture-cube.js +69 -0
  248. package/lib/dist/texture/texture2d.d.ts +47 -21
  249. package/lib/dist/texture/texture2d.d.ts.map +1 -1
  250. package/lib/dist/texture/texture2d.js +178 -133
  251. package/lib/dist/types/elements.js +2 -2
  252. package/lib/dist/types/gltf.js +3 -9
  253. package/lib/dist/types/guards.d.ts.map +1 -1
  254. package/lib/dist/types/guards.js +36 -37
  255. package/lib/dist/types/index.d.ts +1 -3
  256. package/lib/dist/types/index.d.ts.map +1 -1
  257. package/lib/dist/types/index.js +2 -4
  258. package/lib/dist/types/program.d.ts +0 -37
  259. package/lib/dist/types/program.d.ts.map +1 -1
  260. package/lib/dist/types/{textureCube.d.ts → texture-cube.d.ts} +7 -16
  261. package/lib/dist/types/texture-cube.d.ts.map +1 -0
  262. package/lib/dist/types/texture-cube.js +2 -0
  263. package/lib/dist/types/webgl.d.ts +15 -5
  264. package/lib/dist/types/webgl.d.ts.map +1 -1
  265. package/lib/dist/types/webgl.js +37 -30
  266. package/lib/dist/utils/action/camera.d.ts.map +1 -1
  267. package/lib/dist/utils/action/camera.js +15 -25
  268. package/lib/dist/utils/action/transfo.d.ts +3 -0
  269. package/lib/dist/utils/action/transfo.d.ts.map +1 -0
  270. package/lib/dist/utils/action/transfo.js +18 -0
  271. package/lib/dist/utils/action/vector.d.ts.map +1 -1
  272. package/lib/dist/utils/action/vector.js +11 -11
  273. package/lib/dist/utils/assert.d.ts.map +1 -1
  274. package/lib/dist/utils/assert.js +2 -2
  275. package/lib/dist/utils/bbox.js +3 -3
  276. package/lib/dist/utils/bbox.test.js +18 -19
  277. package/lib/dist/utils/canvas.d.ts +28 -0
  278. package/lib/dist/utils/canvas.d.ts.map +1 -1
  279. package/lib/dist/utils/canvas.js +59 -5
  280. package/lib/dist/utils/{ease-func/ease-func.d.ts → easing-function/easing-function.d.ts} +1 -1
  281. package/lib/dist/utils/easing-function/easing-function.d.ts.map +1 -0
  282. package/lib/dist/utils/easing-function/easing-function.js +142 -0
  283. package/lib/dist/utils/easing-function/index.d.ts +2 -0
  284. package/lib/dist/utils/easing-function/index.d.ts.map +1 -0
  285. package/lib/dist/utils/easing-function/index.js +2 -0
  286. package/lib/dist/utils/framebuffer.d.ts +2 -0
  287. package/lib/dist/utils/framebuffer.d.ts.map +1 -0
  288. package/lib/dist/utils/framebuffer.js +7 -0
  289. package/lib/dist/utils/fullscreen.d.ts +1 -1
  290. package/lib/dist/utils/fullscreen.d.ts.map +1 -1
  291. package/lib/dist/utils/fullscreen.js +44 -37
  292. package/lib/dist/utils/index.d.ts +4 -1
  293. package/lib/dist/utils/index.d.ts.map +1 -1
  294. package/lib/dist/utils/index.js +5 -2
  295. package/lib/dist/utils/math.d.ts +4 -2
  296. package/lib/dist/utils/math.d.ts.map +1 -1
  297. package/lib/dist/utils/math.js +12 -4
  298. package/lib/dist/utils/pbo.d.ts +9 -0
  299. package/lib/dist/utils/pbo.d.ts.map +1 -0
  300. package/lib/dist/utils/pbo.js +32 -0
  301. package/lib/dist/utils/{ref-map.d.ts → reference-map.d.ts} +4 -4
  302. package/lib/dist/utils/reference-map.d.ts.map +1 -0
  303. package/lib/dist/utils/reference-map.js +52 -0
  304. package/lib/dist/utils/state/blend.d.ts +5 -5
  305. package/lib/dist/utils/state/blend.d.ts.map +1 -1
  306. package/lib/dist/utils/state/blend.js +10 -10
  307. package/lib/dist/utils/state/depth.d.ts +2 -2
  308. package/lib/dist/utils/state/depth.d.ts.map +1 -1
  309. package/lib/dist/utils/state/depth.js +5 -5
  310. package/lib/dist/utils/state/stencil.d.ts +55 -1
  311. package/lib/dist/utils/state/stencil.d.ts.map +1 -1
  312. package/lib/dist/utils/state/stencil.js +28 -46
  313. package/lib/dist/utils/template.js +3 -3
  314. package/lib/dist/utils/webgl.d.ts +1 -1
  315. package/lib/dist/utils/webgl.d.ts.map +1 -1
  316. package/lib/dist/utils/webgl.js +5 -5
  317. package/lib/dist/vao/vao.d.ts +2 -1
  318. package/lib/dist/vao/vao.d.ts.map +1 -1
  319. package/lib/dist/vao/vao.js +19 -19
  320. package/lib/dist/webgl/index.d.ts +2 -0
  321. package/lib/dist/webgl/index.d.ts.map +1 -0
  322. package/lib/dist/webgl/index.js +2 -0
  323. package/lib/dist/webgl/texture/index.d.ts +3 -0
  324. package/lib/dist/webgl/texture/index.d.ts.map +1 -0
  325. package/lib/dist/webgl/texture/index.js +3 -0
  326. package/lib/dist/webgl/texture/texture2d.d.ts +38 -0
  327. package/lib/dist/webgl/texture/texture2d.d.ts.map +1 -0
  328. package/lib/dist/webgl/texture/texture2d.js +35 -0
  329. package/lib/dist/webgl/texture/types.d.ts +4 -0
  330. package/lib/dist/webgl/texture/types.d.ts.map +1 -0
  331. package/lib/dist/webgl/texture/types.js +2 -0
  332. package/package.json +1 -1
  333. package/lib/dist/math/math.d.ts +0 -9
  334. package/lib/dist/math/math.d.ts.map +0 -1
  335. package/lib/dist/math/math.js +0 -13
  336. package/lib/dist/painter/axis/axis.js +0 -84
  337. package/lib/dist/painter/axis/index.d.ts +0 -2
  338. package/lib/dist/painter/axis/index.d.ts.map +0 -1
  339. package/lib/dist/painter/axis/index.js +0 -2
  340. package/lib/dist/painter/framebuffer-old.d.ts +0 -38
  341. package/lib/dist/painter/framebuffer-old.d.ts.map +0 -1
  342. package/lib/dist/painter/framebuffer-old.js +0 -102
  343. package/lib/dist/painter/framebuffer.backup.d.ts +0 -39
  344. package/lib/dist/painter/framebuffer.backup.d.ts.map +0 -1
  345. package/lib/dist/painter/framebuffer.backup.js +0 -125
  346. package/lib/dist/painter/mesh/hull/hull.d.ts +0 -12
  347. package/lib/dist/painter/mesh/hull/hull.d.ts.map +0 -1
  348. package/lib/dist/painter/mesh/hull/hull.js +0 -11
  349. package/lib/dist/painter/node.d.ts +0 -32
  350. package/lib/dist/painter/node.d.ts.map +0 -1
  351. package/lib/dist/painter/node.js +0 -73
  352. package/lib/dist/ref-map.d.ts.map +0 -1
  353. package/lib/dist/ref-map.js +0 -48
  354. package/lib/dist/resource/index.d.ts +0 -5
  355. package/lib/dist/resource/index.d.ts.map +0 -1
  356. package/lib/dist/resource/index.js +0 -5
  357. package/lib/dist/resource/program.d.ts +0 -10
  358. package/lib/dist/resource/program.d.ts.map +0 -1
  359. package/lib/dist/resource/program.js +0 -20
  360. package/lib/dist/resource/resource.d.ts +0 -17
  361. package/lib/dist/resource/resource.d.ts.map +0 -1
  362. package/lib/dist/resource/resource.js +0 -48
  363. package/lib/dist/resource/texture2d.d.ts +0 -10
  364. package/lib/dist/resource/texture2d.d.ts.map +0 -1
  365. package/lib/dist/resource/texture2d.js +0 -20
  366. package/lib/dist/resource/textureCube.d.ts +0 -9
  367. package/lib/dist/resource/textureCube.d.ts.map +0 -1
  368. package/lib/dist/resource/textureCube.js +0 -17
  369. package/lib/dist/scene/scene-node.d.ts +0 -8
  370. package/lib/dist/scene/scene-node.d.ts.map +0 -1
  371. package/lib/dist/scene/scene-node.js +0 -13
  372. package/lib/dist/texture/textureCube.d.ts +0 -17
  373. package/lib/dist/texture/textureCube.d.ts.map +0 -1
  374. package/lib/dist/texture/textureCube.js +0 -87
  375. package/lib/dist/types/context.d.ts +0 -27
  376. package/lib/dist/types/context.d.ts.map +0 -1
  377. package/lib/dist/types/context.js +0 -2
  378. package/lib/dist/types/texture2d.d.ts +0 -36
  379. package/lib/dist/types/texture2d.d.ts.map +0 -1
  380. package/lib/dist/types/texture2d.js +0 -2
  381. package/lib/dist/types/textureCube.d.ts.map +0 -1
  382. package/lib/dist/types/textureCube.js +0 -2
  383. package/lib/dist/utils/ease-func/ease-func.d.ts.map +0 -1
  384. package/lib/dist/utils/ease-func/ease-func.js +0 -142
  385. package/lib/dist/utils/ease-func/index.d.ts +0 -2
  386. package/lib/dist/utils/ease-func/index.d.ts.map +0 -1
  387. package/lib/dist/utils/ease-func/index.js +0 -2
  388. package/lib/dist/utils/fetch/fetch.d.ts +0 -2
  389. package/lib/dist/utils/fetch/fetch.d.ts.map +0 -1
  390. package/lib/dist/utils/fetch/fetch.js +0 -5
  391. package/lib/dist/utils/fetch/index.d.ts +0 -2
  392. package/lib/dist/utils/fetch/index.d.ts.map +0 -1
  393. package/lib/dist/utils/fetch/index.js +0 -2
  394. package/lib/dist/utils/ref-map.d.ts.map +0 -1
  395. package/lib/dist/utils/ref-map.js +0 -48
@@ -1,31 +1,29 @@
1
1
  export class TgdDataset {
2
- attributesDefinition;
3
- options;
4
- stride = 0;
5
- definitions = {};
6
- _data = new ArrayBuffer(0);
7
- _count = 0;
8
- target;
9
- usage;
10
2
  constructor(attributesDefinition, options = {}) {
3
+ var _a, _b;
11
4
  this.attributesDefinition = attributesDefinition;
12
5
  this.options = options;
13
- this.target = options.target ?? "ARRAY_BUFFER";
14
- this.usage = options.usage ?? "STATIC_DRAW";
6
+ this.stride = 0;
7
+ this.definitions = {};
8
+ this._data = new ArrayBuffer(0);
9
+ this._count = 0;
10
+ this.target = (_a = options.target) !== null && _a !== void 0 ? _a : "ARRAY_BUFFER";
11
+ this.usage = (_b = options.usage) !== null && _b !== void 0 ? _b : "STATIC_DRAW";
15
12
  this.initialize(attributesDefinition, options);
16
13
  }
17
14
  initialize(attributesDefinition, options = {}) {
15
+ var _a;
18
16
  for (const name of Object.keys(attributesDefinition)) {
19
- const def = attributesDefinition[name];
20
- this.attributesDefinition[name] = def;
17
+ const definition = attributesDefinition[name];
18
+ this.attributesDefinition[name] = definition;
21
19
  }
22
- const divisor = options.divisor ?? 0;
20
+ const divisor = (_a = options.divisor) !== null && _a !== void 0 ? _a : 0;
23
21
  let stride = 0;
24
22
  const data = {};
25
23
  const definitions = {};
26
24
  for (const name of Object.keys(attributesDefinition)) {
27
25
  data[name] = new ArrayBuffer(0);
28
- const def = {
26
+ const definition = {
29
27
  dimension: DIMS[attributesDefinition[name]],
30
28
  byteOffset: stride,
31
29
  bytesPerElement: Float32Array.BYTES_PER_ELEMENT,
@@ -40,8 +38,8 @@ export class TgdDataset {
40
38
  view.setFloat32(byteOffset, value, true);
41
39
  },
42
40
  };
43
- definitions[name] = def;
44
- stride += def.bytesPerElement * def.dimension;
41
+ definitions[name] = definition;
42
+ stride += definition.bytesPerElement * definition.dimension;
45
43
  }
46
44
  this.definitions = definitions;
47
45
  this.stride = stride;
@@ -56,9 +54,9 @@ export class TgdDataset {
56
54
  assertAttribType(attribName, ...types) {
57
55
  const type = this.attributesDefinition[attribName];
58
56
  if (!type)
59
- throw Error(`Attribute "${attribName}" does not exist! Available names are: ${Object.keys(this.attributesDefinition).join(", ")}.`);
57
+ throw new Error(`Attribute "${attribName}" does not exist! Available names are: ${Object.keys(this.attributesDefinition).join(", ")}.`);
60
58
  if (!types.includes(type)) {
61
- throw Error(`Attribute "${attribName}" is of type "${type}", which is not ${types.join(" nor ")}!`);
59
+ throw new Error(`Attribute "${attribName}" is of type "${type}", which is not ${types.join(" nor ")}!`);
62
60
  }
63
61
  return this;
64
62
  }
@@ -68,40 +66,39 @@ export class TgdDataset {
68
66
  const oldType = this.attributesDefinition[key];
69
67
  const newType = attributesDefinition[key];
70
68
  if (oldType && oldType !== newType) {
71
- throw Error(`It is not allowed to change the type of attribute "${key}" from "${oldType}" to "${newType}"! Prefer removing the attribute first.`);
69
+ throw new Error(`It is not allowed to change the type of attribute "${key}" from "${oldType}" to "${newType}"! Prefer removing the attribute first.`);
72
70
  }
73
71
  }
74
- this.initialize({
75
- ...this.attributesDefinition,
76
- ...attributesDefinition,
77
- }, this.options);
78
- // eslint-disable-next-line @typescript-eslint/no-this-alias
72
+ this.initialize(Object.assign(Object.assign({}, this.attributesDefinition), attributesDefinition), this.options);
73
+ // eslint-disable-next-line unicorn/no-this-assignment, @typescript-eslint/no-this-alias
79
74
  const newDataset = this;
80
75
  newDataset.count = oldDataset.count;
81
76
  for (const attribName of oldDataset.attributesNames) {
82
77
  try {
83
78
  const { get } = oldDataset.getAttribAccessor(attribName);
84
79
  const { set } = newDataset.getAttribAccessor(attribName);
85
- for (let idx = 0; idx < oldDataset.count; idx++) {
86
- const def = this.getDef(attribName);
87
- for (let dim = 0; dim < def.dimension; dim++) {
88
- set(get(idx, dim), idx, dim);
80
+ for (let index = 0; index < oldDataset.count; index++) {
81
+ const definition = this.getDef(attribName);
82
+ for (let dim = 0; dim < definition.dimension; dim++) {
83
+ set(get(index, dim), index, dim);
89
84
  }
90
85
  }
91
86
  }
92
- catch (ex) {
93
- const msg = ex instanceof Error ? ex.message : JSON.stringify(ex);
94
- throw new Error(`Unable to clone attribute "${attribName}"!\n${msg}`);
87
+ catch (error) {
88
+ const message = error instanceof Error
89
+ ? error.message
90
+ : JSON.stringify(error);
91
+ throw new Error(`Unable to clone attribute "${attribName}"!\n${message}`);
95
92
  }
96
93
  }
97
94
  }
98
95
  clone() {
99
96
  const ds = new TgdDataset(structuredClone(this.attributesDefinition), this.options);
100
97
  ds.count = this.count;
101
- const src = new DataView(this._data);
102
- const dst = new DataView(ds._data);
103
- for (let offset = 0; offset < src.byteLength; offset++) {
104
- dst.setUint8(offset, src.getUint8(offset));
98
+ const source = new DataView(this._data);
99
+ const definition = new DataView(ds._data);
100
+ for (let offset = 0; offset < source.byteLength; offset++) {
101
+ definition.setUint8(offset, source.getUint8(offset));
105
102
  }
106
103
  return ds;
107
104
  }
@@ -129,21 +126,21 @@ export class TgdDataset {
129
126
  return Object.keys(this.attributesDefinition);
130
127
  }
131
128
  getAttribAccessor(attribName) {
132
- const def = this.getDef(attribName);
129
+ const definition = this.getDef(attribName);
133
130
  const view = new DataView(this.data);
134
131
  const stride = this.stride;
135
132
  return {
136
133
  get(index, dimension = 0) {
137
- const byteOffset = def.byteOffset +
134
+ const byteOffset = definition.byteOffset +
138
135
  stride * index +
139
- dimension * def.bytesPerElement;
140
- return def.getter(view, byteOffset);
136
+ dimension * definition.bytesPerElement;
137
+ return definition.getter(view, byteOffset);
141
138
  },
142
139
  set(value, index, dimension = 0) {
143
- const byteOffset = def.byteOffset +
140
+ const byteOffset = definition.byteOffset +
144
141
  stride * index +
145
- dimension * def.bytesPerElement;
146
- def.setter(view, byteOffset, value);
142
+ dimension * definition.bytesPerElement;
143
+ definition.setter(view, byteOffset, value);
147
144
  },
148
145
  };
149
146
  }
@@ -164,30 +161,32 @@ export class TgdDataset {
164
161
  const { bytesPerElement, dimension, byteOffset: attribByteOffset, } = this.getDef(attribName);
165
162
  const buffer = value instanceof ArrayBuffer ? value : value.buffer;
166
163
  const chunkLength = bytesPerElement * dimension;
167
- const srcStride = byteStride ?? chunkLength;
168
- let srcOffset = byteOffset + srcStride * first;
164
+ const sourceStride = byteStride !== null && byteStride !== void 0 ? byteStride : chunkLength;
165
+ let sourceOffset = byteOffset + sourceStride * first;
169
166
  const dstStride = this.stride;
170
167
  let dstOffset = targetFirst * dstStride + attribByteOffset;
171
- this.count = Math.max(this.count, Math.min(count, Math.floor((buffer.byteLength - srcOffset) / srcStride)));
172
- const srcStop = buffer.byteLength - srcStride + 1;
168
+ this.count = Math.max(this.count, Math.min(count, Math.floor((buffer.byteLength - sourceOffset) / sourceStride)));
169
+ const sourceStop = buffer.byteLength - sourceStride + 1;
173
170
  const dstStop = this._data.byteLength + attribByteOffset - dstStride + 1;
174
- const srcBuffer = new Uint8Array(buffer);
171
+ const sourceBuffer = new Uint8Array(buffer);
175
172
  const dstBuffer = new Uint8Array(this._data);
176
173
  let index = 0;
177
- while (index < count && srcOffset < srcStop && dstOffset < dstStop) {
178
- dstBuffer.set(srcBuffer.subarray(srcOffset, srcOffset + chunkLength), dstOffset);
174
+ while (index < count &&
175
+ sourceOffset < sourceStop &&
176
+ dstOffset < dstStop) {
177
+ dstBuffer.set(sourceBuffer.subarray(sourceOffset, sourceOffset + chunkLength), dstOffset);
179
178
  index++;
180
- srcOffset += srcStride;
179
+ sourceOffset += sourceStride;
181
180
  dstOffset += dstStride;
182
181
  }
183
182
  }
184
183
  getDef(attribName) {
185
- const def = this.definitions[attribName];
186
- if (!def)
187
- throw Error(`[TgdDataset] Attribute "${String(attribName)}" not found in this DataSet!\nAvailable names are: ${Object.keys(this.definitions)
184
+ const definition = this.definitions[attribName];
185
+ if (!definition)
186
+ throw new Error(`[TgdDataset] Attribute "${String(attribName)}" not found in this DataSet!\nAvailable names are: ${Object.keys(this.definitions)
188
187
  .map(name => JSON.stringify(name))
189
188
  .join(", ")}.`);
190
- return def;
189
+ return definition;
191
190
  }
192
191
  /**
193
192
  * Enable the vertex attrib array, and set
@@ -198,14 +197,14 @@ export class TgdDataset {
198
197
  let offsetDestination = 0;
199
198
  const { definitions } = this;
200
199
  for (const name of Object.keys(definitions)) {
201
- const def = definitions[name];
200
+ const definition = definitions[name];
202
201
  if (prg.hasAttribute(name)) {
203
202
  const att = prg.getAttribLocation(name);
204
203
  gl.enableVertexAttribArray(att);
205
- gl.vertexAttribPointer(att, def.dimension, gl.FLOAT, false, this.stride, offsetDestination);
206
- gl.vertexAttribDivisor(att, def.divisor);
204
+ gl.vertexAttribPointer(att, definition.dimension, gl.FLOAT, false, this.stride, offsetDestination);
205
+ gl.vertexAttribDivisor(att, definition.divisor);
207
206
  }
208
- const bytes = def.dimension * def.bytesPerElement;
207
+ const bytes = definition.dimension * definition.bytesPerElement;
209
208
  offsetDestination += bytes;
210
209
  }
211
210
  }
@@ -214,10 +213,10 @@ export class TgdDataset {
214
213
  let offsetDestination = 0;
215
214
  const { definitions } = this;
216
215
  for (const name of Object.keys(definitions)) {
217
- const def = definitions[name];
216
+ const definition = definitions[name];
218
217
  const att = `$${name}`;
219
- lines.push(`const ${att} = gl.getAttribLocation(prg, "${name}")`, `gl.enableVertexAttribArray(${att})`, `gl.vertexAttribPointer(`, ` ${att},`, ` ${def.dimension}, // Dimension`, ` gl.FLOAT,`, ` false,`, ` ${this.stride}, // Stride`, ` ${offsetDestination} // Offset`, `)`, `gl.vertexAttribDivisor(${att}, ${def.divisor})`);
220
- const bytes = def.dimension * def.bytesPerElement;
218
+ lines.push(`const ${att} = gl.getAttribLocation(prg, "${name}")`, `gl.enableVertexAttribArray(${att})`, `gl.vertexAttribPointer(`, ` ${att},`, ` ${definition.dimension}, // Dimension`, ` gl.FLOAT,`, ` false,`, ` ${this.stride}, // Stride`, ` ${offsetDestination} // Offset`, `)`, `gl.vertexAttribDivisor(${att}, ${definition.divisor})`);
219
+ const bytes = definition.dimension * definition.bytesPerElement;
221
220
  offsetDestination += bytes;
222
221
  }
223
222
  return lines.map(line => `${indent}${line}`).join("\n");
@@ -228,25 +227,26 @@ export class TgdDataset {
228
227
  ["Name", "type", "offset"],
229
228
  ];
230
229
  for (const attName of Object.keys(this.definitions)) {
231
- const def = this.definitions[attName];
230
+ const definition = this.definitions[attName];
232
231
  rows.push([
233
232
  attName,
234
233
  this.attributesDefinition[attName],
235
- `${def.byteOffset}`,
234
+ `${definition.byteOffset}`,
236
235
  ]);
237
236
  }
238
- const sizes = [0, 1, 2].map(i => rows.reduce((prev, curr) => Math.max(prev, curr[i].length), 0));
239
- rows.forEach(([name, type, offset]) => console.log(`%c${name.padEnd(sizes[0] + 2)}${type.padStart(sizes[1] + 2)}${offset.padStart(sizes[2] + 2)}`, "font-family:monospace"));
237
+ const sizes = [0, 1, 2].map(index => rows.reduce((previous, current) => Math.max(previous, current[index].length), 0));
238
+ for (const [name, type, offset] of rows)
239
+ console.log(`%c${name.padEnd(sizes[0] + 2)}${type.padStart(sizes[1] + 2)}${offset.padStart(sizes[2] + 2)}`, "font-family:monospace");
240
240
  for (const attName of Object.keys(this.definitions)) {
241
- const def = this.definitions[attName];
242
- if (!def)
241
+ const definition = this.definitions[attName];
242
+ if (!definition)
243
243
  continue;
244
244
  const { get } = this.getAttribAccessor(attName);
245
245
  const data = [];
246
- for (let idx = 0; idx < this.count; idx++) {
246
+ for (let index = 0; index < this.count; index++) {
247
247
  const items = [];
248
- for (let dim = 0; dim < def.dimension; dim++) {
249
- items.push(get(idx, dim));
248
+ for (let dim = 0; dim < definition.dimension; dim++) {
249
+ items.push(get(index, dim));
250
250
  }
251
251
  data.push(items);
252
252
  }
@@ -264,11 +264,11 @@ function resizeFast(buff, newSize) {
264
264
  return buff.transfer(newSize);
265
265
  }
266
266
  function resizeSlow(inBuff, newSize) {
267
- const outBuff = new ArrayBuffer(newSize ?? inBuff.byteLength);
267
+ const outBuff = new ArrayBuffer(newSize !== null && newSize !== void 0 ? newSize : inBuff.byteLength);
268
268
  new Uint8Array(outBuff).set(new Uint8Array(inBuff));
269
269
  return outBuff;
270
270
  }
271
271
  const resize = typeof ArrayBuffer.prototype.transfer === "function"
272
272
  ? resizeFast
273
273
  : resizeSlow;
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhc2V0L2RhdGFzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYUEsTUFBTSxPQUFPLFVBQVU7SUFVRTtJQUNBO0lBVmIsTUFBTSxHQUFXLENBQUMsQ0FBQTtJQUNsQixXQUFXLEdBQW9ELEVBQUUsQ0FBQTtJQUNqRSxLQUFLLEdBQUcsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDMUIsTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUVYLE1BQU0sQ0FBdUI7SUFDN0IsS0FBSyxDQUFzQjtJQUVsQyxZQUNxQixvQkFBMEMsRUFDMUMsVUFBc0MsRUFBRTtRQUR4Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLFlBQU8sR0FBUCxPQUFPLENBQWlDO1FBRXpELElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxjQUFjLENBQUE7UUFDOUMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLGFBQWEsQ0FBQTtRQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQ2xELENBQUM7SUFFTyxVQUFVLENBQ2Qsb0JBQTBDLEVBQzFDLFVBQXNDLEVBQUU7UUFFeEMsS0FBSyxNQUFNLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztZQUNuRCxNQUFNLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN0QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFBO1FBQ3pDLENBQUM7UUFDRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQTtRQUNwQyxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUE7UUFDZCxNQUFNLElBQUksR0FBbUMsRUFBRSxD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
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhc2V0L2RhdGFzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBY0EsTUFBTSxPQUFPLFVBQVU7SUFTbkIsWUFDcUIsb0JBQTBDLEVBQzFDLFVBQXNDLEVBQUU7O1FBRHhDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsWUFBTyxHQUFQLE9BQU8sQ0FBaUM7UUFWckQsV0FBTSxHQUFXLENBQUMsQ0FBQTtRQUNsQixnQkFBVyxHQUFvRCxFQUFFLENBQUE7UUFDakUsVUFBSyxHQUFHLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzFCLFdBQU0sR0FBRyxDQUFDLENBQUE7UUFTZCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQUEsT0FBTyxDQUFDLE1BQU0sbUNBQUksY0FBYyxDQUFBO1FBQzlDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBQSxPQUFPLENBQUMsS0FBSyxtQ0FBSSxhQUFhLENBQUE7UUFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNsRCxDQUFDO0lBRU8sVUFBVSxDQUNkLG9CQUEwQyxFQUMxQyxVQUFzQyxFQUFFOztRQUV4QyxLQUFLLE1BQU0sSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDO1lBQ25ELE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzdDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUE7UUFDaEQsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLE1BQUEsT0FBTyxDQUFDLE9BQU8sbUNBQUksQ0FBQyxDQUFBO1FBQ3BDLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQTtRQUNkLE1BQU0sSUFBSSxHQUFtQyxFQUFFLENBQUE7UUFDL0MsTUFBTSxXQUFXLEdB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
@@ -3,6 +3,6 @@ type HighlightedCode = string | boolean | HighlightedCode[] | {
3
3
  txt?: string;
4
4
  };
5
5
  export declare function debug(code: HighlightedCode, classNames?: Record<string, string>): void;
6
- export declare function highlightEnum(val: keyof WebGL2RenderingContext | number): HighlightedCode;
6
+ export declare function highlightEnum(value: keyof WebGL2RenderingContext | number): HighlightedCode;
7
7
  export {};
8
8
  //# sourceMappingURL=debug.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../src/debug/debug.ts"],"names":[],"mappings":"AAEA,KAAK,eAAe,GACd,MAAM,GACN,OAAO,GACP,eAAe,EAAE,GACjB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnC,wBAAgB,KAAK,CACjB,IAAI,EAAE,eAAe,EACrB,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,QAK1C;AAED,wBAAgB,aAAa,CACzB,GAAG,EAAE,MAAM,sBAAsB,GAAG,MAAM,GAC3C,eAAe,CAGjB"}
1
+ {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../src/debug/debug.ts"],"names":[],"mappings":"AAEA,KAAK,eAAe,GACd,MAAM,GACN,OAAO,GACP,eAAe,EAAE,GACjB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnC,wBAAgB,KAAK,CACjB,IAAI,EAAE,eAAe,EACrB,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,QAK1C;AAED,wBAAgB,aAAa,CACzB,KAAK,EAAE,MAAM,sBAAsB,GAAG,MAAM,GAC7C,eAAe,CAGjB"}
@@ -4,8 +4,8 @@ export function debug(code, classNames = {}) {
4
4
  const txt = stringify(code, classNames, css);
5
5
  console.log(txt, ...css);
6
6
  }
7
- export function highlightEnum(val) {
8
- const txt = typeof val === "number" ? webglLookup(val) : val;
7
+ export function highlightEnum(value) {
8
+ const txt = typeof value === "number" ? webglLookup(value) : value;
9
9
  return ["gl.", { cls: "enum", txt }, { cls: "code" }];
10
10
  }
11
11
  const CLASSNAMES = {
@@ -14,6 +14,7 @@ const CLASSNAMES = {
14
14
  enum: "font-weight:bold;color:#4af",
15
15
  };
16
16
  function stringify(code, classNames, css) {
17
+ var _a, _b, _c, _d;
17
18
  if (typeof code === "boolean") {
18
19
  css.push(`background:${code ? "#0f0" : "#f77"};font-size:80%;color:#000;padding:0 .5em;border-radius:999vmax`, CLASSNAMES.code);
19
20
  return `%c${code ? "true" : "false"}%c`;
@@ -23,10 +24,10 @@ function stringify(code, classNames, css) {
23
24
  if (Array.isArray(code)) {
24
25
  return code.map(item => stringify(item, classNames, css)).join("");
25
26
  }
26
- const style = classNames[code.cls] ?? CLASSNAMES[code.cls];
27
+ const style = (_a = classNames[code.cls]) !== null && _a !== void 0 ? _a : CLASSNAMES[code.cls];
27
28
  if (!style)
28
- return code.txt ?? "";
29
- css.push(`${classNames.code ?? CLASSNAMES.code};${style}`);
30
- return `%c${code.txt ?? ""}`;
29
+ return (_b = code.txt) !== null && _b !== void 0 ? _b : "";
30
+ css.push(`${(_c = classNames.code) !== null && _c !== void 0 ? _c : CLASSNAMES.code};${style}`);
31
+ return `%c${(_d = code.txt) !== null && _d !== void 0 ? _d : ""}`;
31
32
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVidWcvZGVidWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBUTlDLE1BQU0sVUFBVSxLQUFLLENBQ2pCLElBQXFCLEVBQ3JCLGFBQXFDLEVBQUU7SUFFdkMsTUFBTSxHQUFHLEdBQWEsRUFBRSxDQUFBO0lBQ3hCLE1BQU0sR0FBRyxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQzVDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUE7QUFDNUIsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQ3pCLEdBQTBDO0lBRTFDLE1BQU0sR0FBRyxHQUFHLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUE7SUFDNUQsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQTtBQUN6RCxDQUFDO0FBRUQsTUFBTSxVQUFVLEdBQTJCO0lBQ3ZDLElBQUksRUFBRSxvR0FBb0c7SUFDMUcsSUFBSSxFQUFFLGtCQUFrQjtJQUN4QixJQUFJLEVBQUUsNkJBQTZCO0NBQ3RDLENBQUE7QUFFRCxTQUFTLFNBQVMsQ0FDZCxJQUFxQixFQUNyQixVQUFrQyxFQUNsQyxHQUFhO0lBRWIsSUFBSSxPQUFPLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUM1QixHQUFHLENBQUMsSUFBSSxDQUNKLGNBQ0ksSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQ3BCLGdFQUFnRSxFQUNoRSxVQUFVLENBQUMsSUFBSSxDQUNsQixDQUFBO1FBQ0QsT0FBTyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQTtJQUMzQyxDQUFDO0lBRUQsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRO1FBQUUsT0FBTyxJQUFJLENBQUE7SUFFekMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDdEUsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUMxRCxJQUFJLENBQUMsS0FBSztRQUFFLE9BQU8sSUFBSSxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUE7SUFFakMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBQzFELE9BQU8sS0FBSyxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFBO0FBQ2hDLENBQUMifQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVidWcvZGVidWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBUTlDLE1BQU0sVUFBVSxLQUFLLENBQ2pCLElBQXFCLEVBQ3JCLGFBQXFDLEVBQUU7SUFFdkMsTUFBTSxHQUFHLEdBQWEsRUFBRSxDQUFBO0lBQ3hCLE1BQU0sR0FBRyxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQzVDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUE7QUFDNUIsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQ3pCLEtBQTRDO0lBRTVDLE1BQU0sR0FBRyxHQUFHLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7SUFDbEUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQTtBQUN6RCxDQUFDO0FBRUQsTUFBTSxVQUFVLEdBQTJCO0lBQ3ZDLElBQUksRUFBRSxvR0FBb0c7SUFDMUcsSUFBSSxFQUFFLGtCQUFrQjtJQUN4QixJQUFJLEVBQUUsNkJBQTZCO0NBQ3RDLENBQUE7QUFFRCxTQUFTLFNBQVMsQ0FDZCxJQUFxQixFQUNyQixVQUFrQyxFQUNsQyxHQUFhOztJQUViLElBQUksT0FBTyxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDNUIsR0FBRyxDQUFDLElBQUksQ0FDSixjQUNJLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUNwQixnRUFBZ0UsRUFDaEUsVUFBVSxDQUFDLElBQUksQ0FDbEIsQ0FBQTtRQUNELE9BQU8sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUE7SUFDM0MsQ0FBQztJQUVELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUTtRQUFFLE9BQU8sSUFBSSxDQUFBO0lBRXpDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ3RFLENBQUM7SUFFRCxNQUFNLEtBQUssR0FBRyxNQUFBLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1DQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDMUQsSUFBSSxDQUFDLEtBQUs7UUFBRSxPQUFPLE1BQUEsSUFBSSxDQUFDLEdBQUcsbUNBQUksRUFBRSxDQUFBO0lBRWpDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFBLFVBQVUsQ0FBQyxJQUFJLG1DQUFJLFVBQVUsQ0FBQyxJQUFJLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQTtJQUMxRCxPQUFPLEtBQUssTUFBQSxJQUFJLENBQUMsR0FBRyxtQ0FBSSxFQUFFLEVBQUUsQ0FBQTtBQUNoQyxDQUFDIn0=
@@ -2,12 +2,12 @@ export function padColOfNumbers(values, decimals = 6) {
2
2
  const p = Math.pow(10, decimals);
3
3
  const out = [];
4
4
  let max = 0;
5
- for (const val of values) {
6
- const n = Math.round(val * p) / p;
5
+ for (const value of values) {
6
+ const n = Math.round(value * p) / p;
7
7
  const txt = n.toFixed(decimals);
8
8
  max = Math.max(max, txt.length);
9
9
  out.push(txt);
10
10
  }
11
11
  return out.map(txt => txt.padStart(max, " "));
12
12
  }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVidWcvdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFnQixFQUFFLFFBQVEsR0FBRyxDQUFDO0lBQzFELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sR0FBRyxHQUFhLEVBQUUsQ0FBQTtJQUN4QixJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUE7SUFDWCxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNqQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQy9CLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDL0IsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNqQixDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQTtBQUNqRCxDQUFDIn0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVidWcvdG9vbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFnQixFQUFFLFFBQVEsR0FBRyxDQUFDO0lBQzFELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sR0FBRyxHQUFhLEVBQUUsQ0FBQTtJQUN4QixJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUE7SUFDWCxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNuQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQy9CLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDL0IsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNqQixDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQTtBQUNqRCxDQUFDIn0=
@@ -1,5 +1,7 @@
1
1
  export class TgdEvent {
2
- listeners = new Set();
2
+ constructor() {
3
+ this.listeners = new Set();
4
+ }
3
5
  addListener(listener) {
4
6
  this.listeners.add(listener);
5
7
  }
@@ -7,7 +9,8 @@ export class TgdEvent {
7
9
  this.listeners.delete(listener);
8
10
  }
9
11
  dispatch(value) {
10
- this.listeners.forEach(listener => listener(value));
12
+ for (const listener of this.listeners)
13
+ listener(value);
11
14
  }
12
15
  }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnQvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFFBQVE7SUFDQSxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQTtJQUVuRCxXQUFXLENBQUMsUUFBcUI7UUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDaEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxRQUFxQjtRQUNoQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVE7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBQ3ZELENBQUM7Q0FDSiJ9
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnQvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFFBQVE7SUFBckI7UUFDcUIsY0FBUyxHQUFHLElBQUksR0FBRyxFQUFlLENBQUE7SUFhdkQsQ0FBQztJQVhHLFdBQVcsQ0FBQyxRQUFxQjtRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsY0FBYyxDQUFDLFFBQXFCO1FBQ2hDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBUTtRQUNiLEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVM7WUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDMUQsQ0FBQztDQUNKIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"blur.d.ts","sourceRoot":"","sources":["../../src/filter/blur.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,MAAM,CAAA;CACxC;AAID,qBAAa,aAAc,SAAQ,SAAS;gBAC5B,OAAO,GAAE,OAAO,CAAC,oBAAoB,CAAM;CA4D1D"}
1
+ {"version":3,"file":"blur.d.ts","sourceRoot":"","sources":["../../src/filter/blur.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,MAAM,CAAA;CACxC;AAID,qBAAa,aAAc,SAAQ,SAAS;gBAC5B,OAAO,GAAE,OAAO,CAAC,oBAAoB,CAAM;CA4D1D"}
@@ -1,14 +1,15 @@
1
- import { TgdMath, TgdVec2 } from "../math/index.js";
1
+ import { tgdCalcDegToRad } from "./../utils/index.js";
2
+ import { TgdVec2 } from "../math/index.js";
2
3
  import { TgdFilter } from "./filter.js";
3
4
  const DEFAULT_DIRECTION = new TgdVec2(1, 0);
4
5
  export class TgdFilterBlur extends TgdFilter {
5
6
  constructor(options = {}) {
6
7
  const { size = 4 } = options;
7
8
  const direction = figureOutDirection(options.direction);
8
- const len = direction.size;
9
- const invLen = len > 0 ? 1 / len : 1;
10
- const sx = direction.x * invLen;
11
- const sy = direction.y * invLen;
9
+ const length = direction.size;
10
+ const invLength = length > 0 ? 1 / length : 1;
11
+ const sx = direction.x * invLength;
12
+ const sy = direction.y * invLength;
12
13
  const lines = ["vec2 s;", "float f;"];
13
14
  let total = 0;
14
15
  for (let s = 0; s < size - 1; s += 2) {
@@ -47,12 +48,12 @@ export class TgdFilterBlur extends TgdFilter {
47
48
  }
48
49
  }
49
50
  function figureOutDirection(direction) {
50
- if (typeof direction === "undefined")
51
+ if (direction === undefined)
51
52
  return DEFAULT_DIRECTION;
52
53
  if (typeof direction === "number") {
53
- const ang = TgdMath.degreesToRadians(direction);
54
+ const ang = tgdCalcDegToRad(direction);
54
55
  return new TgdVec2(Math.cos(ang), Math.sin(ang));
55
56
  }
56
57
  return direction;
57
58
  }
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmx1ci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWx0ZXIvYmx1ci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBWXBDLE1BQU0saUJBQWlCLEdBQXNCLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUU5RCxNQUFNLE9BQU8sYUFBYyxTQUFRLFNBQVM7SUFDeEMsWUFBWSxVQUF5QyxFQUFFO1FBQ25ELE1BQU0sRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQzVCLE1BQU0sU0FBUyxHQUFZLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNoRSxNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFBO1FBQzFCLE1BQU0sTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNwQyxNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtRQUMvQixNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtRQUMvQixNQUFNLEtBQUssR0FBYSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQTtRQUMvQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUE7UUFDYixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQTtZQUN2QixLQUFLLElBQUksTUFBTSxDQUFBO1lBQ2YsS0FBSyxDQUFDLElBQUksQ0FDTixPQUFPLENBQUMsR0FBRyxHQUFHLFNBQVMsRUFDdkIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQzNCLDhDQUE4QyxFQUM5Qyw4Q0FBOEMsQ0FDakQsQ0FBQTtRQUNMLENBQUM7UUFDRCxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNYLDBCQUEwQjtZQUMxQixLQUFLLENBQUMsSUFBSSxDQUNOLE9BQU8sSUFBSSxTQUFTLEVBQ3BCLDBDQUEwQyxFQUMxQywwQ0FBMEMsQ0FDN0MsQ0FBQTtZQUNELEtBQUssRUFBRSxDQUFBO1FBQ1gsQ0FBQztRQUNELEtBQUssR0FBRyxLQUFLLEdBQUcsS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUE7UUFDaEMsS0FBSyxDQUFDO1lBQ0Ysa0JBQWtCLEVBQUU7Z0JBQ2hCLGtCQUFrQjtnQkFDbEI7b0JBQ0kscUJBQXFCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUc7b0JBQ3JDLHNCQUFzQixFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2lCQUN4QztnQkFDRCxJQUFJO2dCQUNKLGdCQUFnQixDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQzlCLENBQUMsQ0FDSixnQ0FBZ0M7Z0JBQ2pDLEdBQUcsS0FBSztnQkFDUix1QkFBdUIsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHO2FBQ25EO1lBQ0QsUUFBUSxFQUFFO2dCQUNOLFdBQVcsRUFBRSxPQUFPO2dCQUNwQixlQUFlLEVBQUUsT0FBTztnQkFDeEIsZ0JBQWdCLEVBQUUsT0FBTzthQUM1QjtZQUNELFdBQVcsQ0FBQyxPQUFPLEVBQUUsS0FBSztnQkFDdEIsT0FBTyxDQUFDLFNBQVMsQ0FDYixpQkFBaUIsRUFDakIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQ3BDLENBQUE7Z0JBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FDYixrQkFBa0IsRUFDbEIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQ3JDLENBQUE7WUFDTCxDQUFDO1NBQ0osQ0FBQyxDQUFBO0lBQ04sQ0FBQztDQUNKO0FBRUQsU0FBUyxrQkFBa0IsQ0FDdkIsU0FBaUQ7SUFFakQsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXO1FBQUUsT0FBTyxpQkFBaUIsQ0FBQTtJQUU5RCxJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUMvQyxPQUFPLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRCxPQUFPLFNBQVMsQ0FBQTtBQUNwQixDQUFDIn0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmx1ci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWx0ZXIvYmx1ci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQVlwQyxNQUFNLGlCQUFpQixHQUFzQixJQUFJLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFFOUQsTUFBTSxPQUFPLGFBQWMsU0FBUSxTQUFTO0lBQ3hDLFlBQVksVUFBeUMsRUFBRTtRQUNuRCxNQUFNLEVBQUUsSUFBSSxHQUFHLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUM1QixNQUFNLFNBQVMsR0FBWSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDaEUsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQTtRQUM3QixNQUFNLFNBQVMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDN0MsTUFBTSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUE7UUFDbEMsTUFBTSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUE7UUFDbEMsTUFBTSxLQUFLLEdBQWEsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUE7UUFDL0MsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFBO1FBQ2IsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUE7WUFDdkIsS0FBSyxJQUFJLE1BQU0sQ0FBQTtZQUNmLEtBQUssQ0FBQyxJQUFJLENBQ04sT0FBTyxDQUFDLEdBQUcsR0FBRyxTQUFTLEVBQ3ZCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUMzQiw4Q0FBOEMsRUFDOUMsOENBQThDLENBQ2pELENBQUE7UUFDTCxDQUFDO1FBQ0QsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDWCwwQkFBMEI7WUFDMUIsS0FBSyxDQUFDLElBQUksQ0FDTixPQUFPLElBQUksU0FBUyxFQUNwQiwwQ0FBMEMsRUFDMUMsMENBQTBDLENBQzdDLENBQUE7WUFDRCxLQUFLLEVBQUUsQ0FBQTtRQUNYLENBQUM7UUFDRCxLQUFLLEdBQUcsS0FBSyxHQUFHLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFBO1FBQ2hDLEtBQUssQ0FBQztZQUNGLGtCQUFrQixFQUFFO2dCQUNoQixrQkFBa0I7Z0JBQ2xCO29CQUNJLHFCQUFxQixFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHO29CQUNyQyxzQkFBc0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtpQkFDeEM7Z0JBQ0QsSUFBSTtnQkFDSixnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUM5QixDQUFDLENBQ0osZ0NBQWdDO2dCQUNqQyxHQUFHLEtBQUs7Z0JBQ1IsdUJBQXVCLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRzthQUNuRDtZQUNELFFBQVEsRUFBRTtnQkFDTixXQUFXLEVBQUUsT0FBTztnQkFDcEIsZUFBZSxFQUFFLE9BQU87Z0JBQ3hCLGdCQUFnQixFQUFFLE9BQU87YUFDNUI7WUFDRCxXQUFXLENBQUMsT0FBTyxFQUFFLEtBQUs7Z0JBQ3RCLE9BQU8sQ0FBQyxTQUFTLENBQ2IsaUJBQWlCLEVBQ2pCLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUNwQyxDQUFBO2dCQUNELE9BQU8sQ0FBQyxTQUFTLENBQ2Isa0JBQWtCLEVBQ2xCLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUNyQyxDQUFBO1lBQ0wsQ0FBQztTQUNKLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSjtBQUVELFNBQVMsa0JBQWtCLENBQ3ZCLFNBQWlEO0lBRWpELElBQUksU0FBUyxLQUFLLFNBQVM7UUFBRSxPQUFPLGlCQUFpQixDQUFBO0lBRXJELElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDaEMsTUFBTSxHQUFHLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ3RDLE9BQU8sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7SUFDcEQsQ0FBQztJQUVELE9BQU8sU0FBUyxDQUFBO0FBQ3BCLENBQUMifQ==
@@ -1,14 +1,5 @@
1
1
  import { TgdFilter } from "./filter.js";
2
2
  export class TgdFilterChromaticAberration extends TgdFilter {
3
- /**
4
- * Percentage of displacement of the color or the border of the image.
5
- * The blue is push await from the center, and the red is pulled to
6
- * the center. But if you use a negative `strength`, the process is
7
- * reversed.
8
- *
9
- * Default to 1.0 (means 1% of displacement).
10
- */
11
- strength = 1;
12
3
  constructor(options = {}) {
13
4
  const { strength = 1 } = options;
14
5
  super({
@@ -27,7 +18,16 @@ export class TgdFilterChromaticAberration extends TgdFilter {
27
18
  program.uniform1f("uniInverseHeight", 1 / program.gl.drawingBufferHeight);
28
19
  },
29
20
  });
21
+ /**
22
+ * Percentage of displacement of the color or the border of the image.
23
+ * The blue is push await from the center, and the red is pulled to
24
+ * the center. But if you use a negative `strength`, the process is
25
+ * reversed.
26
+ *
27
+ * Default to 1.0 (means 1% of displacement).
28
+ */
29
+ this.strength = 1;
30
30
  this.strength = strength;
31
31
  }
32
32
  }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyb21hdGljLWFiZXJyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmlsdGVyL2Nocm9tYXRpYy1hYmVycmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFjcEMsTUFBTSxPQUFPLDRCQUE2QixTQUFRLFNBQVM7SUFDdkQ7Ozs7Ozs7T0FPRztJQUNJLFFBQVEsR0FBRyxDQUFDLENBQUE7SUFFbkIsWUFBWSxVQUF3RCxFQUFFO1FBQ2xFLE1BQU0sRUFBRSxRQUFRLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ2hDLEtBQUssQ0FBQztZQUNGLGtCQUFrQixFQUFFO2dCQUNoQixzREFBc0Q7Z0JBQ3RELCtDQUErQztnQkFDL0MseUNBQXlDO2dCQUN6QywrQ0FBK0M7Z0JBQy9DLCtCQUErQjthQUNsQztZQUNELFFBQVEsRUFBRTtnQkFDTixXQUFXLEVBQUUsT0FBTzthQUN2QjtZQUNELFdBQVcsRUFBRSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDNUIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUMvQyxPQUFPLENBQUMsU0FBUyxDQUNiLGtCQUFrQixFQUNsQixDQUFDLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FDckMsQ0FBQTtZQUNMLENBQUM7U0FDSixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtJQUM1QixDQUFDO0NBQ0oifQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyb21hdGljLWFiZXJyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmlsdGVyL2Nocm9tYXRpYy1hYmVycmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFjcEMsTUFBTSxPQUFPLDRCQUE2QixTQUFRLFNBQVM7SUFXdkQsWUFBWSxVQUF3RCxFQUFFO1FBQ2xFLE1BQU0sRUFBRSxRQUFRLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ2hDLEtBQUssQ0FBQztZQUNGLGtCQUFrQixFQUFFO2dCQUNoQixzREFBc0Q7Z0JBQ3RELCtDQUErQztnQkFDL0MseUNBQXlDO2dCQUN6QywrQ0FBK0M7Z0JBQy9DLCtCQUErQjthQUNsQztZQUNELFFBQVEsRUFBRTtnQkFDTixXQUFXLEVBQUUsT0FBTzthQUN2QjtZQUNELFdBQVcsRUFBRSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDNUIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO2dCQUMvQyxPQUFPLENBQUMsU0FBUyxDQUNiLGtCQUFrQixFQUNsQixDQUFDLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FDckMsQ0FBQTtZQUNMLENBQUM7U0FDSixDQUFDLENBQUE7UUE5Qk47Ozs7Ozs7V0FPRztRQUNJLGFBQVEsR0FBRyxDQUFDLENBQUE7UUF1QmYsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7SUFDNUIsQ0FBQztDQUNKIn0=
@@ -1,6 +1,7 @@
1
1
  import { TgdContext } from "../context";
2
+ import { TgdProgram } from "../program";
2
3
  import { TgdCodeBloc, TgdCodeFunctions } from "../shader/code";
3
- import { TgdProgram, WebglUniformType } from "../types";
4
+ import { WebglUniformType } from "../types";
4
5
  /**
5
6
  * Define the shader to be used in a filter.
6
7
  *
@@ -1 +1 @@
1
- {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/filter/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAEzD;;;;;;;;;;;;GAYG;AACH,qBAAa,SAAS;IAClB;;;OAGG;IACH,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAK;IAEnE;;;OAGG;IACH,SAAgB,kBAAkB,EAAE,WAAW,CAG9C;IAED,SAAgB,cAAc,EAAE,gBAAgB,GAAG,WAAW,CAAK;IAEnE,SAAgB,WAAW,YAEd,UAAU,QAEb,MAAM,WAEH,UAAU,KACpB,IAAI,CAAM;gBAED,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM;CAQtD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAA;IAC9C,kBAAkB,EAAE,WAAW,CAAA;IAC/B,cAAc,EAAE,gBAAgB,GAAG,WAAW,CAAA;IAC9C,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAAA;CAC5E"}
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/filter/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C;;;;;;;;;;;;GAYG;AACH,qBAAa,SAAS;IAClB;;;OAGG;IACH,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAK;IAEnE;;;OAGG;IACH,SAAgB,kBAAkB,EAAE,WAAW,CAG9C;IAED,SAAgB,cAAc,EAAE,gBAAgB,GAAG,WAAW,CAAK;IAEnE,SAAgB,WAAW,GAEvB,SAAS,UAAU,EAEnB,MAAM,MAAM,EAEZ,SAAS,UAAU,KACpB,IAAI,CAAM;gBAED,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM;CAQtD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAA;IAC9C,kBAAkB,EAAE,WAAW,CAAA;IAC/B,cAAc,EAAE,gBAAgB,GAAG,WAAW,CAAA;IAC9C,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAAA;CAC5E"}
@@ -12,28 +12,28 @@
12
12
  * * `float uniHeight`: height of the texture in pixels.
13
13
  */
14
14
  export class TgdFilter {
15
- /**
16
- * If you need more uniforms, define them here.
17
- * And set the values in the `setUniforms()` method.
18
- */
19
- uniforms = {};
20
- /**
21
- * The code of a `vec4 applyColor()` function.
22
- * Must return a `vec4` color.
23
- */
24
- fragmentShaderCode = [
25
- "vec4 color = texture(uniTexture, varUV);",
26
- "return color;",
27
- ];
28
- extraFunctions = {};
29
- setUniforms = (
30
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
31
- program,
32
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
33
- time,
34
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
35
- context) => { };
36
15
  constructor(options = {}) {
16
+ /**
17
+ * If you need more uniforms, define them here.
18
+ * And set the values in the `setUniforms()` method.
19
+ */
20
+ this.uniforms = {};
21
+ /**
22
+ * The code of a `vec4 applyColor()` function.
23
+ * Must return a `vec4` color.
24
+ */
25
+ this.fragmentShaderCode = [
26
+ "vec4 color = texture(uniTexture, varUV);",
27
+ "return color;",
28
+ ];
29
+ this.extraFunctions = {};
30
+ this.setUniforms = (
31
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
32
+ program,
33
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
+ time,
35
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
36
+ context) => { };
37
37
  const { uniforms, fragmentShaderCode, extraFunctions, setUniforms } = options;
38
38
  if (uniforms)
39
39
  this.uniforms = uniforms;
@@ -45,4 +45,4 @@ export class TgdFilter {
45
45
  this.setUniforms = setUniforms;
46
46
  }
47
47
  }
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZpbHRlci9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBTSxPQUFPLFNBQVM7SUFDbEI7OztPQUdHO0lBQ2EsUUFBUSxHQUF5QyxFQUFFLENBQUE7SUFFbkU7OztPQUdHO0lBQ2Esa0JBQWtCLEdBQWdCO1FBQzlDLDBDQUEwQztRQUMxQyxlQUFlO0tBQ2xCLENBQUE7SUFFZSxjQUFjLEdBQW1DLEVBQUUsQ0FBQTtJQUVuRCxXQUFXLEdBQUc7SUFDMUIsNkRBQTZEO0lBQzdELE9BQW1CO0lBQ25CLDZEQUE2RDtJQUM3RCxJQUFZO0lBQ1osNkRBQTZEO0lBQzdELE9BQW1CLEVBQ2YsRUFBRSxHQUFFLENBQUMsQ0FBQTtJQUViLFlBQVksVUFBcUMsRUFBRTtRQUMvQyxNQUFNLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsR0FDL0QsT0FBTyxDQUFBO1FBQ1gsSUFBSSxRQUFRO1lBQUUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7UUFDdEMsSUFBSSxrQkFBa0I7WUFBRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUE7UUFDcEUsSUFBSSxjQUFjO1lBQUUsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUE7UUFDeEQsSUFBSSxXQUFXO1lBQUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUE7SUFDbkQsQ0FBQztDQUNKIn0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZpbHRlci9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0E7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBTSxPQUFPLFNBQVM7SUEyQmxCLFlBQVksVUFBcUMsRUFBRTtRQTFCbkQ7OztXQUdHO1FBQ2EsYUFBUSxHQUF5QyxFQUFFLENBQUE7UUFFbkU7OztXQUdHO1FBQ2EsdUJBQWtCLEdBQWdCO1lBQzlDLDBDQUEwQztZQUMxQyxlQUFlO1NBQ2xCLENBQUE7UUFFZSxtQkFBYyxHQUFtQyxFQUFFLENBQUE7UUFFbkQsZ0JBQVcsR0FBRztRQUMxQiw2REFBNkQ7UUFDN0QsT0FBbUI7UUFDbkIsNkRBQTZEO1FBQzdELElBQVk7UUFDWiw2REFBNkQ7UUFDN0QsT0FBbUIsRUFDZixFQUFFLEdBQUUsQ0FBQyxDQUFBO1FBR1QsTUFBTSxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLEdBQy9ELE9BQU8sQ0FBQTtRQUNYLElBQUksUUFBUTtZQUFFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3RDLElBQUksa0JBQWtCO1lBQUUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFBO1FBQ3BFLElBQUksY0FBYztZQUFFLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFBO1FBQ3hELElBQUksV0FBVztZQUFFLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO0lBQ25ELENBQUM7Q0FDSiJ9
@@ -1,4 +1,4 @@
1
- import { TgdProgram } from "..";
1
+ import { TgdProgram } from "../program";
2
2
  import { TgdFilter } from "./filter";
3
3
  export declare class TgdFilterHueRotation extends TgdFilter {
4
4
  private hueShift;
@@ -1 +1 @@
1
- {"version":3,"file":"hue-rotation.d.ts","sourceRoot":"","sources":["../../src/filter/hue-rotation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,qBAAa,oBAAqB,SAAQ,SAAS;IAC/C,OAAO,CAAC,QAAQ,CAAI;gBAER,EACR,iBAAqB,GACxB,GAAE,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,CAAM;IAuB9C,IAAI,iBAAiB,IAGI,MAAM,CAD9B;IACD,IAAI,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAE9B;IAED,IAAI,iBAAiB,IAGI,MAAM,CAD9B;IACD,IAAI,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAE9B;IAED,SAAgB,WAAW,YACd,UAAU,SACZ,MAAM,KACd,IAAI,CAEN;CACJ"}
1
+ {"version":3,"file":"hue-rotation.d.ts","sourceRoot":"","sources":["../../src/filter/hue-rotation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,qBAAa,oBAAqB,SAAQ,SAAS;IAC/C,OAAO,CAAC,QAAQ,CAAI;gBAER,EACR,iBAAqB,GACxB,GAAE,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,CAAM;IAuB9C,IAAI,iBAAiB,IAGI,MAAM,CAD9B;IACD,IAAI,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAE9B;IAED,IAAI,iBAAiB,IAGI,MAAM,CAD9B;IACD,IAAI,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAE9B;IAED,SAAgB,WAAW,GACvB,SAAS,UAAU,EACnB,OAAO,MAAM,KACd,IAAI,CAEN;CACJ"}