melonjs 18.3.0 → 19.1.0

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 (134) hide show
  1. package/README.md +11 -4
  2. package/build/application/application.d.ts.map +1 -1
  3. package/build/application/defaultApplicationSettings.d.ts +1 -1
  4. package/build/application/header.d.ts.map +1 -1
  5. package/build/application/settings.d.ts +46 -7
  6. package/build/application/settings.d.ts.map +1 -1
  7. package/build/camera/camera2d.d.ts +1 -2
  8. package/build/camera/camera2d.d.ts.map +1 -1
  9. package/build/geometries/earcut.d.ts.map +1 -1
  10. package/build/geometries/rectangle.d.ts.map +1 -1
  11. package/build/index.d.ts +20 -3
  12. package/build/index.d.ts.map +1 -1
  13. package/build/index.js +3174 -783
  14. package/build/index.js.map +4 -4
  15. package/build/input/gamepad.d.ts.map +1 -1
  16. package/build/level/level.d.ts +3 -3
  17. package/build/level/tiled/TMXTile.d.ts.map +1 -1
  18. package/build/loader/cache.d.ts +2 -0
  19. package/build/loader/cache.d.ts.map +1 -1
  20. package/build/loader/loader.d.ts +60 -0
  21. package/build/loader/loader.d.ts.map +1 -1
  22. package/build/loader/loadingscreen.d.ts +1 -1
  23. package/build/loader/parsers/mtl.d.ts +11 -0
  24. package/build/loader/parsers/mtl.d.ts.map +1 -0
  25. package/build/loader/parsers/obj.d.ts +11 -0
  26. package/build/loader/parsers/obj.d.ts.map +1 -0
  27. package/build/math/color.d.ts.map +1 -1
  28. package/build/math/math.d.ts +12 -0
  29. package/build/math/math.d.ts.map +1 -1
  30. package/build/math/matrix2d.d.ts +2 -2
  31. package/build/math/matrix2d.d.ts.map +1 -1
  32. package/build/math/matrix3d.d.ts +19 -4
  33. package/build/math/matrix3d.d.ts.map +1 -1
  34. package/build/math/observableVector2d.d.ts +1 -1
  35. package/build/math/observableVector2d.d.ts.map +1 -1
  36. package/build/math/observableVector3d.d.ts +1 -1
  37. package/build/math/observableVector3d.d.ts.map +1 -1
  38. package/build/math/vertex.d.ts +42 -0
  39. package/build/math/vertex.d.ts.map +1 -0
  40. package/build/particles/particle.d.ts.map +1 -1
  41. package/build/physics/bounds.d.ts +3 -2
  42. package/build/physics/bounds.d.ts.map +1 -1
  43. package/build/renderable/container.d.ts +21 -5
  44. package/build/renderable/container.d.ts.map +1 -1
  45. package/build/renderable/entity/entity.d.ts +7 -0
  46. package/build/renderable/entity/entity.d.ts.map +1 -1
  47. package/build/renderable/mesh.d.ts +147 -0
  48. package/build/renderable/mesh.d.ts.map +1 -0
  49. package/build/renderable/renderable.d.ts +56 -30
  50. package/build/renderable/renderable.d.ts.map +1 -1
  51. package/build/renderable/sprite.d.ts +1 -1
  52. package/build/renderable/text/bitmaptext.d.ts +1 -10
  53. package/build/renderable/text/bitmaptext.d.ts.map +1 -1
  54. package/build/renderable/text/bitmaptextdata.d.ts.map +1 -1
  55. package/build/renderable/text/glyph.d.ts +1 -1
  56. package/build/renderable/text/glyph.d.ts.map +1 -1
  57. package/build/renderable/text/text.d.ts +2 -12
  58. package/build/renderable/text/text.d.ts.map +1 -1
  59. package/build/renderable/trail.d.ts +120 -0
  60. package/build/renderable/trail.d.ts.map +1 -0
  61. package/build/renderable/ui/uitextbutton.d.ts +2 -6
  62. package/build/renderable/ui/uitextbutton.d.ts.map +1 -1
  63. package/build/state/stage.d.ts +39 -57
  64. package/build/state/stage.d.ts.map +1 -1
  65. package/build/state/state.d.ts +14 -28
  66. package/build/state/state.d.ts.map +1 -1
  67. package/build/system/event.d.ts +1 -1
  68. package/build/system/event.d.ts.map +1 -1
  69. package/build/system/eventEmitter.d.ts.map +1 -1
  70. package/build/tweens/easing.d.ts +23 -34
  71. package/build/tweens/easing.d.ts.map +1 -1
  72. package/build/tweens/interpolation.d.ts +32 -0
  73. package/build/tweens/interpolation.d.ts.map +1 -1
  74. package/build/tweens/tween.d.ts +77 -41
  75. package/build/tweens/tween.d.ts.map +1 -1
  76. package/build/video/canvas/canvas_renderer.d.ts +7 -4
  77. package/build/video/canvas/canvas_renderer.d.ts.map +1 -1
  78. package/build/video/gradient.d.ts +31 -0
  79. package/build/video/gradient.d.ts.map +1 -1
  80. package/build/video/renderer.d.ts +17 -6
  81. package/build/video/renderer.d.ts.map +1 -1
  82. package/build/video/renderstate.d.ts +4 -4
  83. package/build/video/rendertarget/canvasrendertarget.d.ts.map +1 -1
  84. package/build/video/texture/cache.d.ts +6 -0
  85. package/build/video/texture/cache.d.ts.map +1 -1
  86. package/build/video/webgl/batchers/batcher.d.ts.map +1 -1
  87. package/build/video/webgl/batchers/material_batcher.d.ts +65 -0
  88. package/build/video/webgl/batchers/material_batcher.d.ts.map +1 -0
  89. package/build/video/webgl/batchers/mesh_batcher.d.ts +20 -0
  90. package/build/video/webgl/batchers/mesh_batcher.d.ts.map +1 -0
  91. package/build/video/webgl/batchers/quad_batcher.d.ts +17 -39
  92. package/build/video/webgl/batchers/quad_batcher.d.ts.map +1 -1
  93. package/build/video/webgl/buffer/index.d.ts +5 -0
  94. package/build/video/webgl/buffer/index.d.ts.map +1 -1
  95. package/build/video/webgl/buffer/vertex.d.ts +13 -2
  96. package/build/video/webgl/buffer/vertex.d.ts.map +1 -1
  97. package/build/video/webgl/effects/blur.d.ts +36 -0
  98. package/build/video/webgl/effects/blur.d.ts.map +1 -0
  99. package/build/video/webgl/effects/chromaticAberration.d.ts +39 -0
  100. package/build/video/webgl/effects/chromaticAberration.d.ts.map +1 -0
  101. package/build/video/webgl/effects/desaturate.d.ts +32 -0
  102. package/build/video/webgl/effects/desaturate.d.ts.map +1 -0
  103. package/build/video/webgl/effects/dissolve.d.ts +42 -0
  104. package/build/video/webgl/effects/dissolve.d.ts.map +1 -0
  105. package/build/video/webgl/effects/dropShadow.d.ts +47 -0
  106. package/build/video/webgl/effects/dropShadow.d.ts.map +1 -0
  107. package/build/video/webgl/effects/flash.d.ts +46 -0
  108. package/build/video/webgl/effects/flash.d.ts.map +1 -0
  109. package/build/video/webgl/effects/glow.d.ts +48 -0
  110. package/build/video/webgl/effects/glow.d.ts.map +1 -0
  111. package/build/video/webgl/effects/hologram.d.ts +37 -0
  112. package/build/video/webgl/effects/hologram.d.ts.map +1 -0
  113. package/build/video/webgl/effects/invert.d.ts +29 -0
  114. package/build/video/webgl/effects/invert.d.ts.map +1 -0
  115. package/build/video/webgl/effects/outline.d.ts +49 -0
  116. package/build/video/webgl/effects/outline.d.ts.map +1 -0
  117. package/build/video/webgl/effects/pixelate.d.ts +38 -0
  118. package/build/video/webgl/effects/pixelate.d.ts.map +1 -0
  119. package/build/video/webgl/effects/scanline.d.ts +47 -0
  120. package/build/video/webgl/effects/scanline.d.ts.map +1 -0
  121. package/build/video/webgl/effects/sepia.d.ts +28 -0
  122. package/build/video/webgl/effects/sepia.d.ts.map +1 -0
  123. package/build/video/webgl/effects/tintPulse.d.ts +43 -0
  124. package/build/video/webgl/effects/tintPulse.d.ts.map +1 -0
  125. package/build/video/webgl/effects/wave.d.ts +43 -0
  126. package/build/video/webgl/effects/wave.d.ts.map +1 -0
  127. package/build/video/webgl/shadereffect.d.ts.map +1 -1
  128. package/build/video/webgl/shaders/multitexture.d.ts +10 -0
  129. package/build/video/webgl/shaders/multitexture.d.ts.map +1 -0
  130. package/build/video/webgl/utils/precision.d.ts +4 -3
  131. package/build/video/webgl/utils/precision.d.ts.map +1 -1
  132. package/build/video/webgl/webgl_renderer.d.ts +15 -9
  133. package/build/video/webgl/webgl_renderer.d.ts.map +1 -1
  134. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"canvas_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/canvas/canvas_renderer.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/canvas/canvas_renderer.js"],"names":[],"mappings":"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"}
@@ -49,6 +49,15 @@ export class Gradient {
49
49
  * @ignore
50
50
  */
51
51
  _dirty: boolean;
52
+ /**
53
+ * cached parsed Color objects for sampling (lazily built)
54
+ * @type {{offset: number, color: Color}[]|null}
55
+ * @ignore
56
+ */
57
+ _parsedStops: {
58
+ offset: number;
59
+ color: Color;
60
+ }[] | null;
52
61
  /**
53
62
  * Add a color stop to the gradient.
54
63
  * @param {number} offset - value between 0.0 and 1.0
@@ -79,6 +88,28 @@ export class Gradient {
79
88
  * @ignore
80
89
  */
81
90
  toCanvas(renderer: CanvasRenderer | WebGLRenderer, x: number, y: number, width: number, height: number): HTMLCanvasElement | OffscreenCanvas;
91
+ /**
92
+ * Get the interpolated color at a given position along the gradient.
93
+ * Useful for procedural effects like trails that need per-segment colors.
94
+ * @param {number} position - position along the gradient (0.0–1.0)
95
+ * @param {Color} out - output Color object to write into
96
+ * @returns {Color} the output Color object
97
+ * @example
98
+ * const gradient = new Gradient("linear", [0, 0, 1, 0]);
99
+ * gradient.addColorStop(0, "#ff0000");
100
+ * gradient.addColorStop(1, "#0000ff");
101
+ * gradient.getColorAt(0.5, myColor); // myColor is now purple
102
+ */
103
+ getColorAt(position: number, out: Color): Color;
104
+ /**
105
+ * Build the parsed Color cache from colorStops strings.
106
+ * @ignore
107
+ */
108
+ _buildParsedStops(): void;
109
+ /**
110
+ * Release pooled resources held by this gradient.
111
+ */
112
+ destroy(): void;
82
113
  }
83
114
  import CanvasRenderTarget from "./rendertarget/canvasrendertarget.js";
84
115
  import type { Color } from "../math/color.ts";
@@ -1 +1 @@
1
- {"version":3,"file":"gradient.d.ts","sourceRoot":"","sources":["../../src/video/gradient.js"],"names":[],"mappings":"AAkBA;;;;GAIG;AACH;IACC;;;OAGG;IACH,kBAHW,QAAQ,GAAC,QAAQ,UACjB,MAAM,EAAE,EA8ClB;IA3CA;;;OAGG;IACH,cAAc;IACd,YAA2B;IAE3B,0BAAgB;IAEhB;;;;OAIG;IACH,QAHU,MAAM,EAAE,CAGE;IAEpB;;;;OAIG;IACH,YAHU,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,CAG5B;IAEpB;;;;OAIG;IACH,iBAHU,cAAc,GAAC,SAAS,CAGF;IAEhC;;;;OAIG;IACH,eAHU,kBAAkB,GAAC,SAAS,CAGR;IAE9B;;;;OAIG;IACH,QAHU,OAAO,CAGC;IAGnB;;;;;;;;;OASG;IACH,qBARW,MAAM,SACN,KAAK,GAAC,MAAM,GACV,QAAQ,CAmBpB;IAED;;;;;OAKG;IACH,0BAJW,wBAAwB,GACtB,cAAc,CAiC1B;IAED;;;;;;;;;;OAUG;IACH,mBARW,cAAc,GAAC,aAAa,KAC5B,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,GACJ,iBAAiB,GAAC,eAAe,CAwE7C;CACD;+BAzN8B,sCAAsC;2BAG7C,kBAAkB"}
1
+ {"version":3,"file":"gradient.d.ts","sourceRoot":"","sources":["../../src/video/gradient.js"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH;IACC;;;OAGG;IACH,kBAHW,QAAQ,GAAC,QAAQ,UACjB,MAAM,EAAE,EAqDlB;IAlDA;;;OAGG;IACH,cAAc;IACd,YAA2B;IAE3B,0BAAgB;IAEhB;;;;OAIG;IACH,QAHU,MAAM,EAAE,CAGE;IAEpB;;;;OAIG;IACH,YAHU,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,CAG5B;IAEpB;;;;OAIG;IACH,iBAHU,cAAc,GAAC,SAAS,CAGF;IAEhC;;;;OAIG;IACH,eAHU,kBAAkB,GAAC,SAAS,CAGR;IAE9B;;;;OAIG;IACH,QAHU,OAAO,CAGC;IAElB;;;;OAIG;IACH,cAHU;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAC,EAAE,GAAC,IAAI,CAGvB;IAGzB;;;;;;;;;OASG;IACH,qBARW,MAAM,SACN,KAAK,GAAC,MAAM,GACV,QAAQ,CA0BpB;IAED;;;;;OAKG;IACH,0BAJW,wBAAwB,GACtB,cAAc,CAiC1B;IAED;;;;;;;;;;OAUG;IACH,mBARW,cAAc,GAAC,aAAa,KAC5B,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,GACJ,iBAAiB,GAAC,eAAe,CAwE7C;IAED;;;;;;;;;;;OAWG;IACH,qBATW,MAAM,OACN,KAAK,GACH,KAAK,CA+CjB;IAED;;;OAGG;IACH,0BAWC;IAED;;OAEG;IACH,gBAOC;CACD;+BAtT8B,sCAAsC;2BAH7C,kBAAkB"}
@@ -45,17 +45,18 @@ export default class Renderer {
45
45
  * @type {boolean}
46
46
  */
47
47
  isContextValid: boolean;
48
- /**
49
- * the default method to sort object ("sorting", "z-buffer")
50
- * @type {string}
51
- * @default "sorting"
52
- */
53
- depthTest: string;
54
48
  /**
55
49
  * The GPU renderer string (WebGL only, undefined for Canvas)
56
50
  * @type {string|undefined}
57
51
  */
58
52
  GPURenderer: string | undefined;
53
+ /**
54
+ * an optional custom shader to use instead of the default one.
55
+ * Set by a renderable's preDraw when a shader is assigned.
56
+ * (WebGL only, ignored by Canvas renderer)
57
+ * @type {GLShader|ShaderEffect|undefined}
58
+ */
59
+ customShader: GLShader | ShaderEffect | undefined;
59
60
  /**
60
61
  * The Path2D instance used by the renderer to draw primitives
61
62
  * @type {Path2D}
@@ -114,6 +115,16 @@ export default class Renderer {
114
115
  * render the main framebuffer on screen
115
116
  */
116
117
  flush(): void;
118
+ /**
119
+ * Draw a textured triangle mesh.
120
+ * The mesh object must provide: `vertices` (Float32Array, x/y/z triplets),
121
+ * `uvs` (Float32Array, u/v pairs), `indices` (Uint16Array, triangle indices),
122
+ * `texture` (TextureAtlas), `vertexCount` (number), and optionally
123
+ * `cullBackFaces` (boolean, default true).
124
+ * WebGL uses hardware depth testing; Canvas uses painter's algorithm (back-to-front sort).
125
+ * @param {Mesh} mesh - a Mesh renderable or compatible object
126
+ */
127
+ drawMesh(mesh: Mesh): void;
117
128
  /**
118
129
  * Reset context state
119
130
  */
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/video/renderer.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/video/renderer.js"],"names":[],"mappings":"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"}
@@ -22,9 +22,9 @@ export default class RenderState {
22
22
  currentTint: Color;
23
23
  /**
24
24
  * current transformation matrix
25
- * @type {Matrix2d}
25
+ * @type {Matrix3d}
26
26
  */
27
- currentTransform: Matrix2d;
27
+ currentTransform: Matrix3d;
28
28
  /**
29
29
  * current scissor/clipping rectangle [x, y, width, height]
30
30
  * @type {Int32Array}
@@ -59,7 +59,7 @@ export default class RenderState {
59
59
  /** @ignore */
60
60
  _tintStack: Color[];
61
61
  /** @ignore */
62
- _matrixStack: Matrix2d[];
62
+ _matrixStack: Matrix3d[];
63
63
  /** @ignore */
64
64
  _scissorStack: Int32Array<ArrayBuffer>[];
65
65
  /** @ignore */
@@ -98,6 +98,6 @@ export default class RenderState {
98
98
  private _growStacks;
99
99
  }
100
100
  import { Color } from "./../math/color.ts";
101
- import { Matrix2d } from "../math/matrix2d.ts";
101
+ import { Matrix3d } from "../math/matrix3d.ts";
102
102
  import type { Gradient } from "./gradient.js";
103
103
  //# sourceMappingURL=renderstate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canvasrendertarget.d.ts","sourceRoot":"","sources":["../../../src/video/rendertarget/canvasrendertarget.js"],"names":[],"mappings":";AA8EA;;;GAGG;AACH;IACC;;;;;;;;;;OAUG;IACH,mBAVW,MAAM,UACN,MAAM,eAEd;QAA4B,OAAO;QACN,YAAY;QACZ,WAAW;QACX,eAAe;QACf,kBAAkB;QAClB,SAAS;KACxC,EAuCA;IArCA;;;OAGG;IAGH;;;OAGG;IAGH,YAJU,wBAAwB,GAAC,qBAAqB,CAIU;IASjE,YAA+B;IAUhC,aAA0D;IAE1D,kBAAgC;IAMjC;;OAEG;IACH,4CAGC;IAED;;OAEG;IACH,cAGC;IAED;;;OAGG;IACH,sBAFW,OAAO,QAwBjB;IAED;;;;OAIG;IACH,cAHW,MAAM,UACN,MAAM,QAKhB;IAED;;;;;;;;OAQG;IACH,gBANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,GACJ,SAAS,CAUrB;IAED;;;;;;;OAOG;IACH,cANW,MAAM,YACN,MAAM,gBAmBhB;IAED;;;;;;;OAOG;IACH,qBANW,MAAM,YACN,MAAM,gBAmBhB;IAED;;;;;;;;OAQG;IACH,iBANW,MAAM,YACN,MAAM,gBAShB;IAED;;;;OAIG;IACH,qBAFW,cAAc,GAAC,aAAa,QAYtC;IALC,mBAEC;IAKH;;;;OAIG;IACH,mBAHW,cAAc,GAAC,aAAa,QAoBtC;IAWD,sBANU,MAAM,EAQf;IAXD;;;;OAIG;IACH,oBAFU,MAAM,CAIf;IAeD,uBANU,MAAM,EAQf;IAXD;;;;OAIG;IACH,qBAFU,MAAM,CAIf;CAKD;gCA1U8B,gCAAgC;+BACjC,8BAA8B"}
1
+ {"version":3,"file":"canvasrendertarget.d.ts","sourceRoot":"","sources":["../../../src/video/rendertarget/canvasrendertarget.js"],"names":[],"mappings":";AA8EA;;;GAGG;AACH;IACC;;;;;;;;;;OAUG;IACH,mBAVW,MAAM,UACN,MAAM,eAEd;QAA4B,OAAO;QACN,YAAY;QACZ,WAAW;QACX,eAAe;QACf,kBAAkB;QAClB,SAAS;KACxC,EAuCA;IArCA;;;OAGG;IAGH;;;OAGG;IAGH,YAJU,wBAAwB,GAAC,qBAAqB,CAIU;IASjE,YAA+B;IAUhC,aAA0D;IAE1D,kBAAgC;IAMjC;;OAEG;IACH,4CAGC;IAED;;OAEG;IACH,cAGC;IAED;;;OAGG;IACH,sBAFW,OAAO,QAwBjB;IAED;;;;OAIG;IACH,cAHW,MAAM,UACN,MAAM,QAKhB;IAED;;;;;;;;OAQG;IACH,gBANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,GACJ,SAAS,CAUrB;IAED;;;;;;;OAOG;IACH,cANW,MAAM,YACN,MAAM,gBAmBhB;IAED;;;;;;;OAOG;IACH,qBANW,MAAM,YACN,MAAM,gBAmBhB;IAED;;;;;;;;OAQG;IACH,iBANW,MAAM,YACN,MAAM,gBAShB;IAED;;;;OAIG;IACH,qBAFW,cAAc,GAAC,aAAa,QAatC;IALC,mBAEC;IAKH;;;;OAIG;IACH,mBAHW,cAAc,GAAC,aAAa,QAoBtC;IAWD,sBANU,MAAM,EAQf;IAXD;;;;OAIG;IACH,oBAFU,MAAM,CAIf;IAeD,uBANU,MAAM,EAQf;IAXD;;;;OAIG;IACH,qBAFU,MAAM,CAIf;CAKD;gCA3U8B,gCAAgC;+BACjC,8BAA8B"}
@@ -22,6 +22,12 @@ declare class TextureCache {
22
22
  * @ignore
23
23
  */
24
24
  allocateTextureUnit(): number;
25
+ /**
26
+ * Reset all texture unit assignments without clearing the texture cache.
27
+ * Used by multi-texture batching when the shader's sampler range is exceeded.
28
+ * @ignore
29
+ */
30
+ resetUnitAssignments(): void;
25
31
  /**
26
32
  * @ignore
27
33
  */
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/video/texture/cache.js"],"names":[],"mappings":";AAKA;;;GAGG;AACH;IACC;;OAEG;IACH,8CAUC;IARA,cAAwB;IAExB,qBAAgC;IAChC,sBAAuB;IACvB,qBAAsB;IACtB,oBAA0B;IAC1B,iBAAwB;IAIzB;;OAEG;IACH,cAKC;IAED;;OAEG;IACH,8BAuBC;IAED;;OAEG;IACH,oCAQC;IAED;;OAEG;IACH,2BAMC;IAED;;;OAGG;IACH,4BAGC;IAED;;;OAGG;IACH,yCAsBC;IAED;;OAEG;IACH,yBAEC;IAED;;;OAGG;IACH,iCAwCC;IAED;;OAEG;IACH,yBAQC;IAED;;OAEG;IACH,gCAcC;CACD;8BA/M6B,+BAA+B"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/video/texture/cache.js"],"names":[],"mappings":";AAKA;;;GAGG;AACH;IACC;;OAEG;IACH,8CAUC;IARA,cAAwB;IAExB,qBAAgC;IAChC,sBAAuB;IACvB,qBAAsB;IACtB,oBAA0B;IAC1B,iBAAwB;IAIzB;;OAEG;IACH,cAKC;IAED;;OAEG;IACH,8BAuBC;IAED;;;;OAIG;IACH,6BAOC;IAED;;OAEG;IACH,oCAQC;IAED;;OAEG;IACH,2BAMC;IAED;;;OAGG;IACH,4BAGC;IAED;;;OAGG;IACH,yCAsBC;IAED;;OAEG;IACH,yBAEC;IAED;;;OAGG;IACH,iCAwCC;IAED;;OAEG;IACH,yBAQC;IAED;;OAEG;IACH,gCAcC;CACD;8BA7N6B,+BAA+B"}
@@ -1 +1 @@
1
- {"version":3,"file":"batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/batchers/batcher.js"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH;IACC;;;;;;;;;;;;;;;OAeG;IACH,sBAfW,aAAa,YAErB;QAA2B,UAAU,EACrC;YAAoC,IAAI,EAAhC,MAAM;YACsB,IAAI,EAAhC,MAAM;YACsB,IAAI,EAAhC,MAAM;YACuB,UAAU,EAAvC,OAAO;YACqB,MAAM,EAAlC,MAAM;SACd;QAAyB,MAAM,EAC/B;YAAgC,MAAM,EAA9B,MAAM;YACkB,QAAQ,EAAhC,MAAM;SACd;QAA0B,WAAW;QACV,OAAO;QACR,iBAAiB;KAC7C,EAGA;IAED;;;OAGG;IACH,yCA4HC;IA1HA,cAAwB;IAGxB,QAAqB;IAGrB,gBAA2C;IAE3C;;;OAGG;IACH,oCAA8B;IAE9B;;;OAGG;IACH,oCAA8B;IAE9B;;;;OAIG;IACH,yBAA6B;IAE7B;;;;OAIG;IACH,iCAAoB;IAEpB;;;;;OAKG;IACH,2BAAe;IAEf;;;;;OAKG;IACH,+BAAmB;IAEnB;;;OAGG;IACH,0CAAsB;IAoCtB;;;OAGG;IACH,sCAA0E;IAE1E;;;OAGG;IACH,oCAA+C;IAE/C;;;;OAIG;IACH,+CAA0B;IAE1B;;;;OAIG;IACH,4CAAuB;IAUxB;;;OAGG;IACH,cAUC;IAED;;OAEG;IACH,aAYC;IAED;;;;OAIG;IACH,kBAFW,QAAQ,QAqBlB;IAHE,uCAA4B;IAK/B;;;;;;;OAOG;IACH,mBANW,MAAM,QACN,MAAM,QACN,MAAM,cACN,OAAO,UACP,MAAM,QA+BhB;IAED;;;OAGG;IACH,sBAFW,QAAQ,QAIlB;IAED;;;;OAIG;IACH,oBAFW,MAAM,EAAE,QAOlB;IAED;;;OAGG;IACH,aAFW,MAAM,QAyEhB;CACD;;qBA/WoB,gBAAgB;8BADP,qBAAqB;wBAD3B,oBAAoB;8BAOjB,2BAA2B;+BADxB,wBAAwB"}
1
+ {"version":3,"file":"batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/batchers/batcher.js"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH;IACC;;;;;;;;;;;;;;;OAeG;IACH,sBAfW,aAAa,YAErB;QAA2B,UAAU,EACrC;YAAoC,IAAI,EAAhC,MAAM;YACsB,IAAI,EAAhC,MAAM;YACsB,IAAI,EAAhC,MAAM;YACuB,UAAU,EAAvC,OAAO;YACqB,MAAM,EAAlC,MAAM;SACd;QAAyB,MAAM,EAC/B;YAAgC,MAAM,EAA9B,MAAM;YACkB,QAAQ,EAAhC,MAAM;SACd;QAA0B,WAAW;QACV,OAAO;QACR,iBAAiB;KAC7C,EAGA;IAED;;;OAGG;IACH,yCA6HC;IA3HA,cAAwB;IAGxB,QAAqB;IAGrB,gBAA2C;IAE3C;;;OAGG;IACH,oCAA8B;IAE9B;;;OAGG;IACH,oCAA8B;IAE9B;;;;OAIG;IACH,yBAA6B;IAE7B;;;;OAIG;IACH,iCAAoB;IAEpB;;;;;OAKG;IACH,2BAAe;IAEf;;;;;OAKG;IACH,+BAAmB;IAEnB;;;OAGG;IACH,0CAAsB;IAqCtB;;;OAGG;IACH,sCAA0E;IAE1E;;;OAGG;IACH,oCAA+C;IAE/C;;;;OAIG;IACH,+CAA0B;IAE1B;;;;OAIG;IACH,4CAAuB;IAUxB;;;OAGG;IACH,cAUC;IAED;;OAEG;IACH,aAYC;IAED;;;;OAIG;IACH,kBAFW,QAAQ,QAqBlB;IAHE,uCAA4B;IAK/B;;;;;;;OAOG;IACH,mBANW,MAAM,QACN,MAAM,QACN,MAAM,cACN,OAAO,UACP,MAAM,QA+BhB;IAED;;;OAGG;IACH,sBAFW,QAAQ,QAIlB;IAED;;;;OAIG;IACH,oBAFW,MAAM,EAAE,QAOlB;IAED;;;OAGG;IACH,aAFW,MAAM,QAyEhB;CACD;;qBAhXoB,gBAAgB;8BADP,qBAAqB;wBAD3B,oBAAoB;8BAOjB,2BAA2B;+BADxB,wBAAwB"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * additional import for TypeScript
3
+ * @import {TextureAtlas} from "./../../texture/atlas.js";
4
+ */
5
+ /**
6
+ * Base class for batchers that manage WebGL textures and material properties.
7
+ * Provides texture creation, binding, uploading, and deletion.
8
+ * @category Rendering
9
+ */
10
+ export class MaterialBatcher extends Batcher {
11
+ /**
12
+ * the current active texture unit
13
+ * @ignore
14
+ */
15
+ currentTextureUnit: any;
16
+ /**
17
+ * bound textures by unit
18
+ * @ignore
19
+ */
20
+ boundTextures: any[] | undefined;
21
+ /**
22
+ * Create a WebGL texture from an image
23
+ * @param {number} unit - Destination texture unit
24
+ * @param {Image|HTMLCanvasElement|ImageData|Uint8Array[]|Float32Array[]} [pixels=null] - Source image
25
+ * @param {number} filter - gl.LINEAR or gl.NEAREST
26
+ * @param {string} [repeat="no-repeat"] - Image repeat behavior
27
+ * @param {number} [w=pixels.width] - Source image width
28
+ * @param {number} [h=pixels.height] - Source image height
29
+ * @param {boolean} [premultipliedAlpha=true] - Multiplies the alpha channel into the other color channels
30
+ * @param {boolean} [mipmap=true] - Whether mipmap levels should be generated
31
+ * @returns {WebGLTexture} a WebGL texture
32
+ */
33
+ createTexture2D(unit: number, pixels?: (new (width?: number, height?: number) => HTMLImageElement) | HTMLCanvasElement | ImageData | Uint8Array[] | Float32Array[], filter: number, repeat?: string, w?: number, h?: number, premultipliedAlpha?: boolean, mipmap?: boolean, texture: any, flush?: boolean): WebGLTexture;
34
+ /**
35
+ * delete the given WebGL texture
36
+ * @param {WebGLTexture|TextureAtlas} texture - a WebGL texture or TextureAtlas to delete
37
+ */
38
+ deleteTexture2D(texture: WebGLTexture | TextureAtlas): void;
39
+ /**
40
+ * returns the WebGL texture associated to the given texture unit
41
+ * @param {number} unit - Texture unit to which a texture is bound
42
+ * @returns {WebGLTexture} texture a WebGL texture
43
+ */
44
+ getTexture2D(unit: number): WebGLTexture;
45
+ /**
46
+ * assign the given WebGL texture to the current batch
47
+ * @param {WebGLTexture} texture - a WebGL texture
48
+ * @param {number} unit - Texture unit to which the given texture is bound
49
+ */
50
+ bindTexture2D(texture: WebGLTexture, unit: number, flush?: boolean): void;
51
+ /**
52
+ * unbind the given WebGL texture, forcing it to be reuploaded
53
+ * @param {WebGLTexture} [texture] - a WebGL texture
54
+ * @param {number} [unit] - Texture unit to unbind from
55
+ * @returns {number} unit the unit number that was associated with the given texture
56
+ */
57
+ unbindTexture2D(texture?: WebGLTexture, unit?: number): number;
58
+ /**
59
+ * @ignore
60
+ */
61
+ uploadTexture(texture: any, w: any, h: any, force?: boolean, flush?: boolean): any;
62
+ }
63
+ import { Batcher } from "./batcher.js";
64
+ import type { TextureAtlas } from "./../../texture/atlas.js";
65
+ //# sourceMappingURL=material_batcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"material_batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/batchers/material_batcher.js"],"names":[],"mappings":"AAGA;;;GAGG;AAEH;;;;GAIG;AACH;IAQE;;;OAGG;IACH,wBAA4B;IAE5B;;;OAGG;IACH,iCAAuB;IA0BxB;;;;;;;;;;;OAWG;IACH,sBAVW,MAAM,WACN,8DAAM,iBAAiB,GAAC,SAAS,GAAC,UAAU,EAAE,GAAC,YAAY,EAAE,UAC7D,MAAM,WACN,MAAM,MACN,MAAM,MACN,MAAM,uBACN,OAAO,WACP,OAAO,kCACL,YAAY,CAmHxB;IAED;;;OAGG;IACH,yBAFW,YAAY,GAAC,YAAY,QAiBnC;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,YAAY,CAIxB;IAED;;;;OAIG;IACH,uBAHW,YAAY,QACZ,MAAM,yBAsBhB;IAED;;;;;OAKG;IACH,0BAJW,YAAY,SACZ,MAAM,GACJ,MAAM,CAalB;IAED;;OAEG;IACH,mFAsBC;CACD;wBA7RuB,cAAc;kCAIP,0BAA0B"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * A WebGL Batcher for rendering textured triangle meshes.
3
+ * Uses indexed drawing to efficiently render arbitrary triangle geometry.
4
+ * @category Rendering
5
+ */
6
+ export default class MeshBatcher extends MaterialBatcher {
7
+ /**
8
+ * Initialize the mesh batcher
9
+ * @ignore
10
+ */
11
+ init(renderer: any): void;
12
+ /**
13
+ * Add a textured mesh to the batch
14
+ * @param {object} mesh - a Mesh object with vertices, uvs, indices, and texture properties
15
+ * @param {number} tint - tint color in UINT32 (argb) format
16
+ */
17
+ addMesh(mesh: object, tint: number): void;
18
+ }
19
+ import { MaterialBatcher } from "./material_batcher.js";
20
+ //# sourceMappingURL=mesh_batcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh_batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/batchers/mesh_batcher.js"],"names":[],"mappings":"AAQA;;;;GAIG;AACH;IACC;;;OAGG;IACH,0BA+BC;IAED;;;;OAIG;IACH,cAHW,MAAM,QACN,MAAM,QA4EhB;CACD;gCAhI+B,uBAAuB"}
@@ -3,55 +3,33 @@
3
3
  * Pushes texture regions or shape geometry into WebGL buffers, automatically flushes to GPU
4
4
  * @category Rendering
5
5
  */
6
- export default class QuadBatcher extends Batcher {
6
+ export default class QuadBatcher extends MaterialBatcher {
7
7
  /**
8
8
  * Initialize the compositor
9
9
  * @ignore
10
10
  */
11
11
  init(renderer: any): void;
12
- currentTextureUnit: any;
13
- boundTextures: any[] | undefined;
14
12
  /**
15
- * Create a WebGL texture from an image
16
- * @param {number} unit - Destination texture unit
17
- * @param {Image|HTMLCanvasElement|ImageData|Uint8Array[]|Float32Array[]} [pixels=null] - Source image
18
- * @param {number} filter - gl.LINEAR or gl.NEAREST
19
- * @param {string} [repeat="no-repeat"] - Image repeat behavior (see {@link ImageLayer#repeat})
20
- * @param {number} [w=pixels.width] - Source image width (Only use with UInt8Array[] or Float32Array[] source image)
21
- * @param {number} [h=pixels.height] - Source image height (Only use with UInt8Array[] or Float32Array[] source image)
22
- * @param {boolean} [premultipliedAlpha=true] - Multiplies the alpha channel into the other color channels
23
- * @param {boolean} [mipmap=true] - Whether mipmap levels should be generated for this texture
24
- * @returns {WebGLTexture} a WebGL texture
25
- */
26
- createTexture2D(unit: number, pixels?: (new (width?: number, height?: number) => HTMLImageElement) | HTMLCanvasElement | ImageData | Uint8Array[] | Float32Array[], filter: number, repeat?: string, w?: number, h?: number, premultipliedAlpha?: boolean, mipmap?: boolean, texture: any): WebGLTexture;
27
- /**
28
- * delete the given WebGL texture
29
- * @param {WebGLTexture|TextureAtlas} texture - a WebGL texture or TextureAtlas to delete
30
- */
31
- deleteTexture2D(texture: WebGLTexture | TextureAtlas): void;
32
- /**
33
- * returns the WebGL texture associated to the given texture unit
34
- * @param {number} unit - Texture unit to which a texture is bound
35
- * @returns {WebGLTexture} texture a WebGL texture
36
- */
37
- getTexture2D(unit: number): WebGLTexture;
38
- /**
39
- * assign the given WebGL texture to the current batch
40
- * @param {WebGLTexture} texture - a WebGL texture
41
- * @param {number} unit - Texture unit to which the given texture is bound
13
+ * the maximum number of texture units used for multi-texture batching
14
+ * @type {number}
15
+ * @ignore
42
16
  */
43
- bindTexture2D(texture: WebGLTexture, unit: number): void;
17
+ maxBatchTextures: number | undefined;
44
18
  /**
45
- * unbind the given WebGL texture, forcing it to be reuploaded
46
- * @param {WebGLTexture} [texture] - a WebGL texture
47
- * @param {number} [unit] - a WebGL texture
48
- * @returns {number} unit the unit number that was associated with the given texture
19
+ * whether multi-texture batching is currently active
20
+ * (disabled when a custom ShaderEffect is applied)
21
+ * @type {boolean}
22
+ * @ignore
49
23
  */
50
- unbindTexture2D(texture?: WebGLTexture, unit?: number): number;
24
+ useMultiTexture: boolean | undefined;
51
25
  /**
52
- * @ignore
26
+ * Select the shader to use for compositing.
27
+ * Multi-texture batching is automatically enabled when the default
28
+ * shader is active, and disabled for custom ShaderEffect shaders.
29
+ * @see GLShader
30
+ * @param {GLShader} shader - a reference to a GLShader instance
53
31
  */
54
- uploadTexture(texture: any, w: any, h: any, force?: boolean): any;
32
+ useShader(shader: GLShader): void;
55
33
  /**
56
34
  * Add a textured quad
57
35
  * @param {TextureAtlas} texture - Source texture atlas
@@ -68,6 +46,6 @@ export default class QuadBatcher extends Batcher {
68
46
  */
69
47
  addQuad(texture: TextureAtlas, x: number, y: number, w: number, h: number, u0: number, v0: number, u1: number, v1: number, tint: number, reupload?: boolean): void;
70
48
  }
71
- import { Batcher } from "./batcher.js";
49
+ import { MaterialBatcher } from "./material_batcher.js";
72
50
  import type { TextureAtlas } from "./../../texture/atlas.js";
73
51
  //# sourceMappingURL=quad_batcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"quad_batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/batchers/quad_batcher.js"],"names":[],"mappings":"AAoBA;;;;GAIG;AACH;IACC;;;OAGG;IACH,0BA8CC;IAdA,wBAA4B;IAC5B,iCAAuB;IAoFxB;;;;;;;;;;;OAWG;IACH,sBAVW,MAAM,WACN,8DAAM,iBAAiB,GAAC,SAAS,GAAC,UAAU,EAAE,GAAC,YAAY,EAAE,UAC7D,MAAM,WACN,MAAM,MACN,MAAM,MACN,MAAM,uBACN,OAAO,WACP,OAAO,iBACL,YAAY,CAyGxB;IAED;;;OAGG;IACH,yBAFW,YAAY,GAAC,YAAY,QAkBnC;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,YAAY,CAIxB;IAED;;;;OAIG;IACH,uBAHW,YAAY,QACZ,MAAM,QAmBhB;IAED;;;;;OAKG;IACH,0BAJW,YAAY,SACZ,MAAM,GACJ,MAAM,CAalB;IAED;;OAEG;IACH,kEAqBC;IAED;;;;;;;;;;;;;OAaG;IACH,iBAZW,YAAY,KACZ,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QACN,MAAM,aACN,OAAO,QAuCjB;CACD;wBA3ZuB,cAAc;kCAIP,0BAA0B"}
1
+ {"version":3,"file":"quad_batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/batchers/quad_batcher.js"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH;IACC;;;OAGG;IACH,0BAkEC;IAjEA;;;;OAIG;IACH,qCAA0D;IA4C1D;;;;;OAKG;IACH,qCAA2B;IAY5B;;;;;;OAMG;IACH,kBAFW,QAAQ,QAKlB;IAgED;;;;;;;;;;;;;OAaG;IACH,iBAZW,YAAY,KACZ,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QACN,MAAM,aACN,OAAO,QAqDjB;CACD;gCAzO+B,uBAAuB;kCAIxB,0BAA0B"}
@@ -37,6 +37,11 @@ export default class IndexBuffer {
37
37
  * @param {number} vertexOffset - value to add to each index (vertex count at time of insertion)
38
38
  */
39
39
  add(indices: number[], vertexOffset: number): void;
40
+ /**
41
+ * Add pre-computed absolute indices to the buffer (no rebasing)
42
+ * @param {number[]} indices - absolute index values to add
43
+ */
44
+ addRaw(indices: number[]): void;
40
45
  /**
41
46
  * Upload the current index data to the GPU (for dynamic buffers)
42
47
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/buffer/index.js"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;IACC;;;;;OAKG;IACH,gBALW,qBAAqB,GAAC,sBAAsB,cAC5C,MAAM,cACN,OAAO,YACP,OAAO,EAqBjB;IAlBA,mDAAY;IACZ,iBAAsB;IAGrB,kBAA2B;IAC3B,0DAAuC;IAMxC;;;OAGG;IACH,QAFU,MAAM,CAED;IAEf,oBAA+B;IAGhC;;;;OAIG;IACH,0BAFW,MAAM,QAkBhB;IAED;;OAEG;IACH,cAEC;IAED;;;;OAIG;IACH,aAHW,MAAM,EAAE,gBACR,MAAM,QAOhB;IAED;;OAEG;IACH,eAOC;IAED;;OAEG;IACH,aAEC;CACD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/buffer/index.js"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;IACC;;;;;OAKG;IACH,gBALW,qBAAqB,GAAC,sBAAsB,cAC5C,MAAM,cACN,OAAO,YACP,OAAO,EAqBjB;IAlBA,mDAAY;IACZ,iBAAsB;IAGrB,kBAA2B;IAC3B,0DAAuC;IAMxC;;;OAGG;IACH,QAFU,MAAM,CAED;IAEf,oBAA+B;IAGhC;;;;OAIG;IACH,0BAFW,MAAM,QAkBhB;IAED;;OAEG;IACH,cAEC;IAED;;;;OAIG;IACH,aAHW,MAAM,EAAE,gBACR,MAAM,QAOhB;IAED;;;OAGG;IACH,gBAFW,MAAM,EAAE,QAOlB;IAED;;OAEG;IACH,eAOC;IAED;;OAEG;IACH,aAEC;CACD"}
@@ -22,10 +22,16 @@ export default class VertexArrayBuffer {
22
22
  */
23
23
  isFull(vertex: any): boolean;
24
24
  /**
25
- * push a new vertex to the buffer (quad format: x, y, u, v, tint)
25
+ * push a new vertex to the buffer
26
+ * @param {number} x - x position
27
+ * @param {number} y - y position
28
+ * @param {number} u - texture U coordinate
29
+ * @param {number} v - texture V coordinate
30
+ * @param {number} tint - tint color in UINT32 (argb) format
31
+ * @param {number} [textureId] - texture unit index for multi-texture batching
26
32
  * @ignore
27
33
  */
28
- push(x: any, y: any, u: any, v: any, tint: any): this;
34
+ push(x: number, y: number, u: number, v: number, tint: number, textureId?: number): this;
29
35
  /**
30
36
  * push a new vertex with all-float data to the buffer
31
37
  * @param {ArrayLike<number>} data - float values for one vertex
@@ -34,6 +40,11 @@ export default class VertexArrayBuffer {
34
40
  * @ignore
35
41
  */
36
42
  pushFloats(data: ArrayLike<number>, srcOffset: number, count: number): this;
43
+ /**
44
+ * push a new vertex to the buffer (mesh format: x, y, z, u, v, tint)
45
+ * @ignore
46
+ */
47
+ pushMesh(x: any, y: any, z: any, u: any, v: any, tint: any): this;
37
48
  /**
38
49
  * return a reference to the data in Float32 format
39
50
  * @ignore
@@ -1 +1 @@
1
- {"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/buffer/vertex.js"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;IACC,6CAeC;IAbA,gBAA4B;IAE5B,eAA0B;IAE1B,oBAAoB;IAGpB,oBAEC;IAED,qCAA8C;IAC9C,oCAA6C;IAG9C;;;OAGG;IACH,cAEC;IAED;;;OAGG;IACH,6BAEC;IAED;;;OAGG;IACH,sDAYC;IAED;;;;;;OAMG;IACH,iBALW,SAAS,CAAC,MAAM,CAAC,aACjB,MAAM,SACN,MAAM,QAahB;IAED;;;OAGG;IACH,2DAMC;IAED;;;OAGG;IACH,yDAMC;CACD"}
1
+ {"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/buffer/vertex.js"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;IACC,6CAeC;IAbA,gBAA4B;IAE5B,eAA0B;IAE1B,oBAAoB;IAGpB,oBAEC;IAED,qCAA8C;IAC9C,oCAA6C;IAG9C;;;OAGG;IACH,cAEC;IAED;;;OAGG;IACH,6BAEC;IAED;;;;;;;;;OASG;IACH,QARW,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,QACN,MAAM,cACN,MAAM,QAkBhB;IAED;;;;;;OAMG;IACH,iBALW,SAAS,CAAC,MAAM,CAAC,aACjB,MAAM,SACN,MAAM,QAahB;IAED;;;OAGG;IACH,kEAaC;IAED;;;OAGG;IACH,2DAMC;IAED;;;OAGG;IACH,yDAMC;CACD"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * A shader effect that applies a box blur to the sprite.
3
+ * Commonly used for background defocus, depth-of-field simulation,
4
+ * or UI backdrop blur.
5
+ * @category Effects
6
+ * @see {@link Renderable.shader} for usage
7
+ * @example
8
+ * // moderate blur
9
+ * mySprite.shader = new BlurEffect(renderer, { strength: 2.0 });
10
+ */
11
+ export default class BlurEffect extends ShaderEffect {
12
+ /**
13
+ * @param {import("../webgl_renderer.js").default} renderer - the current renderer instance
14
+ * @param {object} [options] - effect options
15
+ * @param {number} [options.strength=1.0] - blur strength in texels
16
+ * @param {number[]} [options.textureSize=[256, 256]] - texture dimensions [width, height]
17
+ */
18
+ constructor(renderer: import("../webgl_renderer.js").default, options?: {
19
+ strength?: number | undefined;
20
+ textureSize?: number[] | undefined;
21
+ });
22
+ strength: number;
23
+ /**
24
+ * set the blur strength
25
+ * @param {number} strength - blur strength in texels
26
+ */
27
+ setStrength(strength: number): void;
28
+ /**
29
+ * set the texture size
30
+ * @param {number} width - texture width in pixels
31
+ * @param {number} height - texture height in pixels
32
+ */
33
+ setTextureSize(width: number, height: number): void;
34
+ }
35
+ import ShaderEffect from "../shadereffect.js";
36
+ //# sourceMappingURL=blur.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blur.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/effects/blur.js"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH;IACC;;;;;OAKG;IACH,sBALW,OAAO,sBAAsB,EAAE,OAAO,YAE9C;QAAyB,QAAQ;QACN,WAAW;KACxC,EA8BA;IALA,iBAAuC;IAOxC;;;OAGG;IACH,sBAFW,MAAM,QAKhB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;CACD;yBAnEwB,oBAAoB"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * A shader effect that offsets the RGB color channels to create a
3
+ * chromatic aberration (color fringe) effect. Commonly used for
4
+ * impact feedback, glitch effects, or damage indicators.
5
+ * @category Effects
6
+ * @see {@link Renderable.shader} for usage
7
+ * @example
8
+ * // subtle chromatic aberration
9
+ * mySprite.shader = new ChromaticAberrationEffect(renderer, { offset: 2.0 });
10
+ * @example
11
+ * // strong glitch effect
12
+ * mySprite.shader = new ChromaticAberrationEffect(renderer, { offset: 5.0 });
13
+ */
14
+ export default class ChromaticAberrationEffect extends ShaderEffect {
15
+ /**
16
+ * @param {import("../webgl_renderer.js").default} renderer - the current renderer instance
17
+ * @param {object} [options] - effect options
18
+ * @param {number} [options.offset=3.0] - channel offset in texels
19
+ * @param {number[]} [options.textureSize=[256, 256]] - texture dimensions [width, height]
20
+ */
21
+ constructor(renderer: import("../webgl_renderer.js").default, options?: {
22
+ offset?: number | undefined;
23
+ textureSize?: number[] | undefined;
24
+ });
25
+ offset: number;
26
+ /**
27
+ * set the channel offset
28
+ * @param {number} offset - offset in texels
29
+ */
30
+ setOffset(offset: number): void;
31
+ /**
32
+ * set the texture size
33
+ * @param {number} width - texture width in pixels
34
+ * @param {number} height - texture height in pixels
35
+ */
36
+ setTextureSize(width: number, height: number): void;
37
+ }
38
+ import ShaderEffect from "../shadereffect.js";
39
+ //# sourceMappingURL=chromaticAberration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chromaticAberration.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/effects/chromaticAberration.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH;IACC;;;;;OAKG;IACH,sBALW,OAAO,sBAAsB,EAAE,OAAO,YAE9C;QAAyB,MAAM;QACJ,WAAW;KACxC,EAuBA;IALA,eAAmC;IAOpC;;;OAGG;IACH,kBAFW,MAAM,QAKhB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;CACD;yBA/DwB,oBAAoB"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * A shader effect that desaturates (grayscales) the sprite.
3
+ * The `intensity` uniform controls how much color is removed
4
+ * (0.0 = full color, 1.0 = fully grayscale).
5
+ * Commonly used for disabled states, death effects, or petrification.
6
+ * @category Effects
7
+ * @see {@link Renderable.shader} for usage
8
+ * @example
9
+ * // full grayscale
10
+ * mySprite.shader = new DesaturateEffect(renderer);
11
+ * @example
12
+ * // partial desaturation (50%)
13
+ * mySprite.shader = new DesaturateEffect(renderer, { intensity: 0.5 });
14
+ */
15
+ export default class DesaturateEffect extends ShaderEffect {
16
+ /**
17
+ * @param {import("../webgl_renderer.js").default} renderer - the current renderer instance
18
+ * @param {object} [options] - effect options
19
+ * @param {number} [options.intensity=1.0] - desaturation intensity (0.0 = full color, 1.0 = grayscale)
20
+ */
21
+ constructor(renderer: import("../webgl_renderer.js").default, options?: {
22
+ intensity?: number | undefined;
23
+ });
24
+ intensity: number;
25
+ /**
26
+ * set the desaturation intensity
27
+ * @param {number} value - desaturation intensity (0.0 = full color, 1.0 = grayscale)
28
+ */
29
+ setIntensity(value: number): void;
30
+ }
31
+ import ShaderEffect from "../shadereffect.js";
32
+ //# sourceMappingURL=desaturate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"desaturate.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/effects/desaturate.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH;IACC;;;;OAIG;IACH,sBAJW,OAAO,sBAAsB,EAAE,OAAO,YAE9C;QAAyB,SAAS;KACpC,EAgBA;IAHA,kBACgE;IAIjE;;;OAGG;IACH,oBAFW,MAAM,QAKhB;CACD;yBA/CwB,oBAAoB"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * A shader effect that dissolves the sprite using a noise-based threshold.
3
+ * Pixels are discarded based on a pseudo-random noise pattern as the
4
+ * `progress` value increases from 0 to 1.
5
+ * Commonly used for death, spawn, or teleport effects.
6
+ * @category Effects
7
+ * @see {@link Renderable.shader} for usage
8
+ * @example
9
+ * // create a dissolve effect
10
+ * const dissolve = new DissolveEffect(renderer);
11
+ * mySprite.shader = dissolve;
12
+ *
13
+ * // animate the dissolve (0 = fully visible, 1 = fully dissolved)
14
+ * dissolve.setProgress(0.5);
15
+ */
16
+ export default class DissolveEffect extends ShaderEffect {
17
+ /**
18
+ * @param {import("../webgl_renderer.js").default} renderer - the current renderer instance
19
+ * @param {object} [options] - effect options
20
+ * @param {number} [options.progress=0.0] - dissolve progress (0.0 = visible, 1.0 = dissolved)
21
+ * @param {number[]} [options.edgeColor=[1.0, 0.5, 0.0]] - color of the dissolve edge
22
+ * @param {number} [options.edgeWidth=0.1] - width of the colored edge (0.0–1.0)
23
+ */
24
+ constructor(renderer: import("../webgl_renderer.js").default, options?: {
25
+ progress?: number | undefined;
26
+ edgeColor?: number[] | undefined;
27
+ edgeWidth?: number | undefined;
28
+ });
29
+ progress: number;
30
+ /**
31
+ * set the dissolve progress
32
+ * @param {number} value - dissolve progress (0.0 = visible, 1.0 = dissolved)
33
+ */
34
+ setProgress(value: number): void;
35
+ /**
36
+ * set the edge color
37
+ * @param {number[]} color - edge color as [r, g, b] (0.0–1.0)
38
+ */
39
+ setEdgeColor(color: number[]): void;
40
+ }
41
+ import ShaderEffect from "../shadereffect.js";
42
+ //# sourceMappingURL=dissolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dissolve.d.ts","sourceRoot":"","sources":["../../../../src/video/webgl/effects/dissolve.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH;IACC;;;;;;OAMG;IACH,sBANW,OAAO,sBAAsB,EAAE,OAAO,YAE9C;QAAyB,QAAQ;QACN,SAAS;QACX,SAAS;KACpC,EA0DA;IAPA,iBAAuC;IASxC;;;OAGG;IACH,mBAFW,MAAM,QAKhB;IAED;;;OAGG;IACH,oBAFW,MAAM,EAAE,QAIlB;CACD;yBApGwB,oBAAoB"}