melonjs 20.1.0 → 20.2.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.
- package/README.md +2 -2
- package/build/application/settings.d.ts +3 -2
- package/build/application/settings.d.ts.map +1 -1
- package/build/index.js +1399 -229
- package/build/index.js.map +4 -4
- package/build/input/pointerevent.d.ts.map +1 -1
- package/build/level/gltf/GLTFModel.d.ts +17 -1
- package/build/level/gltf/GLTFModel.d.ts.map +1 -1
- package/build/loader/parsers/fontface.d.ts.map +1 -1
- package/build/particles/emitter.d.ts +81 -3
- package/build/particles/emitter.d.ts.map +1 -1
- package/build/particles/particle.d.ts +62 -1
- package/build/particles/particle.d.ts.map +1 -1
- package/build/particles/settings.d.ts +50 -7
- package/build/particles/settings.d.ts.map +1 -1
- package/build/physics/builtin/builtin-adapter.d.ts.map +1 -1
- package/build/physics/builtin/detector.d.ts.map +1 -1
- package/build/renderable/container.d.ts +10 -0
- package/build/renderable/container.d.ts.map +1 -1
- package/build/renderable/entity/entity.d.ts +10 -0
- package/build/renderable/entity/entity.d.ts.map +1 -1
- package/build/renderable/frameAnimation.d.ts +20 -2
- package/build/renderable/frameAnimation.d.ts.map +1 -1
- package/build/renderable/renderable.d.ts +106 -22
- package/build/renderable/renderable.d.ts.map +1 -1
- package/build/system/timer.d.ts.map +1 -1
- package/build/video/blendmodes.d.ts +107 -0
- package/build/video/blendmodes.d.ts.map +1 -0
- package/build/video/canvas/canvas_renderer.d.ts +28 -24
- package/build/video/canvas/canvas_renderer.d.ts.map +1 -1
- package/build/video/effects/blendEffect.d.ts +57 -0
- package/build/video/effects/blendEffect.d.ts.map +1 -0
- package/build/video/renderer.d.ts +3 -4
- package/build/video/renderer.d.ts.map +1 -1
- package/build/video/rendertarget/canvasrendertarget.d.ts +1 -0
- package/build/video/rendertarget/canvasrendertarget.d.ts.map +1 -1
- package/build/video/webgl/batchers/batcher.d.ts.map +1 -1
- package/build/video/webgl/glshader.d.ts.map +1 -1
- package/build/video/webgl/utils/program.d.ts.map +1 -1
- package/build/video/webgl/webgl_renderer.d.ts +116 -29
- package/build/video/webgl/webgl_renderer.d.ts.map +1 -1
- package/build/video/webgpu/batchers/quad_batcher.d.ts +7 -0
- package/build/video/webgpu/batchers/quad_batcher.d.ts.map +1 -1
- package/build/video/webgpu/pipeline/cache.d.ts +0 -9
- package/build/video/webgpu/pipeline/cache.d.ts.map +1 -1
- package/build/video/webgpu/webgpu_renderer.d.ts +100 -6
- package/build/video/webgpu/webgpu_renderer.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -24,6 +24,34 @@ export default class WebGLRenderer extends Renderer {
|
|
|
24
24
|
*/
|
|
25
25
|
_effectProjectionStack: Matrix3d;
|
|
26
26
|
_effectPassDepth: number;
|
|
27
|
+
/**
|
|
28
|
+
* Advanced-blend state. The six CSS modes fixed-function cannot
|
|
29
|
+
* express are composited by capturing the destination, rendering the
|
|
30
|
+
* draw to an offscreen target, and blitting that through
|
|
31
|
+
* {@link BlendEffect}. All of it is created lazily — a game that
|
|
32
|
+
* never asks for an advanced mode pays nothing.
|
|
33
|
+
*
|
|
34
|
+
* `_advancedBlendBusy` is a DEPTH, not a flag: the bracket nests
|
|
35
|
+
* inside itself (the composite blit re-enters `setBatcher`, and
|
|
36
|
+
* `toFrameTexture` does too), so a boolean would be cleared by the
|
|
37
|
+
* inner scope while the outer one is still running.
|
|
38
|
+
* @ignore
|
|
39
|
+
*/
|
|
40
|
+
_advancedBlendEffect: BlendEffect | undefined;
|
|
41
|
+
/** @ignore */
|
|
42
|
+
_advancedBlendCapture: any;
|
|
43
|
+
/** @ignore */
|
|
44
|
+
_advancedBlendTarget: WebGLRenderTarget | undefined;
|
|
45
|
+
/** @ignore */
|
|
46
|
+
_advancedBlendOpen: boolean;
|
|
47
|
+
/** @ignore */
|
|
48
|
+
_advancedBlendBusy: number;
|
|
49
|
+
/** @ignore */
|
|
50
|
+
_advancedBlendParent: import("../rendertarget/rendertarget.ts").default | null | undefined;
|
|
51
|
+
/** @ignore */
|
|
52
|
+
_advancedBlendStencil: boolean;
|
|
53
|
+
/** @ignore */
|
|
54
|
+
_advancedBlendWarned: Set<any>;
|
|
27
55
|
/**
|
|
28
56
|
* sets or returns the shape used to join two line segments where they meet.
|
|
29
57
|
* Out of the three possible values for this property: "round", "bevel", and "miter", only "round" is supported for now in WebGL
|
|
@@ -105,11 +133,26 @@ export default class WebGLRenderer extends Renderer {
|
|
|
105
133
|
* @type {WebGLBatcher}
|
|
106
134
|
*/
|
|
107
135
|
currentBatcher: WebGLBatcher;
|
|
136
|
+
set currentProgram(value: WebGLProgram | undefined);
|
|
108
137
|
/**
|
|
109
|
-
*
|
|
110
|
-
*
|
|
138
|
+
* Returns the WebGLContext instance for the renderer
|
|
139
|
+
* return a reference to the system 2d Context
|
|
140
|
+
* @returns {WebGLRenderingContext} the current WebGL context
|
|
111
141
|
*/
|
|
112
|
-
|
|
142
|
+
/**
|
|
143
|
+
* The shader program the GL context actually has bound.
|
|
144
|
+
*
|
|
145
|
+
* Backed by the CONTEXT rather than by a field on this renderer, because
|
|
146
|
+
* `GLShader` binds programs too — writing a uniform calls `useProgram`,
|
|
147
|
+
* and a freshly linked program is left bound — and it is constructed with
|
|
148
|
+
* a bare `gl`, so it cannot reach a renderer-owned cache. A field here
|
|
149
|
+
* would silently drift out of step with GL, and every batcher that
|
|
150
|
+
* compares against it (`syncProgram`, the mesh and primitive paths) would
|
|
151
|
+
* skip a rebind it actually needed, drawing a pending batch through the
|
|
152
|
+
* wrong program.
|
|
153
|
+
* @type {WebGLProgram|undefined}
|
|
154
|
+
*/
|
|
155
|
+
get currentProgram(): WebGLProgram | undefined;
|
|
113
156
|
/**
|
|
114
157
|
* the GL texture unit currently active (`gl.activeTexture`) — global
|
|
115
158
|
* GL state, so tracked once per renderer and shared by every batcher
|
|
@@ -163,7 +206,7 @@ export default class WebGLRenderer extends Renderer {
|
|
|
163
206
|
deleteMeshGeometry(mesh: object): void;
|
|
164
207
|
_lightShader: RadialGradientEffect | undefined;
|
|
165
208
|
_lightAtlas: TextureAtlas | undefined;
|
|
166
|
-
_frameTexture:
|
|
209
|
+
_frameTexture: any;
|
|
167
210
|
_orthogonalTMXGPURenderer: OrthogonalTMXLayerGPURenderer | null | undefined;
|
|
168
211
|
/**
|
|
169
212
|
* Draw a TMX tile layer through whichever path the layer's `renderMode`
|
|
@@ -255,6 +298,8 @@ export default class WebGLRenderer extends Renderer {
|
|
|
255
298
|
* @ignore
|
|
256
299
|
*/
|
|
257
300
|
_getLightAtlas(): TextureAtlas;
|
|
301
|
+
/** @ignore */
|
|
302
|
+
_toFrameTexture(options?: {}): any;
|
|
258
303
|
/**
|
|
259
304
|
* The renderer-owned shared frame-capture slot, minted lazily so it has a
|
|
260
305
|
* stable identity from the moment an effect is constructed — before the
|
|
@@ -283,6 +328,37 @@ export default class WebGLRenderer extends Renderer {
|
|
|
283
328
|
invalidateTextureUnit(unit: number, except?: WebGLBatcher): void;
|
|
284
329
|
/** @ignore */
|
|
285
330
|
endPostEffect(renderable: any): void;
|
|
331
|
+
/**
|
|
332
|
+
* Say once, per excluded path and mode, that an advanced blend mode is
|
|
333
|
+
* falling back to `"normal"`. A silent data-dependent fallback is exactly
|
|
334
|
+
* what the advanced-blend work exists to remove, so the exclusions are
|
|
335
|
+
* loud.
|
|
336
|
+
* @param {string} what - the excluded path, named for the message
|
|
337
|
+
* @ignore
|
|
338
|
+
*/
|
|
339
|
+
_warnAdvancedBlendFallback(what: string): void;
|
|
340
|
+
/**
|
|
341
|
+
* Close a pending advanced-blend bracket, if one is open and we are not
|
|
342
|
+
* already inside the bracket machinery. The safe form to call from any
|
|
343
|
+
* path that is about to disturb the destination.
|
|
344
|
+
* @ignore
|
|
345
|
+
*/
|
|
346
|
+
_drainAdvancedBlend(): void;
|
|
347
|
+
/**
|
|
348
|
+
* Open an advanced-blend bracket: capture the destination, then redirect
|
|
349
|
+
* this draw into an offscreen target. Closed by {@link _closeAdvancedBlend}
|
|
350
|
+
* at the next draw, flush or clear.
|
|
351
|
+
* @returns {boolean} false when the effect could not be realized, in which
|
|
352
|
+
* case the draw proceeds unbracketed (plain source-over)
|
|
353
|
+
* @ignore
|
|
354
|
+
*/
|
|
355
|
+
_openAdvancedBlend(): boolean;
|
|
356
|
+
/**
|
|
357
|
+
* Close an advanced-blend bracket: drain the offscreen, return to the
|
|
358
|
+
* parent target, and composite through {@link BlendEffect}.
|
|
359
|
+
* @ignore
|
|
360
|
+
*/
|
|
361
|
+
_closeAdvancedBlend(): void;
|
|
286
362
|
/**
|
|
287
363
|
* Clears the gl context with the given color.
|
|
288
364
|
* @param {Color|string} [color="#000000"] - CSS color.
|
|
@@ -448,15 +524,10 @@ export default class WebGLRenderer extends Renderer {
|
|
|
448
524
|
* add a straight line from the current point to the start of the current sub-path. If the shape has already been closed or has only one point, this function does nothing
|
|
449
525
|
*/
|
|
450
526
|
closePath(): void;
|
|
451
|
-
/**
|
|
452
|
-
* Returns the WebGLContext instance for the renderer
|
|
453
|
-
* return a reference to the system 2d Context
|
|
454
|
-
* @returns {WebGLRenderingContext} the current WebGL context
|
|
455
|
-
*/
|
|
456
527
|
getContext(): WebGLRenderingContext;
|
|
457
528
|
/**
|
|
458
529
|
* set the current blend mode for this renderer. <br>
|
|
459
|
-
*
|
|
530
|
+
* Every renderer supports the full set: <br>
|
|
460
531
|
* - "normal" : draws new content on top of the existing content <br>
|
|
461
532
|
* <img src="../images/normal-blendmode.png" width="180"/> <br>
|
|
462
533
|
* - "add", "additive", or "lighter" : color values are added together <br>
|
|
@@ -465,19 +536,33 @@ export default class WebGLRenderer extends Renderer {
|
|
|
465
536
|
* <img src="../images/multiply-blendmode.png" width="180"/> <br>
|
|
466
537
|
* - "screen" : pixels are inverted, multiplied, and inverted again (opposite of multiply) <br>
|
|
467
538
|
* <img src="../images/screen-blendmode.png" width="180"/> <br>
|
|
468
|
-
* WebGL2 additionally supports: <br>
|
|
469
539
|
* - "darken" : retains the darkest pixels of both layers <br>
|
|
470
540
|
* <img src="../images/darken-blendmode.png" width="180"/> <br>
|
|
471
541
|
* - "lighten" : retains the lightest pixels of both layers <br>
|
|
472
542
|
* <img src="../images/lighten-blendmode.png" width="180"/> <br>
|
|
543
|
+
* - "overlay" : multiplies or screens, depending on the backdrop <br>
|
|
544
|
+
* <img src="../images/overlay-blendmode.png" width="180"/> <br>
|
|
545
|
+
* - "hard-light" : overlay with the layers swapped — a harsh spotlight <br>
|
|
546
|
+
* <img src="../images/hard-light-blendmode.png" width="180"/> <br>
|
|
547
|
+
* - "soft-light" : a diffused spotlight, gentler than hard-light <br>
|
|
548
|
+
* <img src="../images/soft-light-blendmode.png" width="180"/> <br>
|
|
549
|
+
* - "color-dodge" : brightens the backdrop to reflect the source <br>
|
|
550
|
+
* <img src="../images/color-dodge-blendmode.png" width="180"/> <br>
|
|
551
|
+
* - "color-burn" : darkens the backdrop to reflect the source <br>
|
|
552
|
+
* <img src="../images/color-burn-blendmode.png" width="180"/> <br>
|
|
553
|
+
* - "difference" : the absolute difference of the two layers <br>
|
|
554
|
+
* <img src="../images/difference-blendmode.png" width="180"/> <br>
|
|
555
|
+
* - "exclusion" : like difference, but lower in contrast <br>
|
|
556
|
+
* <img src="../images/exclusion-blendmode.png" width="180"/> <br>
|
|
473
557
|
* - "none" : blending disabled — the source replaces the destination
|
|
474
|
-
* outright, alpha included
|
|
475
|
-
*
|
|
476
|
-
*
|
|
477
|
-
*
|
|
558
|
+
* outright, alpha included <br>
|
|
559
|
+
* A few draw types cannot honour every mode — 3D meshes, and fills using
|
|
560
|
+
* a {@link Gradient} — and fall back to "normal" with a one-time console
|
|
561
|
+
* warning. `setBlendMode` returns what it actually applied, so comparing
|
|
562
|
+
* the result against your request detects that case.
|
|
478
563
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation
|
|
479
564
|
* @param {string} [mode="normal"] - blend mode
|
|
480
|
-
* @param {boolean} [premultipliedAlpha=true] - whether textures use premultiplied alpha (affects source blend factor)
|
|
565
|
+
* @param {boolean} [premultipliedAlpha=true] - whether textures use premultiplied alpha (affects the source blend factor)
|
|
481
566
|
* @returns {string} the blend mode actually applied (may differ if the requested mode is unsupported)
|
|
482
567
|
*/
|
|
483
568
|
setBlendMode(mode?: string, premultipliedAlpha?: boolean): string;
|
|
@@ -580,24 +665,24 @@ export default class WebGLRenderer extends Renderer {
|
|
|
580
665
|
* Reset (overrides) the renderer transformation matrix to the
|
|
581
666
|
* identity one, and then apply the given transformation matrix.
|
|
582
667
|
* @param {Matrix2d|Matrix3d|number} a - a matrix to transform by, or the a component to multiply the current matrix by
|
|
583
|
-
* @param {number} b - the b component to multiply the current matrix by
|
|
584
|
-
* @param {number} c - the c component to multiply the current matrix by
|
|
585
|
-
* @param {number} d - the d component to multiply the current matrix by
|
|
586
|
-
* @param {number} e - the e component to multiply the current matrix by
|
|
587
|
-
* @param {number} f - the f component to multiply the current matrix by
|
|
668
|
+
* @param {number} [b] - the b component to multiply the current matrix by; omitted when `a` is a matrix
|
|
669
|
+
* @param {number} [c] - the c component to multiply the current matrix by; omitted when `a` is a matrix
|
|
670
|
+
* @param {number} [d] - the d component to multiply the current matrix by; omitted when `a` is a matrix
|
|
671
|
+
* @param {number} [e] - the e component to multiply the current matrix by; omitted when `a` is a matrix
|
|
672
|
+
* @param {number} [f] - the f component to multiply the current matrix by; omitted when `a` is a matrix
|
|
588
673
|
*/
|
|
589
|
-
setTransform(a: Matrix2d | Matrix3d | number, b
|
|
674
|
+
setTransform(a: Matrix2d | Matrix3d | number, b?: number, c?: number, d?: number, e?: number, f?: number): void;
|
|
590
675
|
/**
|
|
591
676
|
* Multiply given matrix into the renderer tranformation matrix
|
|
592
677
|
* @see {@link WebGLRenderer.setTransform} which will reset the current transform matrix prior to performing the new transformation
|
|
593
678
|
* @param {Matrix2d|Matrix3d|number} a - a matrix to transform by, or the a component to multiply the current matrix by
|
|
594
|
-
* @param {number} b - the b component to multiply the current matrix by
|
|
595
|
-
* @param {number} c - the c component to multiply the current matrix by
|
|
596
|
-
* @param {number} d - the d component to multiply the current matrix by
|
|
597
|
-
* @param {number} e - the e component to multiply the current matrix by
|
|
598
|
-
* @param {number} f - the f component to multiply the current matrix by
|
|
679
|
+
* @param {number} [b] - the b component to multiply the current matrix by; omitted when `a` is a matrix
|
|
680
|
+
* @param {number} [c] - the c component to multiply the current matrix by; omitted when `a` is a matrix
|
|
681
|
+
* @param {number} [d] - the d component to multiply the current matrix by; omitted when `a` is a matrix
|
|
682
|
+
* @param {number} [e] - the e component to multiply the current matrix by; omitted when `a` is a matrix
|
|
683
|
+
* @param {number} [f] - the f component to multiply the current matrix by; omitted when `a` is a matrix
|
|
599
684
|
*/
|
|
600
|
-
transform(a: Matrix2d | Matrix3d | number, b
|
|
685
|
+
transform(a: Matrix2d | Matrix3d | number, b?: number, c?: number, d?: number, e?: number, f?: number): void;
|
|
601
686
|
/**
|
|
602
687
|
* A mask limits rendering elements to the shape and position of the given mask object.
|
|
603
688
|
* If the drawing or rendering area is larger than the mask, only the intersecting part of the renderable will be visible.
|
|
@@ -613,14 +698,16 @@ export default class WebGLRenderer extends Renderer {
|
|
|
613
698
|
import Renderer from "./../renderer.js";
|
|
614
699
|
import RenderTargetPool from "../rendertarget/render_target_pool.js";
|
|
615
700
|
import { Matrix3d } from "../../math/matrix3d.ts";
|
|
701
|
+
import BlendEffect from "../effects/blendEffect.js";
|
|
702
|
+
import WebGLRenderTarget from "../rendertarget/webglrendertarget.js";
|
|
616
703
|
import { GLSamplerCache } from "./utils/samplercache.js";
|
|
617
704
|
import { Bounds } from "../../physics/bounds.ts";
|
|
618
705
|
import { WebGLBatcher } from "./batchers/batcher.js";
|
|
619
706
|
import TextureCache from "./../texture/cache.js";
|
|
620
707
|
import RadialGradientEffect from "../effects/radialGradient.js";
|
|
621
708
|
import { TextureAtlas } from "./../texture/atlas.js";
|
|
622
|
-
import { FrameTexture } from "./../texture/frametexture.js";
|
|
623
709
|
import OrthogonalTMXLayerGPURenderer from "./renderers/tmxlayer/orthogonal.js";
|
|
710
|
+
import { FrameTexture } from "./../texture/frametexture.js";
|
|
624
711
|
import { Color } from "./../../math/color.ts";
|
|
625
712
|
import type { Rect } from "./../../geometries/rectangle.ts";
|
|
626
713
|
import type { RoundRect } from "./../../geometries/roundrect.ts";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgl_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/webgl/webgl_renderer.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webgl_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/webgl/webgl_renderer.js"],"names":[],"mappings":"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"}
|
|
@@ -23,11 +23,18 @@ export default class WebGPUQuadBatcher extends WebGPUBatcher {
|
|
|
23
23
|
currentMaterial: any;
|
|
24
24
|
currentEffect: any;
|
|
25
25
|
slotTable: TextureSlotTable | undefined;
|
|
26
|
+
_memoView: any;
|
|
26
27
|
/** @type {{view: GPUTextureView, sampler: GPUSampler}[]} indexed by slot */
|
|
27
28
|
segmentEntries: {
|
|
28
29
|
view: GPUTextureView;
|
|
29
30
|
sampler: GPUSampler;
|
|
30
31
|
}[] | undefined;
|
|
32
|
+
/** @ignore */
|
|
33
|
+
_memoFilter: any;
|
|
34
|
+
/** @ignore */
|
|
35
|
+
_memoWrap: any;
|
|
36
|
+
/** @ignore */
|
|
37
|
+
_memoSlot: number | undefined;
|
|
31
38
|
segmentGroup: GPUBindGroup | null | undefined;
|
|
32
39
|
/** @type {Map<string, GPUBindGroup>} */
|
|
33
40
|
composedGroups: Map<string, GPUBindGroup> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quad_batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgpu/batchers/quad_batcher.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;GAeG;AACH;IACC;;;OAGG;IACH,wBAHW,OAAO,uBAAuB,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"quad_batcher.d.ts","sourceRoot":"","sources":["../../../../src/video/webgpu/batchers/quad_batcher.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;GAeG;AACH;IACC;;;OAGG;IACH,wBAHW,OAAO,uBAAuB,EAAE,OAAO,uBAwGjD;IAjEA,qBAA2B;IAM3B,mBAAyB;IASzB,wCAcE;IAHC,eAAqB;IAIxB,4EAA4E;IAC5E;cADkB,cAAc;iBAAW,UAAU;oBAC7B;IAGxB,cAAc;IACd,iBAAuB;IACvB,cAAc;IACd,eAAqB;IACrB,cAAc;IACd,8BAAkB;IAElB,8CAAwB;IAIxB,wCAAwC;IACxC,sDAA+B;IAE/B,8CAAgC;IAChC,mCAAuB;IAQvB,0CAKE;IAKH;;;;;;;;;;;;;;;OAeG;IACH,iBAZW,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QACN,MAAM,aACN,OAAO,QAyEjB;IAED;;;;;;;;;;OAUG;IACH,wBALW,MAAM,YACN,OAAO,GACL,MAAM,CAuDlB;IAED;;;OAGG;IACH,+BAOC;IAED;;;;;;;OAOG;IACH,uBAHa,YAAY,CA+BxB;IAED;;;OAGG;IACH,qBAQC;IAED;;;;;OAKG;IACH,2BAGC;IAED;;;;;;;;;OASG;IACH,0HAgBC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,oBATW,OAAO,0CAA0C,EAAE,OAAO,KAC1D,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,WACN,YAAY,cACZ,OAAO,QAyDjB;IAqBD;;OAEG;IACH,oCA6BC;IAED;;;;;OAKG;IACH,8BAEC;IAED;;;;;;OAMG;IACH,yBAHW,MAAM,QAuChB;CAwBD;0BA3kByB,qBAAqB;iCAHd,2BAA2B"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Normalize a user-facing blend-mode string to a cache-key token — the
|
|
3
|
-
* same collapsing the WebGL backend applies ("add"/"lighter" → additive,
|
|
4
|
-
* unknown → normal).
|
|
5
|
-
* @param {string} mode - blend mode as set through `setBlendMode`
|
|
6
|
-
* @returns {string} normalized token
|
|
7
|
-
* @ignore
|
|
8
|
-
*/
|
|
9
|
-
export function normalizeBlendMode(mode: string): string;
|
|
10
1
|
/**
|
|
11
2
|
* Texture slots per quad draw segment — the quad family batches quads
|
|
12
3
|
* across up to this many distinct textures before a flush is forced (the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../src/video/webgpu/pipeline/cache.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../src/video/webgpu/pipeline/cache.js"],"names":[],"mappings":"AA6BA;;;;;;;GAOG;AACH,gCAAiC,CAAC,CAAC;AAEnC;;;;;;;GAOG;AACH,mCAAoC,sBAAsB,CAAC;AA6E3D;;;;;;;;;;;;GAYG;AACH;IAwKC;;;OAGG;IACH,4BAAwB;IA3KxB;;;OAGG;IACH,oBAHW,SAAS,UACT,MAAM,EAmKhB;IAhKA,kBAAoB;IACpB,eAAoB;IACpB,oBAAoB;IACpB,6CAA6C;IAC7C,WADW,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CACf;IAC1B,kEAAkE;IAClE,eADW,GAAG,CAAC,MAAM,EAAE;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAC,CAAC,CAChC;IAG9B,gCAaE;IACF,qCAaE;IACF,mCAME;IAYF,uCAQE;IAiBF,wCAGE;IAGF;;;;;MAmBC;IAGD;;;;;MAaC;IAKD,0DAA0D;IAC1D,mBADW,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CACI;IAGlC,+BAAgC;IAChC,mGAAmG;IACnG,qBADW,GAAG,CAAC,MAAM,EAAE;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAC,CAAC,CAC1B;IAGpC,+EAA+E;IAC/E,eADW,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CACZ;IAM9B,gCAGE;IACF,6BAIE;IAEF;;;;;;OAMG;IACH,OAFU,MAAM,CAE+B;IAShD;;;;;;;;;;;;;OAaG;IACH,qBATW,MAAM,YAEd;QAAuC,gBAAgB;QAE9B,eAAe;QAEf,KAAK;KAC9B,GAAU,MAAM,CAsClB;IAED;;;;;;;;OAQG;IACH,2BAJW,MAAM,WACN,uBAAuB,EAAE,GACvB,kBAAkB,CAY9B;IAED;;;;;;;;;;;;;;;OAeG;IACH,gCAJW,MAAM,UACN,MAAM,GAAC,MAAM,EAAE,eACf;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,EAAE,QAqC5C;IAED;;;;;;;;;;;;;;OAcG;IACH,eAbW,MAAM,YACN,MAAM,aACN,MAAM,sBACN,OAAO,gBACP,MAAM,cACN;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAC,GAMnC,iBAAiB,CA4E7B;IAED;;;OAGG;IACH,cAEC;CACD"}
|
|
@@ -50,6 +50,37 @@ export default class WebGPURenderer extends Renderer {
|
|
|
50
50
|
readonly preferredFormat: string | undefined;
|
|
51
51
|
cache: TextureCache;
|
|
52
52
|
currentTransform: Matrix3d;
|
|
53
|
+
/**
|
|
54
|
+
* Advanced-blend state — the WebGPU twin of the WebGL bracket, and
|
|
55
|
+
* deliberately the same shape. The six CSS modes fixed-function
|
|
56
|
+
* cannot express are composited by capturing the destination,
|
|
57
|
+
* rendering the draw to an offscreen target, then blitting that
|
|
58
|
+
* through {@link BlendEffect}. All lazily created.
|
|
59
|
+
*
|
|
60
|
+
* `_advancedBlendBusy` is a DEPTH, not a flag: the bracket nests
|
|
61
|
+
* inside itself (the composite blit re-enters `setBatcher`).
|
|
62
|
+
*
|
|
63
|
+
* One documented difference from WebGL: masks need no handling here.
|
|
64
|
+
* `beginPass` attaches the shared depth/stencil texture whatever the
|
|
65
|
+
* current target is, so an armed mask clips the offscreen draw
|
|
66
|
+
* directly — where the GL backend has to disable the test (its
|
|
67
|
+
* offscreen FBO owns a separate, zeroed stencil) and let the
|
|
68
|
+
* composite carry the clip instead. Same result, different route.
|
|
69
|
+
* @ignore
|
|
70
|
+
*/
|
|
71
|
+
_advancedBlendEffect: BlendEffect | undefined;
|
|
72
|
+
/** @ignore */
|
|
73
|
+
_advancedBlendCapture: any;
|
|
74
|
+
/** @ignore */
|
|
75
|
+
_advancedBlendTarget: WebGPURenderTarget | undefined;
|
|
76
|
+
/** @ignore */
|
|
77
|
+
_advancedBlendOpen: boolean;
|
|
78
|
+
/** @ignore */
|
|
79
|
+
_advancedBlendBusy: number;
|
|
80
|
+
/** @ignore */
|
|
81
|
+
_advancedBlendParent: WebGPURenderTarget | null;
|
|
82
|
+
/** @ignore */
|
|
83
|
+
_advancedBlendWarned: Set<any>;
|
|
53
84
|
onGameReset: () => void;
|
|
54
85
|
onCanvasResize: () => void;
|
|
55
86
|
GPUVendor: string | undefined;
|
|
@@ -102,6 +133,8 @@ export default class WebGPURenderer extends Renderer {
|
|
|
102
133
|
height: number;
|
|
103
134
|
} | undefined;
|
|
104
135
|
}): Texture2d | null;
|
|
136
|
+
/** @ignore */
|
|
137
|
+
_toFrameTexture(options?: {}): any;
|
|
105
138
|
/**
|
|
106
139
|
* Draw a pooled render target through an effect's pipeline as a
|
|
107
140
|
* screen-space quad — the compositing primitive of the post-effect
|
|
@@ -118,6 +151,35 @@ export default class WebGPURenderer extends Renderer {
|
|
|
118
151
|
* @override
|
|
119
152
|
*/
|
|
120
153
|
override blitEffect(source: import("../rendertarget/webgpurendertarget.js").default, x: number, y: number, width: number, height: number, effect: ShaderEffect, keepBlend?: boolean): void;
|
|
154
|
+
/**
|
|
155
|
+
* Say once, per excluded path and mode, that an advanced blend mode is
|
|
156
|
+
* falling back to `"normal"`. A silent data-dependent fallback is exactly
|
|
157
|
+
* what the advanced-blend work exists to remove, so the exclusions are
|
|
158
|
+
* loud.
|
|
159
|
+
* @param {string} what - the excluded path, named for the message
|
|
160
|
+
* @ignore
|
|
161
|
+
*/
|
|
162
|
+
_warnAdvancedBlendFallback(what: string): void;
|
|
163
|
+
/**
|
|
164
|
+
* Close a pending advanced-blend bracket, if one is open and we are not
|
|
165
|
+
* already inside the bracket machinery.
|
|
166
|
+
* @ignore
|
|
167
|
+
*/
|
|
168
|
+
_drainAdvancedBlend(): void;
|
|
169
|
+
/**
|
|
170
|
+
* Open an advanced-blend bracket: capture the destination, then redirect
|
|
171
|
+
* this draw into an offscreen target.
|
|
172
|
+
* @returns {boolean} false when the effect could not be realized, in which
|
|
173
|
+
* case the draw proceeds unbracketed (plain source-over)
|
|
174
|
+
* @ignore
|
|
175
|
+
*/
|
|
176
|
+
_openAdvancedBlend(): boolean;
|
|
177
|
+
/**
|
|
178
|
+
* Close an advanced-blend bracket: drain the offscreen, retarget to the
|
|
179
|
+
* parent, and composite through {@link BlendEffect}.
|
|
180
|
+
* @ignore
|
|
181
|
+
*/
|
|
182
|
+
_closeAdvancedBlend(): void;
|
|
121
183
|
/**
|
|
122
184
|
* Clear the current clip region with the given color — a full-viewport
|
|
123
185
|
* triangle clipped by the active scissor, drawn with blending replaced
|
|
@@ -227,13 +289,44 @@ export default class WebGPURenderer extends Renderer {
|
|
|
227
289
|
*/
|
|
228
290
|
getGlobalAlpha(): number;
|
|
229
291
|
/**
|
|
230
|
-
*
|
|
231
|
-
*
|
|
232
|
-
*
|
|
233
|
-
*
|
|
234
|
-
*
|
|
292
|
+
* set the current blend mode for this renderer. <br>
|
|
293
|
+
* Every renderer supports the full set: <br>
|
|
294
|
+
* - "normal" : draws new content on top of the existing content <br>
|
|
295
|
+
* <img src="../images/normal-blendmode.png" width="180"/> <br>
|
|
296
|
+
* - "add", "additive", or "lighter" : color values are added together <br>
|
|
297
|
+
* <img src="../images/add-blendmode.png" width="180"/> <br>
|
|
298
|
+
* - "multiply" : pixels are multiplied, resulting in a darker picture <br>
|
|
299
|
+
* <img src="../images/multiply-blendmode.png" width="180"/> <br>
|
|
300
|
+
* - "screen" : pixels are inverted, multiplied, and inverted again (opposite of multiply) <br>
|
|
301
|
+
* <img src="../images/screen-blendmode.png" width="180"/> <br>
|
|
302
|
+
* - "darken" : retains the darkest pixels of both layers <br>
|
|
303
|
+
* <img src="../images/darken-blendmode.png" width="180"/> <br>
|
|
304
|
+
* - "lighten" : retains the lightest pixels of both layers <br>
|
|
305
|
+
* <img src="../images/lighten-blendmode.png" width="180"/> <br>
|
|
306
|
+
* - "overlay" : multiplies or screens, depending on the backdrop <br>
|
|
307
|
+
* <img src="../images/overlay-blendmode.png" width="180"/> <br>
|
|
308
|
+
* - "hard-light" : overlay with the layers swapped — a harsh spotlight <br>
|
|
309
|
+
* <img src="../images/hard-light-blendmode.png" width="180"/> <br>
|
|
310
|
+
* - "soft-light" : a diffused spotlight, gentler than hard-light <br>
|
|
311
|
+
* <img src="../images/soft-light-blendmode.png" width="180"/> <br>
|
|
312
|
+
* - "color-dodge" : brightens the backdrop to reflect the source <br>
|
|
313
|
+
* <img src="../images/color-dodge-blendmode.png" width="180"/> <br>
|
|
314
|
+
* - "color-burn" : darkens the backdrop to reflect the source <br>
|
|
315
|
+
* <img src="../images/color-burn-blendmode.png" width="180"/> <br>
|
|
316
|
+
* - "difference" : the absolute difference of the two layers <br>
|
|
317
|
+
* <img src="../images/difference-blendmode.png" width="180"/> <br>
|
|
318
|
+
* - "exclusion" : like difference, but lower in contrast <br>
|
|
319
|
+
* <img src="../images/exclusion-blendmode.png" width="180"/> <br>
|
|
320
|
+
* - "none" : blending disabled — the source replaces the destination
|
|
321
|
+
* outright, alpha included <br>
|
|
322
|
+
* A few draw types cannot honour every mode — 3D meshes, and fills using
|
|
323
|
+
* a {@link Gradient} — and fall back to "normal" with a one-time console
|
|
324
|
+
* warning. `setBlendMode` returns what it actually applied, so comparing
|
|
325
|
+
* the result against your request detects that case.
|
|
326
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation
|
|
327
|
+
* @param {string} [mode="normal"] - blend mode
|
|
235
328
|
* @param {boolean} [premultipliedAlpha=true] - whether textures use premultiplied alpha (affects the source blend factor)
|
|
236
|
-
* @returns {string} the blend mode actually applied
|
|
329
|
+
* @returns {string} the blend mode actually applied (may differ if the requested mode is unsupported)
|
|
237
330
|
*/
|
|
238
331
|
setBlendMode(mode?: string, premultipliedAlpha?: boolean): string;
|
|
239
332
|
/**
|
|
@@ -529,6 +622,7 @@ import WebGPUBufferArena from "./buffer/arena.js";
|
|
|
529
622
|
import WebGPUUniformRing from "./buffer/uniformring.js";
|
|
530
623
|
import WebGPUTextureStore from "./texture/store.js";
|
|
531
624
|
import WebGPURenderTarget from "../rendertarget/webgpurendertarget.js";
|
|
625
|
+
import BlendEffect from "../effects/blendEffect.js";
|
|
532
626
|
import { Color } from "../../math/color.ts";
|
|
533
627
|
import WebGPUBatcher from "./batchers/webgpu_batcher.js";
|
|
534
628
|
import RadialGradientEffect from "../effects/radialGradient.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgpu_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/webgpu/webgpu_renderer.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webgpu_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/webgpu/webgpu_renderer.js"],"names":[],"mappings":"AAyDA;;;;;;;;;;;;;;;GAeG;AACH,iDANW,OAAO,qBACP,OAAO,GACL;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAC,CAYvD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH;IACC;;OAEG;IACH,qBAFW,mBAAmB,EA0T7B;IAlTA;;;;OAIG;IACH,kBAHU,UAAU,GAAC,SAAS,CAGN;IAExB;;;;;OAKG;IACH,iBAHU,SAAS,GAAC,SAAS,CAGN;IAEvB;;;;OAIG;IACH,SAFU,gBAAgB,CAEc;IAExC;;;;;OAKG;IACH,0BAHU,MAAM,GAAC,SAAS,CAGM;IA0BhC;mBACe;IACf,iEAAsC;IAGtC,oBAAmC;IAInC,2BAAyD;IAKzD;mBACe;IACf,qBAA2B;IAG3B;mBACe;IACf;;;QAEE;IACF;mBACe;IACf,iBAAmB;IAEnB;mBACe;IACf,iBAA4B;IAE5B;mBACe;IACf,uBAAuB;IAEvB;;;;;OAKG;IACH,UAJU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAIJ;IAEzB;;;;OAIG;IACH,oBAA0B;IAG1B;mBACe;IACf,0CAAyB;IACzB;mBACe;IACf,sCAAuB;IAEvB;mBACe;IACf,qCAAsB;IACtB;mBACe;IACf,sCAAuB;IACvB;mBACe;IACf,wCAAwB;IAGxB;mBACe;IACf,yCAA0B;IAC1B;mBACe;IACf,wCAAsB;IAGtB;mBACe;IACf,+CAA+B;IAE/B;;;;;;;;;;;;;;;;;OAiBG;IACH,8CAAqC;IACrC,cAAc;IACd,2BAAsC;IACtC,cAAc;IACd,qDAAqC;IACrC,cAAc;IACd,4BAA+B;IAC/B,cAAc;IACd,2BAA2B;IAC3B,cAAc;IACd,gDAAgC;IAChC,cAAc;IACd,+BAAqC;IAGrC;mBACe;IACf,2BAA8B;IAC9B;mBACe;IACf,uBAA6B;IAC7B;mBACe;IACf,6BAAgC;IAKhC;mBACe;IACf,2BAA8B;IAI9B;mBACe;IACf,yBAA4B;IAG5B;mBACe;IACf;;;;;aAAwB;IAGxB;mBACe;IACf,0BAA6B;IAG7B;mBACe;IACf,gCAAwB;IAExB;mBACe;IACf,oBAA+B;IAG/B;mBACe;IACf,+BAAuB;IAEvB;mBACe;IACf,6BAA+B;IAC/B;mBACe;IACf,wBAAwB;IAExB;mBACe;IACf,6CAA8B;IAG9B;mBACe;IACf,gBAAgB;IAIhB;mBACe;IACf,uBAAyB;IAIzB;mBACe;IACf,8BAA8B;IAC9B;mBACe;IACf,wCAA4B;IAC5B;mBACe;IACf,kBAAwB;IAMxB;mBACe;IACf,0BAA0B;IAC1B;mBACe;IACf,oCAA4B;IAC5B;mBACe;IACf,qCAAyB;IACzB;mBACe;IACf,sBAA4B;IAC5B;mBACe;IACf,qBAA2B;IAC3B;mBACe;IACf;;;aAA+B;IAC/B;mBACe;IACf,uBAA0B;IAE1B;mBACe;IACf,4BAA8B;IAE9B;mBACe;IACf,oBAAyB;IAMzB,wBAEC;IAID,2BAUC;IAmFA,8BAAyC;IA0F3C;;;;;;;;;OASG;IACH,2BALW,MAAM,WACN,MAAM,8BA6BhB;IAED;;;;;;;OAOG;IACH,8BALW,MAAM,UACN,MAAM,QAoBhB;IA4DD;;;;;;OAMG;IACH,iBAJW,MAAM,QA8GhB;IAED;;;;;;OAMG;IACH,iBAJa,CAAC,MAAM,EAAE,MAAM,CAAC,CAW5B;IAED;;;;;;;;;;OAUG;IACH,wBANW,OAAO,uCAAuC,EAAE,OAAO,GAAC,IAAI,YAEpE;QAA0B,KAAK;KAC/B,QAsBF;IAED;;;;;;;;OAQG;IACH,uBAJW,UAAU,QAUpB;IAED;;;;;;;;;OASG;IACH,qBAJW,SAAS,QAMnB;IAED;;;;;;OAMG;IACH,sBAJa,cAAc,CAqB1B;IAHC,mDAAoD;IAKtD;;;;;;;;;;;;;OAaG;IACH,wBANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAehB;IAED;;;;;OAKG;IACH,sBA0BC;IAeD;;;;;;;;;;OAUG;IACH,gBAJa,OAAO,2BAA2B,EAAE,kBAAkB,GAAC,IAAI,CAMvE;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,yBARG;QAAiC,MAAM,GAA/B,SAAS,GAAC,IAAI;QAGyD,MAAM;eAAlE,MAAM;eAAK,MAAM;mBAAS,MAAM;oBAAU,MAAM;;KAEnE,GAAU,SAAS,GAAC,IAAI,CAmB1B;IAED,cAAc;IACd,mCAqGC;IA0KD;;;;;;;;;;;;;;OAcG;IACH,4BATW,OAAO,uCAAuC,EAAE,OAAO,KACvD,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,UACN,YAAY,cACZ,OAAO,QAoBjB;IAED;;;;;;;OAOG;IACH,iCAHW,MAAM,QAYhB;IAED;;;;OAIG;IACH,4BAIC;IAED;;;;;;OAMG;IACH,sBAJa,OAAO,CAiDnB;IAED;;;;OAIG;IACH,4BAgCC;IAED;;;;;;;OAOG;IACH,0CAUC;IA4BD;;;;;OAKG;IACH,qBAoCC;IAED;;;;;OAKG;IACH,+BAOC;IAED;;;;OAIG;IACH,qBAiBC;IAED;;;;;;;;;;;;;OAaG;IACH,4BAJW,KAAK,GAAC,MAAM,WACZ,OAAO,QA2CjB;IAED;;;;;;;;OAQG;IACH,sBANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAUhB;IAED;;;;;;;;OAQG;IACH,8BAJW,MAAM,QACN,MAAM,QAiBhB;IAED;;;;;OAKG;IACH,oBAJW,aAAa,SACb,MAAM,aACN,OAAO,QAkBjB;IAED;;;;;;;OAOG;IACH,kBAHW,MAAM,GACJ,aAAa,CAuDzB;IAED;;;;;;;;;;;;;;OAcG;IACH;;;;;;;OAOG;IACH,0BALW,aAAa,gBACb,QAAQ,QACR,MAAM,QAahB;IAED,4CA+FC;IAED;;;;OAIG;IACH,yBAFW,MAAM,QAMhB;IAyCD;;;;;;;;;OASG;IACH,aAPW,QAAQ,GAAC,QAAQ,GAAC,MAAM,MACxB,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAkBhB;IAED;;;;;;;;OAQG;IACH,gBAPW,QAAQ,GAAC,QAAQ,GAAC,MAAM,MACxB,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAKhB;IAqDD;;;OAGG;IACH,kBAFa,MAAM,CAIlB;IAmBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,oBAJW,MAAM,uBACN,OAAO,GACL,MAAM,CAkClB;IAmBD;;;;;OAKG;IACH,yBAMC;IAED;;;;;;;;;;;OAWG;IACH,iBAVW,gBAAgB,GAAC,iBAAiB,GAAC,gBAAgB,GAAC,WAAW,GAAC,eAAe,GAAC,UAAU,MAC1F,MAAM,MACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,QA6EhB;IAED;;;;;;;;;OASG;IACH,iDAHa,MAAM,CA0ElB;IAHC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAuC;IAKzC;;;;;;;;;OASG;IACH,kCANW,GAAG,CAAC,OAAO,CAAC,GAAC,KAAK,CAAC,OAAO,CAAC,WAC3B,KAAK,eACL,MAAM,eACN,MAAM,QAmBhB;IAdC,0FAAuD;IAgBzD;;;;;;OAMG;IACH,0BAHW,OAAO,QAyBjB;IApBC,8CAAiD;IAsBnD;;;;;;OAMG;IACH,iBAJa,YAAY,CAwBxB;IAPC,qCAIC;IAKH;;;;;;;OAOG;IACH,qBANW,YAAY,KACZ,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAiBhB;IAED;;;;;OAKG;IACH,qBAJW,gBAAgB,GAAC,eAAe,GAAC,gBAAgB,GAAC,iBAAiB,GAAC,WAAW,GAAC,eAAe,GAAC,UAAU,WAC1G,MAAM,GACJ,YAAY,CAUxB;IAwDD;;;;;;;;;;OAUG;IACH,mBAPW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAsChB;IAsCE,mCAA2C;IA6B9C;;;;;;;;;;;;;;;OAeG;IACH,eAHW,IAAI,GAAC,SAAS,GAAC,OAAO,GAAC,IAAI,GAAC,OAAO,WACnC,OAAO,QAoCjB;IAjBE,qCAA2B;IAkC9B;;;;;;;;;;;;;;;OAeG;IACH,mEAgEC;IAED;;;;;;;;;OASG;IACH,aARW,MAAM,KACN,MAAM,UACN,MAAM,SACN,MAAM,OACN,MAAM,kBACN,OAAO,SACP,OAAO,QAWjB;IAED;;;;;;;;OAQG;IACH,WAPW,MAAM,KACN,MAAM,UACN,MAAM,SACN,MAAM,OACN,MAAM,kBACN,OAAO,QAqCjB;IA2ED;;;;;;OAMG;IACH,iBALW,MAAM,UACN,MAAM,QACN,MAAM,QACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,oBAHW,OAAO,SACP,OAAO,QAkDjB;IAED;;;OAGG;IACH,kBAFW,OAAO,QAuDjB;IAoFD;;;;;;;;OAQG;IACH,mBAPW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,UACN,MAAM,SACN,OAAO,QAWjB;IAED;;;;;;;OAOG;IACH,iBANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,UACN,MAAM,QAyFhB;IAED;;;;OAIG;IACH,eAHW,MAAM,KACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,aAHW,MAAM,KACN,MAAM,QAIhB;IAED;;OAEG;IACH,kBAEC;IAED;;;;OAIG;IACH,UAHW,MAAM,KACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,UAHW,MAAM,KACN,MAAM,QAIhB;IAED;;;;;;OAMG;IACH,sBALW,MAAM,OACN,MAAM,KACN,MAAM,KACN,MAAM,QAIhB;IAED;;;;;;;;OAQG;IACH,oBAPW,MAAM,QACN,MAAM,QACN,MAAM,QACN,MAAM,KACN,MAAM,KACN,MAAM,QAIhB;IAED;;;;;;;OAOG;IACH,UANW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,UACN,MAAM,QAIhB;IAED;;;;;;OAMG;IACH,QALW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAIhB;IAED;;;;;;;OAOG;IACH,aANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,SACN,MAAM,QAIhB;IAED;;OAEG;IACH,kBAEC;IAED;;;;OAIG;IACH,eAHW,IAAI,GAAC,SAAS,GAAC,OAAO,GAAC,IAAI,GAAC,OAAO,GAAC,MAAM,SAC1C,OAAO,QA2BjB;IAED;;;OAGG;IACH,aAFW,IAAI,GAAC,SAAS,GAAC,OAAO,GAAC,IAAI,GAAC,OAAO,GAAC,MAAM,QAIpD;IAmCD;;;;;OAKG;IACH,+BAwCC;IAED;;;OAGG;IACH,cAFa,gBAAgB,CAI5B;CAqFD;qBArgHoB,gBAAgB;0CAyBK,oCAAoC;yBArBrD,qBAAqB;yBAzBrB,wBAAwB;uBAC1B,yBAAyB;gCA4CU,qBAAqB;8BAFjD,mBAAmB;8BACnB,yBAAyB;+BAKxB,oBAAoB;+BA1BpB,uCAAuC;wBAL9C,2BAA2B;sBAnBlB,qBAAqB;0BA2C5B,8BAA8B;iCAvBvB,8BAA8B;6BAKrB,qBAAqB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "melonjs",
|
|
3
|
-
"version": "20.
|
|
3
|
+
"version": "20.2.0",
|
|
4
4
|
"description": "melonJS Game Engine",
|
|
5
5
|
"homepage": "http://www.melonjs.org/",
|
|
6
6
|
"type": "module",
|
|
@@ -81,8 +81,8 @@
|
|
|
81
81
|
"build": "pnpm lint && tsx scripts/build.js && pnpm types",
|
|
82
82
|
"dist": "pnpm clean && pnpm lint && pnpm vitest run && pnpm build && pnpm doc && cp ../../README.md .",
|
|
83
83
|
"dist:publish": "pnpm clean && pnpm lint && pnpm build && pnpm doc && cp ../../README.md .",
|
|
84
|
-
"doc": "typedoc src/index.ts --tsconfig tsconfig.build.json --readme DOC_README.md --hideGenerator --name 'melonJS' --navigation.includeCategories true --categorizeByGroup false",
|
|
85
|
-
"doc:watch": "typedoc src/index.ts --tsconfig tsconfig.build.json --readme DOC_README.md --hideGenerator --name 'melonJS' --navigation.includeCategories true --categorizeByGroup false --watch --skipErrorChecking --preserveWatchOutput --logLevel Error",
|
|
84
|
+
"doc": "tsx scripts/check-doc-readme.ts && typedoc src/index.ts --tsconfig tsconfig.build.json --readme ../../DOC_README.md --hideGenerator --name 'melonJS' --navigation.includeCategories true --categorizeByGroup false",
|
|
85
|
+
"doc:watch": "typedoc src/index.ts --tsconfig tsconfig.build.json --readme ../../DOC_README.md --hideGenerator --name 'melonJS' --navigation.includeCategories true --categorizeByGroup false --watch --skipErrorChecking --preserveWatchOutput --logLevel Error",
|
|
86
86
|
"serve": "serve docs",
|
|
87
87
|
"prepublishOnly": "pnpm dist:publish",
|
|
88
88
|
"clean": "tsx scripts/clean.ts",
|