pixi.js 7.3.1 → 7.3.3
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 +1 -1
- package/dist/pixi.js +75 -137
- package/dist/pixi.js.map +1 -1
- package/dist/pixi.min.js +124 -124
- package/dist/pixi.min.js.map +1 -1
- package/dist/pixi.min.mjs +56 -56
- package/dist/pixi.min.mjs.map +1 -1
- package/dist/pixi.mjs +75 -137
- package/dist/pixi.mjs.map +1 -1
- package/package.json +31 -31
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PixiJS — The HTML5 Creation Engine
|
|
2
2
|
=============
|
|
3
3
|
|
|
4
|
-

|
|
5
5
|
|
|
6
6
|
The aim of this project is to provide a fast lightweight 2D library that works
|
|
7
7
|
across all devices. The PixiJS renderer allows everyone to enjoy the power of
|
package/dist/pixi.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* pixi.js - v7.3.
|
|
3
|
-
* Compiled
|
|
2
|
+
* pixi.js - v7.3.3
|
|
3
|
+
* Compiled Mon, 01 Jan 2024 14:18:14 UTC
|
|
4
4
|
*
|
|
5
5
|
* pixi.js is licensed under the MIT License.
|
|
6
6
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -1106,7 +1106,7 @@ Deprecated since v${version}`), console.warn(stack))), warnings[message] = !0;
|
|
|
1106
1106
|
joined = arg;
|
|
1107
1107
|
else {
|
|
1108
1108
|
const prevArg = (_a2 = segments[i2 - 1]) != null ? _a2 : "";
|
|
1109
|
-
this.extname(prevArg) ? joined += `/../${arg}` : joined += `/${arg}`;
|
|
1109
|
+
this.joinExtensions.includes(this.extname(prevArg).toLowerCase()) ? joined += `/../${arg}` : joined += `/${arg}`;
|
|
1110
1110
|
}
|
|
1111
1111
|
}
|
|
1112
1112
|
return joined === void 0 ? "." : this.normalize(joined);
|
|
@@ -1232,7 +1232,8 @@ Deprecated since v${version}`), console.warn(stack))), warnings[message] = !0;
|
|
|
1232
1232
|
return startDot === -1 || end === -1 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1 ? end !== -1 && (startPart === 0 && isAbsolute ? ret.base = ret.name = path2.slice(1, end) : ret.base = ret.name = path2.slice(startPart, end)) : (startPart === 0 && isAbsolute ? (ret.name = path2.slice(1, startDot), ret.base = path2.slice(1, end)) : (ret.name = path2.slice(startPart, startDot), ret.base = path2.slice(startPart, end)), ret.ext = path2.slice(startDot, end)), ret.dir = this.dirname(path2), protocol && (ret.dir = protocol + ret.dir), ret;
|
|
1233
1233
|
},
|
|
1234
1234
|
sep: "/",
|
|
1235
|
-
delimiter: ":"
|
|
1235
|
+
delimiter: ":",
|
|
1236
|
+
joinExtensions: [".html"]
|
|
1236
1237
|
};
|
|
1237
1238
|
let promise;
|
|
1238
1239
|
async function detectVideoAlphaMode() {
|
|
@@ -4620,7 +4621,10 @@ void main(void){
|
|
|
4620
4621
|
if (!maxFragmentPrecision) {
|
|
4621
4622
|
maxFragmentPrecision = PRECISION.MEDIUM;
|
|
4622
4623
|
const gl = getTestContext();
|
|
4623
|
-
|
|
4624
|
+
if (gl && gl.getShaderPrecisionFormat) {
|
|
4625
|
+
const shaderFragment = gl.getShaderPrecisionFormat(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT);
|
|
4626
|
+
shaderFragment && (maxFragmentPrecision = shaderFragment.precision ? PRECISION.HIGH : PRECISION.MEDIUM);
|
|
4627
|
+
}
|
|
4624
4628
|
}
|
|
4625
4629
|
return maxFragmentPrecision;
|
|
4626
4630
|
}
|
|
@@ -8292,7 +8296,7 @@ void main(void)
|
|
|
8292
8296
|
*/
|
|
8293
8297
|
run(options) {
|
|
8294
8298
|
const { renderer } = this;
|
|
8295
|
-
renderer.runners.init.emit(renderer.options), options.hello && console.log(`PixiJS 7.3.
|
|
8299
|
+
renderer.runners.init.emit(renderer.options), options.hello && console.log(`PixiJS 7.3.3 - ${renderer.rendererLogId} - https://pixijs.com`), renderer.resize(renderer.screen.width, renderer.screen.height);
|
|
8296
8300
|
}
|
|
8297
8301
|
destroy() {
|
|
8298
8302
|
}
|
|
@@ -10659,7 +10663,7 @@ void main(void)
|
|
|
10659
10663
|
*/
|
|
10660
10664
|
_isSourcePlaying() {
|
|
10661
10665
|
const source = this.source;
|
|
10662
|
-
return !source.paused && !source.ended
|
|
10666
|
+
return !source.paused && !source.ended;
|
|
10663
10667
|
}
|
|
10664
10668
|
/**
|
|
10665
10669
|
* Returns true if the underlying source is ready for playing.
|
|
@@ -10762,7 +10766,7 @@ void main(void)
|
|
|
10762
10766
|
this.disposeRunner.emit(this, !1);
|
|
10763
10767
|
}
|
|
10764
10768
|
}
|
|
10765
|
-
const VERSION = "7.3.
|
|
10769
|
+
const VERSION = "7.3.3";
|
|
10766
10770
|
class Bounds {
|
|
10767
10771
|
constructor() {
|
|
10768
10772
|
this.minX = 1 / 0, this.minY = 1 / 0, this.maxX = -1 / 0, this.maxY = -1 / 0, this.rect = null, this.updateID = -1;
|
|
@@ -11243,7 +11247,7 @@ void main(void)
|
|
|
11243
11247
|
return this._zIndex;
|
|
11244
11248
|
}
|
|
11245
11249
|
set zIndex(value) {
|
|
11246
|
-
this._zIndex = value, this.parent && (this.parent.sortDirty = !0);
|
|
11250
|
+
this._zIndex !== value && (this._zIndex = value, this.parent && (this.parent.sortDirty = !0));
|
|
11247
11251
|
}
|
|
11248
11252
|
/**
|
|
11249
11253
|
* Indicates if the object is globally visible.
|
|
@@ -13403,7 +13407,7 @@ void main()
|
|
|
13403
13407
|
}));
|
|
13404
13408
|
}
|
|
13405
13409
|
/**
|
|
13406
|
-
* Updates the state of interactive objects if at least {@link interactionFrequency}
|
|
13410
|
+
* Updates the state of interactive objects if at least {@link PIXI.EventsTicker#interactionFrequency}
|
|
13407
13411
|
* milliseconds have passed since the last invocation.
|
|
13408
13412
|
*
|
|
13409
13413
|
* Invoked by a throttled ticker update from {@link PIXI.Ticker.system}.
|
|
@@ -13766,7 +13770,7 @@ void main()
|
|
|
13766
13770
|
}
|
|
13767
13771
|
}
|
|
13768
13772
|
const isInteractiveMode = this._isInteractive(eventMode), isInteractiveTarget = currentTarget.isInteractive();
|
|
13769
|
-
return
|
|
13773
|
+
return isInteractiveMode && isInteractiveTarget && this._allInteractiveElements.push(currentTarget), ignore || this._hitElements.length > 0 ? null : shouldReturn ? this._hitElements : isInteractiveMode && !pruneFn(currentTarget, location) && testFn(currentTarget, location) ? isInteractiveTarget ? [currentTarget] : [] : null;
|
|
13770
13774
|
}
|
|
13771
13775
|
/**
|
|
13772
13776
|
* Recursive implementation for {@link PIXI.EventBoundary.hitTest hitTest}.
|
|
@@ -15723,6 +15727,10 @@ ${e2}`);
|
|
|
15723
15727
|
let fontFamilyName = nameTokens.join(" ");
|
|
15724
15728
|
return valid || (fontFamilyName = `"${fontFamilyName.replace(/[\\"]/g, "\\$&")}"`), fontFamilyName;
|
|
15725
15729
|
}
|
|
15730
|
+
const validURICharactersRegex = /^[0-9A-Za-z%:/?#\[\]@!\$&'()\*\+,;=\-._~]*$/;
|
|
15731
|
+
function encodeURIWhenNeeded(uri) {
|
|
15732
|
+
return validURICharactersRegex.test(uri) ? uri : encodeURI(uri);
|
|
15733
|
+
}
|
|
15726
15734
|
const loadWebFont = {
|
|
15727
15735
|
extension: {
|
|
15728
15736
|
type: ExtensionType.LoadParser,
|
|
@@ -15738,7 +15746,7 @@ ${e2}`);
|
|
|
15738
15746
|
if (fonts) {
|
|
15739
15747
|
const fontFaces = [], name = (_b = (_a2 = options.data) == null ? void 0 : _a2.family) != null ? _b : getFontFamilyName(url2), weights = (_e = (_d = (_c = options.data) == null ? void 0 : _c.weights) == null ? void 0 : _d.filter((weight) => validWeights.includes(weight))) != null ? _e : ["normal"], data = (_f = options.data) != null ? _f : {};
|
|
15740
15748
|
for (let i2 = 0; i2 < weights.length; i2++) {
|
|
15741
|
-
const weight = weights[i2], font = new FontFace(name, `url(${
|
|
15749
|
+
const weight = weights[i2], font = new FontFace(name, `url(${encodeURIWhenNeeded(url2)})`, __spreadProps$2(__spreadValues$8({}, data), {
|
|
15742
15750
|
weight
|
|
15743
15751
|
}));
|
|
15744
15752
|
await font.load(), fonts.add(font), fontFaces.push(font);
|
|
@@ -16237,38 +16245,6 @@ ${e2}`);
|
|
|
16237
16245
|
assetNames.push(...aliases);
|
|
16238
16246
|
}), this._bundles[bundleId] = assetNames;
|
|
16239
16247
|
}
|
|
16240
|
-
/**
|
|
16241
|
-
* Tells the resolver what keys are associated with witch asset.
|
|
16242
|
-
* The most important thing the resolver does
|
|
16243
|
-
* @example
|
|
16244
|
-
* // Single key, single asset:
|
|
16245
|
-
* resolver.add({alias: 'foo', src: 'bar.png');
|
|
16246
|
-
* resolver.resolveUrl('foo') // => 'bar.png'
|
|
16247
|
-
*
|
|
16248
|
-
* // Multiple keys, single asset:
|
|
16249
|
-
* resolver.add({alias: ['foo', 'boo'], src: 'bar.png'});
|
|
16250
|
-
* resolver.resolveUrl('foo') // => 'bar.png'
|
|
16251
|
-
* resolver.resolveUrl('boo') // => 'bar.png'
|
|
16252
|
-
*
|
|
16253
|
-
* // Multiple keys, multiple assets:
|
|
16254
|
-
* resolver.add({alias: ['foo', 'boo'], src: ['bar.png', 'bar.webp']});
|
|
16255
|
-
* resolver.resolveUrl('foo') // => 'bar.png'
|
|
16256
|
-
*
|
|
16257
|
-
* // Add custom data attached to the resolver
|
|
16258
|
-
* Resolver.add({
|
|
16259
|
-
* alias: 'bunnyBooBooSmooth',
|
|
16260
|
-
* src: 'bunny{png,webp}',
|
|
16261
|
-
* data: { scaleMode:SCALE_MODES.NEAREST }, // Base texture options
|
|
16262
|
-
* });
|
|
16263
|
-
*
|
|
16264
|
-
* resolver.resolve('bunnyBooBooSmooth') // => { src: 'bunny.png', data: { scaleMode: SCALE_MODES.NEAREST } }
|
|
16265
|
-
* @param aliases - the key or keys that you will reference when loading this asset
|
|
16266
|
-
* @param srcs - the asset or assets that will be chosen from when loading via the specified key
|
|
16267
|
-
* @param data - asset-specific data that will be passed to the loaders
|
|
16268
|
-
* - Useful if you want to initiate loaded objects with specific data
|
|
16269
|
-
* @param format - the format of the asset
|
|
16270
|
-
* @param loadParser - the name of the load parser to use
|
|
16271
|
-
*/
|
|
16272
16248
|
add(aliases, srcs, data, format2, loadParser) {
|
|
16273
16249
|
const assets = [];
|
|
16274
16250
|
typeof aliases == "string" || Array.isArray(aliases) && typeof aliases[0] == "string" ? (deprecation("7.2.0", `Assets.add now uses an object instead of individual parameters.
|
|
@@ -16323,12 +16299,12 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16323
16299
|
* name: 'load-screen',
|
|
16324
16300
|
* assets: [
|
|
16325
16301
|
* {
|
|
16326
|
-
*
|
|
16327
|
-
*
|
|
16302
|
+
* alias: 'background',
|
|
16303
|
+
* src: 'sunset.png',
|
|
16328
16304
|
* },
|
|
16329
16305
|
* {
|
|
16330
|
-
*
|
|
16331
|
-
*
|
|
16306
|
+
* alias: 'bar',
|
|
16307
|
+
* src: 'load-bar.{png,webp}',
|
|
16332
16308
|
* },
|
|
16333
16309
|
* ],
|
|
16334
16310
|
* },
|
|
@@ -16336,12 +16312,12 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16336
16312
|
* name: 'game-screen',
|
|
16337
16313
|
* assets: [
|
|
16338
16314
|
* {
|
|
16339
|
-
*
|
|
16340
|
-
*
|
|
16315
|
+
* alias: 'character',
|
|
16316
|
+
* src: 'robot.png',
|
|
16341
16317
|
* },
|
|
16342
16318
|
* {
|
|
16343
|
-
*
|
|
16344
|
-
*
|
|
16319
|
+
* alias: 'enemy',
|
|
16320
|
+
* src: 'bad-guy.png',
|
|
16345
16321
|
* },
|
|
16346
16322
|
* ],
|
|
16347
16323
|
* },
|
|
@@ -16448,7 +16424,7 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16448
16424
|
buildResolvedAsset(formattedAsset, data) {
|
|
16449
16425
|
var _a2;
|
|
16450
16426
|
const { aliases, data: assetData, loadParser, format: format2 } = data;
|
|
16451
|
-
return (this._basePath || this._rootPath) && (formattedAsset.src = path.toAbsolute(formattedAsset.src, this._basePath, this._rootPath)), formattedAsset.alias = (_a2 = aliases != null ? aliases : formattedAsset.alias) != null ? _a2 : [formattedAsset.src], formattedAsset.src = this._appendDefaultSearchParams(formattedAsset.src), formattedAsset.data = __spreadValues$4(__spreadValues$4({}, assetData || {}), formattedAsset.data), formattedAsset.loadParser = loadParser != null ? loadParser : formattedAsset.loadParser, formattedAsset.format = format2 != null ? format2 : formattedAsset.src
|
|
16427
|
+
return (this._basePath || this._rootPath) && (formattedAsset.src = path.toAbsolute(formattedAsset.src, this._basePath, this._rootPath)), formattedAsset.alias = (_a2 = aliases != null ? aliases : formattedAsset.alias) != null ? _a2 : [formattedAsset.src], formattedAsset.src = this._appendDefaultSearchParams(formattedAsset.src), formattedAsset.data = __spreadValues$4(__spreadValues$4({}, assetData || {}), formattedAsset.data), formattedAsset.loadParser = loadParser != null ? loadParser : formattedAsset.loadParser, formattedAsset.format = format2 != null ? format2 : path.extname(formattedAsset.src).slice(1), formattedAsset.srcs = formattedAsset.src, formattedAsset.name = formattedAsset.alias, formattedAsset;
|
|
16452
16428
|
}
|
|
16453
16429
|
}
|
|
16454
16430
|
class AssetsClass {
|
|
@@ -16465,7 +16441,7 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16465
16441
|
async init(options = {}) {
|
|
16466
16442
|
var _a2, _b, _c;
|
|
16467
16443
|
if (this._initialized) {
|
|
16468
|
-
console.warn("[Assets]AssetManager already initialized, did you load before calling this
|
|
16444
|
+
console.warn("[Assets]AssetManager already initialized, did you load before calling this Assets.init()?");
|
|
16469
16445
|
return;
|
|
16470
16446
|
}
|
|
16471
16447
|
if (this._initialized = !0, options.defaultSearchParams && this.resolver.setDefaultSearchParams(options.defaultSearchParams), options.basePath && (this.resolver.basePath = options.basePath), options.bundleIdentifier && this.resolver.setBundleIdentifier(options.bundleIdentifier), options.manifest) {
|
|
@@ -16484,51 +16460,6 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16484
16460
|
}
|
|
16485
16461
|
}), options.preferences && this.setPreferences(options.preferences);
|
|
16486
16462
|
}
|
|
16487
|
-
/**
|
|
16488
|
-
* Allows you to specify how to resolve any assets load requests.
|
|
16489
|
-
* There are a few ways to add things here as shown below:
|
|
16490
|
-
* @example
|
|
16491
|
-
* import { Assets } from 'pixi.js';
|
|
16492
|
-
*
|
|
16493
|
-
* // Simple
|
|
16494
|
-
* Assets.add({alias: 'bunnyBooBoo', src: 'bunny.png'});
|
|
16495
|
-
* const bunny = await Assets.load('bunnyBooBoo');
|
|
16496
|
-
*
|
|
16497
|
-
* // Multiple keys:
|
|
16498
|
-
* Assets.add({alias: ['burger', 'chicken'], src: 'bunny.png'});
|
|
16499
|
-
*
|
|
16500
|
-
* const bunny = await Assets.load('burger');
|
|
16501
|
-
* const bunny2 = await Assets.load('chicken');
|
|
16502
|
-
*
|
|
16503
|
-
* // passing options to to the object
|
|
16504
|
-
* Assets.add({
|
|
16505
|
-
* alias: 'bunnyBooBooSmooth',
|
|
16506
|
-
* src: 'bunny{png,webp}',
|
|
16507
|
-
* data: { scaleMode: SCALE_MODES.NEAREST }, // Base texture options
|
|
16508
|
-
* });
|
|
16509
|
-
*
|
|
16510
|
-
* // Multiple assets
|
|
16511
|
-
*
|
|
16512
|
-
* // The following all do the same thing:
|
|
16513
|
-
*
|
|
16514
|
-
* Assets.add({alias: 'bunnyBooBoo', src: 'bunny{png,webp}'});
|
|
16515
|
-
*
|
|
16516
|
-
* Assets.add({
|
|
16517
|
-
* alias: 'bunnyBooBoo',
|
|
16518
|
-
* src: [
|
|
16519
|
-
* 'bunny.png',
|
|
16520
|
-
* 'bunny.webp',
|
|
16521
|
-
* ],
|
|
16522
|
-
* });
|
|
16523
|
-
*
|
|
16524
|
-
* const bunny = await Assets.load('bunnyBooBoo'); // Will try to load WebP if available
|
|
16525
|
-
* @param aliases - the key or keys that you will reference when loading this asset
|
|
16526
|
-
* @param srcs - the asset or assets that will be chosen from when loading via the specified key
|
|
16527
|
-
* @param data - asset-specific data that will be passed to the loaders
|
|
16528
|
-
* - Useful if you want to initiate loaded objects with specific data
|
|
16529
|
-
* @param format - the format of the asset
|
|
16530
|
-
* @param loadParser - the name of the load parser to use
|
|
16531
|
-
*/
|
|
16532
16463
|
add(aliases, srcs, data, format2, loadParser) {
|
|
16533
16464
|
this.resolver.add(aliases, srcs, data, format2, loadParser);
|
|
16534
16465
|
}
|
|
@@ -16576,12 +16507,12 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16576
16507
|
* name: 'load-screen',
|
|
16577
16508
|
* assets: [
|
|
16578
16509
|
* {
|
|
16579
|
-
*
|
|
16580
|
-
*
|
|
16510
|
+
* alias: 'background',
|
|
16511
|
+
* src: 'sunset.png',
|
|
16581
16512
|
* },
|
|
16582
16513
|
* {
|
|
16583
|
-
*
|
|
16584
|
-
*
|
|
16514
|
+
* alias: 'bar',
|
|
16515
|
+
* src: 'load-bar.{png,webp}',
|
|
16585
16516
|
* },
|
|
16586
16517
|
* ],
|
|
16587
16518
|
* },
|
|
@@ -16589,19 +16520,19 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16589
16520
|
* name: 'game-screen',
|
|
16590
16521
|
* assets: [
|
|
16591
16522
|
* {
|
|
16592
|
-
*
|
|
16593
|
-
*
|
|
16523
|
+
* alias: 'character',
|
|
16524
|
+
* src: 'robot.png',
|
|
16594
16525
|
* },
|
|
16595
16526
|
* {
|
|
16596
|
-
*
|
|
16597
|
-
*
|
|
16527
|
+
* alias: 'enemy',
|
|
16528
|
+
* src: 'bad-guy.png',
|
|
16598
16529
|
* },
|
|
16599
16530
|
* ],
|
|
16600
16531
|
* },
|
|
16601
16532
|
* ]
|
|
16602
16533
|
* };
|
|
16603
16534
|
*
|
|
16604
|
-
* await
|
|
16535
|
+
* await Assets.init({ manifest });
|
|
16605
16536
|
*
|
|
16606
16537
|
* // Load a bundle...
|
|
16607
16538
|
* loadScreenAssets = await Assets.loadBundle('load-screen');
|
|
@@ -16831,22 +16762,36 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16831
16762
|
}
|
|
16832
16763
|
};
|
|
16833
16764
|
extensions$1.add(cacheTextureArray);
|
|
16834
|
-
|
|
16835
|
-
|
|
16836
|
-
type: ExtensionType.DetectionParser,
|
|
16837
|
-
priority: 1
|
|
16838
|
-
},
|
|
16839
|
-
test: async () => {
|
|
16840
|
-
const avifData = "data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=";
|
|
16765
|
+
async function testImageFormat(imageData) {
|
|
16766
|
+
if ("Image" in globalThis)
|
|
16841
16767
|
return new Promise((resolve2) => {
|
|
16842
|
-
const
|
|
16843
|
-
|
|
16768
|
+
const image = new Image();
|
|
16769
|
+
image.onload = () => {
|
|
16844
16770
|
resolve2(!0);
|
|
16845
|
-
},
|
|
16771
|
+
}, image.onerror = () => {
|
|
16846
16772
|
resolve2(!1);
|
|
16847
|
-
},
|
|
16773
|
+
}, image.src = imageData;
|
|
16848
16774
|
});
|
|
16775
|
+
if ("createImageBitmap" in globalThis && "fetch" in globalThis) {
|
|
16776
|
+
try {
|
|
16777
|
+
const blob = await (await fetch(imageData)).blob();
|
|
16778
|
+
await createImageBitmap(blob);
|
|
16779
|
+
} catch (e2) {
|
|
16780
|
+
return !1;
|
|
16781
|
+
}
|
|
16782
|
+
return !0;
|
|
16783
|
+
}
|
|
16784
|
+
return !1;
|
|
16785
|
+
}
|
|
16786
|
+
const detectAvif = {
|
|
16787
|
+
extension: {
|
|
16788
|
+
type: ExtensionType.DetectionParser,
|
|
16789
|
+
priority: 1
|
|
16849
16790
|
},
|
|
16791
|
+
test: async () => testImageFormat(
|
|
16792
|
+
// eslint-disable-next-line max-len
|
|
16793
|
+
"data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A="
|
|
16794
|
+
),
|
|
16850
16795
|
add: async (formats2) => [...formats2, "avif"],
|
|
16851
16796
|
remove: async (formats2) => formats2.filter((f2) => f2 !== "avif")
|
|
16852
16797
|
};
|
|
@@ -16856,17 +16801,9 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16856
16801
|
type: ExtensionType.DetectionParser,
|
|
16857
16802
|
priority: 0
|
|
16858
16803
|
},
|
|
16859
|
-
test: async () =>
|
|
16860
|
-
|
|
16861
|
-
|
|
16862
|
-
const webp = new Image();
|
|
16863
|
-
webp.onload = () => {
|
|
16864
|
-
resolve2(!0);
|
|
16865
|
-
}, webp.onerror = () => {
|
|
16866
|
-
resolve2(!1);
|
|
16867
|
-
}, webp.src = webpData;
|
|
16868
|
-
});
|
|
16869
|
-
},
|
|
16804
|
+
test: async () => testImageFormat(
|
|
16805
|
+
"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA="
|
|
16806
|
+
),
|
|
16870
16807
|
add: async (formats2) => [...formats2, "webp"],
|
|
16871
16808
|
remove: async (formats2) => formats2.filter((f2) => f2 !== "webp")
|
|
16872
16809
|
};
|
|
@@ -16922,13 +16859,13 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16922
16859
|
var _a2, _b;
|
|
16923
16860
|
return {
|
|
16924
16861
|
resolution: parseFloat((_b = (_a2 = settings.RETINA_PREFIX.exec(value)) == null ? void 0 : _a2[1]) != null ? _b : "1"),
|
|
16925
|
-
format:
|
|
16862
|
+
format: path.extname(value).slice(1),
|
|
16926
16863
|
src: value
|
|
16927
16864
|
};
|
|
16928
16865
|
}
|
|
16929
16866
|
};
|
|
16930
16867
|
extensions$1.add(resolveTextureUrl);
|
|
16931
|
-
var INTERNAL_FORMATS = /* @__PURE__ */ ((INTERNAL_FORMATS2) => (INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_S3TC_DXT1_EXT = 33776] = "COMPRESSED_RGB_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_S3TC_DXT1_EXT = 33777] = "COMPRESSED_RGBA_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_S3TC_DXT3_EXT = 33778] = "COMPRESSED_RGBA_S3TC_DXT3_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_S3TC_DXT5_EXT = 33779] = "COMPRESSED_RGBA_S3TC_DXT5_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 35917] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 35918] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 35919] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_S3TC_DXT1_EXT = 35916] = "COMPRESSED_SRGB_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_R11_EAC = 37488] = "COMPRESSED_R11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SIGNED_R11_EAC = 37489] = "COMPRESSED_SIGNED_R11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RG11_EAC = 37490] = "COMPRESSED_RG11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SIGNED_RG11_EAC = 37491] = "COMPRESSED_SIGNED_RG11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB8_ETC2 = 37492] = "COMPRESSED_RGB8_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA8_ETC2_EAC = 37496] = "COMPRESSED_RGBA8_ETC2_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB8_ETC2 = 37493] = "COMPRESSED_SRGB8_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497] = "COMPRESSED_SRGB8_ALPHA8_ETC2_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494] = "COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495] = "COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 35840] = "COMPRESSED_RGB_PVRTC_4BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 35842] = "COMPRESSED_RGBA_PVRTC_4BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 35841] = "COMPRESSED_RGB_PVRTC_2BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 35843] = "COMPRESSED_RGBA_PVRTC_2BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_ETC1_WEBGL = 36196] = "COMPRESSED_RGB_ETC1_WEBGL", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_ATC_WEBGL = 35986] = "COMPRESSED_RGB_ATC_WEBGL", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL =
|
|
16868
|
+
var INTERNAL_FORMATS = /* @__PURE__ */ ((INTERNAL_FORMATS2) => (INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_S3TC_DXT1_EXT = 33776] = "COMPRESSED_RGB_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_S3TC_DXT1_EXT = 33777] = "COMPRESSED_RGBA_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_S3TC_DXT3_EXT = 33778] = "COMPRESSED_RGBA_S3TC_DXT3_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_S3TC_DXT5_EXT = 33779] = "COMPRESSED_RGBA_S3TC_DXT5_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 35917] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 35918] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 35919] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB_S3TC_DXT1_EXT = 35916] = "COMPRESSED_SRGB_S3TC_DXT1_EXT", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_R11_EAC = 37488] = "COMPRESSED_R11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SIGNED_R11_EAC = 37489] = "COMPRESSED_SIGNED_R11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RG11_EAC = 37490] = "COMPRESSED_RG11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SIGNED_RG11_EAC = 37491] = "COMPRESSED_SIGNED_RG11_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB8_ETC2 = 37492] = "COMPRESSED_RGB8_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA8_ETC2_EAC = 37496] = "COMPRESSED_RGBA8_ETC2_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB8_ETC2 = 37493] = "COMPRESSED_SRGB8_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37497] = "COMPRESSED_SRGB8_ALPHA8_ETC2_EAC", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37494] = "COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37495] = "COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 35840] = "COMPRESSED_RGB_PVRTC_4BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 35842] = "COMPRESSED_RGBA_PVRTC_4BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 35841] = "COMPRESSED_RGB_PVRTC_2BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 35843] = "COMPRESSED_RGBA_PVRTC_2BPPV1_IMG", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_ETC1_WEBGL = 36196] = "COMPRESSED_RGB_ETC1_WEBGL", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGB_ATC_WEBGL = 35986] = "COMPRESSED_RGB_ATC_WEBGL", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL = 35987] = "COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL = 34798] = "COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL", INTERNAL_FORMATS2[INTERNAL_FORMATS2.COMPRESSED_RGBA_ASTC_4x4_KHR = 37808] = "COMPRESSED_RGBA_ASTC_4x4_KHR", INTERNAL_FORMATS2))(INTERNAL_FORMATS || {});
|
|
16932
16869
|
const INTERNAL_FORMAT_TO_BYTES_PER_PIXEL = {
|
|
16933
16870
|
// WEBGL_compressed_texture_s3tc
|
|
16934
16871
|
33776: 0.5,
|
|
@@ -16963,7 +16900,7 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
16963
16900
|
// @see https://www.khronos.org/registry/OpenGL/extensions/AMD/AMD_compressed_ATC_texture.txt
|
|
16964
16901
|
// WEBGL_compressed_texture_atc
|
|
16965
16902
|
35986: 0.5,
|
|
16966
|
-
|
|
16903
|
+
35987: 1,
|
|
16967
16904
|
34798: 1,
|
|
16968
16905
|
// @see https://registry.khronos.org/OpenGL/extensions/KHR/KHR_texture_compression_astc_hdr.txt
|
|
16969
16906
|
// WEBGL_compressed_texture_astc
|
|
@@ -17443,12 +17380,13 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
17443
17380
|
const resolveCompressedTextureUrl = {
|
|
17444
17381
|
extension: ExtensionType.ResolveParser,
|
|
17445
17382
|
test: (value) => {
|
|
17446
|
-
const extension =
|
|
17383
|
+
const extension = path.extname(value).slice(1);
|
|
17447
17384
|
return ["basis", "ktx", "dds"].includes(extension);
|
|
17448
17385
|
},
|
|
17449
17386
|
parse: (value) => {
|
|
17450
17387
|
var _a2, _b, _c, _d;
|
|
17451
|
-
|
|
17388
|
+
const extension = path.extname(value).slice(1);
|
|
17389
|
+
if (extension === "ktx") {
|
|
17452
17390
|
const extensions2 = [
|
|
17453
17391
|
".s3tc.ktx",
|
|
17454
17392
|
".s3tc_sRGB.ktx",
|
|
@@ -17467,7 +17405,7 @@ Please use Assets.add({ alias, src, data, format, loadParser }) instead.`), asse
|
|
|
17467
17405
|
}
|
|
17468
17406
|
return {
|
|
17469
17407
|
resolution: parseFloat((_d = (_c = settings.RETINA_PREFIX.exec(value)) == null ? void 0 : _c[1]) != null ? _d : "1"),
|
|
17470
|
-
format:
|
|
17408
|
+
format: extension,
|
|
17471
17409
|
src: value
|
|
17472
17410
|
};
|
|
17473
17411
|
}
|
|
@@ -21962,7 +21900,7 @@ void main(void)
|
|
|
21962
21900
|
_updateResolution(resolutionFilename = null) {
|
|
21963
21901
|
const { scale } = this.data.meta;
|
|
21964
21902
|
let resolution = getResolutionOfUrl(resolutionFilename, null);
|
|
21965
|
-
return resolution === null && (resolution = parseFloat(scale != null ? scale : "1")), resolution !== 1 && this.baseTexture.setResolution(resolution), resolution;
|
|
21903
|
+
return resolution === null && (resolution = typeof scale == "number" ? scale : parseFloat(scale != null ? scale : "1")), resolution !== 1 && this.baseTexture.setResolution(resolution), resolution;
|
|
21966
21904
|
}
|
|
21967
21905
|
/**
|
|
21968
21906
|
* Parser spritesheet from loaded data. This is done asynchronously
|