@loaders.gl/textures 4.0.0-beta.1 → 4.0.0-beta.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/dist/{esm/basis-loader.js → basis-loader.js} +2 -2
- package/dist/basis-loader.js.map +1 -0
- package/dist/basis-worker-node.js +5108 -3344
- package/dist/basis-worker.js +105 -31
- package/dist/{esm/compressed-texture-loader.js → compressed-texture-loader.js} +3 -3
- package/dist/compressed-texture-loader.js.map +1 -0
- package/dist/compressed-texture-worker.js +158 -34
- package/dist/{esm/compressed-texture-writer.js → compressed-texture-writer.js} +2 -2
- package/dist/compressed-texture-writer.js.map +1 -0
- package/dist/{esm/crunch-loader.js → crunch-loader.js} +1 -1
- package/dist/crunch-loader.js.map +1 -0
- package/dist/crunch-worker.js +60 -26
- package/dist/{dist.min.js → dist.dev.js} +953 -1100
- package/dist/index.cjs +1360 -0
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -0
- package/dist/ktx2-basis-writer-worker-node.js +5031 -3318
- package/dist/ktx2-basis-writer-worker.js +52 -26
- package/dist/{esm/ktx2-basis-writer.js → ktx2-basis-writer.js} +2 -2
- package/dist/ktx2-basis-writer.js.map +1 -0
- package/dist/lib/encoders/encode-ktx.js.map +1 -0
- package/dist/{esm/lib → lib}/encoders/encode-ktx2-basis-texture.js +1 -1
- package/dist/lib/encoders/encode-ktx2-basis-texture.js.map +1 -0
- package/dist/lib/encoders/encode-texture.js.map +1 -0
- package/dist/lib/gl-extensions.js.map +1 -0
- package/dist/lib/parsers/basis-module-loader.js.map +1 -0
- package/dist/lib/parsers/crunch-module-loader.js.map +1 -0
- package/dist/{esm/lib → lib}/parsers/parse-basis.js +4 -4
- package/dist/lib/parsers/parse-basis.js.map +1 -0
- package/dist/{esm/lib → lib}/parsers/parse-compressed-texture.js +3 -3
- package/dist/lib/parsers/parse-compressed-texture.js.map +1 -0
- package/dist/{esm/lib → lib}/parsers/parse-crunch.js +4 -4
- package/dist/lib/parsers/parse-crunch.js.map +1 -0
- package/dist/{esm/lib → lib}/parsers/parse-dds.js +3 -3
- package/dist/lib/parsers/parse-dds.js.map +1 -0
- package/dist/{esm/lib → lib}/parsers/parse-ktx.js +2 -2
- package/dist/lib/parsers/parse-ktx.js.map +1 -0
- package/dist/lib/parsers/parse-npy.d.ts.map +1 -1
- package/dist/{esm/lib → lib}/parsers/parse-npy.js +1 -1
- package/dist/lib/parsers/parse-npy.js.map +1 -0
- package/dist/{esm/lib → lib}/parsers/parse-pvr.js +2 -2
- package/dist/lib/parsers/parse-pvr.js.map +1 -0
- package/dist/lib/texture-api/async-deep-map.js.map +1 -0
- package/dist/{esm/lib → lib}/texture-api/deep-load.js +1 -1
- package/dist/lib/texture-api/deep-load.js.map +1 -0
- package/dist/{esm/lib → lib}/texture-api/generate-url.js +1 -1
- package/dist/lib/texture-api/generate-url.js.map +1 -0
- package/dist/{esm/lib → lib}/texture-api/load-image-array.js +2 -2
- package/dist/lib/texture-api/load-image-array.js.map +1 -0
- package/dist/{esm/lib → lib}/texture-api/load-image-cube.js +2 -2
- package/dist/lib/texture-api/load-image-cube.js.map +1 -0
- package/dist/{esm/lib → lib}/texture-api/load-image.js +2 -2
- package/dist/lib/texture-api/load-image.js.map +1 -0
- package/dist/lib/texture-api/texture-api-types.js.map +1 -0
- package/dist/lib/utils/extract-mipmap-images.js.map +1 -0
- package/dist/{esm/lib → lib}/utils/ktx-format-helper.js +1 -1
- package/dist/lib/utils/ktx-format-helper.js.map +1 -0
- package/dist/{esm/lib → lib}/utils/texture-formats.js +1 -1
- package/dist/lib/utils/texture-formats.js.map +1 -0
- package/dist/lib/utils/version.js +2 -0
- package/dist/lib/utils/version.js.map +1 -0
- package/dist/libs/basis_encoder.js +5435 -19
- package/dist/libs/basis_encoder.js.map +1 -0
- package/dist/libs/basis_transcoder.js +2523 -20
- package/dist/libs/basis_transcoder.js.map +1 -0
- package/dist/libs/crunch.js +10043 -129
- package/dist/libs/crunch.js.map +1 -0
- package/dist/{esm/npy-loader.js → npy-loader.js} +2 -2
- package/dist/npy-loader.js.map +1 -0
- package/dist/npy-worker.js +17 -4
- package/dist/types.js.map +1 -0
- package/dist/{esm/workers → workers}/basis-worker-node.js +1 -1
- package/dist/workers/basis-worker-node.js.map +1 -0
- package/dist/{esm/workers → workers}/basis-worker.js +1 -1
- package/dist/workers/basis-worker.js.map +1 -0
- package/dist/workers/compressed-texture-worker.js +4 -0
- package/dist/workers/compressed-texture-worker.js.map +1 -0
- package/dist/{esm/workers → workers}/crunch-worker.js +2 -2
- package/dist/workers/crunch-worker.js.map +1 -0
- package/dist/{esm/workers → workers}/ktx2-basis-writer-worker-node.js +1 -1
- package/dist/workers/ktx2-basis-writer-worker-node.js.map +1 -0
- package/dist/{esm/workers → workers}/ktx2-basis-writer-worker.js +1 -1
- package/dist/workers/ktx2-basis-writer-worker.js.map +1 -0
- package/dist/{esm/workers → workers}/npy-worker.js +1 -1
- package/dist/workers/npy-worker.js.map +1 -0
- package/package.json +19 -11
- package/src/lib/parsers/parse-npy.ts +0 -2
- package/dist/bundle.d.ts +0 -2
- package/dist/bundle.d.ts.map +0 -1
- package/dist/es5/basis-loader.js +0 -37
- package/dist/es5/basis-loader.js.map +0 -1
- package/dist/es5/bundle.js +0 -6
- package/dist/es5/bundle.js.map +0 -1
- package/dist/es5/compressed-texture-loader.js +0 -74
- package/dist/es5/compressed-texture-loader.js.map +0 -1
- package/dist/es5/compressed-texture-writer.js +0 -28
- package/dist/es5/compressed-texture-writer.js.map +0 -1
- package/dist/es5/crunch-loader.js +0 -24
- package/dist/es5/crunch-loader.js.map +0 -1
- package/dist/es5/index.js +0 -145
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/ktx2-basis-writer.js +0 -26
- package/dist/es5/ktx2-basis-writer.js.map +0 -1
- package/dist/es5/lib/encoders/encode-ktx.js +0 -12
- package/dist/es5/lib/encoders/encode-ktx.js.map +0 -1
- package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js +0 -75
- package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js.map +0 -1
- package/dist/es5/lib/encoders/encode-texture.js +0 -38
- package/dist/es5/lib/encoders/encode-texture.js.map +0 -1
- package/dist/es5/lib/gl-extensions.js +0 -68
- package/dist/es5/lib/gl-extensions.js.map +0 -1
- package/dist/es5/lib/parsers/basis-module-loader.js +0 -199
- package/dist/es5/lib/parsers/basis-module-loader.js.map +0 -1
- package/dist/es5/lib/parsers/crunch-module-loader.js +0 -72
- package/dist/es5/lib/parsers/crunch-module-loader.js.map +0 -1
- package/dist/es5/lib/parsers/parse-basis.js +0 -270
- package/dist/es5/lib/parsers/parse-basis.js.map +0 -1
- package/dist/es5/lib/parsers/parse-compressed-texture.js +0 -22
- package/dist/es5/lib/parsers/parse-compressed-texture.js.map +0 -1
- package/dist/es5/lib/parsers/parse-crunch.js +0 -100
- package/dist/es5/lib/parsers/parse-crunch.js.map +0 -1
- package/dist/es5/lib/parsers/parse-dds.js +0 -84
- package/dist/es5/lib/parsers/parse-dds.js.map +0 -1
- package/dist/es5/lib/parsers/parse-ktx.js +0 -34
- package/dist/es5/lib/parsers/parse-ktx.js.map +0 -1
- package/dist/es5/lib/parsers/parse-npy.js +0 -70
- package/dist/es5/lib/parsers/parse-npy.js.map +0 -1
- package/dist/es5/lib/parsers/parse-pvr.js +0 -161
- package/dist/es5/lib/parsers/parse-pvr.js.map +0 -1
- package/dist/es5/lib/texture-api/async-deep-map.js +0 -156
- package/dist/es5/lib/texture-api/async-deep-map.js.map +0 -1
- package/dist/es5/lib/texture-api/deep-load.js +0 -63
- package/dist/es5/lib/texture-api/deep-load.js.map +0 -1
- package/dist/es5/lib/texture-api/generate-url.js +0 -20
- package/dist/es5/lib/texture-api/generate-url.js.map +0 -1
- package/dist/es5/lib/texture-api/load-image-array.js +0 -75
- package/dist/es5/lib/texture-api/load-image-array.js.map +0 -1
- package/dist/es5/lib/texture-api/load-image-cube.js +0 -136
- package/dist/es5/lib/texture-api/load-image-cube.js.map +0 -1
- package/dist/es5/lib/texture-api/load-image.js +0 -129
- package/dist/es5/lib/texture-api/load-image.js.map +0 -1
- package/dist/es5/lib/texture-api/texture-api-types.js +0 -2
- package/dist/es5/lib/texture-api/texture-api-types.js.map +0 -1
- package/dist/es5/lib/utils/extract-mipmap-images.js +0 -41
- package/dist/es5/lib/utils/extract-mipmap-images.js.map +0 -1
- package/dist/es5/lib/utils/ktx-format-helper.js +0 -79
- package/dist/es5/lib/utils/ktx-format-helper.js.map +0 -1
- package/dist/es5/lib/utils/texture-formats.js +0 -54
- package/dist/es5/lib/utils/texture-formats.js.map +0 -1
- package/dist/es5/lib/utils/version.js +0 -9
- package/dist/es5/lib/utils/version.js.map +0 -1
- package/dist/es5/npy-loader.js +0 -51
- package/dist/es5/npy-loader.js.map +0 -1
- package/dist/es5/types.js +0 -2
- package/dist/es5/types.js.map +0 -1
- package/dist/es5/workers/basis-worker-node.js +0 -7
- package/dist/es5/workers/basis-worker-node.js.map +0 -1
- package/dist/es5/workers/basis-worker.js +0 -6
- package/dist/es5/workers/basis-worker.js.map +0 -1
- package/dist/es5/workers/compressed-texture-worker.js +0 -6
- package/dist/es5/workers/compressed-texture-worker.js.map +0 -1
- package/dist/es5/workers/crunch-worker.js +0 -19
- package/dist/es5/workers/crunch-worker.js.map +0 -1
- package/dist/es5/workers/ktx2-basis-writer-worker-node.js +0 -54
- package/dist/es5/workers/ktx2-basis-writer-worker-node.js.map +0 -1
- package/dist/es5/workers/ktx2-basis-writer-worker.js +0 -53
- package/dist/es5/workers/ktx2-basis-writer-worker.js.map +0 -1
- package/dist/es5/workers/npy-worker.js +0 -6
- package/dist/es5/workers/npy-worker.js.map +0 -1
- package/dist/esm/basis-loader.js.map +0 -1
- package/dist/esm/bundle.js +0 -4
- package/dist/esm/bundle.js.map +0 -1
- package/dist/esm/compressed-texture-loader.js.map +0 -1
- package/dist/esm/compressed-texture-writer.js.map +0 -1
- package/dist/esm/crunch-loader.js.map +0 -1
- package/dist/esm/index.js +0 -31
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/ktx2-basis-writer.js.map +0 -1
- package/dist/esm/lib/encoders/encode-ktx.js.map +0 -1
- package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js.map +0 -1
- package/dist/esm/lib/encoders/encode-texture.js.map +0 -1
- package/dist/esm/lib/gl-extensions.js.map +0 -1
- package/dist/esm/lib/parsers/basis-module-loader.js.map +0 -1
- package/dist/esm/lib/parsers/crunch-module-loader.js.map +0 -1
- package/dist/esm/lib/parsers/parse-basis.js.map +0 -1
- package/dist/esm/lib/parsers/parse-compressed-texture.js.map +0 -1
- package/dist/esm/lib/parsers/parse-crunch.js.map +0 -1
- package/dist/esm/lib/parsers/parse-dds.js.map +0 -1
- package/dist/esm/lib/parsers/parse-ktx.js.map +0 -1
- package/dist/esm/lib/parsers/parse-npy.js.map +0 -1
- package/dist/esm/lib/parsers/parse-pvr.js.map +0 -1
- package/dist/esm/lib/texture-api/async-deep-map.js.map +0 -1
- package/dist/esm/lib/texture-api/deep-load.js.map +0 -1
- package/dist/esm/lib/texture-api/generate-url.js.map +0 -1
- package/dist/esm/lib/texture-api/load-image-array.js.map +0 -1
- package/dist/esm/lib/texture-api/load-image-cube.js.map +0 -1
- package/dist/esm/lib/texture-api/load-image.js.map +0 -1
- package/dist/esm/lib/texture-api/texture-api-types.js.map +0 -1
- package/dist/esm/lib/utils/extract-mipmap-images.js.map +0 -1
- package/dist/esm/lib/utils/ktx-format-helper.js.map +0 -1
- package/dist/esm/lib/utils/texture-formats.js.map +0 -1
- package/dist/esm/lib/utils/version.js +0 -2
- package/dist/esm/lib/utils/version.js.map +0 -1
- package/dist/esm/libs/README.md +0 -9
- package/dist/esm/libs/basis_encoder.js +0 -21
- package/dist/esm/libs/basis_encoder.wasm +0 -0
- package/dist/esm/libs/basis_transcoder.js +0 -22
- package/dist/esm/libs/basis_transcoder.wasm +0 -0
- package/dist/esm/libs/crunch.js +0 -136
- package/dist/esm/npy-loader.js.map +0 -1
- package/dist/esm/types.js.map +0 -1
- package/dist/esm/workers/basis-worker-node.js.map +0 -1
- package/dist/esm/workers/basis-worker.js.map +0 -1
- package/dist/esm/workers/compressed-texture-worker.js +0 -4
- package/dist/esm/workers/compressed-texture-worker.js.map +0 -1
- package/dist/esm/workers/crunch-worker.js.map +0 -1
- package/dist/esm/workers/ktx2-basis-writer-worker-node.js.map +0 -1
- package/dist/esm/workers/ktx2-basis-writer-worker.js.map +0 -1
- package/dist/esm/workers/npy-worker.js.map +0 -1
- package/src/bundle.ts +0 -4
- /package/dist/{esm/lib → lib}/encoders/encode-ktx.js +0 -0
- /package/dist/{esm/lib → lib}/encoders/encode-texture.js +0 -0
- /package/dist/{esm/lib → lib}/gl-extensions.js +0 -0
- /package/dist/{esm/lib → lib}/parsers/basis-module-loader.js +0 -0
- /package/dist/{esm/lib → lib}/parsers/crunch-module-loader.js +0 -0
- /package/dist/{esm/lib → lib}/texture-api/async-deep-map.js +0 -0
- /package/dist/{esm/lib → lib}/texture-api/texture-api-types.js +0 -0
- /package/dist/{esm/lib → lib}/utils/extract-mipmap-images.js +0 -0
- /package/dist/{es5 → libs}/libs/README.md +0 -0
- /package/dist/{es5 → libs}/libs/basis_encoder.js +0 -0
- /package/dist/{es5 → libs}/libs/basis_encoder.wasm +0 -0
- /package/dist/{es5 → libs}/libs/basis_transcoder.js +0 -0
- /package/dist/{es5 → libs}/libs/basis_transcoder.wasm +0 -0
- /package/dist/{es5 → libs}/libs/crunch.js +0 -0
- /package/dist/{esm/types.js → types.js} +0 -0
|
@@ -1,43 +1,85 @@
|
|
|
1
|
-
(()
|
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
|
2
|
+
if (typeof exports === 'object' && typeof module === 'object')
|
|
3
|
+
module.exports = factory();
|
|
4
|
+
else if (typeof define === 'function' && define.amd) define([], factory);
|
|
5
|
+
else if (typeof exports === 'object') exports['loader'] = factory();
|
|
6
|
+
else root['loader'] = factory();})(globalThis, function () {
|
|
7
|
+
"use strict";
|
|
8
|
+
var __exports__ = (() => {
|
|
2
9
|
var __create = Object.create;
|
|
3
10
|
var __defProp = Object.defineProperty;
|
|
4
11
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
12
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
13
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
14
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
9
|
-
var __esm = (fn, res) => function __init() {
|
|
10
|
-
return fn && (res = (0, fn[Object.keys(fn)[0]])(fn = 0)), res;
|
|
11
|
-
};
|
|
12
15
|
var __commonJS = (cb, mod) => function __require() {
|
|
13
|
-
return mod || (0, cb[
|
|
16
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
14
17
|
};
|
|
15
18
|
var __export = (target, all) => {
|
|
16
|
-
__markAsModule(target);
|
|
17
19
|
for (var name in all)
|
|
18
20
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
19
21
|
};
|
|
20
|
-
var
|
|
21
|
-
if (
|
|
22
|
-
for (let key of __getOwnPropNames(
|
|
23
|
-
if (!__hasOwnProp.call(
|
|
24
|
-
__defProp(
|
|
22
|
+
var __copyProps = (to, from, except, desc) => {
|
|
23
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
24
|
+
for (let key of __getOwnPropNames(from))
|
|
25
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
26
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
25
27
|
}
|
|
26
|
-
return
|
|
27
|
-
};
|
|
28
|
-
var __toModule = (module) => {
|
|
29
|
-
return __reExport(__markAsModule(__defProp(module != null ? __create(__getProtoOf(module)) : {}, "default", module && module.__esModule && "default" in module ? { get: () => module.default, enumerable: true } : { value: module, enumerable: true })), module);
|
|
28
|
+
return to;
|
|
30
29
|
};
|
|
30
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
31
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
32
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
33
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
34
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
35
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
36
|
+
mod
|
|
37
|
+
));
|
|
38
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
31
39
|
|
|
32
|
-
// src/lib/utils
|
|
33
|
-
var
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
VERSION = typeof __VERSION__ !== "undefined" ? __VERSION__ : "beta";
|
|
40
|
+
// (disabled):../worker-utils/src/lib/node/require-utils.node
|
|
41
|
+
var require_require_utils = __commonJS({
|
|
42
|
+
"(disabled):../worker-utils/src/lib/node/require-utils.node"() {
|
|
43
|
+
"use strict";
|
|
37
44
|
}
|
|
38
45
|
});
|
|
39
46
|
|
|
47
|
+
// (disabled):../worker-utils/src/lib/process-utils/child-process-proxy
|
|
48
|
+
var require_child_process_proxy = __commonJS({
|
|
49
|
+
"(disabled):../worker-utils/src/lib/process-utils/child-process-proxy"() {
|
|
50
|
+
"use strict";
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
// src/index.ts
|
|
55
|
+
var src_exports = {};
|
|
56
|
+
__export(src_exports, {
|
|
57
|
+
BASIS_EXTERNAL_LIBRARIES: () => BASIS_EXTERNAL_LIBRARIES,
|
|
58
|
+
BasisLoader: () => BasisLoader,
|
|
59
|
+
BasisWorkerLoader: () => BasisWorkerLoader,
|
|
60
|
+
CRUNCH_EXTERNAL_LIBRARIES: () => CRUNCH_EXTERNAL_LIBRARIES,
|
|
61
|
+
CompressedTextureLoader: () => CompressedTextureLoader,
|
|
62
|
+
CompressedTextureWorkerLoader: () => CompressedTextureWorkerLoader,
|
|
63
|
+
CompressedTextureWriter: () => CompressedTextureWriter,
|
|
64
|
+
CrunchLoader: () => CrunchLoader,
|
|
65
|
+
CrunchWorkerLoader: () => CrunchLoader,
|
|
66
|
+
GL_EXTENSIONS_CONSTANTS: () => GL_EXTENSIONS_CONSTANTS,
|
|
67
|
+
KTX2BasisWriter: () => KTX2BasisWriter,
|
|
68
|
+
KTX2BasisWriterWorker: () => KTX2BasisWriterWorker,
|
|
69
|
+
NPYLoader: () => NPYLoader,
|
|
70
|
+
NPYWorkerLoader: () => NPYWorkerLoader,
|
|
71
|
+
getSupportedGPUTextureFormats: () => getSupportedGPUTextureFormats,
|
|
72
|
+
loadImageTexture: () => loadImageTexture,
|
|
73
|
+
loadImageTextureArray: () => loadImageTextureArray,
|
|
74
|
+
loadImageTextureCube: () => loadImageTextureCube,
|
|
75
|
+
selectSupportedBasisFormat: () => selectSupportedBasisFormat
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
// src/lib/utils/version.ts
|
|
79
|
+
var VERSION = typeof __VERSION__ !== "undefined" ? __VERSION__ : "beta";
|
|
80
|
+
|
|
40
81
|
// ../worker-utils/src/lib/env-utils/version.ts
|
|
82
|
+
var NPM_TAG = "beta";
|
|
41
83
|
function getVersion() {
|
|
42
84
|
if (!globalThis._loadersgl_?.version) {
|
|
43
85
|
globalThis._loadersgl_ = globalThis._loadersgl_ || {};
|
|
@@ -50,13 +92,7 @@
|
|
|
50
92
|
}
|
|
51
93
|
return globalThis._loadersgl_.version;
|
|
52
94
|
}
|
|
53
|
-
var
|
|
54
|
-
var init_version2 = __esm({
|
|
55
|
-
"../worker-utils/src/lib/env-utils/version.ts"() {
|
|
56
|
-
NPM_TAG = "beta";
|
|
57
|
-
VERSION2 = getVersion();
|
|
58
|
-
}
|
|
59
|
-
});
|
|
95
|
+
var VERSION2 = getVersion();
|
|
60
96
|
|
|
61
97
|
// ../worker-utils/src/lib/env-utils/assert.ts
|
|
62
98
|
function assert(condition, message) {
|
|
@@ -64,45 +100,36 @@
|
|
|
64
100
|
throw new Error(message || "loaders.gl assertion failed.");
|
|
65
101
|
}
|
|
66
102
|
}
|
|
67
|
-
var init_assert = __esm({
|
|
68
|
-
"../worker-utils/src/lib/env-utils/assert.ts"() {
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
103
|
|
|
72
104
|
// ../worker-utils/src/lib/env-utils/globals.ts
|
|
73
|
-
var globals
|
|
74
|
-
|
|
75
|
-
"
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
// (disabled):../worker-utils/src/lib/node/require-utils.node
|
|
95
|
-
var require_require_utils = __commonJS({
|
|
96
|
-
"(disabled):../worker-utils/src/lib/node/require-utils.node"() {
|
|
97
|
-
}
|
|
98
|
-
});
|
|
105
|
+
var globals = {
|
|
106
|
+
self: typeof self !== "undefined" && self,
|
|
107
|
+
window: typeof window !== "undefined" && window,
|
|
108
|
+
global: typeof global !== "undefined" && global,
|
|
109
|
+
document: typeof document !== "undefined" && document
|
|
110
|
+
};
|
|
111
|
+
var self_ = globals.self || globals.window || globals.global || {};
|
|
112
|
+
var window_ = globals.window || globals.self || globals.global || {};
|
|
113
|
+
var global_ = globals.global || globals.self || globals.window || {};
|
|
114
|
+
var document_ = globals.document || {};
|
|
115
|
+
var isBrowser = (
|
|
116
|
+
// @ts-ignore process.browser
|
|
117
|
+
typeof process !== "object" || String(process) !== "[object process]" || process.browser
|
|
118
|
+
);
|
|
119
|
+
var isWorker = typeof importScripts === "function";
|
|
120
|
+
var isMobile = typeof window !== "undefined" && typeof window.orientation !== "undefined";
|
|
121
|
+
var matches = typeof process !== "undefined" && process.version && /v([0-9]*)/.exec(process.version);
|
|
122
|
+
var nodeVersion = matches && parseFloat(matches[1]) || 0;
|
|
99
123
|
|
|
100
124
|
// ../worker-utils/src/lib/library-utils/library-utils.ts
|
|
125
|
+
var node = __toESM(require_require_utils(), 1);
|
|
126
|
+
var loadLibraryPromises = {};
|
|
101
127
|
async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
|
|
102
128
|
if (moduleName) {
|
|
103
129
|
libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
|
|
104
130
|
}
|
|
105
|
-
loadLibraryPromises[libraryUrl] =
|
|
131
|
+
loadLibraryPromises[libraryUrl] = // eslint-disable-next-line @typescript-eslint/no-misused-promises
|
|
132
|
+
loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
|
|
106
133
|
return await loadLibraryPromises[libraryUrl];
|
|
107
134
|
}
|
|
108
135
|
function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
|
|
@@ -132,8 +159,9 @@
|
|
|
132
159
|
}
|
|
133
160
|
if (!isBrowser) {
|
|
134
161
|
try {
|
|
135
|
-
return node &&
|
|
136
|
-
} catch {
|
|
162
|
+
return node && void 0 && await (void 0)(libraryUrl);
|
|
163
|
+
} catch (error) {
|
|
164
|
+
console.error(error);
|
|
137
165
|
return null;
|
|
138
166
|
}
|
|
139
167
|
}
|
|
@@ -145,7 +173,7 @@
|
|
|
145
173
|
}
|
|
146
174
|
function loadLibraryFromString(scriptSource, id) {
|
|
147
175
|
if (!isBrowser) {
|
|
148
|
-
return
|
|
176
|
+
return void 0 && (void 0)(scriptSource, id);
|
|
149
177
|
}
|
|
150
178
|
if (isWorker) {
|
|
151
179
|
eval.call(global_, scriptSource);
|
|
@@ -162,45 +190,35 @@
|
|
|
162
190
|
return null;
|
|
163
191
|
}
|
|
164
192
|
async function loadAsArrayBuffer(url) {
|
|
165
|
-
if (!
|
|
193
|
+
if (!void 0 || url.startsWith("http")) {
|
|
166
194
|
const response = await fetch(url);
|
|
167
195
|
return await response.arrayBuffer();
|
|
168
196
|
}
|
|
169
|
-
return await
|
|
197
|
+
return await (void 0)(url);
|
|
170
198
|
}
|
|
171
199
|
async function loadAsText(url) {
|
|
172
|
-
if (!
|
|
200
|
+
if (!void 0 || url.startsWith("http")) {
|
|
173
201
|
const response = await fetch(url);
|
|
174
202
|
return await response.text();
|
|
175
203
|
}
|
|
176
|
-
return await
|
|
204
|
+
return await (void 0)(url);
|
|
177
205
|
}
|
|
178
|
-
var node, loadLibraryPromises;
|
|
179
|
-
var init_library_utils = __esm({
|
|
180
|
-
"../worker-utils/src/lib/library-utils/library-utils.ts"() {
|
|
181
|
-
init_globals();
|
|
182
|
-
node = __toModule(require_require_utils());
|
|
183
|
-
init_assert();
|
|
184
|
-
init_version2();
|
|
185
|
-
loadLibraryPromises = {};
|
|
186
|
-
}
|
|
187
|
-
});
|
|
188
|
-
|
|
189
|
-
// (disabled):../worker-utils/src/lib/process-utils/child-process-proxy
|
|
190
|
-
var init_child_process_proxy = __esm({
|
|
191
|
-
"(disabled):../worker-utils/src/lib/process-utils/child-process-proxy"() {
|
|
192
|
-
}
|
|
193
|
-
});
|
|
194
206
|
|
|
195
207
|
// ../worker-utils/src/index.ts
|
|
196
|
-
var
|
|
197
|
-
"../worker-utils/src/index.ts"() {
|
|
198
|
-
init_library_utils();
|
|
199
|
-
init_child_process_proxy();
|
|
200
|
-
}
|
|
201
|
-
});
|
|
208
|
+
var import_child_process_proxy = __toESM(require_child_process_proxy(), 1);
|
|
202
209
|
|
|
203
210
|
// src/lib/parsers/basis-module-loader.ts
|
|
211
|
+
var BASIS_EXTERNAL_LIBRARIES = {
|
|
212
|
+
/** Basis transcoder, javascript wrapper part */
|
|
213
|
+
TRANSCODER: "basis_transcoder.js",
|
|
214
|
+
/** Basis transcoder, compiled web assembly part */
|
|
215
|
+
TRANSCODER_WASM: "basis_transcoder.wasm",
|
|
216
|
+
/** Basis encoder, javascript wrapper part */
|
|
217
|
+
ENCODER: "basis_encoder.js",
|
|
218
|
+
/** Basis encoder, compiled web assembly part */
|
|
219
|
+
ENCODER_WASM: "basis_encoder.wasm"
|
|
220
|
+
};
|
|
221
|
+
var loadBasisTranscoderPromise;
|
|
204
222
|
async function loadBasisTranscoderModule(options) {
|
|
205
223
|
const modules = options.modules || {};
|
|
206
224
|
if (modules.basis) {
|
|
@@ -212,10 +230,7 @@
|
|
|
212
230
|
async function loadBasisTranscoder(options) {
|
|
213
231
|
let BASIS = null;
|
|
214
232
|
let wasmBinary = null;
|
|
215
|
-
[BASIS, wasmBinary] = await Promise.all([
|
|
216
|
-
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, "textures", options),
|
|
217
|
-
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, "textures", options)
|
|
218
|
-
]);
|
|
233
|
+
[BASIS, wasmBinary] = await Promise.all([await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, "textures", options), await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, "textures", options)]);
|
|
219
234
|
BASIS = BASIS || globalThis.BASIS;
|
|
220
235
|
return await initializeBasisTranscoderModule(BASIS, wasmBinary);
|
|
221
236
|
}
|
|
@@ -226,12 +241,18 @@
|
|
|
226
241
|
}
|
|
227
242
|
return new Promise((resolve) => {
|
|
228
243
|
BasisModule(options).then((module) => {
|
|
229
|
-
const {
|
|
244
|
+
const {
|
|
245
|
+
BasisFile,
|
|
246
|
+
initializeBasis
|
|
247
|
+
} = module;
|
|
230
248
|
initializeBasis();
|
|
231
|
-
resolve({
|
|
249
|
+
resolve({
|
|
250
|
+
BasisFile
|
|
251
|
+
});
|
|
232
252
|
});
|
|
233
253
|
});
|
|
234
254
|
}
|
|
255
|
+
var loadBasisEncoderPromise;
|
|
235
256
|
async function loadBasisEncoderModule(options) {
|
|
236
257
|
const modules = options.modules || {};
|
|
237
258
|
if (modules.basisEncoder) {
|
|
@@ -243,10 +264,7 @@
|
|
|
243
264
|
async function loadBasisEncoder(options) {
|
|
244
265
|
let BASIS_ENCODER = null;
|
|
245
266
|
let wasmBinary = null;
|
|
246
|
-
[BASIS_ENCODER, wasmBinary] = await Promise.all([
|
|
247
|
-
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options),
|
|
248
|
-
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)
|
|
249
|
-
]);
|
|
267
|
+
[BASIS_ENCODER, wasmBinary] = await Promise.all([await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options), await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)]);
|
|
250
268
|
BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;
|
|
251
269
|
return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);
|
|
252
270
|
}
|
|
@@ -257,97 +275,111 @@
|
|
|
257
275
|
}
|
|
258
276
|
return new Promise((resolve) => {
|
|
259
277
|
BasisEncoderModule(options).then((module) => {
|
|
260
|
-
const {
|
|
278
|
+
const {
|
|
279
|
+
BasisFile,
|
|
280
|
+
KTX2File,
|
|
281
|
+
initializeBasis,
|
|
282
|
+
BasisEncoder
|
|
283
|
+
} = module;
|
|
261
284
|
initializeBasis();
|
|
262
|
-
resolve({
|
|
285
|
+
resolve({
|
|
286
|
+
BasisFile,
|
|
287
|
+
KTX2File,
|
|
288
|
+
BasisEncoder
|
|
289
|
+
});
|
|
263
290
|
});
|
|
264
291
|
});
|
|
265
292
|
}
|
|
266
|
-
var BASIS_EXTERNAL_LIBRARIES, loadBasisTranscoderPromise, loadBasisEncoderPromise;
|
|
267
|
-
var init_basis_module_loader = __esm({
|
|
268
|
-
"src/lib/parsers/basis-module-loader.ts"() {
|
|
269
|
-
init_src();
|
|
270
|
-
BASIS_EXTERNAL_LIBRARIES = {
|
|
271
|
-
TRANSCODER: "basis_transcoder.js",
|
|
272
|
-
TRANSCODER_WASM: "basis_transcoder.wasm",
|
|
273
|
-
ENCODER: "basis_encoder.js",
|
|
274
|
-
ENCODER_WASM: "basis_encoder.wasm"
|
|
275
|
-
};
|
|
276
|
-
}
|
|
277
|
-
});
|
|
278
293
|
|
|
279
294
|
// src/lib/gl-extensions.ts
|
|
280
|
-
var GL_EXTENSIONS_CONSTANTS
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
295
|
+
var GL_EXTENSIONS_CONSTANTS = {
|
|
296
|
+
// WEBGL_compressed_texture_s3tc
|
|
297
|
+
COMPRESSED_RGB_S3TC_DXT1_EXT: 33776,
|
|
298
|
+
COMPRESSED_RGBA_S3TC_DXT1_EXT: 33777,
|
|
299
|
+
COMPRESSED_RGBA_S3TC_DXT3_EXT: 33778,
|
|
300
|
+
COMPRESSED_RGBA_S3TC_DXT5_EXT: 33779,
|
|
301
|
+
// WEBGL_compressed_texture_es3
|
|
302
|
+
COMPRESSED_R11_EAC: 37488,
|
|
303
|
+
COMPRESSED_SIGNED_R11_EAC: 37489,
|
|
304
|
+
COMPRESSED_RG11_EAC: 37490,
|
|
305
|
+
COMPRESSED_SIGNED_RG11_EAC: 37491,
|
|
306
|
+
COMPRESSED_RGB8_ETC2: 37492,
|
|
307
|
+
COMPRESSED_RGBA8_ETC2_EAC: 37493,
|
|
308
|
+
COMPRESSED_SRGB8_ETC2: 37494,
|
|
309
|
+
COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 37495,
|
|
310
|
+
COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 37496,
|
|
311
|
+
COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 37497,
|
|
312
|
+
// WEBGL_compressed_texture_pvrtc
|
|
313
|
+
COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 35840,
|
|
314
|
+
COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 35842,
|
|
315
|
+
COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 35841,
|
|
316
|
+
COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 35843,
|
|
317
|
+
// WEBGL_compressed_texture_etc1
|
|
318
|
+
COMPRESSED_RGB_ETC1_WEBGL: 36196,
|
|
319
|
+
// WEBGL_compressed_texture_atc
|
|
320
|
+
COMPRESSED_RGB_ATC_WEBGL: 35986,
|
|
321
|
+
COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL: 35987,
|
|
322
|
+
COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL: 34798,
|
|
323
|
+
// WEBGL_compressed_texture_astc
|
|
324
|
+
COMPRESSED_RGBA_ASTC_4X4_KHR: 37808,
|
|
325
|
+
COMPRESSED_RGBA_ASTC_5X4_KHR: 37809,
|
|
326
|
+
COMPRESSED_RGBA_ASTC_5X5_KHR: 37810,
|
|
327
|
+
COMPRESSED_RGBA_ASTC_6X5_KHR: 37811,
|
|
328
|
+
COMPRESSED_RGBA_ASTC_6X6_KHR: 37812,
|
|
329
|
+
COMPRESSED_RGBA_ASTC_8X5_KHR: 37813,
|
|
330
|
+
COMPRESSED_RGBA_ASTC_8X6_KHR: 37814,
|
|
331
|
+
COMPRESSED_RGBA_ASTC_8X8_KHR: 37815,
|
|
332
|
+
COMPRESSED_RGBA_ASTC_10X5_KHR: 37816,
|
|
333
|
+
COMPRESSED_RGBA_ASTC_10X6_KHR: 37817,
|
|
334
|
+
COMPRESSED_RGBA_ASTC_10X8_KHR: 37818,
|
|
335
|
+
COMPRESSED_RGBA_ASTC_10X10_KHR: 37819,
|
|
336
|
+
COMPRESSED_RGBA_ASTC_12X10_KHR: 37820,
|
|
337
|
+
COMPRESSED_RGBA_ASTC_12X12_KHR: 37821,
|
|
338
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR: 37840,
|
|
339
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR: 37841,
|
|
340
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR: 37842,
|
|
341
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR: 37843,
|
|
342
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR: 37844,
|
|
343
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR: 37845,
|
|
344
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR: 37846,
|
|
345
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR: 37847,
|
|
346
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR: 37848,
|
|
347
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR: 37849,
|
|
348
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR: 37850,
|
|
349
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: 37851,
|
|
350
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: 37852,
|
|
351
|
+
COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: 37853,
|
|
352
|
+
// EXT_texture_compression_rgtc
|
|
353
|
+
COMPRESSED_RED_RGTC1_EXT: 36283,
|
|
354
|
+
COMPRESSED_SIGNED_RED_RGTC1_EXT: 36284,
|
|
355
|
+
COMPRESSED_RED_GREEN_RGTC2_EXT: 36285,
|
|
356
|
+
COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 36286,
|
|
357
|
+
// WEBGL_compressed_texture_s3tc_srgb
|
|
358
|
+
COMPRESSED_SRGB_S3TC_DXT1_EXT: 35916,
|
|
359
|
+
COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 35917,
|
|
360
|
+
COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 35918,
|
|
361
|
+
COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 35919
|
|
362
|
+
};
|
|
345
363
|
|
|
346
364
|
// src/lib/utils/texture-formats.ts
|
|
365
|
+
var BROWSER_PREFIXES = ["", "WEBKIT_", "MOZ_"];
|
|
366
|
+
var WEBGL_EXTENSIONS = {
|
|
367
|
+
/* eslint-disable camelcase */
|
|
368
|
+
WEBGL_compressed_texture_s3tc: "dxt",
|
|
369
|
+
WEBGL_compressed_texture_s3tc_srgb: "dxt-srgb",
|
|
370
|
+
WEBGL_compressed_texture_etc1: "etc1",
|
|
371
|
+
WEBGL_compressed_texture_etc: "etc2",
|
|
372
|
+
WEBGL_compressed_texture_pvrtc: "pvrtc",
|
|
373
|
+
WEBGL_compressed_texture_atc: "atc",
|
|
374
|
+
WEBGL_compressed_texture_astc: "astc",
|
|
375
|
+
EXT_texture_compression_rgtc: "rgtc"
|
|
376
|
+
/* eslint-enable camelcase */
|
|
377
|
+
};
|
|
378
|
+
var formats = null;
|
|
347
379
|
function getSupportedGPUTextureFormats(gl) {
|
|
348
380
|
if (!formats) {
|
|
349
381
|
gl = gl || getWebGLContext() || void 0;
|
|
350
|
-
formats = new Set();
|
|
382
|
+
formats = /* @__PURE__ */ new Set();
|
|
351
383
|
for (const prefix of BROWSER_PREFIXES) {
|
|
352
384
|
for (const extension in WEBGL_EXTENSIONS) {
|
|
353
385
|
if (gl && gl.getExtension(`${prefix}${extension}`)) {
|
|
@@ -367,27 +399,73 @@
|
|
|
367
399
|
return null;
|
|
368
400
|
}
|
|
369
401
|
}
|
|
370
|
-
var BROWSER_PREFIXES, WEBGL_EXTENSIONS, formats;
|
|
371
|
-
var init_texture_formats = __esm({
|
|
372
|
-
"src/lib/utils/texture-formats.ts"() {
|
|
373
|
-
BROWSER_PREFIXES = ["", "WEBKIT_", "MOZ_"];
|
|
374
|
-
WEBGL_EXTENSIONS = {
|
|
375
|
-
WEBGL_compressed_texture_s3tc: "dxt",
|
|
376
|
-
WEBGL_compressed_texture_s3tc_srgb: "dxt-srgb",
|
|
377
|
-
WEBGL_compressed_texture_etc1: "etc1",
|
|
378
|
-
WEBGL_compressed_texture_etc: "etc2",
|
|
379
|
-
WEBGL_compressed_texture_pvrtc: "pvrtc",
|
|
380
|
-
WEBGL_compressed_texture_atc: "atc",
|
|
381
|
-
WEBGL_compressed_texture_astc: "astc",
|
|
382
|
-
EXT_texture_compression_rgtc: "rgtc"
|
|
383
|
-
};
|
|
384
|
-
formats = null;
|
|
385
|
-
}
|
|
386
|
-
});
|
|
387
402
|
|
|
388
403
|
// ../../node_modules/ktx-parse/dist/ktx-parse.modern.js
|
|
404
|
+
var t = new Uint8Array([0]);
|
|
405
|
+
var e = [171, 75, 84, 88, 32, 50, 48, 187, 13, 10, 26, 10];
|
|
406
|
+
var n;
|
|
407
|
+
var i;
|
|
408
|
+
var s;
|
|
409
|
+
var a;
|
|
410
|
+
var r;
|
|
411
|
+
var o;
|
|
412
|
+
var l;
|
|
413
|
+
var f;
|
|
414
|
+
!function(t2) {
|
|
415
|
+
t2[t2.NONE = 0] = "NONE", t2[t2.BASISLZ = 1] = "BASISLZ", t2[t2.ZSTD = 2] = "ZSTD", t2[t2.ZLIB = 3] = "ZLIB";
|
|
416
|
+
}(n || (n = {})), function(t2) {
|
|
417
|
+
t2[t2.BASICFORMAT = 0] = "BASICFORMAT";
|
|
418
|
+
}(i || (i = {})), function(t2) {
|
|
419
|
+
t2[t2.UNSPECIFIED = 0] = "UNSPECIFIED", t2[t2.ETC1S = 163] = "ETC1S", t2[t2.UASTC = 166] = "UASTC";
|
|
420
|
+
}(s || (s = {})), function(t2) {
|
|
421
|
+
t2[t2.UNSPECIFIED = 0] = "UNSPECIFIED", t2[t2.SRGB = 1] = "SRGB";
|
|
422
|
+
}(a || (a = {})), function(t2) {
|
|
423
|
+
t2[t2.UNSPECIFIED = 0] = "UNSPECIFIED", t2[t2.LINEAR = 1] = "LINEAR", t2[t2.SRGB = 2] = "SRGB", t2[t2.ITU = 3] = "ITU", t2[t2.NTSC = 4] = "NTSC", t2[t2.SLOG = 5] = "SLOG", t2[t2.SLOG2 = 6] = "SLOG2";
|
|
424
|
+
}(r || (r = {})), function(t2) {
|
|
425
|
+
t2[t2.ALPHA_STRAIGHT = 0] = "ALPHA_STRAIGHT", t2[t2.ALPHA_PREMULTIPLIED = 1] = "ALPHA_PREMULTIPLIED";
|
|
426
|
+
}(o || (o = {})), function(t2) {
|
|
427
|
+
t2[t2.RGB = 0] = "RGB", t2[t2.RRR = 3] = "RRR", t2[t2.GGG = 4] = "GGG", t2[t2.AAA = 15] = "AAA";
|
|
428
|
+
}(l || (l = {})), function(t2) {
|
|
429
|
+
t2[t2.RGB = 0] = "RGB", t2[t2.RGBA = 3] = "RGBA", t2[t2.RRR = 4] = "RRR", t2[t2.RRRG = 5] = "RRRG";
|
|
430
|
+
}(f || (f = {}));
|
|
431
|
+
var U = class {
|
|
432
|
+
constructor() {
|
|
433
|
+
this.vkFormat = 0, this.typeSize = 1, this.pixelWidth = 0, this.pixelHeight = 0, this.pixelDepth = 0, this.layerCount = 0, this.faceCount = 1, this.supercompressionScheme = n.NONE, this.levels = [], this.dataFormatDescriptor = [{ vendorId: 0, descriptorType: i.BASICFORMAT, versionNumber: 2, descriptorBlockSize: 40, colorModel: s.UNSPECIFIED, colorPrimaries: a.SRGB, transferFunction: a.SRGB, flags: o.ALPHA_STRAIGHT, texelBlockDimension: { x: 4, y: 4, z: 1, w: 1 }, bytesPlane: [], samples: [] }], this.keyValue = {}, this.globalData = null;
|
|
434
|
+
}
|
|
435
|
+
};
|
|
436
|
+
var c = class {
|
|
437
|
+
constructor(t2, e2, n2, i2) {
|
|
438
|
+
this._dataView = new DataView(t2.buffer, t2.byteOffset + e2, n2), this._littleEndian = i2, this._offset = 0;
|
|
439
|
+
}
|
|
440
|
+
_nextUint8() {
|
|
441
|
+
const t2 = this._dataView.getUint8(this._offset);
|
|
442
|
+
return this._offset += 1, t2;
|
|
443
|
+
}
|
|
444
|
+
_nextUint16() {
|
|
445
|
+
const t2 = this._dataView.getUint16(this._offset, this._littleEndian);
|
|
446
|
+
return this._offset += 2, t2;
|
|
447
|
+
}
|
|
448
|
+
_nextUint32() {
|
|
449
|
+
const t2 = this._dataView.getUint32(this._offset, this._littleEndian);
|
|
450
|
+
return this._offset += 4, t2;
|
|
451
|
+
}
|
|
452
|
+
_nextUint64() {
|
|
453
|
+
const t2 = this._dataView.getUint32(this._offset, this._littleEndian) + 2 ** 32 * this._dataView.getUint32(this._offset + 4, this._littleEndian);
|
|
454
|
+
return this._offset += 8, t2;
|
|
455
|
+
}
|
|
456
|
+
_skip(t2) {
|
|
457
|
+
return this._offset += t2, this;
|
|
458
|
+
}
|
|
459
|
+
_scan(t2, e2 = 0) {
|
|
460
|
+
const n2 = this._offset;
|
|
461
|
+
let i2 = 0;
|
|
462
|
+
for (; this._dataView.getUint8(this._offset) !== e2 && i2 < t2; )
|
|
463
|
+
i2++, this._offset++;
|
|
464
|
+
return i2 < t2 && this._offset++, new Uint8Array(this._dataView.buffer, this._dataView.byteOffset + n2, i2);
|
|
465
|
+
}
|
|
466
|
+
};
|
|
389
467
|
function _(t2) {
|
|
390
|
-
return typeof TextDecoder
|
|
468
|
+
return "undefined" != typeof TextDecoder ? new TextDecoder().decode(t2) : Buffer.from(t2).toString("utf8");
|
|
391
469
|
}
|
|
392
470
|
function p(t2) {
|
|
393
471
|
const n2 = new Uint8Array(t2.buffer, t2.byteOffset, e.length);
|
|
@@ -417,66 +495,6 @@
|
|
|
417
495
|
const R = g + d._offset, E = R + A, T = E + S, O = T + m, P = new Uint8Array(t2.buffer, t2.byteOffset + R, A), C = new Uint8Array(t2.buffer, t2.byteOffset + E, S), F = new Uint8Array(t2.buffer, t2.byteOffset + T, m), G = new Uint8Array(t2.buffer, t2.byteOffset + O, L);
|
|
418
496
|
return i2.globalData = { endpointCount: B, selectorCount: w, imageDescs: I, endpointsData: P, selectorsData: C, tablesData: F, extendedData: G }, i2;
|
|
419
497
|
}
|
|
420
|
-
var t, e, n, i, s, a, r, o, l, f, U, c;
|
|
421
|
-
var init_ktx_parse_modern = __esm({
|
|
422
|
-
"../../node_modules/ktx-parse/dist/ktx-parse.modern.js"() {
|
|
423
|
-
t = new Uint8Array([0]);
|
|
424
|
-
e = [171, 75, 84, 88, 32, 50, 48, 187, 13, 10, 26, 10];
|
|
425
|
-
!function(t2) {
|
|
426
|
-
t2[t2.NONE = 0] = "NONE", t2[t2.BASISLZ = 1] = "BASISLZ", t2[t2.ZSTD = 2] = "ZSTD", t2[t2.ZLIB = 3] = "ZLIB";
|
|
427
|
-
}(n || (n = {})), function(t2) {
|
|
428
|
-
t2[t2.BASICFORMAT = 0] = "BASICFORMAT";
|
|
429
|
-
}(i || (i = {})), function(t2) {
|
|
430
|
-
t2[t2.UNSPECIFIED = 0] = "UNSPECIFIED", t2[t2.ETC1S = 163] = "ETC1S", t2[t2.UASTC = 166] = "UASTC";
|
|
431
|
-
}(s || (s = {})), function(t2) {
|
|
432
|
-
t2[t2.UNSPECIFIED = 0] = "UNSPECIFIED", t2[t2.SRGB = 1] = "SRGB";
|
|
433
|
-
}(a || (a = {})), function(t2) {
|
|
434
|
-
t2[t2.UNSPECIFIED = 0] = "UNSPECIFIED", t2[t2.LINEAR = 1] = "LINEAR", t2[t2.SRGB = 2] = "SRGB", t2[t2.ITU = 3] = "ITU", t2[t2.NTSC = 4] = "NTSC", t2[t2.SLOG = 5] = "SLOG", t2[t2.SLOG2 = 6] = "SLOG2";
|
|
435
|
-
}(r || (r = {})), function(t2) {
|
|
436
|
-
t2[t2.ALPHA_STRAIGHT = 0] = "ALPHA_STRAIGHT", t2[t2.ALPHA_PREMULTIPLIED = 1] = "ALPHA_PREMULTIPLIED";
|
|
437
|
-
}(o || (o = {})), function(t2) {
|
|
438
|
-
t2[t2.RGB = 0] = "RGB", t2[t2.RRR = 3] = "RRR", t2[t2.GGG = 4] = "GGG", t2[t2.AAA = 15] = "AAA";
|
|
439
|
-
}(l || (l = {})), function(t2) {
|
|
440
|
-
t2[t2.RGB = 0] = "RGB", t2[t2.RGBA = 3] = "RGBA", t2[t2.RRR = 4] = "RRR", t2[t2.RRRG = 5] = "RRRG";
|
|
441
|
-
}(f || (f = {}));
|
|
442
|
-
U = class {
|
|
443
|
-
constructor() {
|
|
444
|
-
this.vkFormat = 0, this.typeSize = 1, this.pixelWidth = 0, this.pixelHeight = 0, this.pixelDepth = 0, this.layerCount = 0, this.faceCount = 1, this.supercompressionScheme = n.NONE, this.levels = [], this.dataFormatDescriptor = [{ vendorId: 0, descriptorType: i.BASICFORMAT, versionNumber: 2, descriptorBlockSize: 40, colorModel: s.UNSPECIFIED, colorPrimaries: a.SRGB, transferFunction: a.SRGB, flags: o.ALPHA_STRAIGHT, texelBlockDimension: { x: 4, y: 4, z: 1, w: 1 }, bytesPlane: [], samples: [] }], this.keyValue = {}, this.globalData = null;
|
|
445
|
-
}
|
|
446
|
-
};
|
|
447
|
-
c = class {
|
|
448
|
-
constructor(t2, e2, n2, i2) {
|
|
449
|
-
this._dataView = new DataView(t2.buffer, t2.byteOffset + e2, n2), this._littleEndian = i2, this._offset = 0;
|
|
450
|
-
}
|
|
451
|
-
_nextUint8() {
|
|
452
|
-
const t2 = this._dataView.getUint8(this._offset);
|
|
453
|
-
return this._offset += 1, t2;
|
|
454
|
-
}
|
|
455
|
-
_nextUint16() {
|
|
456
|
-
const t2 = this._dataView.getUint16(this._offset, this._littleEndian);
|
|
457
|
-
return this._offset += 2, t2;
|
|
458
|
-
}
|
|
459
|
-
_nextUint32() {
|
|
460
|
-
const t2 = this._dataView.getUint32(this._offset, this._littleEndian);
|
|
461
|
-
return this._offset += 4, t2;
|
|
462
|
-
}
|
|
463
|
-
_nextUint64() {
|
|
464
|
-
const t2 = this._dataView.getUint32(this._offset, this._littleEndian) + 2 ** 32 * this._dataView.getUint32(this._offset + 4, this._littleEndian);
|
|
465
|
-
return this._offset += 8, t2;
|
|
466
|
-
}
|
|
467
|
-
_skip(t2) {
|
|
468
|
-
return this._offset += t2, this;
|
|
469
|
-
}
|
|
470
|
-
_scan(t2, e2 = 0) {
|
|
471
|
-
const n2 = this._offset;
|
|
472
|
-
let i2 = 0;
|
|
473
|
-
for (; this._dataView.getUint8(this._offset) !== e2 && i2 < t2; )
|
|
474
|
-
i2++, this._offset++;
|
|
475
|
-
return i2 < t2 && this._offset++, new Uint8Array(this._dataView.buffer, this._dataView.byteOffset + n2, i2);
|
|
476
|
-
}
|
|
477
|
-
};
|
|
478
|
-
}
|
|
479
|
-
});
|
|
480
498
|
|
|
481
499
|
// src/lib/utils/extract-mipmap-images.ts
|
|
482
500
|
function extractMipmapImages(data, options) {
|
|
@@ -513,94 +531,152 @@
|
|
|
513
531
|
}
|
|
514
532
|
return options.sizeFunction(data[index]);
|
|
515
533
|
}
|
|
516
|
-
var init_extract_mipmap_images = __esm({
|
|
517
|
-
"src/lib/utils/extract-mipmap-images.ts"() {
|
|
518
|
-
}
|
|
519
|
-
});
|
|
520
534
|
|
|
521
535
|
// src/lib/utils/ktx-format-helper.ts
|
|
536
|
+
var VULKAN_TO_WEBGL_FORMAT_MAP = {
|
|
537
|
+
131: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
538
|
+
132: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_S3TC_DXT1_EXT,
|
|
539
|
+
133: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT1_EXT,
|
|
540
|
+
134: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
|
|
541
|
+
135: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
542
|
+
136: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
|
|
543
|
+
137: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
544
|
+
138: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
|
|
545
|
+
139: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_RGTC1_EXT,
|
|
546
|
+
140: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_RGTC1_EXT,
|
|
547
|
+
141: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_GREEN_RGTC2_EXT,
|
|
548
|
+
142: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
|
|
549
|
+
147: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2,
|
|
550
|
+
148: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ETC2,
|
|
551
|
+
149: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
|
|
552
|
+
150: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
|
|
553
|
+
151: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC,
|
|
554
|
+
152: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
|
|
555
|
+
153: GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC,
|
|
556
|
+
154: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_R11_EAC,
|
|
557
|
+
155: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC,
|
|
558
|
+
156: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RG11_EAC,
|
|
559
|
+
// @ts-ignore
|
|
560
|
+
157: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
|
|
561
|
+
// @ts-ignore
|
|
562
|
+
158: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
|
|
563
|
+
// @ts-ignore
|
|
564
|
+
159: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
|
|
565
|
+
// @ts-ignore
|
|
566
|
+
160: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
|
|
567
|
+
// @ts-ignore
|
|
568
|
+
161: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
|
|
569
|
+
// @ts-ignore
|
|
570
|
+
162: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
|
|
571
|
+
// @ts-ignore
|
|
572
|
+
163: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
|
|
573
|
+
// @ts-ignore
|
|
574
|
+
164: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
|
|
575
|
+
// @ts-ignore
|
|
576
|
+
165: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
|
|
577
|
+
// @ts-ignore
|
|
578
|
+
166: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
|
|
579
|
+
// @ts-ignore
|
|
580
|
+
167: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
|
|
581
|
+
// @ts-ignore
|
|
582
|
+
168: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
|
|
583
|
+
// @ts-ignore
|
|
584
|
+
169: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
|
|
585
|
+
// @ts-ignore
|
|
586
|
+
170: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
|
|
587
|
+
// @ts-ignore
|
|
588
|
+
171: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
|
|
589
|
+
// @ts-ignore
|
|
590
|
+
172: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
|
|
591
|
+
// @ts-ignore
|
|
592
|
+
173: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
|
|
593
|
+
// @ts-ignore
|
|
594
|
+
174: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
|
|
595
|
+
// @ts-ignore
|
|
596
|
+
175: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
|
|
597
|
+
// @ts-ignore
|
|
598
|
+
176: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
|
|
599
|
+
// @ts-ignore
|
|
600
|
+
177: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
|
|
601
|
+
// @ts-ignore
|
|
602
|
+
178: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
|
|
603
|
+
// @ts-ignore
|
|
604
|
+
179: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
|
|
605
|
+
// @ts-ignore
|
|
606
|
+
180: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
|
|
607
|
+
// @ts-ignore
|
|
608
|
+
181: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
|
|
609
|
+
// @ts-ignore
|
|
610
|
+
182: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
|
|
611
|
+
// @ts-ignore
|
|
612
|
+
183: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR,
|
|
613
|
+
// @ts-ignore
|
|
614
|
+
184: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
|
|
615
|
+
1000054e3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
|
|
616
|
+
1000054001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
|
|
617
|
+
// @ts-ignore
|
|
618
|
+
1000066e3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
|
|
619
|
+
// @ts-ignore
|
|
620
|
+
1000066001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
|
|
621
|
+
// @ts-ignore
|
|
622
|
+
1000066002: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
|
|
623
|
+
// @ts-ignore
|
|
624
|
+
1000066003: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
|
|
625
|
+
// @ts-ignore
|
|
626
|
+
1000066004: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
|
|
627
|
+
// @ts-ignore
|
|
628
|
+
1000066005: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
|
|
629
|
+
// @ts-ignore
|
|
630
|
+
1000066006: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
|
|
631
|
+
// @ts-ignore
|
|
632
|
+
1000066007: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
|
|
633
|
+
// @ts-ignore
|
|
634
|
+
1000066008: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
|
|
635
|
+
// @ts-ignore
|
|
636
|
+
1000066009: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
|
|
637
|
+
// @ts-ignore
|
|
638
|
+
1000066010: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
|
|
639
|
+
// @ts-ignore
|
|
640
|
+
1000066011: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
|
|
641
|
+
// @ts-ignore
|
|
642
|
+
1000066012: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
|
|
643
|
+
// @ts-ignore
|
|
644
|
+
1000066013: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR
|
|
645
|
+
};
|
|
522
646
|
function mapVkFormatToWebGL(vkFormat) {
|
|
523
647
|
return VULKAN_TO_WEBGL_FORMAT_MAP[vkFormat];
|
|
524
648
|
}
|
|
525
|
-
var VULKAN_TO_WEBGL_FORMAT_MAP;
|
|
526
|
-
var init_ktx_format_helper = __esm({
|
|
527
|
-
"src/lib/utils/ktx-format-helper.ts"() {
|
|
528
|
-
init_gl_extensions();
|
|
529
|
-
VULKAN_TO_WEBGL_FORMAT_MAP = {
|
|
530
|
-
131: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
531
|
-
132: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_S3TC_DXT1_EXT,
|
|
532
|
-
133: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT1_EXT,
|
|
533
|
-
134: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
|
|
534
|
-
135: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
535
|
-
136: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
|
|
536
|
-
137: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
537
|
-
138: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
|
|
538
|
-
139: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_RGTC1_EXT,
|
|
539
|
-
140: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_RGTC1_EXT,
|
|
540
|
-
141: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_GREEN_RGTC2_EXT,
|
|
541
|
-
142: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
|
|
542
|
-
147: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2,
|
|
543
|
-
148: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ETC2,
|
|
544
|
-
149: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
|
|
545
|
-
150: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
|
|
546
|
-
151: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC,
|
|
547
|
-
152: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
|
|
548
|
-
153: GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC,
|
|
549
|
-
154: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_R11_EAC,
|
|
550
|
-
155: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC,
|
|
551
|
-
156: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RG11_EAC,
|
|
552
|
-
157: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
|
|
553
|
-
158: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
|
|
554
|
-
159: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
|
|
555
|
-
160: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
|
|
556
|
-
161: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
|
|
557
|
-
162: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
|
|
558
|
-
163: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
|
|
559
|
-
164: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
|
|
560
|
-
165: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
|
|
561
|
-
166: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
|
|
562
|
-
167: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
|
|
563
|
-
168: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
|
|
564
|
-
169: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
|
|
565
|
-
170: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
|
|
566
|
-
171: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
|
|
567
|
-
172: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
|
|
568
|
-
173: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
|
|
569
|
-
174: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
|
|
570
|
-
175: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
|
|
571
|
-
176: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
|
|
572
|
-
177: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
|
|
573
|
-
178: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
|
|
574
|
-
179: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
|
|
575
|
-
180: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
|
|
576
|
-
181: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
|
|
577
|
-
182: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
|
|
578
|
-
183: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR,
|
|
579
|
-
184: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
|
|
580
|
-
1000054e3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
|
|
581
|
-
1000054001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
|
|
582
|
-
1000066e3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
|
|
583
|
-
1000066001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
|
|
584
|
-
1000066002: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
|
|
585
|
-
1000066003: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
|
|
586
|
-
1000066004: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
|
|
587
|
-
1000066005: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
|
|
588
|
-
1000066006: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
|
|
589
|
-
1000066007: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
|
|
590
|
-
1000066008: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
|
|
591
|
-
1000066009: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
|
|
592
|
-
1000066010: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
|
|
593
|
-
1000066011: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
|
|
594
|
-
1000066012: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
|
|
595
|
-
1000066013: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR
|
|
596
|
-
};
|
|
597
|
-
}
|
|
598
|
-
});
|
|
599
649
|
|
|
600
650
|
// src/lib/parsers/parse-ktx.ts
|
|
651
|
+
var KTX2_ID = [
|
|
652
|
+
// '´', 'K', 'T', 'X', '2', '0', 'ª', '\r', '\n', '\x1A', '\n'
|
|
653
|
+
171,
|
|
654
|
+
75,
|
|
655
|
+
84,
|
|
656
|
+
88,
|
|
657
|
+
32,
|
|
658
|
+
50,
|
|
659
|
+
48,
|
|
660
|
+
187,
|
|
661
|
+
13,
|
|
662
|
+
10,
|
|
663
|
+
26,
|
|
664
|
+
10
|
|
665
|
+
];
|
|
601
666
|
function isKTX(data) {
|
|
602
667
|
const id = new Uint8Array(data);
|
|
603
|
-
const notKTX = id.byteLength < KTX2_ID.length || id[0] !== KTX2_ID[0] ||
|
|
668
|
+
const notKTX = id.byteLength < KTX2_ID.length || id[0] !== KTX2_ID[0] || // '´'
|
|
669
|
+
id[1] !== KTX2_ID[1] || // 'K'
|
|
670
|
+
id[2] !== KTX2_ID[2] || // 'T'
|
|
671
|
+
id[3] !== KTX2_ID[3] || // 'X'
|
|
672
|
+
id[4] !== KTX2_ID[4] || // ' '
|
|
673
|
+
id[5] !== KTX2_ID[5] || // '2'
|
|
674
|
+
id[6] !== KTX2_ID[6] || // '0'
|
|
675
|
+
id[7] !== KTX2_ID[7] || // 'ª'
|
|
676
|
+
id[8] !== KTX2_ID[8] || // '\r'
|
|
677
|
+
id[9] !== KTX2_ID[9] || // '\n'
|
|
678
|
+
id[10] !== KTX2_ID[10] || // '\x1A'
|
|
679
|
+
id[11] !== KTX2_ID[11];
|
|
604
680
|
return !notKTX;
|
|
605
681
|
}
|
|
606
682
|
function parseKTX(arrayBuffer) {
|
|
@@ -618,37 +694,93 @@
|
|
|
618
694
|
internalFormat
|
|
619
695
|
});
|
|
620
696
|
}
|
|
621
|
-
var KTX2_ID;
|
|
622
|
-
var init_parse_ktx = __esm({
|
|
623
|
-
"src/lib/parsers/parse-ktx.ts"() {
|
|
624
|
-
init_ktx_parse_modern();
|
|
625
|
-
init_extract_mipmap_images();
|
|
626
|
-
init_ktx_format_helper();
|
|
627
|
-
KTX2_ID = [
|
|
628
|
-
171,
|
|
629
|
-
75,
|
|
630
|
-
84,
|
|
631
|
-
88,
|
|
632
|
-
32,
|
|
633
|
-
50,
|
|
634
|
-
48,
|
|
635
|
-
187,
|
|
636
|
-
13,
|
|
637
|
-
10,
|
|
638
|
-
26,
|
|
639
|
-
10
|
|
640
|
-
];
|
|
641
|
-
}
|
|
642
|
-
});
|
|
643
697
|
|
|
644
698
|
// src/lib/parsers/parse-basis.ts
|
|
699
|
+
var OutputFormat = {
|
|
700
|
+
etc1: {
|
|
701
|
+
basisFormat: 0,
|
|
702
|
+
compressed: true,
|
|
703
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL
|
|
704
|
+
},
|
|
705
|
+
etc2: {
|
|
706
|
+
basisFormat: 1,
|
|
707
|
+
compressed: true
|
|
708
|
+
},
|
|
709
|
+
bc1: {
|
|
710
|
+
basisFormat: 2,
|
|
711
|
+
compressed: true,
|
|
712
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT
|
|
713
|
+
},
|
|
714
|
+
bc3: {
|
|
715
|
+
basisFormat: 3,
|
|
716
|
+
compressed: true,
|
|
717
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT
|
|
718
|
+
},
|
|
719
|
+
bc4: {
|
|
720
|
+
basisFormat: 4,
|
|
721
|
+
compressed: true
|
|
722
|
+
},
|
|
723
|
+
bc5: {
|
|
724
|
+
basisFormat: 5,
|
|
725
|
+
compressed: true
|
|
726
|
+
},
|
|
727
|
+
"bc7-m6-opaque-only": {
|
|
728
|
+
basisFormat: 6,
|
|
729
|
+
compressed: true
|
|
730
|
+
},
|
|
731
|
+
"bc7-m5": {
|
|
732
|
+
basisFormat: 7,
|
|
733
|
+
compressed: true
|
|
734
|
+
},
|
|
735
|
+
"pvrtc1-4-rgb": {
|
|
736
|
+
basisFormat: 8,
|
|
737
|
+
compressed: true,
|
|
738
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG
|
|
739
|
+
},
|
|
740
|
+
"pvrtc1-4-rgba": {
|
|
741
|
+
basisFormat: 9,
|
|
742
|
+
compressed: true,
|
|
743
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
|
|
744
|
+
},
|
|
745
|
+
"astc-4x4": {
|
|
746
|
+
basisFormat: 10,
|
|
747
|
+
compressed: true,
|
|
748
|
+
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR
|
|
749
|
+
},
|
|
750
|
+
"atc-rgb": {
|
|
751
|
+
basisFormat: 11,
|
|
752
|
+
compressed: true
|
|
753
|
+
},
|
|
754
|
+
"atc-rgba-interpolated-alpha": {
|
|
755
|
+
basisFormat: 12,
|
|
756
|
+
compressed: true
|
|
757
|
+
},
|
|
758
|
+
rgba32: {
|
|
759
|
+
basisFormat: 13,
|
|
760
|
+
compressed: false
|
|
761
|
+
},
|
|
762
|
+
rgb565: {
|
|
763
|
+
basisFormat: 14,
|
|
764
|
+
compressed: false
|
|
765
|
+
},
|
|
766
|
+
bgr565: {
|
|
767
|
+
basisFormat: 15,
|
|
768
|
+
compressed: false
|
|
769
|
+
},
|
|
770
|
+
rgba4444: {
|
|
771
|
+
basisFormat: 16,
|
|
772
|
+
compressed: false
|
|
773
|
+
}
|
|
774
|
+
};
|
|
645
775
|
async function parseBasis(data, options) {
|
|
646
776
|
if (options.basis.containerFormat === "auto") {
|
|
647
777
|
if (isKTX(data)) {
|
|
648
778
|
const fileConstructors = await loadBasisEncoderModule(options);
|
|
649
779
|
return parseKTX2File(fileConstructors.KTX2File, data, options);
|
|
650
780
|
}
|
|
651
|
-
const {
|
|
781
|
+
const {
|
|
782
|
+
BasisFile
|
|
783
|
+
} = await loadBasisTranscoderModule(options);
|
|
652
784
|
return parseBasisFile(BasisFile, data, options);
|
|
653
785
|
}
|
|
654
786
|
switch (options.basis.module) {
|
|
@@ -663,7 +795,9 @@
|
|
|
663
795
|
}
|
|
664
796
|
case "transcoder":
|
|
665
797
|
default:
|
|
666
|
-
const {
|
|
798
|
+
const {
|
|
799
|
+
BasisFile
|
|
800
|
+
} = await loadBasisTranscoderModule(options);
|
|
667
801
|
return parseBasisFile(BasisFile, data, options);
|
|
668
802
|
}
|
|
669
803
|
}
|
|
@@ -692,19 +826,28 @@
|
|
|
692
826
|
function transcodeImage(basisFile, imageIndex, levelIndex, options) {
|
|
693
827
|
const width = basisFile.getImageWidth(imageIndex, levelIndex);
|
|
694
828
|
const height = basisFile.getImageHeight(imageIndex, levelIndex);
|
|
695
|
-
const hasAlpha = basisFile.getHasAlpha(
|
|
696
|
-
|
|
829
|
+
const hasAlpha = basisFile.getHasAlpha(
|
|
830
|
+
/* imageIndex, levelIndex */
|
|
831
|
+
);
|
|
832
|
+
const {
|
|
833
|
+
compressed,
|
|
834
|
+
format,
|
|
835
|
+
basisFormat
|
|
836
|
+
} = getBasisOptions(options, hasAlpha);
|
|
697
837
|
const decodedSize = basisFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, basisFormat);
|
|
698
838
|
const decodedData = new Uint8Array(decodedSize);
|
|
699
839
|
if (!basisFile.transcodeImage(decodedData, imageIndex, levelIndex, basisFormat, 0, 0)) {
|
|
700
840
|
throw new Error("failed to start Basis transcoding");
|
|
701
841
|
}
|
|
702
842
|
return {
|
|
843
|
+
// standard loaders.gl image category payload
|
|
703
844
|
width,
|
|
704
845
|
height,
|
|
705
846
|
data: decodedData,
|
|
706
847
|
compressed,
|
|
707
848
|
format,
|
|
849
|
+
// Additional fields
|
|
850
|
+
// Add levelSize field.
|
|
708
851
|
hasAlpha
|
|
709
852
|
};
|
|
710
853
|
}
|
|
@@ -727,18 +870,38 @@
|
|
|
727
870
|
}
|
|
728
871
|
}
|
|
729
872
|
function transcodeKTX2Image(ktx2File, levelIndex, options) {
|
|
730
|
-
const {
|
|
731
|
-
|
|
873
|
+
const {
|
|
874
|
+
alphaFlag,
|
|
875
|
+
height,
|
|
876
|
+
width
|
|
877
|
+
} = ktx2File.getImageLevelInfo(levelIndex, 0, 0);
|
|
878
|
+
const {
|
|
879
|
+
compressed,
|
|
880
|
+
format,
|
|
881
|
+
basisFormat
|
|
882
|
+
} = getBasisOptions(options, alphaFlag);
|
|
732
883
|
const decodedSize = ktx2File.getImageTranscodedSizeInBytes(levelIndex, 0, 0, basisFormat);
|
|
733
884
|
const decodedData = new Uint8Array(decodedSize);
|
|
734
|
-
if (!ktx2File.transcodeImage(
|
|
885
|
+
if (!ktx2File.transcodeImage(
|
|
886
|
+
decodedData,
|
|
887
|
+
levelIndex,
|
|
888
|
+
0,
|
|
889
|
+
0,
|
|
890
|
+
basisFormat,
|
|
891
|
+
0,
|
|
892
|
+
-1,
|
|
893
|
+
-1
|
|
894
|
+
/* channel1 */
|
|
895
|
+
)) {
|
|
735
896
|
throw new Error("Failed to transcode KTX2 image");
|
|
736
897
|
}
|
|
737
898
|
return {
|
|
899
|
+
// standard loaders.gl image category payload
|
|
738
900
|
width,
|
|
739
901
|
height,
|
|
740
902
|
data: decodedData,
|
|
741
903
|
compressed,
|
|
904
|
+
// Additional fields
|
|
742
905
|
levelSize: decodedSize,
|
|
743
906
|
hasAlpha: alphaFlag,
|
|
744
907
|
format
|
|
@@ -776,90 +939,34 @@
|
|
|
776
939
|
}
|
|
777
940
|
return "rgb565";
|
|
778
941
|
}
|
|
779
|
-
var OutputFormat;
|
|
780
|
-
var init_parse_basis = __esm({
|
|
781
|
-
"src/lib/parsers/parse-basis.ts"() {
|
|
782
|
-
init_basis_module_loader();
|
|
783
|
-
init_gl_extensions();
|
|
784
|
-
init_texture_formats();
|
|
785
|
-
init_parse_ktx();
|
|
786
|
-
OutputFormat = {
|
|
787
|
-
etc1: {
|
|
788
|
-
basisFormat: 0,
|
|
789
|
-
compressed: true,
|
|
790
|
-
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL
|
|
791
|
-
},
|
|
792
|
-
etc2: { basisFormat: 1, compressed: true },
|
|
793
|
-
bc1: {
|
|
794
|
-
basisFormat: 2,
|
|
795
|
-
compressed: true,
|
|
796
|
-
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT
|
|
797
|
-
},
|
|
798
|
-
bc3: {
|
|
799
|
-
basisFormat: 3,
|
|
800
|
-
compressed: true,
|
|
801
|
-
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT
|
|
802
|
-
},
|
|
803
|
-
bc4: { basisFormat: 4, compressed: true },
|
|
804
|
-
bc5: { basisFormat: 5, compressed: true },
|
|
805
|
-
"bc7-m6-opaque-only": { basisFormat: 6, compressed: true },
|
|
806
|
-
"bc7-m5": { basisFormat: 7, compressed: true },
|
|
807
|
-
"pvrtc1-4-rgb": {
|
|
808
|
-
basisFormat: 8,
|
|
809
|
-
compressed: true,
|
|
810
|
-
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG
|
|
811
|
-
},
|
|
812
|
-
"pvrtc1-4-rgba": {
|
|
813
|
-
basisFormat: 9,
|
|
814
|
-
compressed: true,
|
|
815
|
-
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
|
|
816
|
-
},
|
|
817
|
-
"astc-4x4": {
|
|
818
|
-
basisFormat: 10,
|
|
819
|
-
compressed: true,
|
|
820
|
-
format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR
|
|
821
|
-
},
|
|
822
|
-
"atc-rgb": { basisFormat: 11, compressed: true },
|
|
823
|
-
"atc-rgba-interpolated-alpha": { basisFormat: 12, compressed: true },
|
|
824
|
-
rgba32: { basisFormat: 13, compressed: false },
|
|
825
|
-
rgb565: { basisFormat: 14, compressed: false },
|
|
826
|
-
bgr565: { basisFormat: 15, compressed: false },
|
|
827
|
-
rgba4444: { basisFormat: 16, compressed: false }
|
|
828
|
-
};
|
|
829
|
-
}
|
|
830
|
-
});
|
|
831
942
|
|
|
832
943
|
// src/basis-loader.ts
|
|
833
|
-
var BasisWorkerLoader
|
|
834
|
-
|
|
835
|
-
"
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
module: "transcoder"
|
|
854
|
-
}
|
|
855
|
-
}
|
|
856
|
-
};
|
|
857
|
-
BasisLoader = {
|
|
858
|
-
...BasisWorkerLoader,
|
|
859
|
-
parse: parseBasis
|
|
860
|
-
};
|
|
944
|
+
var BasisWorkerLoader = {
|
|
945
|
+
name: "Basis",
|
|
946
|
+
id: "basis",
|
|
947
|
+
module: "textures",
|
|
948
|
+
version: VERSION,
|
|
949
|
+
worker: true,
|
|
950
|
+
extensions: ["basis", "ktx2"],
|
|
951
|
+
mimeTypes: ["application/octet-stream", "image/ktx2"],
|
|
952
|
+
tests: ["sB"],
|
|
953
|
+
binary: true,
|
|
954
|
+
options: {
|
|
955
|
+
basis: {
|
|
956
|
+
format: "auto",
|
|
957
|
+
// gl context doesn't exist on a worker thread
|
|
958
|
+
libraryPath: "libs/",
|
|
959
|
+
containerFormat: "auto",
|
|
960
|
+
// 'basis' || 'ktx2' || 'auto'
|
|
961
|
+
module: "transcoder"
|
|
962
|
+
// 'transcoder' || 'encoder'
|
|
963
|
+
}
|
|
861
964
|
}
|
|
862
|
-
}
|
|
965
|
+
};
|
|
966
|
+
var BasisLoader = {
|
|
967
|
+
...BasisWorkerLoader,
|
|
968
|
+
parse: parseBasis
|
|
969
|
+
};
|
|
863
970
|
|
|
864
971
|
// ../loader-utils/src/lib/env-utils/assert.ts
|
|
865
972
|
function assert2(condition, message) {
|
|
@@ -867,32 +974,28 @@
|
|
|
867
974
|
throw new Error(message || "loader assertion failed.");
|
|
868
975
|
}
|
|
869
976
|
}
|
|
870
|
-
var init_assert2 = __esm({
|
|
871
|
-
"../loader-utils/src/lib/env-utils/assert.ts"() {
|
|
872
|
-
}
|
|
873
|
-
});
|
|
874
977
|
|
|
875
978
|
// ../loader-utils/src/lib/env-utils/globals.ts
|
|
876
|
-
var globals2
|
|
877
|
-
|
|
878
|
-
"
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
}
|
|
893
|
-
});
|
|
979
|
+
var globals2 = {
|
|
980
|
+
self: typeof self !== "undefined" && self,
|
|
981
|
+
window: typeof window !== "undefined" && window,
|
|
982
|
+
global: typeof global !== "undefined" && global,
|
|
983
|
+
document: typeof document !== "undefined" && document
|
|
984
|
+
};
|
|
985
|
+
var self_2 = globals2.self || globals2.window || globals2.global || {};
|
|
986
|
+
var window_2 = globals2.window || globals2.self || globals2.global || {};
|
|
987
|
+
var global_2 = globals2.global || globals2.self || globals2.window || {};
|
|
988
|
+
var document_2 = globals2.document || {};
|
|
989
|
+
var isBrowser2 = (
|
|
990
|
+
// @ts-ignore process does not exist on browser
|
|
991
|
+
Boolean(typeof process !== "object" || String(process) !== "[object process]" || process.browser)
|
|
992
|
+
);
|
|
993
|
+
var matches2 = typeof process !== "undefined" && process.version && /v([0-9]*)/.exec(process.version);
|
|
994
|
+
var nodeVersion2 = matches2 && parseFloat(matches2[1]) || 0;
|
|
894
995
|
|
|
895
996
|
// ../loader-utils/src/lib/path-utils/file-aliases.ts
|
|
997
|
+
var pathPrefix = "";
|
|
998
|
+
var fileAliases = {};
|
|
896
999
|
function resolvePath(filename) {
|
|
897
1000
|
for (const alias in fileAliases) {
|
|
898
1001
|
if (filename.startsWith(alias)) {
|
|
@@ -905,24 +1008,41 @@
|
|
|
905
1008
|
}
|
|
906
1009
|
return filename;
|
|
907
1010
|
}
|
|
908
|
-
var pathPrefix, fileAliases;
|
|
909
|
-
var init_file_aliases = __esm({
|
|
910
|
-
"../loader-utils/src/lib/path-utils/file-aliases.ts"() {
|
|
911
|
-
pathPrefix = "";
|
|
912
|
-
fileAliases = {};
|
|
913
|
-
}
|
|
914
|
-
});
|
|
915
|
-
|
|
916
|
-
// ../loader-utils/src/index.ts
|
|
917
|
-
var init_src2 = __esm({
|
|
918
|
-
"../loader-utils/src/index.ts"() {
|
|
919
|
-
init_assert2();
|
|
920
|
-
init_globals2();
|
|
921
|
-
init_file_aliases();
|
|
922
|
-
}
|
|
923
|
-
});
|
|
924
1011
|
|
|
925
1012
|
// src/lib/parsers/parse-dds.ts
|
|
1013
|
+
var DDS_CONSTANTS = {
|
|
1014
|
+
MAGIC_NUMBER: 542327876,
|
|
1015
|
+
HEADER_LENGTH: 31,
|
|
1016
|
+
MAGIC_NUMBER_INDEX: 0,
|
|
1017
|
+
HEADER_SIZE_INDEX: 1,
|
|
1018
|
+
HEADER_FLAGS_INDEX: 2,
|
|
1019
|
+
HEADER_HEIGHT_INDEX: 3,
|
|
1020
|
+
HEADER_WIDTH_INDEX: 4,
|
|
1021
|
+
MIPMAPCOUNT_INDEX: 7,
|
|
1022
|
+
HEADER_PF_FLAGS_INDEX: 20,
|
|
1023
|
+
HEADER_PF_FOURCC_INDEX: 21,
|
|
1024
|
+
DDSD_MIPMAPCOUNT: 131072,
|
|
1025
|
+
DDPF_FOURCC: 4
|
|
1026
|
+
};
|
|
1027
|
+
var DDS_PIXEL_FORMATS = {
|
|
1028
|
+
DXT1: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
1029
|
+
DXT3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
1030
|
+
DXT5: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
1031
|
+
"ATC ": GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ATC_WEBGL,
|
|
1032
|
+
ATCA: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
|
|
1033
|
+
ATCI: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
|
|
1034
|
+
};
|
|
1035
|
+
var getATCLevelSize = getDxt1LevelSize;
|
|
1036
|
+
var getATCALevelSize = getDxtXLevelSize;
|
|
1037
|
+
var getATCILevelSize = getDxtXLevelSize;
|
|
1038
|
+
var DDS_SIZE_FUNCTIONS = {
|
|
1039
|
+
DXT1: getDxt1LevelSize,
|
|
1040
|
+
DXT3: getDxtXLevelSize,
|
|
1041
|
+
DXT5: getDxtXLevelSize,
|
|
1042
|
+
"ATC ": getATCLevelSize,
|
|
1043
|
+
ATCA: getATCALevelSize,
|
|
1044
|
+
ATCI: getATCILevelSize
|
|
1045
|
+
};
|
|
926
1046
|
function isDDS(data) {
|
|
927
1047
|
const header = new Uint32Array(data, 0, DDS_CONSTANTS.HEADER_LENGTH);
|
|
928
1048
|
const magic = header[DDS_CONSTANTS.MAGIC_NUMBER_INDEX];
|
|
@@ -961,49 +1081,79 @@
|
|
|
961
1081
|
function int32ToFourCC(value) {
|
|
962
1082
|
return String.fromCharCode(value & 255, value >> 8 & 255, value >> 16 & 255, value >> 24 & 255);
|
|
963
1083
|
}
|
|
964
|
-
var DDS_CONSTANTS, DDS_PIXEL_FORMATS, getATCLevelSize, getATCALevelSize, getATCILevelSize, DDS_SIZE_FUNCTIONS;
|
|
965
|
-
var init_parse_dds = __esm({
|
|
966
|
-
"src/lib/parsers/parse-dds.ts"() {
|
|
967
|
-
init_src2();
|
|
968
|
-
init_gl_extensions();
|
|
969
|
-
init_extract_mipmap_images();
|
|
970
|
-
DDS_CONSTANTS = {
|
|
971
|
-
MAGIC_NUMBER: 542327876,
|
|
972
|
-
HEADER_LENGTH: 31,
|
|
973
|
-
MAGIC_NUMBER_INDEX: 0,
|
|
974
|
-
HEADER_SIZE_INDEX: 1,
|
|
975
|
-
HEADER_FLAGS_INDEX: 2,
|
|
976
|
-
HEADER_HEIGHT_INDEX: 3,
|
|
977
|
-
HEADER_WIDTH_INDEX: 4,
|
|
978
|
-
MIPMAPCOUNT_INDEX: 7,
|
|
979
|
-
HEADER_PF_FLAGS_INDEX: 20,
|
|
980
|
-
HEADER_PF_FOURCC_INDEX: 21,
|
|
981
|
-
DDSD_MIPMAPCOUNT: 131072,
|
|
982
|
-
DDPF_FOURCC: 4
|
|
983
|
-
};
|
|
984
|
-
DDS_PIXEL_FORMATS = {
|
|
985
|
-
DXT1: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
986
|
-
DXT3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
987
|
-
DXT5: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
988
|
-
"ATC ": GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ATC_WEBGL,
|
|
989
|
-
ATCA: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
|
|
990
|
-
ATCI: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
|
|
991
|
-
};
|
|
992
|
-
getATCLevelSize = getDxt1LevelSize;
|
|
993
|
-
getATCALevelSize = getDxtXLevelSize;
|
|
994
|
-
getATCILevelSize = getDxtXLevelSize;
|
|
995
|
-
DDS_SIZE_FUNCTIONS = {
|
|
996
|
-
DXT1: getDxt1LevelSize,
|
|
997
|
-
DXT3: getDxtXLevelSize,
|
|
998
|
-
DXT5: getDxtXLevelSize,
|
|
999
|
-
"ATC ": getATCLevelSize,
|
|
1000
|
-
ATCA: getATCALevelSize,
|
|
1001
|
-
ATCI: getATCILevelSize
|
|
1002
|
-
};
|
|
1003
|
-
}
|
|
1004
|
-
});
|
|
1005
1084
|
|
|
1006
1085
|
// src/lib/parsers/parse-pvr.ts
|
|
1086
|
+
var PVR_CONSTANTS = {
|
|
1087
|
+
MAGIC_NUMBER: 55727696,
|
|
1088
|
+
MAGIC_NUMBER_EXTRA: 1347834371,
|
|
1089
|
+
HEADER_LENGTH: 13,
|
|
1090
|
+
HEADER_SIZE: 52,
|
|
1091
|
+
MAGIC_NUMBER_INDEX: 0,
|
|
1092
|
+
PIXEL_FORMAT_INDEX: 2,
|
|
1093
|
+
COLOUR_SPACE_INDEX: 4,
|
|
1094
|
+
HEIGHT_INDEX: 6,
|
|
1095
|
+
WIDTH_INDEX: 7,
|
|
1096
|
+
MIPMAPCOUNT_INDEX: 11,
|
|
1097
|
+
METADATA_SIZE_INDEX: 12
|
|
1098
|
+
};
|
|
1099
|
+
var PVR_PIXEL_FORMATS = {
|
|
1100
|
+
0: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],
|
|
1101
|
+
1: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],
|
|
1102
|
+
2: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],
|
|
1103
|
+
3: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],
|
|
1104
|
+
6: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL],
|
|
1105
|
+
7: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT],
|
|
1106
|
+
9: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT],
|
|
1107
|
+
11: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT],
|
|
1108
|
+
22: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2],
|
|
1109
|
+
23: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC],
|
|
1110
|
+
24: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],
|
|
1111
|
+
25: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC],
|
|
1112
|
+
26: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC],
|
|
1113
|
+
27: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR],
|
|
1114
|
+
28: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X4_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR],
|
|
1115
|
+
29: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR],
|
|
1116
|
+
30: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR],
|
|
1117
|
+
31: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X6_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR],
|
|
1118
|
+
32: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR],
|
|
1119
|
+
33: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X6_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR],
|
|
1120
|
+
34: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X8_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR],
|
|
1121
|
+
35: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR],
|
|
1122
|
+
36: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X6_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR],
|
|
1123
|
+
37: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X8_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR],
|
|
1124
|
+
38: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X10_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR],
|
|
1125
|
+
39: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X10_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR],
|
|
1126
|
+
40: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X12_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR]
|
|
1127
|
+
};
|
|
1128
|
+
var PVR_SIZE_FUNCTIONS = {
|
|
1129
|
+
0: pvrtc2bppSize,
|
|
1130
|
+
1: pvrtc2bppSize,
|
|
1131
|
+
2: pvrtc4bppSize,
|
|
1132
|
+
3: pvrtc4bppSize,
|
|
1133
|
+
6: dxtEtcSmallSize,
|
|
1134
|
+
7: dxtEtcSmallSize,
|
|
1135
|
+
9: dxtEtcAstcBigSize,
|
|
1136
|
+
11: dxtEtcAstcBigSize,
|
|
1137
|
+
22: dxtEtcSmallSize,
|
|
1138
|
+
23: dxtEtcAstcBigSize,
|
|
1139
|
+
24: dxtEtcSmallSize,
|
|
1140
|
+
25: dxtEtcSmallSize,
|
|
1141
|
+
26: dxtEtcAstcBigSize,
|
|
1142
|
+
27: dxtEtcAstcBigSize,
|
|
1143
|
+
28: atc5x4Size,
|
|
1144
|
+
29: atc5x5Size,
|
|
1145
|
+
30: atc6x5Size,
|
|
1146
|
+
31: atc6x6Size,
|
|
1147
|
+
32: atc8x5Size,
|
|
1148
|
+
33: atc8x6Size,
|
|
1149
|
+
34: atc8x8Size,
|
|
1150
|
+
35: atc10x5Size,
|
|
1151
|
+
36: atc10x6Size,
|
|
1152
|
+
37: atc10x8Size,
|
|
1153
|
+
38: atc10x10Size,
|
|
1154
|
+
39: atc12x10Size,
|
|
1155
|
+
40: atc12x12Size
|
|
1156
|
+
};
|
|
1007
1157
|
function isPVR(data) {
|
|
1008
1158
|
const header = new Uint32Array(data, 0, PVR_CONSTANTS.HEADER_LENGTH);
|
|
1009
1159
|
const version = header[PVR_CONSTANTS.MAGIC_NUMBER_INDEX];
|
|
@@ -1084,126 +1234,6 @@
|
|
|
1084
1234
|
function atc12x12Size(width, height) {
|
|
1085
1235
|
return Math.floor((width + 11) / 12) * Math.floor((height + 11) / 12) * 16;
|
|
1086
1236
|
}
|
|
1087
|
-
var PVR_CONSTANTS, PVR_PIXEL_FORMATS, PVR_SIZE_FUNCTIONS;
|
|
1088
|
-
var init_parse_pvr = __esm({
|
|
1089
|
-
"src/lib/parsers/parse-pvr.ts"() {
|
|
1090
|
-
init_gl_extensions();
|
|
1091
|
-
init_extract_mipmap_images();
|
|
1092
|
-
PVR_CONSTANTS = {
|
|
1093
|
-
MAGIC_NUMBER: 55727696,
|
|
1094
|
-
MAGIC_NUMBER_EXTRA: 1347834371,
|
|
1095
|
-
HEADER_LENGTH: 13,
|
|
1096
|
-
HEADER_SIZE: 52,
|
|
1097
|
-
MAGIC_NUMBER_INDEX: 0,
|
|
1098
|
-
PIXEL_FORMAT_INDEX: 2,
|
|
1099
|
-
COLOUR_SPACE_INDEX: 4,
|
|
1100
|
-
HEIGHT_INDEX: 6,
|
|
1101
|
-
WIDTH_INDEX: 7,
|
|
1102
|
-
MIPMAPCOUNT_INDEX: 11,
|
|
1103
|
-
METADATA_SIZE_INDEX: 12
|
|
1104
|
-
};
|
|
1105
|
-
PVR_PIXEL_FORMATS = {
|
|
1106
|
-
0: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],
|
|
1107
|
-
1: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],
|
|
1108
|
-
2: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],
|
|
1109
|
-
3: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],
|
|
1110
|
-
6: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL],
|
|
1111
|
-
7: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT],
|
|
1112
|
-
9: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT],
|
|
1113
|
-
11: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT],
|
|
1114
|
-
22: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2],
|
|
1115
|
-
23: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC],
|
|
1116
|
-
24: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],
|
|
1117
|
-
25: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC],
|
|
1118
|
-
26: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC],
|
|
1119
|
-
27: [
|
|
1120
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR,
|
|
1121
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR
|
|
1122
|
-
],
|
|
1123
|
-
28: [
|
|
1124
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X4_KHR,
|
|
1125
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR
|
|
1126
|
-
],
|
|
1127
|
-
29: [
|
|
1128
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X5_KHR,
|
|
1129
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR
|
|
1130
|
-
],
|
|
1131
|
-
30: [
|
|
1132
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X5_KHR,
|
|
1133
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR
|
|
1134
|
-
],
|
|
1135
|
-
31: [
|
|
1136
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X6_KHR,
|
|
1137
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR
|
|
1138
|
-
],
|
|
1139
|
-
32: [
|
|
1140
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X5_KHR,
|
|
1141
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR
|
|
1142
|
-
],
|
|
1143
|
-
33: [
|
|
1144
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X6_KHR,
|
|
1145
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR
|
|
1146
|
-
],
|
|
1147
|
-
34: [
|
|
1148
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X8_KHR,
|
|
1149
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR
|
|
1150
|
-
],
|
|
1151
|
-
35: [
|
|
1152
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X5_KHR,
|
|
1153
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR
|
|
1154
|
-
],
|
|
1155
|
-
36: [
|
|
1156
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X6_KHR,
|
|
1157
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR
|
|
1158
|
-
],
|
|
1159
|
-
37: [
|
|
1160
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X8_KHR,
|
|
1161
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR
|
|
1162
|
-
],
|
|
1163
|
-
38: [
|
|
1164
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X10_KHR,
|
|
1165
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR
|
|
1166
|
-
],
|
|
1167
|
-
39: [
|
|
1168
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X10_KHR,
|
|
1169
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR
|
|
1170
|
-
],
|
|
1171
|
-
40: [
|
|
1172
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X12_KHR,
|
|
1173
|
-
GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR
|
|
1174
|
-
]
|
|
1175
|
-
};
|
|
1176
|
-
PVR_SIZE_FUNCTIONS = {
|
|
1177
|
-
0: pvrtc2bppSize,
|
|
1178
|
-
1: pvrtc2bppSize,
|
|
1179
|
-
2: pvrtc4bppSize,
|
|
1180
|
-
3: pvrtc4bppSize,
|
|
1181
|
-
6: dxtEtcSmallSize,
|
|
1182
|
-
7: dxtEtcSmallSize,
|
|
1183
|
-
9: dxtEtcAstcBigSize,
|
|
1184
|
-
11: dxtEtcAstcBigSize,
|
|
1185
|
-
22: dxtEtcSmallSize,
|
|
1186
|
-
23: dxtEtcAstcBigSize,
|
|
1187
|
-
24: dxtEtcSmallSize,
|
|
1188
|
-
25: dxtEtcSmallSize,
|
|
1189
|
-
26: dxtEtcAstcBigSize,
|
|
1190
|
-
27: dxtEtcAstcBigSize,
|
|
1191
|
-
28: atc5x4Size,
|
|
1192
|
-
29: atc5x5Size,
|
|
1193
|
-
30: atc6x5Size,
|
|
1194
|
-
31: atc6x6Size,
|
|
1195
|
-
32: atc8x5Size,
|
|
1196
|
-
33: atc8x6Size,
|
|
1197
|
-
34: atc8x8Size,
|
|
1198
|
-
35: atc10x5Size,
|
|
1199
|
-
36: atc10x6Size,
|
|
1200
|
-
37: atc10x8Size,
|
|
1201
|
-
38: atc10x10Size,
|
|
1202
|
-
39: atc12x10Size,
|
|
1203
|
-
40: atc12x12Size
|
|
1204
|
-
};
|
|
1205
|
-
}
|
|
1206
|
-
});
|
|
1207
1237
|
|
|
1208
1238
|
// src/lib/parsers/parse-compressed-texture.ts
|
|
1209
1239
|
function parseCompressedTexture(data) {
|
|
@@ -1218,97 +1248,90 @@
|
|
|
1218
1248
|
}
|
|
1219
1249
|
throw new Error("Texture container format not recognized");
|
|
1220
1250
|
}
|
|
1221
|
-
var init_parse_compressed_texture = __esm({
|
|
1222
|
-
"src/lib/parsers/parse-compressed-texture.ts"() {
|
|
1223
|
-
init_parse_ktx();
|
|
1224
|
-
init_parse_dds();
|
|
1225
|
-
init_parse_pvr();
|
|
1226
|
-
}
|
|
1227
|
-
});
|
|
1228
1251
|
|
|
1229
1252
|
// src/compressed-texture-loader.ts
|
|
1230
|
-
var CompressedTextureWorkerLoader
|
|
1231
|
-
|
|
1232
|
-
"
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
"image/vnd-ms.dds",
|
|
1252
|
-
"image/x-dds",
|
|
1253
|
-
"application/octet-stream"
|
|
1254
|
-
],
|
|
1255
|
-
binary: true,
|
|
1256
|
-
options: {
|
|
1257
|
-
"compressed-texture": {
|
|
1258
|
-
libraryPath: "libs/",
|
|
1259
|
-
useBasis: false
|
|
1260
|
-
}
|
|
1261
|
-
}
|
|
1262
|
-
};
|
|
1263
|
-
CompressedTextureLoader = {
|
|
1264
|
-
...CompressedTextureWorkerLoader,
|
|
1265
|
-
parse: async (arrayBuffer, options) => {
|
|
1266
|
-
if (options?.["compressed-texture"]?.useBasis) {
|
|
1267
|
-
options.basis = {
|
|
1268
|
-
format: {
|
|
1269
|
-
alpha: "BC3",
|
|
1270
|
-
noAlpha: "BC1"
|
|
1271
|
-
},
|
|
1272
|
-
...options.basis,
|
|
1273
|
-
containerFormat: "ktx2",
|
|
1274
|
-
module: "encoder"
|
|
1275
|
-
};
|
|
1276
|
-
const result = await parseBasis(arrayBuffer, options);
|
|
1277
|
-
return result[0];
|
|
1278
|
-
}
|
|
1279
|
-
return parseCompressedTexture(arrayBuffer);
|
|
1280
|
-
}
|
|
1281
|
-
};
|
|
1253
|
+
var CompressedTextureWorkerLoader = {
|
|
1254
|
+
name: "Texture Containers",
|
|
1255
|
+
id: "compressed-texture",
|
|
1256
|
+
module: "textures",
|
|
1257
|
+
version: VERSION,
|
|
1258
|
+
worker: true,
|
|
1259
|
+
extensions: [
|
|
1260
|
+
"ktx",
|
|
1261
|
+
"ktx2",
|
|
1262
|
+
"dds",
|
|
1263
|
+
// WEBGL_compressed_texture_s3tc, WEBGL_compressed_texture_atc
|
|
1264
|
+
"pvr"
|
|
1265
|
+
// WEBGL_compressed_texture_pvrtc
|
|
1266
|
+
],
|
|
1267
|
+
mimeTypes: ["image/ktx2", "image/ktx", "image/vnd-ms.dds", "image/x-dds", "application/octet-stream"],
|
|
1268
|
+
binary: true,
|
|
1269
|
+
options: {
|
|
1270
|
+
"compressed-texture": {
|
|
1271
|
+
libraryPath: "libs/",
|
|
1272
|
+
useBasis: false
|
|
1273
|
+
}
|
|
1282
1274
|
}
|
|
1283
|
-
}
|
|
1275
|
+
};
|
|
1276
|
+
var CompressedTextureLoader = {
|
|
1277
|
+
...CompressedTextureWorkerLoader,
|
|
1278
|
+
parse: async (arrayBuffer, options) => {
|
|
1279
|
+
if (options?.["compressed-texture"]?.useBasis) {
|
|
1280
|
+
options.basis = {
|
|
1281
|
+
format: {
|
|
1282
|
+
alpha: "BC3",
|
|
1283
|
+
noAlpha: "BC1"
|
|
1284
|
+
},
|
|
1285
|
+
// @ts-expect-error TODO not allowed to modify inputs
|
|
1286
|
+
...options.basis,
|
|
1287
|
+
containerFormat: "ktx2",
|
|
1288
|
+
module: "encoder"
|
|
1289
|
+
};
|
|
1290
|
+
const result = await parseBasis(arrayBuffer, options);
|
|
1291
|
+
return result[0];
|
|
1292
|
+
}
|
|
1293
|
+
return parseCompressedTexture(arrayBuffer);
|
|
1294
|
+
}
|
|
1295
|
+
};
|
|
1284
1296
|
|
|
1285
1297
|
// src/crunch-loader.ts
|
|
1286
|
-
var CrunchLoader
|
|
1287
|
-
|
|
1288
|
-
"
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
options: {
|
|
1300
|
-
crunch: {
|
|
1301
|
-
libraryPath: "libs/"
|
|
1302
|
-
}
|
|
1303
|
-
}
|
|
1304
|
-
};
|
|
1298
|
+
var CrunchLoader = {
|
|
1299
|
+
id: "crunch",
|
|
1300
|
+
name: "Crunch",
|
|
1301
|
+
module: "textures",
|
|
1302
|
+
version: VERSION,
|
|
1303
|
+
worker: true,
|
|
1304
|
+
extensions: ["crn"],
|
|
1305
|
+
mimeTypes: ["image/crn", "image/x-crn", "application/octet-stream"],
|
|
1306
|
+
binary: true,
|
|
1307
|
+
options: {
|
|
1308
|
+
crunch: {
|
|
1309
|
+
libraryPath: "libs/"
|
|
1310
|
+
}
|
|
1305
1311
|
}
|
|
1306
|
-
}
|
|
1312
|
+
};
|
|
1307
1313
|
|
|
1308
1314
|
// src/lib/parsers/parse-npy.ts
|
|
1315
|
+
var a2 = new Uint32Array([305419896]);
|
|
1316
|
+
var b = new Uint8Array(a2.buffer, a2.byteOffset, a2.byteLength);
|
|
1317
|
+
var isLittleEndian = !(b[0] === 18);
|
|
1318
|
+
var LITTLE_ENDIAN_OS = isLittleEndian;
|
|
1319
|
+
var DTYPES = {
|
|
1320
|
+
u1: Uint8Array,
|
|
1321
|
+
i1: Int8Array,
|
|
1322
|
+
u2: Uint16Array,
|
|
1323
|
+
i2: Int16Array,
|
|
1324
|
+
u4: Uint32Array,
|
|
1325
|
+
i4: Int32Array,
|
|
1326
|
+
f4: Float32Array,
|
|
1327
|
+
f8: Float64Array
|
|
1328
|
+
};
|
|
1309
1329
|
function parseNPY(arrayBuffer, options) {
|
|
1310
1330
|
const view = new DataView(arrayBuffer);
|
|
1311
|
-
const {
|
|
1331
|
+
const {
|
|
1332
|
+
header,
|
|
1333
|
+
headerEndOffset
|
|
1334
|
+
} = parseHeader(view);
|
|
1312
1335
|
const numpyType = header.descr;
|
|
1313
1336
|
const ArrayType = DTYPES[numpyType.slice(1, 3)];
|
|
1314
1337
|
if (!ArrayType) {
|
|
@@ -1345,69 +1368,43 @@
|
|
|
1345
1368
|
const headerText = decoder.decode(headerArray);
|
|
1346
1369
|
offset += headerLength;
|
|
1347
1370
|
const header = JSON.parse(headerText.replace(/'/g, '"').replace("False", "false").replace("(", "[").replace(/,*\),*/g, "]"));
|
|
1348
|
-
return {
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
a2 = new Uint32Array([305419896]);
|
|
1354
|
-
b = new Uint8Array(a2.buffer, a2.byteOffset, a2.byteLength);
|
|
1355
|
-
isLittleEndian = !(b[0] === 18);
|
|
1356
|
-
LITTLE_ENDIAN_OS = isLittleEndian;
|
|
1357
|
-
DTYPES = {
|
|
1358
|
-
u1: Uint8Array,
|
|
1359
|
-
i1: Int8Array,
|
|
1360
|
-
u2: Uint16Array,
|
|
1361
|
-
i2: Int16Array,
|
|
1362
|
-
u4: Uint32Array,
|
|
1363
|
-
i4: Int32Array,
|
|
1364
|
-
f4: Float32Array,
|
|
1365
|
-
f8: Float64Array
|
|
1366
|
-
};
|
|
1367
|
-
}
|
|
1368
|
-
});
|
|
1371
|
+
return {
|
|
1372
|
+
header,
|
|
1373
|
+
headerEndOffset: offset
|
|
1374
|
+
};
|
|
1375
|
+
}
|
|
1369
1376
|
|
|
1370
1377
|
// src/npy-loader.ts
|
|
1371
|
-
var NPY_MAGIC_NUMBER,
|
|
1372
|
-
var
|
|
1373
|
-
"
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
extensions: ["npy"],
|
|
1384
|
-
mimeTypes: [],
|
|
1385
|
-
tests: [NPY_MAGIC_NUMBER.buffer],
|
|
1386
|
-
options: {
|
|
1387
|
-
npy: {}
|
|
1388
|
-
}
|
|
1389
|
-
};
|
|
1390
|
-
NPYLoader = {
|
|
1391
|
-
...NPYWorkerLoader,
|
|
1392
|
-
parseSync: parseNPY,
|
|
1393
|
-
parse: async (arrayBuffer, options) => parseNPY(arrayBuffer, options)
|
|
1394
|
-
};
|
|
1378
|
+
var NPY_MAGIC_NUMBER = new Uint8Array([147, 78, 85, 77, 80, 89]);
|
|
1379
|
+
var NPYWorkerLoader = {
|
|
1380
|
+
name: "NPY",
|
|
1381
|
+
id: "npy",
|
|
1382
|
+
module: "textures",
|
|
1383
|
+
version: VERSION,
|
|
1384
|
+
worker: true,
|
|
1385
|
+
extensions: ["npy"],
|
|
1386
|
+
mimeTypes: [],
|
|
1387
|
+
tests: [NPY_MAGIC_NUMBER.buffer],
|
|
1388
|
+
options: {
|
|
1389
|
+
npy: {}
|
|
1395
1390
|
}
|
|
1396
|
-
}
|
|
1391
|
+
};
|
|
1392
|
+
var NPYLoader = {
|
|
1393
|
+
...NPYWorkerLoader,
|
|
1394
|
+
parseSync: parseNPY,
|
|
1395
|
+
parse: async (arrayBuffer, options) => parseNPY(arrayBuffer, options)
|
|
1396
|
+
};
|
|
1397
1397
|
|
|
1398
1398
|
// src/lib/parsers/crunch-module-loader.ts
|
|
1399
|
-
var CRUNCH_EXTERNAL_LIBRARIES
|
|
1400
|
-
|
|
1401
|
-
"
|
|
1402
|
-
|
|
1403
|
-
DECODER: "crunch.js"
|
|
1404
|
-
};
|
|
1405
|
-
}
|
|
1406
|
-
});
|
|
1399
|
+
var CRUNCH_EXTERNAL_LIBRARIES = {
|
|
1400
|
+
/** Crunch decoder library. It is used as dynamically imported script */
|
|
1401
|
+
DECODER: "crunch.js"
|
|
1402
|
+
};
|
|
1407
1403
|
|
|
1408
1404
|
// src/lib/encoders/encode-texture.ts
|
|
1409
1405
|
async function encodeImageURLToCompressedTextureURL(inputUrl, outputUrl, options) {
|
|
1410
1406
|
const args = [
|
|
1407
|
+
// Note: our actual executable is `npx`, so `texture-compressor` is an argument
|
|
1411
1408
|
"texture-compressor",
|
|
1412
1409
|
"--type",
|
|
1413
1410
|
"s3tc",
|
|
@@ -1428,38 +1425,26 @@
|
|
|
1428
1425
|
});
|
|
1429
1426
|
return outputUrl;
|
|
1430
1427
|
}
|
|
1431
|
-
var init_encode_texture = __esm({
|
|
1432
|
-
"src/lib/encoders/encode-texture.ts"() {
|
|
1433
|
-
init_src();
|
|
1434
|
-
}
|
|
1435
|
-
});
|
|
1436
1428
|
|
|
1437
1429
|
// src/compressed-texture-writer.ts
|
|
1438
|
-
var CompressedTextureWriter
|
|
1439
|
-
|
|
1440
|
-
"
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
toolFlags: ""
|
|
1457
|
-
}
|
|
1458
|
-
},
|
|
1459
|
-
encodeURLtoURL: encodeImageURLToCompressedTextureURL
|
|
1460
|
-
};
|
|
1461
|
-
}
|
|
1462
|
-
});
|
|
1430
|
+
var CompressedTextureWriter = {
|
|
1431
|
+
name: "DDS Texture Container",
|
|
1432
|
+
id: "dds",
|
|
1433
|
+
module: "textures",
|
|
1434
|
+
version: VERSION,
|
|
1435
|
+
extensions: ["dds"],
|
|
1436
|
+
options: {
|
|
1437
|
+
texture: {
|
|
1438
|
+
format: "auto",
|
|
1439
|
+
compression: "auto",
|
|
1440
|
+
quality: "auto",
|
|
1441
|
+
mipmap: false,
|
|
1442
|
+
flipY: false,
|
|
1443
|
+
toolFlags: ""
|
|
1444
|
+
}
|
|
1445
|
+
},
|
|
1446
|
+
encodeURLtoURL: encodeImageURLToCompressedTextureURL
|
|
1447
|
+
};
|
|
1463
1448
|
|
|
1464
1449
|
// src/lib/encoders/encode-ktx2-basis-texture.ts
|
|
1465
1450
|
async function encodeKTX2BasisTexture(image, options = {}) {
|
|
@@ -1469,7 +1454,9 @@
|
|
|
1469
1454
|
encodeUASTC = false,
|
|
1470
1455
|
mipmaps = false
|
|
1471
1456
|
} = options?.["ktx2-basis-writer"] || {};
|
|
1472
|
-
const {
|
|
1457
|
+
const {
|
|
1458
|
+
BasisEncoder
|
|
1459
|
+
} = await loadBasisEncoderModule(options);
|
|
1473
1460
|
const basisEncoder = new BasisEncoder();
|
|
1474
1461
|
try {
|
|
1475
1462
|
const basisFileData = new Uint8Array(image.width * image.height * 4);
|
|
@@ -1492,46 +1479,36 @@
|
|
|
1492
1479
|
basisEncoder.delete();
|
|
1493
1480
|
}
|
|
1494
1481
|
}
|
|
1495
|
-
var init_encode_ktx2_basis_texture = __esm({
|
|
1496
|
-
"src/lib/encoders/encode-ktx2-basis-texture.ts"() {
|
|
1497
|
-
init_basis_module_loader();
|
|
1498
|
-
}
|
|
1499
|
-
});
|
|
1500
1482
|
|
|
1501
1483
|
// src/ktx2-basis-writer.ts
|
|
1502
|
-
var KTX2BasisWriter
|
|
1503
|
-
|
|
1504
|
-
"
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
mipmaps: false
|
|
1519
|
-
}
|
|
1520
|
-
},
|
|
1521
|
-
encode: encodeKTX2BasisTexture
|
|
1522
|
-
};
|
|
1523
|
-
}
|
|
1524
|
-
});
|
|
1484
|
+
var KTX2BasisWriter = {
|
|
1485
|
+
name: "Basis Universal Supercompressed GPU Texture",
|
|
1486
|
+
id: "ktx2-basis-writer",
|
|
1487
|
+
module: "textures",
|
|
1488
|
+
version: VERSION,
|
|
1489
|
+
extensions: ["ktx2"],
|
|
1490
|
+
options: {
|
|
1491
|
+
["ktx2-basis-writer"]: {
|
|
1492
|
+
useSRGB: false,
|
|
1493
|
+
qualityLevel: 10,
|
|
1494
|
+
encodeUASTC: false,
|
|
1495
|
+
mipmaps: false
|
|
1496
|
+
}
|
|
1497
|
+
},
|
|
1498
|
+
encode: encodeKTX2BasisTexture
|
|
1499
|
+
};
|
|
1525
1500
|
|
|
1526
1501
|
// ../images/src/lib/utils/version.ts
|
|
1527
|
-
var VERSION3;
|
|
1528
|
-
var init_version3 = __esm({
|
|
1529
|
-
"../images/src/lib/utils/version.ts"() {
|
|
1530
|
-
VERSION3 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
|
|
1531
|
-
}
|
|
1532
|
-
});
|
|
1502
|
+
var VERSION3 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
|
|
1533
1503
|
|
|
1534
1504
|
// ../images/src/lib/category-api/image-type.ts
|
|
1505
|
+
var {
|
|
1506
|
+
_parseImageNode
|
|
1507
|
+
} = globalThis;
|
|
1508
|
+
var IMAGE_SUPPORTED = typeof Image !== "undefined";
|
|
1509
|
+
var IMAGE_BITMAP_SUPPORTED = typeof ImageBitmap !== "undefined";
|
|
1510
|
+
var NODE_IMAGE_SUPPORTED = Boolean(_parseImageNode);
|
|
1511
|
+
var DATA_SUPPORTED = isBrowser2 ? true : NODE_IMAGE_SUPPORTED;
|
|
1535
1512
|
function isImageTypeSupported(type) {
|
|
1536
1513
|
switch (type) {
|
|
1537
1514
|
case "auto":
|
|
@@ -1558,17 +1535,6 @@
|
|
|
1558
1535
|
}
|
|
1559
1536
|
throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js");
|
|
1560
1537
|
}
|
|
1561
|
-
var _parseImageNode, IMAGE_SUPPORTED, IMAGE_BITMAP_SUPPORTED, NODE_IMAGE_SUPPORTED, DATA_SUPPORTED;
|
|
1562
|
-
var init_image_type = __esm({
|
|
1563
|
-
"../images/src/lib/category-api/image-type.ts"() {
|
|
1564
|
-
init_src2();
|
|
1565
|
-
({ _parseImageNode } = globalThis);
|
|
1566
|
-
IMAGE_SUPPORTED = typeof Image !== "undefined";
|
|
1567
|
-
IMAGE_BITMAP_SUPPORTED = typeof ImageBitmap !== "undefined";
|
|
1568
|
-
NODE_IMAGE_SUPPORTED = Boolean(_parseImageNode);
|
|
1569
|
-
DATA_SUPPORTED = isBrowser2 ? true : NODE_IMAGE_SUPPORTED;
|
|
1570
|
-
}
|
|
1571
|
-
});
|
|
1572
1538
|
|
|
1573
1539
|
// ../images/src/lib/category-api/parsed-image-api.ts
|
|
1574
1540
|
function getImageType(image) {
|
|
@@ -1612,12 +1578,10 @@
|
|
|
1612
1578
|
}
|
|
1613
1579
|
return null;
|
|
1614
1580
|
}
|
|
1615
|
-
var init_parsed_image_api = __esm({
|
|
1616
|
-
"../images/src/lib/category-api/parsed-image-api.ts"() {
|
|
1617
|
-
}
|
|
1618
|
-
});
|
|
1619
1581
|
|
|
1620
1582
|
// ../images/src/lib/parsers/svg-utils.ts
|
|
1583
|
+
var SVG_DATA_URL_PATTERN = /^data:image\/svg\+xml/;
|
|
1584
|
+
var SVG_URL_PATTERN = /\.svg((\?|#).*)?$/;
|
|
1621
1585
|
function isSVG(url) {
|
|
1622
1586
|
return url && (SVG_DATA_URL_PATTERN.test(url) || SVG_URL_PATTERN.test(url));
|
|
1623
1587
|
}
|
|
@@ -1643,13 +1607,6 @@
|
|
|
1643
1607
|
}
|
|
1644
1608
|
return new Blob([new Uint8Array(arrayBuffer)]);
|
|
1645
1609
|
}
|
|
1646
|
-
var SVG_DATA_URL_PATTERN, SVG_URL_PATTERN;
|
|
1647
|
-
var init_svg_utils = __esm({
|
|
1648
|
-
"../images/src/lib/parsers/svg-utils.ts"() {
|
|
1649
|
-
SVG_DATA_URL_PATTERN = /^data:image\/svg\+xml/;
|
|
1650
|
-
SVG_URL_PATTERN = /\.svg((\?|#).*)?$/;
|
|
1651
|
-
}
|
|
1652
|
-
});
|
|
1653
1610
|
|
|
1654
1611
|
// ../images/src/lib/parsers/parse-to-image.ts
|
|
1655
1612
|
async function parseToImage(arrayBuffer, options, url) {
|
|
@@ -1680,13 +1637,10 @@
|
|
|
1680
1637
|
}
|
|
1681
1638
|
});
|
|
1682
1639
|
}
|
|
1683
|
-
var init_parse_to_image = __esm({
|
|
1684
|
-
"../images/src/lib/parsers/parse-to-image.ts"() {
|
|
1685
|
-
init_svg_utils();
|
|
1686
|
-
}
|
|
1687
|
-
});
|
|
1688
1640
|
|
|
1689
1641
|
// ../images/src/lib/parsers/parse-to-image-bitmap.ts
|
|
1642
|
+
var EMPTY_OBJECT = {};
|
|
1643
|
+
var imagebitmapOptionsSupported = true;
|
|
1690
1644
|
async function parseToImageBitmap(arrayBuffer, options, url) {
|
|
1691
1645
|
let blob;
|
|
1692
1646
|
if (isSVG(url)) {
|
|
@@ -1718,15 +1672,6 @@
|
|
|
1718
1672
|
}
|
|
1719
1673
|
return true;
|
|
1720
1674
|
}
|
|
1721
|
-
var EMPTY_OBJECT, imagebitmapOptionsSupported;
|
|
1722
|
-
var init_parse_to_image_bitmap = __esm({
|
|
1723
|
-
"../images/src/lib/parsers/parse-to-image-bitmap.ts"() {
|
|
1724
|
-
init_svg_utils();
|
|
1725
|
-
init_parse_to_image();
|
|
1726
|
-
EMPTY_OBJECT = {};
|
|
1727
|
-
imagebitmapOptionsSupported = true;
|
|
1728
|
-
}
|
|
1729
|
-
});
|
|
1730
1675
|
|
|
1731
1676
|
// ../images/src/lib/category-api/parse-isobmff-binary.ts
|
|
1732
1677
|
function getISOBMFFMediaType(buffer) {
|
|
@@ -1743,7 +1688,10 @@
|
|
|
1743
1688
|
switch (brandMajor) {
|
|
1744
1689
|
case "avif":
|
|
1745
1690
|
case "avis":
|
|
1746
|
-
return {
|
|
1691
|
+
return {
|
|
1692
|
+
extension: "avif",
|
|
1693
|
+
mimeType: "image/avif"
|
|
1694
|
+
};
|
|
1747
1695
|
default:
|
|
1748
1696
|
return null;
|
|
1749
1697
|
}
|
|
@@ -1763,12 +1711,10 @@
|
|
|
1763
1711
|
}
|
|
1764
1712
|
return true;
|
|
1765
1713
|
}
|
|
1766
|
-
var init_parse_isobmff_binary = __esm({
|
|
1767
|
-
"../images/src/lib/category-api/parse-isobmff-binary.ts"() {
|
|
1768
|
-
}
|
|
1769
|
-
});
|
|
1770
1714
|
|
|
1771
1715
|
// ../images/src/lib/category-api/binary-image-api.ts
|
|
1716
|
+
var BIG_ENDIAN = false;
|
|
1717
|
+
var LITTLE_ENDIAN = true;
|
|
1772
1718
|
function getBinaryImageMetadata(binaryData) {
|
|
1773
1719
|
const dataView = toDataView(binaryData);
|
|
1774
1720
|
return getPngMetadata(dataView) || getJpegMetadata(dataView) || getGifMetadata(dataView) || getBmpMetadata(dataView) || getISOBMFFMetadata(dataView);
|
|
@@ -1781,6 +1727,7 @@
|
|
|
1781
1727
|
}
|
|
1782
1728
|
return {
|
|
1783
1729
|
mimeType: mediaType.mimeType,
|
|
1730
|
+
// TODO - decode width and height
|
|
1784
1731
|
width: 0,
|
|
1785
1732
|
height: 0
|
|
1786
1733
|
};
|
|
@@ -1827,7 +1774,10 @@
|
|
|
1827
1774
|
if (!isJpeg) {
|
|
1828
1775
|
return null;
|
|
1829
1776
|
}
|
|
1830
|
-
const {
|
|
1777
|
+
const {
|
|
1778
|
+
tableMarkers,
|
|
1779
|
+
sofMarkers
|
|
1780
|
+
} = getJpegMarkers();
|
|
1831
1781
|
let i2 = 2;
|
|
1832
1782
|
while (i2 + 9 < dataView.byteLength) {
|
|
1833
1783
|
const marker = dataView.getUint16(i2, BIG_ENDIAN);
|
|
@@ -1835,7 +1785,9 @@
|
|
|
1835
1785
|
return {
|
|
1836
1786
|
mimeType: "image/jpeg",
|
|
1837
1787
|
height: dataView.getUint16(i2 + 5, BIG_ENDIAN),
|
|
1788
|
+
// Number of lines
|
|
1838
1789
|
width: dataView.getUint16(i2 + 7, BIG_ENDIAN)
|
|
1790
|
+
// Number of pixels per line
|
|
1839
1791
|
};
|
|
1840
1792
|
}
|
|
1841
1793
|
if (!tableMarkers.has(marker)) {
|
|
@@ -1847,27 +1799,15 @@
|
|
|
1847
1799
|
return null;
|
|
1848
1800
|
}
|
|
1849
1801
|
function getJpegMarkers() {
|
|
1850
|
-
const tableMarkers = new Set([65499, 65476, 65484, 65501, 65534]);
|
|
1802
|
+
const tableMarkers = /* @__PURE__ */ new Set([65499, 65476, 65484, 65501, 65534]);
|
|
1851
1803
|
for (let i2 = 65504; i2 < 65520; ++i2) {
|
|
1852
1804
|
tableMarkers.add(i2);
|
|
1853
1805
|
}
|
|
1854
|
-
const sofMarkers = new Set([
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
65477,
|
|
1860
|
-
65478,
|
|
1861
|
-
65479,
|
|
1862
|
-
65481,
|
|
1863
|
-
65482,
|
|
1864
|
-
65483,
|
|
1865
|
-
65485,
|
|
1866
|
-
65486,
|
|
1867
|
-
65487,
|
|
1868
|
-
65502
|
|
1869
|
-
]);
|
|
1870
|
-
return { tableMarkers, sofMarkers };
|
|
1806
|
+
const sofMarkers = /* @__PURE__ */ new Set([65472, 65473, 65474, 65475, 65477, 65478, 65479, 65481, 65482, 65483, 65485, 65486, 65487, 65502]);
|
|
1807
|
+
return {
|
|
1808
|
+
tableMarkers,
|
|
1809
|
+
sofMarkers
|
|
1810
|
+
};
|
|
1871
1811
|
}
|
|
1872
1812
|
function toDataView(data) {
|
|
1873
1813
|
if (data instanceof DataView) {
|
|
@@ -1881,35 +1821,25 @@
|
|
|
1881
1821
|
}
|
|
1882
1822
|
throw new Error("toDataView");
|
|
1883
1823
|
}
|
|
1884
|
-
var BIG_ENDIAN, LITTLE_ENDIAN;
|
|
1885
|
-
var init_binary_image_api = __esm({
|
|
1886
|
-
"../images/src/lib/category-api/binary-image-api.ts"() {
|
|
1887
|
-
init_parse_isobmff_binary();
|
|
1888
|
-
BIG_ENDIAN = false;
|
|
1889
|
-
LITTLE_ENDIAN = true;
|
|
1890
|
-
}
|
|
1891
|
-
});
|
|
1892
1824
|
|
|
1893
1825
|
// ../images/src/lib/parsers/parse-to-node-image.ts
|
|
1894
1826
|
async function parseToNodeImage(arrayBuffer, options) {
|
|
1895
|
-
const {
|
|
1827
|
+
const {
|
|
1828
|
+
mimeType
|
|
1829
|
+
} = getBinaryImageMetadata(arrayBuffer) || {};
|
|
1896
1830
|
const _parseImageNode2 = globalThis._parseImageNode;
|
|
1897
1831
|
assert2(_parseImageNode2);
|
|
1898
1832
|
return await _parseImageNode2(arrayBuffer, mimeType);
|
|
1899
1833
|
}
|
|
1900
|
-
var init_parse_to_node_image = __esm({
|
|
1901
|
-
"../images/src/lib/parsers/parse-to-node-image.ts"() {
|
|
1902
|
-
init_src2();
|
|
1903
|
-
init_binary_image_api();
|
|
1904
|
-
}
|
|
1905
|
-
});
|
|
1906
1834
|
|
|
1907
1835
|
// ../images/src/lib/parsers/parse-image.ts
|
|
1908
1836
|
async function parseImage(arrayBuffer, options, context) {
|
|
1909
1837
|
options = options || {};
|
|
1910
1838
|
const imageOptions = options.image || {};
|
|
1911
1839
|
const imageType = imageOptions.type || "auto";
|
|
1912
|
-
const {
|
|
1840
|
+
const {
|
|
1841
|
+
url
|
|
1842
|
+
} = context || {};
|
|
1913
1843
|
const loadType = getLoadableImageType(imageType);
|
|
1914
1844
|
let image;
|
|
1915
1845
|
switch (loadType) {
|
|
@@ -1940,79 +1870,46 @@
|
|
|
1940
1870
|
return type;
|
|
1941
1871
|
}
|
|
1942
1872
|
}
|
|
1943
|
-
var init_parse_image = __esm({
|
|
1944
|
-
"../images/src/lib/parsers/parse-image.ts"() {
|
|
1945
|
-
init_src2();
|
|
1946
|
-
init_image_type();
|
|
1947
|
-
init_parsed_image_api();
|
|
1948
|
-
init_parse_to_image();
|
|
1949
|
-
init_parse_to_image_bitmap();
|
|
1950
|
-
init_parse_to_node_image();
|
|
1951
|
-
}
|
|
1952
|
-
});
|
|
1953
1873
|
|
|
1954
1874
|
// ../images/src/image-loader.ts
|
|
1955
|
-
var EXTENSIONS,
|
|
1956
|
-
var
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
};
|
|
1978
|
-
ImageLoader = {
|
|
1979
|
-
id: "image",
|
|
1980
|
-
module: "images",
|
|
1981
|
-
name: "Images",
|
|
1982
|
-
version: VERSION3,
|
|
1983
|
-
mimeTypes: MIME_TYPES,
|
|
1984
|
-
extensions: EXTENSIONS,
|
|
1985
|
-
parse: parseImage,
|
|
1986
|
-
tests: [(arrayBuffer) => Boolean(getBinaryImageMetadata(new DataView(arrayBuffer)))],
|
|
1987
|
-
options: DEFAULT_IMAGE_LOADER_OPTIONS
|
|
1988
|
-
};
|
|
1989
|
-
}
|
|
1990
|
-
});
|
|
1991
|
-
|
|
1992
|
-
// ../images/src/index.ts
|
|
1993
|
-
var init_src3 = __esm({
|
|
1994
|
-
"../images/src/index.ts"() {
|
|
1995
|
-
init_image_loader();
|
|
1996
|
-
init_parsed_image_api();
|
|
1997
|
-
}
|
|
1998
|
-
});
|
|
1875
|
+
var EXTENSIONS = ["png", "jpg", "jpeg", "gif", "webp", "bmp", "ico", "svg", "avif"];
|
|
1876
|
+
var MIME_TYPES = ["image/png", "image/jpeg", "image/gif", "image/webp", "image/avif", "image/bmp", "image/vnd.microsoft.icon", "image/svg+xml"];
|
|
1877
|
+
var DEFAULT_IMAGE_LOADER_OPTIONS = {
|
|
1878
|
+
image: {
|
|
1879
|
+
type: "auto",
|
|
1880
|
+
decode: true
|
|
1881
|
+
// if format is HTML
|
|
1882
|
+
}
|
|
1883
|
+
// imagebitmap: {} - passes (platform dependent) parameters to ImageBitmap constructor
|
|
1884
|
+
};
|
|
1885
|
+
var ImageLoader = {
|
|
1886
|
+
id: "image",
|
|
1887
|
+
module: "images",
|
|
1888
|
+
name: "Images",
|
|
1889
|
+
version: VERSION3,
|
|
1890
|
+
mimeTypes: MIME_TYPES,
|
|
1891
|
+
extensions: EXTENSIONS,
|
|
1892
|
+
parse: parseImage,
|
|
1893
|
+
// TODO: byteOffset, byteLength;
|
|
1894
|
+
tests: [(arrayBuffer) => Boolean(getBinaryImageMetadata(new DataView(arrayBuffer)))],
|
|
1895
|
+
options: DEFAULT_IMAGE_LOADER_OPTIONS
|
|
1896
|
+
};
|
|
1999
1897
|
|
|
2000
1898
|
// src/lib/texture-api/generate-url.ts
|
|
2001
1899
|
function generateUrl(getUrl, options, urlOptions) {
|
|
2002
|
-
let url = typeof getUrl === "function" ? getUrl({
|
|
1900
|
+
let url = typeof getUrl === "function" ? getUrl({
|
|
1901
|
+
...options,
|
|
1902
|
+
...urlOptions
|
|
1903
|
+
}) : getUrl;
|
|
2003
1904
|
const baseUrl = options.baseUrl;
|
|
2004
1905
|
if (baseUrl) {
|
|
2005
1906
|
url = baseUrl[baseUrl.length - 1] === "/" ? `${baseUrl}${url}` : `${baseUrl}/${url}`;
|
|
2006
1907
|
}
|
|
2007
1908
|
return resolvePath(url);
|
|
2008
1909
|
}
|
|
2009
|
-
var init_generate_url = __esm({
|
|
2010
|
-
"src/lib/texture-api/generate-url.ts"() {
|
|
2011
|
-
init_src2();
|
|
2012
|
-
}
|
|
2013
|
-
});
|
|
2014
1910
|
|
|
2015
1911
|
// src/lib/texture-api/async-deep-map.ts
|
|
1912
|
+
var isObject = (value) => value && typeof value === "object";
|
|
2016
1913
|
async function asyncDeepMap(tree, func, options = {}) {
|
|
2017
1914
|
return await mapSubtree(tree, func, options);
|
|
2018
1915
|
}
|
|
@@ -2043,12 +1940,6 @@
|
|
|
2043
1940
|
const promises = urlArray.map((url) => mapSubtree(url, func, options));
|
|
2044
1941
|
return await Promise.all(promises);
|
|
2045
1942
|
}
|
|
2046
|
-
var isObject;
|
|
2047
|
-
var init_async_deep_map = __esm({
|
|
2048
|
-
"src/lib/texture-api/async-deep-map.ts"() {
|
|
2049
|
-
isObject = (value) => value && typeof value === "object";
|
|
2050
|
-
}
|
|
2051
|
-
});
|
|
2052
1943
|
|
|
2053
1944
|
// src/lib/texture-api/deep-load.ts
|
|
2054
1945
|
async function deepLoad(urlTree, load, options) {
|
|
@@ -2059,11 +1950,6 @@
|
|
|
2059
1950
|
const arrayBuffer = await response.arrayBuffer();
|
|
2060
1951
|
return await load(arrayBuffer, options);
|
|
2061
1952
|
}
|
|
2062
|
-
var init_deep_load = __esm({
|
|
2063
|
-
"src/lib/texture-api/deep-load.ts"() {
|
|
2064
|
-
init_async_deep_map();
|
|
2065
|
-
}
|
|
2066
|
-
});
|
|
2067
1953
|
|
|
2068
1954
|
// src/lib/texture-api/load-image.ts
|
|
2069
1955
|
async function loadImageTexture(getUrl, options = {}) {
|
|
@@ -2077,15 +1963,27 @@
|
|
|
2077
1963
|
async function getMipmappedImageUrls(getUrl, mipLevels, options, urlOptions) {
|
|
2078
1964
|
const urls = [];
|
|
2079
1965
|
if (mipLevels === "auto") {
|
|
2080
|
-
const url = generateUrl(getUrl, options, {
|
|
1966
|
+
const url = generateUrl(getUrl, options, {
|
|
1967
|
+
...urlOptions,
|
|
1968
|
+
lod: 0
|
|
1969
|
+
});
|
|
2081
1970
|
const image = await shallowLoad(url, ImageLoader.parse, options);
|
|
2082
|
-
const {
|
|
2083
|
-
|
|
1971
|
+
const {
|
|
1972
|
+
width,
|
|
1973
|
+
height
|
|
1974
|
+
} = getImageSize(image);
|
|
1975
|
+
mipLevels = getMipLevels({
|
|
1976
|
+
width,
|
|
1977
|
+
height
|
|
1978
|
+
});
|
|
2084
1979
|
urls.push(url);
|
|
2085
1980
|
}
|
|
2086
1981
|
assert2(mipLevels > 0);
|
|
2087
1982
|
for (let mipLevel = urls.length; mipLevel < mipLevels; ++mipLevel) {
|
|
2088
|
-
const url = generateUrl(getUrl, options, {
|
|
1983
|
+
const url = generateUrl(getUrl, options, {
|
|
1984
|
+
...urlOptions,
|
|
1985
|
+
lod: mipLevel
|
|
1986
|
+
});
|
|
2089
1987
|
urls.push(url);
|
|
2090
1988
|
}
|
|
2091
1989
|
return urls;
|
|
@@ -2093,14 +1991,6 @@
|
|
|
2093
1991
|
function getMipLevels(size) {
|
|
2094
1992
|
return 1 + Math.floor(Math.log2(Math.max(size.width, size.height)));
|
|
2095
1993
|
}
|
|
2096
|
-
var init_load_image = __esm({
|
|
2097
|
-
"src/lib/texture-api/load-image.ts"() {
|
|
2098
|
-
init_src2();
|
|
2099
|
-
init_src3();
|
|
2100
|
-
init_generate_url();
|
|
2101
|
-
init_deep_load();
|
|
2102
|
-
}
|
|
2103
|
-
});
|
|
2104
1994
|
|
|
2105
1995
|
// src/lib/texture-api/load-image-array.ts
|
|
2106
1996
|
async function loadImageTextureArray(count, getUrl, options = {}) {
|
|
@@ -2110,27 +2000,62 @@
|
|
|
2110
2000
|
async function getImageArrayUrls(count, getUrl, options = {}) {
|
|
2111
2001
|
const promises = [];
|
|
2112
2002
|
for (let index = 0; index < count; index++) {
|
|
2113
|
-
const promise = getImageUrls(getUrl, options, {
|
|
2003
|
+
const promise = getImageUrls(getUrl, options, {
|
|
2004
|
+
index
|
|
2005
|
+
});
|
|
2114
2006
|
promises.push(promise);
|
|
2115
2007
|
}
|
|
2116
2008
|
return await Promise.all(promises);
|
|
2117
2009
|
}
|
|
2118
|
-
var init_load_image_array = __esm({
|
|
2119
|
-
"src/lib/texture-api/load-image-array.ts"() {
|
|
2120
|
-
init_src3();
|
|
2121
|
-
init_load_image();
|
|
2122
|
-
init_deep_load();
|
|
2123
|
-
}
|
|
2124
|
-
});
|
|
2125
2010
|
|
|
2126
2011
|
// src/lib/texture-api/load-image-cube.ts
|
|
2012
|
+
var GL_TEXTURE_CUBE_MAP_POSITIVE_X = 34069;
|
|
2013
|
+
var GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 34070;
|
|
2014
|
+
var GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 34071;
|
|
2015
|
+
var GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072;
|
|
2016
|
+
var GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 34073;
|
|
2017
|
+
var GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074;
|
|
2018
|
+
var CUBE_FACES = [{
|
|
2019
|
+
face: GL_TEXTURE_CUBE_MAP_POSITIVE_X,
|
|
2020
|
+
direction: "right",
|
|
2021
|
+
axis: "x",
|
|
2022
|
+
sign: "positive"
|
|
2023
|
+
}, {
|
|
2024
|
+
face: GL_TEXTURE_CUBE_MAP_NEGATIVE_X,
|
|
2025
|
+
direction: "left",
|
|
2026
|
+
axis: "x",
|
|
2027
|
+
sign: "negative"
|
|
2028
|
+
}, {
|
|
2029
|
+
face: GL_TEXTURE_CUBE_MAP_POSITIVE_Y,
|
|
2030
|
+
direction: "top",
|
|
2031
|
+
axis: "y",
|
|
2032
|
+
sign: "positive"
|
|
2033
|
+
}, {
|
|
2034
|
+
face: GL_TEXTURE_CUBE_MAP_NEGATIVE_Y,
|
|
2035
|
+
direction: "bottom",
|
|
2036
|
+
axis: "y",
|
|
2037
|
+
sign: "negative"
|
|
2038
|
+
}, {
|
|
2039
|
+
face: GL_TEXTURE_CUBE_MAP_POSITIVE_Z,
|
|
2040
|
+
direction: "front",
|
|
2041
|
+
axis: "z",
|
|
2042
|
+
sign: "positive"
|
|
2043
|
+
}, {
|
|
2044
|
+
face: GL_TEXTURE_CUBE_MAP_NEGATIVE_Z,
|
|
2045
|
+
direction: "back",
|
|
2046
|
+
axis: "z",
|
|
2047
|
+
sign: "negative"
|
|
2048
|
+
}];
|
|
2127
2049
|
async function getImageCubeUrls(getUrl, options) {
|
|
2128
2050
|
const urls = {};
|
|
2129
2051
|
const promises = [];
|
|
2130
2052
|
let index = 0;
|
|
2131
2053
|
for (let i2 = 0; i2 < CUBE_FACES.length; ++i2) {
|
|
2132
2054
|
const face = CUBE_FACES[index];
|
|
2133
|
-
const promise = getImageUrls(getUrl, options, {
|
|
2055
|
+
const promise = getImageUrls(getUrl, options, {
|
|
2056
|
+
...face,
|
|
2057
|
+
index: index++
|
|
2058
|
+
}).then((url) => {
|
|
2134
2059
|
urls[face.face] = url;
|
|
2135
2060
|
});
|
|
2136
2061
|
promises.push(promise);
|
|
@@ -2142,95 +2067,23 @@
|
|
|
2142
2067
|
const urls = await getImageCubeUrls(getUrl, options);
|
|
2143
2068
|
return await deepLoad(urls, ImageLoader.parse, options);
|
|
2144
2069
|
}
|
|
2145
|
-
var GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, CUBE_FACES;
|
|
2146
|
-
var init_load_image_cube = __esm({
|
|
2147
|
-
"src/lib/texture-api/load-image-cube.ts"() {
|
|
2148
|
-
init_src3();
|
|
2149
|
-
init_load_image();
|
|
2150
|
-
init_deep_load();
|
|
2151
|
-
GL_TEXTURE_CUBE_MAP_POSITIVE_X = 34069;
|
|
2152
|
-
GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 34070;
|
|
2153
|
-
GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 34071;
|
|
2154
|
-
GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072;
|
|
2155
|
-
GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 34073;
|
|
2156
|
-
GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074;
|
|
2157
|
-
CUBE_FACES = [
|
|
2158
|
-
{ face: GL_TEXTURE_CUBE_MAP_POSITIVE_X, direction: "right", axis: "x", sign: "positive" },
|
|
2159
|
-
{ face: GL_TEXTURE_CUBE_MAP_NEGATIVE_X, direction: "left", axis: "x", sign: "negative" },
|
|
2160
|
-
{ face: GL_TEXTURE_CUBE_MAP_POSITIVE_Y, direction: "top", axis: "y", sign: "positive" },
|
|
2161
|
-
{ face: GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, direction: "bottom", axis: "y", sign: "negative" },
|
|
2162
|
-
{ face: GL_TEXTURE_CUBE_MAP_POSITIVE_Z, direction: "front", axis: "z", sign: "positive" },
|
|
2163
|
-
{ face: GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, direction: "back", axis: "z", sign: "negative" }
|
|
2164
|
-
];
|
|
2165
|
-
}
|
|
2166
|
-
});
|
|
2167
2070
|
|
|
2168
2071
|
// src/index.ts
|
|
2169
|
-
var
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
|
|
2176
|
-
|
|
2177
|
-
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
KTX2BasisWriter: () => KTX2BasisWriter,
|
|
2182
|
-
KTX2BasisWriterWorker: () => KTX2BasisWriterWorker,
|
|
2183
|
-
NPYLoader: () => NPYLoader,
|
|
2184
|
-
NPYWorkerLoader: () => NPYWorkerLoader,
|
|
2185
|
-
getSupportedGPUTextureFormats: () => getSupportedGPUTextureFormats,
|
|
2186
|
-
loadImageTexture: () => loadImageTexture,
|
|
2187
|
-
loadImageTextureArray: () => loadImageTextureArray,
|
|
2188
|
-
loadImageTextureCube: () => loadImageTextureCube,
|
|
2189
|
-
selectSupportedBasisFormat: () => selectSupportedBasisFormat
|
|
2190
|
-
});
|
|
2191
|
-
var KTX2BasisWriterWorker;
|
|
2192
|
-
var init_src4 = __esm({
|
|
2193
|
-
"src/index.ts"() {
|
|
2194
|
-
init_version();
|
|
2195
|
-
init_basis_loader();
|
|
2196
|
-
init_compressed_texture_loader();
|
|
2197
|
-
init_crunch_loader();
|
|
2198
|
-
init_npy_loader();
|
|
2199
|
-
init_basis_module_loader();
|
|
2200
|
-
init_crunch_module_loader();
|
|
2201
|
-
init_compressed_texture_writer();
|
|
2202
|
-
init_ktx2_basis_writer();
|
|
2203
|
-
init_load_image();
|
|
2204
|
-
init_load_image_array();
|
|
2205
|
-
init_load_image_cube();
|
|
2206
|
-
init_gl_extensions();
|
|
2207
|
-
init_parse_basis();
|
|
2208
|
-
init_texture_formats();
|
|
2209
|
-
init_crunch_loader();
|
|
2210
|
-
KTX2BasisWriterWorker = {
|
|
2211
|
-
name: "Basis Universal Supercompressed GPU Texture",
|
|
2212
|
-
id: "ktx2-basis-writer",
|
|
2213
|
-
module: "textures",
|
|
2214
|
-
version: VERSION,
|
|
2215
|
-
extensions: ["ktx2"],
|
|
2216
|
-
worker: true,
|
|
2217
|
-
options: {
|
|
2218
|
-
useSRGB: false,
|
|
2219
|
-
qualityLevel: 10,
|
|
2220
|
-
encodeUASTC: false,
|
|
2221
|
-
mipmaps: false
|
|
2222
|
-
}
|
|
2223
|
-
};
|
|
2072
|
+
var KTX2BasisWriterWorker = {
|
|
2073
|
+
name: "Basis Universal Supercompressed GPU Texture",
|
|
2074
|
+
id: "ktx2-basis-writer",
|
|
2075
|
+
module: "textures",
|
|
2076
|
+
version: VERSION,
|
|
2077
|
+
extensions: ["ktx2"],
|
|
2078
|
+
worker: true,
|
|
2079
|
+
options: {
|
|
2080
|
+
useSRGB: false,
|
|
2081
|
+
qualityLevel: 10,
|
|
2082
|
+
encodeUASTC: false,
|
|
2083
|
+
mipmaps: false
|
|
2224
2084
|
}
|
|
2225
|
-
}
|
|
2226
|
-
|
|
2227
|
-
// src/bundle.ts
|
|
2228
|
-
var require_bundle = __commonJS({
|
|
2229
|
-
"src/bundle.ts"(exports, module) {
|
|
2230
|
-
var moduleExports = (init_src4(), src_exports);
|
|
2231
|
-
globalThis.loaders = globalThis.loaders || {};
|
|
2232
|
-
module.exports = Object.assign(globalThis.loaders, moduleExports);
|
|
2233
|
-
}
|
|
2234
|
-
});
|
|
2235
|
-
require_bundle();
|
|
2085
|
+
};
|
|
2086
|
+
return __toCommonJS(src_exports);
|
|
2236
2087
|
})();
|
|
2088
|
+
return __exports__;
|
|
2089
|
+
});
|