melonjs 19.5.0 → 19.7.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 +5 -4
- package/build/application/application.d.ts +34 -2
- package/build/application/application.d.ts.map +1 -1
- package/build/application/settings.d.ts +37 -1
- package/build/application/settings.d.ts.map +1 -1
- package/build/camera/camera2d.d.ts +59 -7
- package/build/camera/camera2d.d.ts.map +1 -1
- package/build/camera/camera3d.d.ts +335 -0
- package/build/camera/camera3d.d.ts.map +1 -0
- package/build/camera/frustum.d.ts +162 -0
- package/build/camera/frustum.d.ts.map +1 -0
- package/build/const.d.ts +30 -3
- package/build/const.d.ts.map +1 -1
- package/build/geometries/sphere.d.ts +105 -0
- package/build/geometries/sphere.d.ts.map +1 -0
- package/build/index.d.ts +6 -4
- package/build/index.d.ts.map +1 -1
- package/build/index.js +27639 -24686
- package/build/index.js.map +4 -4
- package/build/input/keyboard.d.ts.map +1 -1
- package/build/input/pointerevent.d.ts.map +1 -1
- package/build/lang/deprecated.d.ts +18 -0
- package/build/lang/deprecated.d.ts.map +1 -1
- package/build/loader/loadingscreen.d.ts +8 -0
- package/build/loader/loadingscreen.d.ts.map +1 -1
- package/build/loader/parsers/mtl.d.ts.map +1 -1
- package/build/loader/parsers/obj.d.ts.map +1 -1
- package/build/math/color.d.ts +43 -5
- package/build/math/color.d.ts.map +1 -1
- package/build/math/math.d.ts +44 -0
- package/build/math/math.d.ts.map +1 -1
- package/build/math/observableVector2d.d.ts +14 -2
- package/build/math/observableVector2d.d.ts.map +1 -1
- package/build/math/observableVector3d.d.ts +14 -2
- package/build/math/observableVector3d.d.ts.map +1 -1
- package/build/math/vector2d.d.ts +16 -2
- package/build/math/vector2d.d.ts.map +1 -1
- package/build/math/vector3d.d.ts +16 -2
- package/build/math/vector3d.d.ts.map +1 -1
- package/build/particles/emitter.d.ts.map +1 -1
- package/build/physics/adapter.d.ts +77 -0
- package/build/physics/adapter.d.ts.map +1 -1
- package/build/physics/broadphase/aabb3d.d.ts +115 -0
- package/build/physics/broadphase/aabb3d.d.ts.map +1 -0
- package/build/physics/broadphase/broadphase.d.ts +74 -0
- package/build/physics/broadphase/broadphase.d.ts.map +1 -0
- package/build/physics/broadphase/factory.d.ts +30 -0
- package/build/physics/broadphase/factory.d.ts.map +1 -0
- package/build/physics/broadphase/octree.d.ts +325 -0
- package/build/physics/broadphase/octree.d.ts.map +1 -0
- package/build/physics/broadphase/quadtree.d.ts +184 -0
- package/build/physics/broadphase/quadtree.d.ts.map +1 -0
- package/build/physics/builtin/body.d.ts +7 -3
- package/build/physics/builtin/body.d.ts.map +1 -1
- package/build/physics/builtin/builtin-adapter.d.ts +6 -1
- package/build/physics/builtin/builtin-adapter.d.ts.map +1 -1
- package/build/physics/builtin/raycast.d.ts.map +1 -1
- package/build/physics/world.d.ts +15 -4
- package/build/physics/world.d.ts.map +1 -1
- package/build/renderable/container.d.ts +51 -5
- package/build/renderable/container.d.ts.map +1 -1
- package/build/renderable/mesh.d.ts +85 -10
- package/build/renderable/mesh.d.ts.map +1 -1
- package/build/renderable/renderable.d.ts +9 -4
- package/build/renderable/renderable.d.ts.map +1 -1
- package/build/state/stage.d.ts +8 -0
- package/build/state/stage.d.ts.map +1 -1
- package/build/state/state.d.ts.map +1 -1
- package/build/system/device.d.ts +196 -310
- package/build/system/device.d.ts.map +1 -1
- package/build/system/event.d.ts +49 -0
- package/build/system/event.d.ts.map +1 -1
- package/build/system/fullscreen.d.ts +16 -0
- package/build/system/fullscreen.d.ts.map +1 -0
- package/build/system/platform.d.ts +32 -4
- package/build/system/platform.d.ts.map +1 -1
- package/build/system/timer.d.ts.map +1 -1
- package/build/utils/function.d.ts +7 -1
- package/build/utils/function.d.ts.map +1 -1
- package/build/utils/types.d.ts +5 -0
- package/build/utils/types.d.ts.map +1 -1
- package/build/video/buffer/vertex.d.ts +19 -4
- package/build/video/buffer/vertex.d.ts.map +1 -1
- package/build/video/canvas/canvas_renderer.d.ts +4 -4
- package/build/video/canvas/canvas_renderer.d.ts.map +1 -1
- package/build/video/canvas_factory.d.ts +25 -0
- package/build/video/canvas_factory.d.ts.map +1 -0
- package/build/video/renderer.d.ts +89 -15
- package/build/video/renderer.d.ts.map +1 -1
- package/build/video/renderstate.d.ts +12 -0
- package/build/video/renderstate.d.ts.map +1 -1
- package/build/video/rendertarget/rendertarget.d.ts +3 -1
- package/build/video/rendertarget/rendertarget.d.ts.map +1 -1
- package/build/video/texture/cache.d.ts +5 -0
- package/build/video/texture/cache.d.ts.map +1 -1
- package/build/video/texture/resource.d.ts +22 -14
- package/build/video/texture/resource.d.ts.map +1 -1
- package/build/video/video.d.ts +3 -1
- package/build/video/video.d.ts.map +1 -1
- package/build/video/webgl/batchers/batcher.d.ts.map +1 -1
- package/build/video/webgl/batchers/lit_quad_batcher.d.ts.map +1 -1
- package/build/video/webgl/batchers/material_batcher.d.ts +9 -0
- package/build/video/webgl/batchers/material_batcher.d.ts.map +1 -1
- package/build/video/webgl/batchers/mesh_batcher.d.ts +45 -1
- package/build/video/webgl/batchers/mesh_batcher.d.ts.map +1 -1
- package/build/video/webgl/batchers/primitive_batcher.d.ts.map +1 -1
- package/build/video/webgl/batchers/quad_batcher.d.ts +2 -2
- package/build/video/webgl/batchers/quad_batcher.d.ts.map +1 -1
- package/build/video/webgl/glshader.d.ts +46 -16
- package/build/video/webgl/glshader.d.ts.map +1 -1
- package/build/video/webgl/renderers/tmxlayer/orthogonal.d.ts.map +1 -1
- package/build/video/webgl/shadereffect.d.ts +23 -4
- package/build/video/webgl/shadereffect.d.ts.map +1 -1
- package/build/video/webgl/utils/uniforms.d.ts +8 -0
- package/build/video/webgl/utils/uniforms.d.ts.map +1 -1
- package/build/video/webgl/webgl_renderer.d.ts +2 -2
- package/build/video/webgl/webgl_renderer.d.ts.map +1 -1
- package/package.json +3 -2
- package/build/physics/builtin/quadtree.d.ts +0 -112
- package/build/physics/builtin/quadtree.d.ts.map +0 -1
package/build/system/event.d.ts
CHANGED
|
@@ -291,6 +291,53 @@ export declare const ONCONTEXT_LOST = "renderer.contextlost";
|
|
|
291
291
|
* @see event.on
|
|
292
292
|
*/
|
|
293
293
|
export declare const ONCONTEXT_RESTORED = "renderer.contextrestored";
|
|
294
|
+
/**
|
|
295
|
+
* Emitted by the GPU texture cache after a unit-reassignment reset
|
|
296
|
+
* (either because the shader's sampler range was exhausted, or via
|
|
297
|
+
* explicit `resetUnitAssignments()`). Subscribers — typically batchers
|
|
298
|
+
* — should drop any cached `texture → unit` tracking they hold so they
|
|
299
|
+
* re-bind on first use. Without that, the `texture === boundTextures[unit]`
|
|
300
|
+
* short-circuit in `bindTexture2D` lets a batcher skip the actual
|
|
301
|
+
* `gl.bindTexture` call while a different texture sits at the unit on
|
|
302
|
+
* the GPU. The historical symptom was mesh draws coming out as black
|
|
303
|
+
* silhouettes (sampling a transparent HUD Text canvas) and
|
|
304
|
+
* sprite/bullet draws turning pure white (sampling the multi-material
|
|
305
|
+
* white-pixel fallback).
|
|
306
|
+
*
|
|
307
|
+
* Named GPU-prefixed rather than WEBGL- because the same contract
|
|
308
|
+
* applies to any GPU backend that batches textures across draw calls
|
|
309
|
+
* (WebGL today, WebGPU once it lands).
|
|
310
|
+
*
|
|
311
|
+
* Data passed: none
|
|
312
|
+
* @see event.on
|
|
313
|
+
*/
|
|
314
|
+
export declare const GPU_TEXTURE_CACHE_RESET = "renderer.gpu.texturecachereset";
|
|
315
|
+
/**
|
|
316
|
+
* Fired by the WebGL renderer at the start of a new render pass on the
|
|
317
|
+
* active target. The signal is "begin new render pass — invalidate any
|
|
318
|
+
* target-scoped state you've accumulated", not strictly "the framebuffer
|
|
319
|
+
* identity changed". Emitted from:
|
|
320
|
+
*
|
|
321
|
+
* - `clear()` — frame start: the active target's color/stencil were just
|
|
322
|
+
* wiped, depth wasn't (lazy), so a new pass begins now.
|
|
323
|
+
* - `clearRenderTarget()` — a non-camera FBO was just bound and color-
|
|
324
|
+
* cleared, beginning a new pass on it.
|
|
325
|
+
* - `endPostEffect()` — the parent target was rebound (a physical change
|
|
326
|
+
* of framebuffer identity), beginning a new pass on it.
|
|
327
|
+
*
|
|
328
|
+
* Subscribers with target-scoped state (depth-clear flag, instance buffers
|
|
329
|
+
* keyed on the target, sort accumulators, etc.) invalidate it here.
|
|
330
|
+
* Batchers without target-scoped state don't subscribe and pay nothing —
|
|
331
|
+
* same shape as `GPU_TEXTURE_CACHE_RESET`.
|
|
332
|
+
*
|
|
333
|
+
* The future WebGPU renderer will emit this when it begins a new
|
|
334
|
+
* `RenderPassEncoder` (clear loadOps replace `clear()` calls in WebGPU's
|
|
335
|
+
* declarative pass descriptors).
|
|
336
|
+
*
|
|
337
|
+
* Data passed: none
|
|
338
|
+
* @see event.on
|
|
339
|
+
*/
|
|
340
|
+
export declare const RENDER_TARGET_CHANGED = "renderer.target.changed";
|
|
294
341
|
interface Events {
|
|
295
342
|
[DOM_READY]: () => void;
|
|
296
343
|
[BOOT]: () => void;
|
|
@@ -336,6 +383,8 @@ interface Events {
|
|
|
336
383
|
[VIEWPORT_ONCHANGE]: (position: Vector2d) => void;
|
|
337
384
|
[ONCONTEXT_LOST]: (renderer: Renderer) => void;
|
|
338
385
|
[ONCONTEXT_RESTORED]: (renderer: Renderer) => void;
|
|
386
|
+
[GPU_TEXTURE_CACHE_RESET]: () => void;
|
|
387
|
+
[RENDER_TARGET_CHANGED]: () => void;
|
|
339
388
|
}
|
|
340
389
|
/**
|
|
341
390
|
* Add a listener for a given event.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/system/event.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/system/event.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser full screen support — probed once at module load via the
|
|
3
|
+
* unprefixed `fullscreenEnabled` field with vendor-prefixed fallbacks.
|
|
4
|
+
*/
|
|
5
|
+
export declare const hasFullscreenSupport: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Returns true if the browser/device is in full screen mode.
|
|
8
|
+
*
|
|
9
|
+
* Pure document-state probe — no Application context needed, since the
|
|
10
|
+
* browser tracks exactly one fullscreen element per document regardless
|
|
11
|
+
* of how many Applications are running.
|
|
12
|
+
* @category Application
|
|
13
|
+
* @returns true when any of the four vendor variants of `fullscreenElement` is non-null
|
|
14
|
+
*/
|
|
15
|
+
export declare function isFullscreen(): boolean;
|
|
16
|
+
//# sourceMappingURL=fullscreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fullscreen.d.ts","sourceRoot":"","sources":["../../src/system/fullscreen.ts"],"names":[],"mappings":"AAmBA;;;GAGG;AACH,eAAO,MAAM,oBAAoB,SAO/B,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAStC"}
|
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
* ua the user agent string for the current device
|
|
6
6
|
* iOS `true` if the device is an iOS platform
|
|
7
7
|
* android `true` if the device is an Android platform
|
|
8
|
-
* android2 `true` if the device is an Android 2.x platform
|
|
8
|
+
* android2 `true` if the device is an Android 2.x platform (deprecated)
|
|
9
9
|
* linux `true` if the device is a Linux platform
|
|
10
10
|
* chromeOS `true` if the device is running on ChromeOS.
|
|
11
|
-
* wp `true` if the device is a Windows Phone platform
|
|
12
|
-
* BlackBerry`true` if the device is a BlackBerry platform
|
|
13
|
-
* Kindle`true` if the device is a Kindle platform
|
|
11
|
+
* wp `true` if the device is a Windows Phone platform (deprecated)
|
|
12
|
+
* BlackBerry `true` if the device is a BlackBerry platform (deprecated)
|
|
13
|
+
* Kindle `true` if the device is a Kindle platform (deprecated)
|
|
14
14
|
* ejecta `true` if running under Ejecta
|
|
15
15
|
* isWeixin `true` if running under Wechat
|
|
16
16
|
* nodeJS `true` if running under node.js
|
|
@@ -18,13 +18,41 @@
|
|
|
18
18
|
* webApp `true` if running as a standalone web app
|
|
19
19
|
*/
|
|
20
20
|
export declare const ua: string;
|
|
21
|
+
/**
|
|
22
|
+
* iPad-on-Mac-UA predicate. Exported so the spec file can assert the
|
|
23
|
+
* SAME function the module evaluates at load time (no drift between
|
|
24
|
+
* docs and implementation), but marked `@internal` because it's a
|
|
25
|
+
* test-seam, not a stable public API — the engine reserves the right
|
|
26
|
+
* to change / inline / rename it without a breaking-change bump.
|
|
27
|
+
*
|
|
28
|
+
* Parameter shape is `Partial<Pick<Navigator, ...>>` rather than a
|
|
29
|
+
* named alias so no engine-defined type leaks into the emitted
|
|
30
|
+
* `.d.ts` (`tsconfig.build.json` doesn't currently set
|
|
31
|
+
* `stripInternal`).
|
|
32
|
+
* @param nav - a `navigator`-shaped object (or `undefined` for Node/SSR)
|
|
33
|
+
* @returns `true` when `nav` looks like an iPad reporting under the iPadOS-13+ desktop Mac UA
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
export declare function isIPadOnMacUA(nav: Partial<Pick<Navigator, "platform" | "maxTouchPoints">> | undefined): boolean;
|
|
21
37
|
export declare const iOS: boolean;
|
|
22
38
|
export declare const android: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* @deprecated since 19.7.0 — Android 2.x predates 2012. Will be removed in 20.x.
|
|
41
|
+
*/
|
|
23
42
|
export declare const android2: boolean;
|
|
24
43
|
export declare const linux: boolean;
|
|
25
44
|
export declare const chromeOS: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* @deprecated since 19.7.0 — Windows Phone was EOL'd by Microsoft in 2017. Will be removed in 20.x.
|
|
47
|
+
*/
|
|
26
48
|
export declare const wp: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* @deprecated since 19.7.0 — BlackBerry stopped shipping BB10 devices in 2016. Will be removed in 20.x.
|
|
51
|
+
*/
|
|
27
52
|
export declare const BlackBerry: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* @deprecated since 19.7.0 — Kindle has a negligible market share and behaves like Android. Will be removed in 20.x.
|
|
55
|
+
*/
|
|
28
56
|
export declare const Kindle: boolean;
|
|
29
57
|
export declare const ejecta: boolean;
|
|
30
58
|
export declare const isWeixin: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/system/platform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,eAAO,MAAM,EAAE,QAGT,CAAC;
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/system/platform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,eAAO,MAAM,EAAE,QAGT,CAAC;AAaP;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAC5B,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,gBAAgB,CAAC,CAAC,GAAG,SAAS,GACtE,OAAO,CAET;AAOD,eAAO,MAAM,GAAG,SAAsD,CAAC;AACvE,eAAO,MAAM,OAAO,SAAsB,CAAC;AAC3C;;GAEG;AACH,eAAO,MAAM,QAAQ,SAAwB,CAAC;AAC9C,eAAO,MAAM,KAAK,SAAoB,CAAC;AACvC,eAAO,MAAM,QAAQ,SAAkB,CAAC;AACxC;;GAEG;AACH,eAAO,MAAM,EAAE,SAA4B,CAAC;AAC5C;;GAEG;AACH,eAAO,MAAM,UAAU,SAAyB,CAAC;AACjD;;GAEG;AACH,eAAO,MAAM,MAAM,SAAyC,CAAC;AAC7D,eAAO,MAAM,MAAM,SAAyB,CAAC;AAC7C,eAAO,MAAM,QAAQ,SAA6B,CAAC;AAOnD,eAAO,MAAM,MAAM,SAGW,CAAC;AAO/B,eAAO,MAAM,QAAQ,SAAqC,CAAC;AAC3D,eAAO,MAAM,MAAM,SAK2C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../src/system/timer.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,cAAM,KAAK;IACV,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QACP,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;QACnB,IAAI,EAAE,GAAG,EAAE,CAAC;KACZ,EAAE,CAAC;IACJ,OAAO,EAAE,MAAM,CAAC;;IAsEhB;;;OAGG;IACH,KAAK;
|
|
1
|
+
{"version":3,"file":"timer.d.ts","sourceRoot":"","sources":["../../src/system/timer.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,cAAM,KAAK;IACV,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QACP,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;QACnB,IAAI,EAAE,GAAG,EAAE,CAAC;KACZ,EAAE,CAAC;IACJ,OAAO,EAAE,MAAM,CAAC;;IAsEhB;;;OAGG;IACH,KAAK;IAWL;;;;;;;;;;;;OAYG;IACH,UAAU,CACT,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC3B,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,OAAO,EACnB,GAAG,IAAI,EAAE,GAAG,EAAE;IAcf;;;;;;;;;;;;OAYG;IACH,WAAW,CACV,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC3B,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,OAAO,EACnB,GAAG,IAAI,EAAE,GAAG,EAAE;IAcf;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM;IAQ9B;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM;IAQhC;;;;OAIG;IACH,OAAO;IAIP;;;OAGG;IACH,QAAQ;IAIR;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM;IAgCnB;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM;IAS1B;;;OAGG;IACH,YAAY;CAgBZ;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B;;;;;;;;;;;;GAYG;AACH,eAAe,KAAK,CAAC"}
|
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
5
|
* Executes a function as soon as the interpreter is idle (stack empty).
|
|
6
|
+
*
|
|
7
|
+
* Generic over the target function's tail-args tuple so call sites pass
|
|
8
|
+
* the function's actual parameters without lying to TypeScript via
|
|
9
|
+
* `as unknown as (...args: unknown[]) => unknown` casts. The compiler
|
|
10
|
+
* infers `TArgs` from the trailing rest args and constrains `func` to
|
|
11
|
+
* accept them.
|
|
6
12
|
* @param func - The function to be deferred.
|
|
7
13
|
* @param thisArg - The value to be passed as the this parameter to the target function when the deferred function is called
|
|
8
14
|
* @param args - Optional additional arguments to carry for the function.
|
|
@@ -13,7 +19,7 @@
|
|
|
13
19
|
* // with the current context and [1, 2, 3] as parameter
|
|
14
20
|
* me.utils.function.defer(myFunc, this, 1, 2, 3);
|
|
15
21
|
*/
|
|
16
|
-
export declare function defer(func: (...args:
|
|
22
|
+
export declare function defer<TArgs extends unknown[]>(func: (...args: TArgs) => unknown, thisArg: unknown, ...args: TArgs): number;
|
|
17
23
|
/**
|
|
18
24
|
* returns a function that, when invoked will only be triggered at most once during a given window of time
|
|
19
25
|
* @param fn - the function to be throttled.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../src/utils/function.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH
|
|
1
|
+
{"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../src/utils/function.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,KAAK,CAAC,KAAK,SAAS,OAAO,EAAE,EAC5C,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,EACjC,OAAO,EAAE,OAAO,EAChB,GAAG,IAAI,EAAE,KAAK,UAGd;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,OAAO,EAAE,EAC3C,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,EACxB,OAAM,MAAY,MAKV,GAAG,MAAM,CAAC,SAkBlB,CAAC"}
|
package/build/utils/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/C,MAAM,MAAM,QAAQ,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -12,6 +12,7 @@ export default class VertexArrayBuffer {
|
|
|
12
12
|
buffer: ArrayBuffer;
|
|
13
13
|
bufferF32: Float32Array<ArrayBuffer>;
|
|
14
14
|
bufferU32: Uint32Array<ArrayBuffer>;
|
|
15
|
+
bufferU8: Uint8Array<ArrayBuffer>;
|
|
15
16
|
/**
|
|
16
17
|
* clear the vertex array buffer
|
|
17
18
|
* @ignore
|
|
@@ -26,14 +27,15 @@ export default class VertexArrayBuffer {
|
|
|
26
27
|
* push a new vertex to the buffer
|
|
27
28
|
* @param {number} x - x position
|
|
28
29
|
* @param {number} y - y position
|
|
29
|
-
* @param {number}
|
|
30
|
-
* @param {number}
|
|
30
|
+
* @param {number} z - z position (per-renderable depth; 0 under ortho)
|
|
31
|
+
* @param {number} u - texture U coordinate (or aNormal.x for primitives)
|
|
32
|
+
* @param {number} v - texture V coordinate (or aNormal.y for primitives)
|
|
31
33
|
* @param {number} tint - tint color in UINT32 (argb) format
|
|
32
34
|
* @param {number} [textureId] - texture unit index for multi-texture batching
|
|
33
35
|
* @param {number} [normalTextureId] - paired normal-map texture unit index, or `-1` for unlit quads
|
|
34
36
|
* @ignore
|
|
35
37
|
*/
|
|
36
|
-
push(x: number, y: number, u: number, v: number, tint: number, textureId?: number, normalTextureId?: number): this;
|
|
38
|
+
push(x: number, y: number, z: number, u: number, v: number, tint: number, textureId?: number, normalTextureId?: number): this;
|
|
37
39
|
/**
|
|
38
40
|
* push a new vertex with all-float data to the buffer
|
|
39
41
|
* @param {ArrayLike<number>} data - float values for one vertex
|
|
@@ -43,7 +45,12 @@ export default class VertexArrayBuffer {
|
|
|
43
45
|
*/
|
|
44
46
|
pushFloats(data: ArrayLike<number>, srcOffset: number, count: number): this;
|
|
45
47
|
/**
|
|
46
|
-
* push a new vertex to the buffer (mesh format: x, y, z, u, v, tint)
|
|
48
|
+
* push a new vertex to the buffer (mesh format: x, y, z, u, v, tint).
|
|
49
|
+
* Color is unpacked from the ARGB Uint32 input into 4 normalized
|
|
50
|
+
* `[0, 1]` floats — the mesh batcher's `aColor` attribute is
|
|
51
|
+
* `FLOAT × 4` rather than `UNSIGNED_BYTE × 4` to avoid NaN-pattern
|
|
52
|
+
* bit values getting canonicalized on Metal-backed WebGL drivers.
|
|
53
|
+
* See `mesh_batcher.init` for the rationale.
|
|
47
54
|
* @ignore
|
|
48
55
|
*/
|
|
49
56
|
pushMesh(x: any, y: any, z: any, u: any, v: any, tint: any): this;
|
|
@@ -57,5 +64,13 @@ export default class VertexArrayBuffer {
|
|
|
57
64
|
* @ignore
|
|
58
65
|
*/
|
|
59
66
|
toUint32(begin: any, end: any): Uint32Array<ArrayBuffer>;
|
|
67
|
+
/**
|
|
68
|
+
* return a byte-view reference to the data — use this for `gl.bufferData`
|
|
69
|
+
* uploads to avoid the NaN-canonicalization that some drivers perform
|
|
70
|
+
* on Float32 uploads of the same backing buffer (see the constructor's
|
|
71
|
+
* `bufferU8` comment).
|
|
72
|
+
* @ignore
|
|
73
|
+
*/
|
|
74
|
+
toUint8(byteBegin: any, byteEnd: any): Uint8Array<ArrayBuffer>;
|
|
60
75
|
}
|
|
61
76
|
//# sourceMappingURL=vertex.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../../src/video/buffer/vertex.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;IACC,
|
|
1
|
+
{"version":3,"file":"vertex.d.ts","sourceRoot":"","sources":["../../../src/video/buffer/vertex.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;IACC,6CAyBC;IAvBA,gBAA4B;IAE5B,eAA0B;IAE1B,oBAAoB;IAGpB,oBAEC;IAED,qCAA8C;IAC9C,oCAA6C;IAU7C,kCAA2C;IAG5C;;;OAGG;IACH,cAEC;IAED;;;OAGG;IACH,6BAEC;IAED;;;;;;;;;;;OAWG;IACH,QAVW,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,QACN,MAAM,cACN,MAAM,oBACN,MAAM,QA6BhB;IAED;;;;;;OAMG;IACH,iBALW,SAAS,CAAC,MAAM,CAAC,aACjB,MAAM,SACN,MAAM,QAahB;IAED;;;;;;;;OAQG;IACH,kEAgBC;IAED;;;OAGG;IACH,2DAMC;IAED;;;OAGG;IACH,yDAMC;IAED;;;;;;OAMG;IACH,+DAMC;CACD"}
|
|
@@ -78,7 +78,7 @@ export default class CanvasRenderer extends Renderer {
|
|
|
78
78
|
/**
|
|
79
79
|
* Create a pattern with the specified repetition
|
|
80
80
|
* @param {HTMLImageElement|SVGImageElement|HTMLVideoElement|HTMLCanvasElement|ImageBitmap|OffscreenCanvas|VideoFrame} image - Source image to be used as the pattern's image
|
|
81
|
-
* @param {string} repeat - Define how the pattern should be repeated
|
|
81
|
+
* @param {string} [repeat="no-repeat"] - Define how the pattern should be repeated. One of `"repeat"` / `"repeat-x"` / `"repeat-y"` / `"no-repeat"`.
|
|
82
82
|
* @returns {CanvasPattern}
|
|
83
83
|
* @see ImageLayer#repeat
|
|
84
84
|
* @example
|
|
@@ -87,7 +87,7 @@ export default class CanvasRenderer extends Renderer {
|
|
|
87
87
|
* let vertical = renderer.createPattern(image, "repeat-y");
|
|
88
88
|
* let basic = renderer.createPattern(image, "no-repeat");
|
|
89
89
|
*/
|
|
90
|
-
createPattern(image: HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame, repeat
|
|
90
|
+
createPattern(image: HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame, repeat?: string): CanvasPattern;
|
|
91
91
|
/**
|
|
92
92
|
* Draw a pattern within the given rectangle.
|
|
93
93
|
* @param {CanvasPattern} pattern - Pattern object
|
|
@@ -98,9 +98,9 @@ export default class CanvasRenderer extends Renderer {
|
|
|
98
98
|
* @see CanvasRenderer#createPattern
|
|
99
99
|
*/
|
|
100
100
|
drawPattern(pattern: CanvasPattern, x: number, y: number, width: number, height: number): void;
|
|
101
|
+
_meshColorCanvas: HTMLCanvasElement | OffscreenCanvas | undefined;
|
|
102
|
+
_meshColorCtx: RenderingContext | OffscreenCanvasRenderingContext2D | null | undefined;
|
|
101
103
|
_meshSortBuf: Float64Array<ArrayBuffer> | undefined;
|
|
102
|
-
_meshColorCanvas: HTMLCanvasElement | undefined;
|
|
103
|
-
_meshColorCtx: CanvasRenderingContext2D | null | undefined;
|
|
104
104
|
/**
|
|
105
105
|
* starts a new path by emptying the list of sub-paths. Call this method when you want to create a new path
|
|
106
106
|
* @example
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/canvas/canvas_renderer.js"],"names":[],"mappings":"AAYA;;;;;;;;GAQG;AAEH;;;GAGG;AACH;IAcE,oBAAmC;IA4CnC,8CAA4B;IAG7B;;OAEG;IACH,uBAEC;IAED;;;;;OAKG;IACH,sBAFW,QAAQ,QAclB;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,oBAHW,MAAM,GACJ,MAAM,CAqClB;IAWD;;;;OAIG;IACH,mBAHW,KAAK,GAAC,MAAM,WACZ,OAAO,QAajB;IAED;;;;;;OAMG;IACH,aALW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAIhB;IAED;;;;;;;;;;;OAWG;IACH,qBAVW,gBAAgB,GAAC,eAAe,GAAC,gBAAgB,GAAC,iBAAiB,GAAC,WAAW,GAAC,eAAe,GAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"canvas_renderer.d.ts","sourceRoot":"","sources":["../../../src/video/canvas/canvas_renderer.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create and return a new Canvas element (or `OffscreenCanvas` when
|
|
3
|
+
* supported and `returnOffscreenCanvas` is true). The single low-level
|
|
4
|
+
* allocator used by every renderer-side scratch / fallback / render-
|
|
5
|
+
* target canvas in the engine.
|
|
6
|
+
*
|
|
7
|
+
* Lives in its own module (not on `Renderer` directly) to break the
|
|
8
|
+
* circular dependency between `Renderer` and `CanvasRenderTarget` —
|
|
9
|
+
* both can import this helper without referencing each other.
|
|
10
|
+
* `Renderer.createCanvas` re-exposes it as a static method for the
|
|
11
|
+
* public-facing API; internal callers can import it directly.
|
|
12
|
+
*
|
|
13
|
+
* Gates the OffscreenCanvas path on `device.offscreenCanvas` (the
|
|
14
|
+
* vetted capability check — actually instantiates + verifies
|
|
15
|
+
* `getContext("2d")` works inside a try/catch, covering historical
|
|
16
|
+
* Safari quirks).
|
|
17
|
+
* @param {number} width - canvas width in pixels
|
|
18
|
+
* @param {number} height - canvas height in pixels
|
|
19
|
+
* @param {boolean} [returnOffscreenCanvas=false] - return an
|
|
20
|
+
* `OffscreenCanvas` if the platform supports it
|
|
21
|
+
* @returns {HTMLCanvasElement|OffscreenCanvas} a new canvas of the given size
|
|
22
|
+
* @ignore
|
|
23
|
+
*/
|
|
24
|
+
export function createCanvas(width: number, height: number, returnOffscreenCanvas?: boolean): HTMLCanvasElement | OffscreenCanvas;
|
|
25
|
+
//# sourceMappingURL=canvas_factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvas_factory.d.ts","sourceRoot":"","sources":["../../src/video/canvas_factory.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,oCAPW,MAAM,UACN,MAAM,0BACN,OAAO,GAEL,iBAAiB,GAAC,eAAe,CAsB7C"}
|
|
@@ -13,7 +13,35 @@
|
|
|
13
13
|
* a base renderer object
|
|
14
14
|
* @category Rendering
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
declare class Renderer {
|
|
17
|
+
/**
|
|
18
|
+
* Create and return a new Canvas element (or `OffscreenCanvas` when
|
|
19
|
+
* supported and `returnOffscreenCanvas` is true). Centralized
|
|
20
|
+
* renderer-side allocator so every scratch / fallback / render-
|
|
21
|
+
* target canvas in the engine routes through the same
|
|
22
|
+
* `OffscreenCanvas`-aware path, instead of duplicating
|
|
23
|
+
* `document.createElement` calls that throw in worker contexts.
|
|
24
|
+
* @param {number} width - canvas width in pixels
|
|
25
|
+
* @param {number} height - canvas height in pixels
|
|
26
|
+
* @param {boolean} [returnOffscreenCanvas=false] - return an
|
|
27
|
+
* `OffscreenCanvas` if the platform supports it
|
|
28
|
+
* @returns {HTMLCanvasElement|OffscreenCanvas} a new canvas of the given size
|
|
29
|
+
*/
|
|
30
|
+
static createCanvas(width: number, height: number, returnOffscreenCanvas?: boolean): HTMLCanvasElement | OffscreenCanvas;
|
|
31
|
+
/**
|
|
32
|
+
* Shared 1×1 fully-white canvas used as a no-op texture fallback.
|
|
33
|
+
* Renderers and renderables that need a "blank" texture binding
|
|
34
|
+
* (e.g. to satisfy a shader's sampler input when there's no real
|
|
35
|
+
* image — Kd-only `Mesh` materials, solid-color quad fills, etc.)
|
|
36
|
+
* should use this rather than allocating their own.
|
|
37
|
+
*
|
|
38
|
+
* Lazily created on first call; shared across every caller; uses
|
|
39
|
+
* `OffscreenCanvas` where supported (worker-safe). Static so it's
|
|
40
|
+
* accessible without a renderer instance (e.g. from a `Mesh`
|
|
41
|
+
* constructor that runs before the active renderer is set).
|
|
42
|
+
* @returns {HTMLCanvasElement|OffscreenCanvas} the shared 1×1 white canvas
|
|
43
|
+
*/
|
|
44
|
+
static getWhitePixel(): HTMLCanvasElement | OffscreenCanvas;
|
|
17
45
|
/**
|
|
18
46
|
* @param {ApplicationSettings} [options] - optional parameters for the renderer
|
|
19
47
|
*/
|
|
@@ -49,14 +77,15 @@ export default class Renderer {
|
|
|
49
77
|
*/
|
|
50
78
|
isContextValid: boolean;
|
|
51
79
|
/**
|
|
52
|
-
* The GPU
|
|
80
|
+
* The GPU device identifier string (set by GPU renderers — WebGL today,
|
|
81
|
+
* WebGPU once it lands; undefined for Canvas).
|
|
53
82
|
* @type {string|undefined}
|
|
54
83
|
*/
|
|
55
84
|
GPURenderer: string | undefined;
|
|
56
85
|
/**
|
|
57
86
|
* an optional custom shader to use instead of the default one.
|
|
58
87
|
* Set by a renderable's preDraw when a shader is assigned.
|
|
59
|
-
* (
|
|
88
|
+
* (GPU renderers only; ignored by Canvas renderer)
|
|
60
89
|
* @type {GLShader|ShaderEffect|undefined}
|
|
61
90
|
* @ignore
|
|
62
91
|
*/
|
|
@@ -136,6 +165,18 @@ export default class Renderer {
|
|
|
136
165
|
* @type {string}
|
|
137
166
|
*/
|
|
138
167
|
get currentBlendMode(): string;
|
|
168
|
+
set currentDepth(value: number);
|
|
169
|
+
/**
|
|
170
|
+
* Current per-renderable depth value. GPU batchers (WebGL today,
|
|
171
|
+
* WebGPU once it lands) push it into the vertex stream as the `z`
|
|
172
|
+
* component of each vertex — a no-op under the default orthographic
|
|
173
|
+
* projection, used by perspective (Camera3d) to
|
|
174
|
+
* scale and parallax sprites by distance. Mirrors `renderable.depth`,
|
|
175
|
+
* set automatically by `Renderable.preDraw` via {@link Renderer#setDepth}.
|
|
176
|
+
* @type {number}
|
|
177
|
+
* @default 0
|
|
178
|
+
*/
|
|
179
|
+
get currentDepth(): number;
|
|
139
180
|
set height(value: number);
|
|
140
181
|
/**
|
|
141
182
|
* return the height of the canvas which this renderer draws to
|
|
@@ -170,6 +211,12 @@ export default class Renderer {
|
|
|
170
211
|
* Reset context state
|
|
171
212
|
*/
|
|
172
213
|
reset(): void;
|
|
214
|
+
/**
|
|
215
|
+
* Release any renderer-owned resources. Default is a no-op;
|
|
216
|
+
* subclasses override to tear down batchers, FBO pools, GL
|
|
217
|
+
* programs, etc. Called by {@link Application#destroy}.
|
|
218
|
+
*/
|
|
219
|
+
destroy(): void;
|
|
173
220
|
/**
|
|
174
221
|
* return a reference to the current render target corresponding canvas which this renderer draws to
|
|
175
222
|
* @returns {HTMLCanvasElement}
|
|
@@ -182,9 +229,11 @@ export default class Renderer {
|
|
|
182
229
|
getContext(): CanvasRenderingContext2D | WebGLRenderingContext;
|
|
183
230
|
/**
|
|
184
231
|
* return the list of supported compressed texture formats.
|
|
185
|
-
* The base implementation returns null for all formats (no GPU
|
|
186
|
-
*
|
|
187
|
-
*
|
|
232
|
+
* The base implementation returns null for all formats (no GPU
|
|
233
|
+
* compressed texture support). GPU renderers (WebGL today, WebGPU
|
|
234
|
+
* once it lands) override this with the backend-specific extension /
|
|
235
|
+
* feature query.
|
|
236
|
+
* @returns {Object} an object with one key per extension family, each value is the backend's compressed-texture handle or null
|
|
188
237
|
*/
|
|
189
238
|
getSupportedCompressedTextureFormats(): Object;
|
|
190
239
|
/**
|
|
@@ -267,9 +316,10 @@ export default class Renderer {
|
|
|
267
316
|
getBlendMode(): string;
|
|
268
317
|
/**
|
|
269
318
|
* set the current blend mode.
|
|
270
|
-
* Subclasses (CanvasRenderer, WebGLRenderer
|
|
319
|
+
* Subclasses (CanvasRenderer, WebGLRenderer, WebGPURenderer once it
|
|
320
|
+
* lands) implement the actual backend logic.
|
|
271
321
|
* @param {string} [mode="normal"] - blend mode
|
|
272
|
-
* @param {boolean} [premultipliedAlpha=true] - whether textures use premultiplied alpha (
|
|
322
|
+
* @param {boolean} [premultipliedAlpha=true] - whether textures use premultiplied alpha (GPU renderers only)
|
|
273
323
|
*/
|
|
274
324
|
setBlendMode(mode?: string): void;
|
|
275
325
|
/**
|
|
@@ -277,11 +327,12 @@ export default class Renderer {
|
|
|
277
327
|
*
|
|
278
328
|
* Called once per camera per frame by `Camera2d.draw()` (after the
|
|
279
329
|
* FBO is bound, before the world tree walk fires `Sprite.draw` for
|
|
280
|
-
* any normal-mapped sprite).
|
|
281
|
-
* pack the lights into the lit shader's
|
|
282
|
-
* renderer cannot do per-pixel normal-map
|
|
283
|
-
* ignores the call. The first time a non-empty
|
|
284
|
-
* in Canvas mode, a one-shot console warning is
|
|
330
|
+
* any normal-mapped sprite). GPU renderers (WebGL today, WebGPU once
|
|
331
|
+
* it lands) override this to pack the lights into the lit shader's
|
|
332
|
+
* uniform buffers; the Canvas renderer cannot do per-pixel normal-map
|
|
333
|
+
* lighting and silently ignores the call. The first time a non-empty
|
|
334
|
+
* light list is passed in Canvas mode, a one-shot console warning is
|
|
335
|
+
* emitted.
|
|
285
336
|
*
|
|
286
337
|
* Stage stays renderer-agnostic by passing the raw scene data —
|
|
287
338
|
* lights iterable and ambient color — and letting the renderer
|
|
@@ -399,7 +450,8 @@ export default class Renderer {
|
|
|
399
450
|
*/
|
|
400
451
|
setAntiAlias(enable?: boolean): void;
|
|
401
452
|
/**
|
|
402
|
-
* set/change the current projection matrix (
|
|
453
|
+
* set/change the current projection matrix (GPU renderers only —
|
|
454
|
+
* the Canvas renderer applies projection via the 2D context's transform stack).
|
|
403
455
|
* @param {Matrix3d} matrix
|
|
404
456
|
*/
|
|
405
457
|
setProjection(matrix: Matrix3d): void;
|
|
@@ -505,7 +557,8 @@ export default class Renderer {
|
|
|
505
557
|
strokeLine(startX: number, startY: number, endX: number, endY: number): void;
|
|
506
558
|
/**
|
|
507
559
|
* Draw an image or sub-image into the framebuffer.
|
|
508
|
-
* Implemented by subclasses (`CanvasRenderer` / `WebGLRenderer`
|
|
560
|
+
* Implemented by subclasses (`CanvasRenderer` / `WebGLRenderer` /
|
|
561
|
+
* future `WebGPURenderer`).
|
|
509
562
|
*
|
|
510
563
|
* The 9-argument signature shown here is the canonical form used
|
|
511
564
|
* throughout the engine; the concrete renderers also accept the
|
|
@@ -546,6 +599,23 @@ export default class Renderer {
|
|
|
546
599
|
* @see Renderer#setTint
|
|
547
600
|
*/
|
|
548
601
|
clearTint(): void;
|
|
602
|
+
/**
|
|
603
|
+
* Set the current per-renderable depth value. GPU batchers (WebGL
|
|
604
|
+
* today, WebGPU once it lands) push it into the vertex stream as the
|
|
605
|
+
* `z` component of each vertex — a no-op under the default
|
|
606
|
+
* orthographic projection, used by perspective (Camera3d) to scale
|
|
607
|
+
* and parallax sprites by distance.
|
|
608
|
+
*
|
|
609
|
+
* Typically called automatically by `Renderable.preDraw` from the
|
|
610
|
+
* renderable's `depth` property. User code only needs to call this
|
|
611
|
+
* directly when emitting draw calls outside of a `Renderable.draw()`
|
|
612
|
+
* — e.g. from a custom `Container.draw()` override.
|
|
613
|
+
*
|
|
614
|
+
* Honored by the save/restore stack like `setTint` / `setColor`.
|
|
615
|
+
* @param {number} depth - the depth value to set
|
|
616
|
+
* @see Renderable#depth
|
|
617
|
+
*/
|
|
618
|
+
setDepth(depth: number): void;
|
|
549
619
|
/**
|
|
550
620
|
* creates a Blob object representing the last rendered frame
|
|
551
621
|
* @param {string} [type="image/png"] - A string indicating the image format
|
|
@@ -575,6 +645,10 @@ export default class Renderer {
|
|
|
575
645
|
*/
|
|
576
646
|
toDataURL(type?: string, quality?: number): Promise<any>;
|
|
577
647
|
}
|
|
648
|
+
declare namespace Renderer {
|
|
649
|
+
let _whitePixel: any;
|
|
650
|
+
}
|
|
651
|
+
export default Renderer;
|
|
578
652
|
import CanvasRenderTarget from "./rendertarget/canvasrendertarget.js";
|
|
579
653
|
import { Vector2d } from "../math/vector2d.ts";
|
|
580
654
|
import type RenderTargetPool from "./rendertarget/render_target_pool.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/video/renderer.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/video/renderer.js"],"names":[],"mappings":"AAUA;;GAEG;AAEH;;;;;;;GAOG;AAEH;;;GAGG;AACH;IAiQC;;;;;;;;;;;;OAYG;IACH,2BANW,MAAM,UACN,MAAM,0BACN,OAAO,GAEL,iBAAiB,GAAC,eAAe,CAI7C;IAED;;;;;;;;;;;;OAYG;IACH,wBAFa,iBAAiB,GAAC,eAAe,CAgB7C;IA5SD;;OAEG;IACH,sBAFW,mBAAmB,EAsJ7B;IAnJA;;;;OAIG;IACH,cAFU,kBAAkB,CAS3B;IAED;;;;OAIG;IACH,iBAFU,MAAM,CAEO;IAEvB;;;;OAIG;IACH,oBAFU,MAAM,CAE6C;IAE7D;;;;OAIG;IACH,YAHU,QAAQ,CAGsD;IAExE;;;;OAIG;IACH,gBAFU,OAAO,CAES;IAE1B;;;;OAIG;IACH,aAFU,MAAM,GAAC,SAAS,CAEE;IAE5B;;;;;;OAMG;IACH,cAHU,QAAQ,GAAC,YAAY,GAAC,SAAS,CAGZ;IAE7B;;;;;OAKG;IACH,mBAHU,gBAAgB,GAAC,IAAI,CAGF;IAE7B;;;OAGG;IACH,QAFU,MAAM,CAEU;IAE1B;;;;OAIG;IACH,MAFU,MAAM,CAEK;IAErB;;;;;OAKG;IACH,iBAFU,KAAK,CAOd;IAED;;;;OAIG;IACH,aAFU,WAAW,CAEe;IAGpC,oBAAiD;IACjD,mBAA+C;IAC/C,4CAAqD;IAErD;;;;;;;;;OASG;IACH,WAHU,MAAM,CAGE;IAElB;;OAEG;IACH,kBAAkB;IAGlB,2BAAsC;IAGtC,iBAAiB;IAEjB;;;;;;;;OAQG;IACH,kBAFU,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,GAAC,IAAI,CAEjD;IAE5B;;;;;;;OAOG;IACH,kBAFU,MAAM,CAES;IAU1B,4BANU,MAAM,EAQf;IATD;;OAEG;IACH,wBAFU,MAAM,CAIf;IAoBD,wBAPU,MAAM,EASf;IAhBD;;;;;;;;;OASG;IACH,oBAHU,MAAM,CAKf;IAcD,kBANa,MAAM,EAQlB;IAVD;;;OAGG;IACH,cAFa,MAAM,CAIlB;IAcD,iBANa,MAAM,EAQlB;IAVD;;;OAGG;IACH,aAFa,MAAM,CAIlB;IAMD;;OAEG;IACH,cAAU;IAEV;;OAEG;IACH,cAAU;IAEV;;;;;;;;OAQG;IAEH,eAHW,IAAI,QAGE;IAEjB;;OAEG;IACH,cAQC;IAED;;;;OAIG;IACH,gBAAY;IAEZ;;;OAGG;IACH,aAFa,iBAAiB,CAI7B;IAgDD;;;OAGG;IACH,cAFa,wBAAwB,GAAC,qBAAqB,CAI1D;IAED;;;;;;;OAOG;IACH,wCAFa,MAAM,CAYlB;IAED;;;;OAIG;IACH,sCAHW,MAAM,GACJ,OAAO,CAgBnB;IAED;;;;;;;OAOG;IACH,4BAJW,UAAU,GACR,OAAO,CAcnB;IAED;;;;;;OAMG;IAEH,0BAJW,UAAU,QAIO;IAE5B;;;;;;;;;;;;OAYG;IAEH,mBATW,YAAY,KACZ,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,UACN,YAAY,cACZ,OAAO,QAG2C;IAE7D;;;;;;;;OAQG;IAEH,gBANW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAGiB;IAElC;;;;OAIG;IACH,0BAAsB;IAEtB;;;;;;;OAOG;IAEH,iBANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAGoB;IAErC;;;OAGG;IACH,uBAAmB;IAEnB;;;;OAIG;IAEH,wBAHW,OAAO,QAGQ;IAE1B;;;OAGG;IACH,gBAFa,MAAM,CAIlB;IAED;;;;;;OAMG;IACH,oBAHW,MAAM,QAKhB;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IAEH,0BANW,QAAQ,CAAC,MAAM,CAAC,YAChB,MAAM,eACN,MAAM,eACN,MAAM,QAqBhB;IAPC,wCAA8B;IAShC;;;;;;;;;;;;;;;;;;;;OAoBG;IAEH,iBAJW,MAAM,QAMhB;IAED;;;;;;;;;;;;OAYG;IACH,qBAHW,MAAM,QACN,IAAI,QA4Bd;IAED;;;;OAIG;IAEH,gBAHW,KAAK,GAAC,MAAM,GAAC,QAAQ,QAK/B;IAED;;;OAGG;IACH,YAFa,KAAK,CAIjB;IAED;;;;;;;OAOG;IACH,yBANW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,QAAQ,CAIpB;IAED;;;;;;;;;OASG;IACH,yBARW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,QAAQ,CAIpB;IAED;;;;;;;;;OASG;IACH,sBARW,MAAM,EAAE,QAsBlB;IAED;;;OAGG;IACH,eAFa,MAAM,EAAE,CAIpB;IAED;;;OAGG;IACH,eAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,iBAHW,IAAI,GAAC,MAAM,GACT,OAAO,CASnB;IAED;;;;OAIG;IACH,cAHW,MAAM,UACN,MAAM,QAchB;IAED;;;OAGG;IACH,sBAFW,OAAO,QAOjB;IAED;;;;OAIG;IACH,sBAFW,QAAQ,QAIlB;IAED;;;;OAIG;IACH,cAHW,IAAI,GAAC,SAAS,GAAC,OAAO,GAAC,IAAI,GAAC,OAAO,GAAC,MAAM,SAC1C,OAAO,QAiFjB;IAED;;;OAGG;IACH,YAFW,IAAI,GAAC,SAAS,GAAC,OAAO,GAAC,IAAI,GAAC,OAAO,GAAC,MAAM,QAIpD;IAED;;;;;;OAMG;IACH,UALW,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,SAClD,KAAK,GAAC,MAAM,SACZ,MAAM,GACJ,iBAAiB,GAAC,eAAe,CAyB7C;IAED;;;OAGG;IACH,aAAS;IAET;;;;OAIG;IACH,gBAAY;IAEZ;;;;OAIG;IAEH,aAJW,MAAM,KACN,MAAM,QAGC;IAElB;;;OAGG;IAEH,cAHW,MAAM,QAGD;IAEhB;;;;OAIG;IAEH,SAJW,MAAM,KACN,MAAM,QAGH;IAEd;;;;OAIG;IAEH,sBAHW,MAAM,QAGO;IAExB;;;;;;;OAOG;IAEH,YANW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,QAGe;IAEhC;;;;;;;;OAQG;IAEH,cAPW,MAAM,KACN,MAAM,SACN,MAAM,UACN,MAAM,SACN,OAAO,QAGsB;IAExC;;;;;;;OAOG;IAEH,eANW,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,QAGS;IAE1B;;;;;;;;OAQG;IAEH,iBAPW,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,SACN,OAAO,QAGgB;IAElC;;;;;;;OAOG;IAEH,mBANW,MAAM,UACN,MAAM,QACN,MAAM,QACN,MAAM,QAGwB;IAEzC;;;;;;;;;;;;;;;;;;OAkBG;IAEH,iBAXW,gBAAgB,GAAC,eAAe,GAAC,gBAAgB,GAAC,iBAAiB,GAAC,WAAW,GAAC,eAAe,GAAC,UAAU,MAC1G,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAGkC;IAEnD;;;;;;OAMG;IACH,gBAAY;IAEZ;;;OAGG;IACH,kBAAc;IAEd;;;;OAIG;IACH,cAHW,KAAK,UACL,MAAM,QAMhB;IAED;;;OAGG;IACH,kBAGC;IAED;;;;;;;;;;;;;;;OAeG;IACH,gBAHW,MAAM,QAKhB;IAED;;;;;;;OAOG;IACH,cANW,MAAM,YACN,MAAM,gBAOhB;IAED;;;;;;;;OAQG;IACH,qBANW,MAAM,YACN,MAAM,gBAOhB;IAED;;;;;;;OAOG;IACH,iBANW,MAAM,YACN,MAAM,gBAOhB;CACD;;;;;+BA5iC8B,sCAAsC;yBAL5C,qBAAqB;kCAQb,sCAAsC;mBAXpD,2BAA2B;sBACxB,oBAAoB;wBAMlB,kBAAkB;yBALjB,qBAAqB;0BAavB,8BAA8B;yBAT5B,eAAe;4BAcf,wBAAwB;+BAJrB,8BAA8B;6BAChC,0BAA0B;0BAC7B,yBAAyB;6BACtB,4BAA4B"}
|
|
@@ -50,6 +50,16 @@ export default class RenderState {
|
|
|
50
50
|
* @type {ShaderEffect|undefined}
|
|
51
51
|
*/
|
|
52
52
|
currentShader: ShaderEffect | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* current per-renderable depth value, pushed into the vertex stream
|
|
55
|
+
* by the WebGL batchers as the `z` component of each vertex. Has no
|
|
56
|
+
* visible effect under the engine's default orthographic projection;
|
|
57
|
+
* required for perspective (Camera3d) to scale sprites by distance.
|
|
58
|
+
* Mirrors `renderable.depth`, set by `Renderable.preDraw` via
|
|
59
|
+
* {@link Renderer#setDepth}.
|
|
60
|
+
* @type {number}
|
|
61
|
+
*/
|
|
62
|
+
currentDepth: number;
|
|
53
63
|
/**
|
|
54
64
|
* @ignore
|
|
55
65
|
*/
|
|
@@ -77,6 +87,8 @@ export default class RenderState {
|
|
|
77
87
|
_blendStack: any[];
|
|
78
88
|
/** @ignore */
|
|
79
89
|
_shaderStack: any[];
|
|
90
|
+
/** @ignore */
|
|
91
|
+
_depthStack: Float32Array<ArrayBuffer>;
|
|
80
92
|
/**
|
|
81
93
|
* Save the current state onto the stack (zero allocations).
|
|
82
94
|
* @param {boolean} [scissorTestActive=false] - whether scissor/clip is currently enabled
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderstate.d.ts","sourceRoot":"","sources":["../../src/video/renderstate.js"],"names":[],"mappings":"AAGA;;GAEG;AAEH;;;;;;;GAOG;AACH;IAEE;;;OAGG;IACH,cAFU,KAAK,CAE4B;IAE3C;;;OAGG;IACH,aAFU,KAAK,CAEiC;IAEhD;;;OAGG;IACH,kBAFU,QAAQ,CAEoB;IAEtC;;;OAGG;IACH,gBAFU,UAAU,CAEmB;IAEvC;;;OAGG;IACH,iBAFU,QAAQ,GAAC,IAAI,CAEI;IAE3B;;;OAGG;IACH,UAFU,MAAM,EAAE,CAEA;IAElB;;;OAGG;IACH,kBAFU,MAAM,CAEc;IAE9B;;;OAGG;IACH,eAFU,YAAY,GAAC,SAAS,CAEF;
|
|
1
|
+
{"version":3,"file":"renderstate.d.ts","sourceRoot":"","sources":["../../src/video/renderstate.js"],"names":[],"mappings":"AAGA;;GAEG;AAEH;;;;;;;GAOG;AACH;IAEE;;;OAGG;IACH,cAFU,KAAK,CAE4B;IAE3C;;;OAGG;IACH,aAFU,KAAK,CAEiC;IAEhD;;;OAGG;IACH,kBAFU,QAAQ,CAEoB;IAEtC;;;OAGG;IACH,gBAFU,UAAU,CAEmB;IAEvC;;;OAGG;IACH,iBAFU,QAAQ,GAAC,IAAI,CAEI;IAE3B;;;OAGG;IACH,UAFU,MAAM,EAAE,CAEA;IAElB;;;OAGG;IACH,kBAFU,MAAM,CAEc;IAE9B;;;OAGG;IACH,eAFU,YAAY,GAAC,SAAS,CAEF;IAE9B;;;;;;;;OAQG;IACH,cAFU,MAAM,CAEK;IAIrB;;OAEG;IACH,uBAAwB;IAExB;;;OAGG;IACH,oBAAoB;IAEpB,cAAc;IACd,qBAEE;IAEF,cAAc;IACd,oBAEE;IAEF,cAAc;IACd,yBAEE;IAEF,cAAc;IACd,yCAEE;IAEF,cAAc;IACd,sBAAoD;IAEpD,cAAc;IACd,wCAAyD;IAEzD,cAAc;IACd,sBAAoD;IAEpD,cAAc;IACd,mBAAiD;IAEjD,cAAc;IACd,oBAAkD;IAElD,cAAc;IACd,uCAAwD;IAGzD;;;OAGG;IACH,yBAFW,OAAO,QA0BjB;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,eAFa,UAAU,GAAG,IAAI,CAQ7B;IAED;;;;;;;;OAQG;IACH,qBAJW,MAAM,gBACN,MAAM,GACJ;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CA0BhE;IAED;;;;OAIG;IACH,aAHW,MAAM,UACN,MAAM,QAWhB;IAED,sDAAsD;IACtD,oBAoBC;CACD;sBAlQqB,oBAAoB;yBACjB,qBAAqB;8BAGnB,eAAe"}
|
|
@@ -22,7 +22,9 @@ export default abstract class RenderTarget {
|
|
|
22
22
|
/**
|
|
23
23
|
* Bind this render target as the active draw destination.
|
|
24
24
|
* All subsequent draw calls will render into this target until {@link unbind} is called.
|
|
25
|
-
* No-op by default — subclasses override for GPU render targets
|
|
25
|
+
* No-op by default — subclasses override for GPU render targets
|
|
26
|
+
* (a WebGL FBO today, a `GPURenderPassEncoder` once the WebGPU
|
|
27
|
+
* renderer lands).
|
|
26
28
|
*/
|
|
27
29
|
bind(): void;
|
|
28
30
|
/**
|