@loaders.gl/textures 4.0.0-beta.2 → 4.0.0-beta.4
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 +5365 -3586
- package/dist/basis-worker.js +106 -32
- 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 +159 -35
- 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 +61 -27
- package/dist/{dist.min.js → dist.dev.js} +827 -1112
- 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 +5044 -3316
- package/dist/ktx2-basis-writer-worker.js +53 -27
- 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
package/dist/basis-worker.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
(() => {
|
|
2
3
|
var __create = Object.create;
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
@@ -5,25 +6,30 @@
|
|
|
5
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
7
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
9
9
|
var __commonJS = (cb, mod) => function __require() {
|
|
10
|
-
return mod || (0, cb[
|
|
10
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
11
11
|
};
|
|
12
|
-
var
|
|
13
|
-
if (
|
|
14
|
-
for (let key of __getOwnPropNames(
|
|
15
|
-
if (!__hasOwnProp.call(
|
|
16
|
-
__defProp(
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
17
|
}
|
|
18
|
-
return
|
|
19
|
-
};
|
|
20
|
-
var __toModule = (module) => {
|
|
21
|
-
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);
|
|
18
|
+
return to;
|
|
22
19
|
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
23
28
|
|
|
24
29
|
// (disabled):../worker-utils/src/lib/node/require-utils.node
|
|
25
30
|
var require_require_utils = __commonJS({
|
|
26
31
|
"(disabled):../worker-utils/src/lib/node/require-utils.node"() {
|
|
32
|
+
"use strict";
|
|
27
33
|
}
|
|
28
34
|
});
|
|
29
35
|
|
|
@@ -32,10 +38,12 @@
|
|
|
32
38
|
if (!globalThis._loadersgl_?.version) {
|
|
33
39
|
globalThis._loadersgl_ = globalThis._loadersgl_ || {};
|
|
34
40
|
if (false) {
|
|
35
|
-
console.error(
|
|
41
|
+
console.error(
|
|
42
|
+
"loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN."
|
|
43
|
+
);
|
|
36
44
|
globalThis._loadersgl_.version = NPM_TAG;
|
|
37
45
|
} else {
|
|
38
|
-
globalThis._loadersgl_.version = "4.0.0-beta.
|
|
46
|
+
globalThis._loadersgl_.version = "4.0.0-beta.4";
|
|
39
47
|
}
|
|
40
48
|
}
|
|
41
49
|
return globalThis._loadersgl_.version;
|
|
@@ -60,7 +68,10 @@
|
|
|
60
68
|
var window_ = globals.window || globals.self || globals.global || {};
|
|
61
69
|
var global_ = globals.global || globals.self || globals.window || {};
|
|
62
70
|
var document_ = globals.document || {};
|
|
63
|
-
var isBrowser =
|
|
71
|
+
var isBrowser = (
|
|
72
|
+
// @ts-ignore process.browser
|
|
73
|
+
typeof process !== "object" || String(process) !== "[object process]" || process.browser
|
|
74
|
+
);
|
|
64
75
|
var isWorker = typeof importScripts === "function";
|
|
65
76
|
var isMobile = typeof window !== "undefined" && typeof window.orientation !== "undefined";
|
|
66
77
|
var matches = typeof process !== "undefined" && process.version && /v([0-9]*)/.exec(process.version);
|
|
@@ -68,7 +79,7 @@
|
|
|
68
79
|
|
|
69
80
|
// ../worker-utils/src/lib/worker-utils/get-transfer-list.ts
|
|
70
81
|
function getTransferList(object, recursive = true, transfers) {
|
|
71
|
-
const transfersSet = transfers || new Set();
|
|
82
|
+
const transfersSet = transfers || /* @__PURE__ */ new Set();
|
|
72
83
|
if (!object) {
|
|
73
84
|
} else if (isTransferable(object)) {
|
|
74
85
|
transfersSet.add(object);
|
|
@@ -111,11 +122,15 @@
|
|
|
111
122
|
}
|
|
112
123
|
return parentPort;
|
|
113
124
|
}
|
|
114
|
-
var onMessageWrapperMap = new Map();
|
|
125
|
+
var onMessageWrapperMap = /* @__PURE__ */ new Map();
|
|
115
126
|
var WorkerBody = class {
|
|
127
|
+
/** Check that we are actually in a worker thread */
|
|
116
128
|
static inWorkerThread() {
|
|
117
129
|
return typeof self !== "undefined" || Boolean(getParentPort());
|
|
118
130
|
}
|
|
131
|
+
/*
|
|
132
|
+
* (type: WorkerMessageType, payload: WorkerMessagePayload) => any
|
|
133
|
+
*/
|
|
119
134
|
static set onmessage(onMessage) {
|
|
120
135
|
function handleMessage(message) {
|
|
121
136
|
const parentPort3 = getParentPort();
|
|
@@ -159,6 +174,11 @@
|
|
|
159
174
|
globalThis.removeEventListener("message", onMessageWrapper);
|
|
160
175
|
}
|
|
161
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* Send a message from a worker to creating thread (main thread)
|
|
179
|
+
* @param type
|
|
180
|
+
* @param payload
|
|
181
|
+
*/
|
|
162
182
|
static postMessage(type, payload) {
|
|
163
183
|
const data = { source: "loaders.gl", type, payload };
|
|
164
184
|
const transferList = getTransferList(payload);
|
|
@@ -176,13 +196,14 @@
|
|
|
176
196
|
}
|
|
177
197
|
|
|
178
198
|
// ../worker-utils/src/lib/library-utils/library-utils.ts
|
|
179
|
-
var node =
|
|
199
|
+
var node = __toESM(require_require_utils(), 1);
|
|
180
200
|
var loadLibraryPromises = {};
|
|
181
201
|
async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
|
|
182
202
|
if (moduleName) {
|
|
183
203
|
libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
|
|
184
204
|
}
|
|
185
|
-
loadLibraryPromises[libraryUrl] =
|
|
205
|
+
loadLibraryPromises[libraryUrl] = // eslint-disable-next-line @typescript-eslint/no-misused-promises
|
|
206
|
+
loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
|
|
186
207
|
return await loadLibraryPromises[libraryUrl];
|
|
187
208
|
}
|
|
188
209
|
function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
|
|
@@ -212,8 +233,9 @@
|
|
|
212
233
|
}
|
|
213
234
|
if (!isBrowser) {
|
|
214
235
|
try {
|
|
215
|
-
return node &&
|
|
216
|
-
} catch {
|
|
236
|
+
return node && void 0 && await (void 0)(libraryUrl);
|
|
237
|
+
} catch (error) {
|
|
238
|
+
console.error(error);
|
|
217
239
|
return null;
|
|
218
240
|
}
|
|
219
241
|
}
|
|
@@ -225,10 +247,10 @@
|
|
|
225
247
|
}
|
|
226
248
|
function loadLibraryFromString(scriptSource, id) {
|
|
227
249
|
if (!isBrowser) {
|
|
228
|
-
return
|
|
250
|
+
return void 0 && (void 0)(scriptSource, id);
|
|
229
251
|
}
|
|
230
252
|
if (isWorker) {
|
|
231
|
-
eval.call(
|
|
253
|
+
eval.call(globalThis, scriptSource);
|
|
232
254
|
return null;
|
|
233
255
|
}
|
|
234
256
|
const script = document.createElement("script");
|
|
@@ -242,18 +264,18 @@
|
|
|
242
264
|
return null;
|
|
243
265
|
}
|
|
244
266
|
async function loadAsArrayBuffer(url) {
|
|
245
|
-
if (!
|
|
267
|
+
if (!void 0 || url.startsWith("http")) {
|
|
246
268
|
const response = await fetch(url);
|
|
247
269
|
return await response.arrayBuffer();
|
|
248
270
|
}
|
|
249
|
-
return await
|
|
271
|
+
return await (void 0)(url);
|
|
250
272
|
}
|
|
251
273
|
async function loadAsText(url) {
|
|
252
|
-
if (!
|
|
274
|
+
if (!void 0 || url.startsWith("http")) {
|
|
253
275
|
const response = await fetch(url);
|
|
254
276
|
return await response.text();
|
|
255
277
|
}
|
|
256
|
-
return await
|
|
278
|
+
return await (void 0)(url);
|
|
257
279
|
}
|
|
258
280
|
|
|
259
281
|
// ../loader-utils/src/lib/worker-loader-utils/create-loader-worker.ts
|
|
@@ -271,6 +293,7 @@
|
|
|
271
293
|
loader,
|
|
272
294
|
arrayBuffer: input,
|
|
273
295
|
options,
|
|
296
|
+
// @ts-expect-error fetch missing
|
|
274
297
|
context: {
|
|
275
298
|
...context,
|
|
276
299
|
_parse: parseOnMainThread
|
|
@@ -337,13 +360,17 @@
|
|
|
337
360
|
}
|
|
338
361
|
|
|
339
362
|
// src/lib/utils/version.ts
|
|
340
|
-
var VERSION2 = true ? "4.0.0-beta.
|
|
363
|
+
var VERSION2 = true ? "4.0.0-beta.4" : "beta";
|
|
341
364
|
|
|
342
365
|
// src/lib/parsers/basis-module-loader.ts
|
|
343
366
|
var BASIS_EXTERNAL_LIBRARIES = {
|
|
367
|
+
/** Basis transcoder, javascript wrapper part */
|
|
344
368
|
TRANSCODER: "basis_transcoder.js",
|
|
369
|
+
/** Basis transcoder, compiled web assembly part */
|
|
345
370
|
TRANSCODER_WASM: "basis_transcoder.wasm",
|
|
371
|
+
/** Basis encoder, javascript wrapper part */
|
|
346
372
|
ENCODER: "basis_encoder.js",
|
|
373
|
+
/** Basis encoder, compiled web assembly part */
|
|
347
374
|
ENCODER_WASM: "basis_encoder.wasm"
|
|
348
375
|
};
|
|
349
376
|
var loadBasisTranscoderPromise;
|
|
@@ -413,10 +440,12 @@
|
|
|
413
440
|
|
|
414
441
|
// src/lib/gl-extensions.ts
|
|
415
442
|
var GL_EXTENSIONS_CONSTANTS = {
|
|
443
|
+
// WEBGL_compressed_texture_s3tc
|
|
416
444
|
COMPRESSED_RGB_S3TC_DXT1_EXT: 33776,
|
|
417
445
|
COMPRESSED_RGBA_S3TC_DXT1_EXT: 33777,
|
|
418
446
|
COMPRESSED_RGBA_S3TC_DXT3_EXT: 33778,
|
|
419
447
|
COMPRESSED_RGBA_S3TC_DXT5_EXT: 33779,
|
|
448
|
+
// WEBGL_compressed_texture_es3
|
|
420
449
|
COMPRESSED_R11_EAC: 37488,
|
|
421
450
|
COMPRESSED_SIGNED_R11_EAC: 37489,
|
|
422
451
|
COMPRESSED_RG11_EAC: 37490,
|
|
@@ -427,14 +456,18 @@
|
|
|
427
456
|
COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 37495,
|
|
428
457
|
COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 37496,
|
|
429
458
|
COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 37497,
|
|
459
|
+
// WEBGL_compressed_texture_pvrtc
|
|
430
460
|
COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 35840,
|
|
431
461
|
COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 35842,
|
|
432
462
|
COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 35841,
|
|
433
463
|
COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 35843,
|
|
464
|
+
// WEBGL_compressed_texture_etc1
|
|
434
465
|
COMPRESSED_RGB_ETC1_WEBGL: 36196,
|
|
466
|
+
// WEBGL_compressed_texture_atc
|
|
435
467
|
COMPRESSED_RGB_ATC_WEBGL: 35986,
|
|
436
468
|
COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL: 35987,
|
|
437
469
|
COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL: 34798,
|
|
470
|
+
// WEBGL_compressed_texture_astc
|
|
438
471
|
COMPRESSED_RGBA_ASTC_4X4_KHR: 37808,
|
|
439
472
|
COMPRESSED_RGBA_ASTC_5X4_KHR: 37809,
|
|
440
473
|
COMPRESSED_RGBA_ASTC_5X5_KHR: 37810,
|
|
@@ -463,10 +496,12 @@
|
|
|
463
496
|
COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: 37851,
|
|
464
497
|
COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: 37852,
|
|
465
498
|
COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: 37853,
|
|
499
|
+
// EXT_texture_compression_rgtc
|
|
466
500
|
COMPRESSED_RED_RGTC1_EXT: 36283,
|
|
467
501
|
COMPRESSED_SIGNED_RED_RGTC1_EXT: 36284,
|
|
468
502
|
COMPRESSED_RED_GREEN_RGTC2_EXT: 36285,
|
|
469
503
|
COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 36286,
|
|
504
|
+
// WEBGL_compressed_texture_s3tc_srgb
|
|
470
505
|
COMPRESSED_SRGB_S3TC_DXT1_EXT: 35916,
|
|
471
506
|
COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 35917,
|
|
472
507
|
COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 35918,
|
|
@@ -476,6 +511,7 @@
|
|
|
476
511
|
// src/lib/utils/texture-formats.ts
|
|
477
512
|
var BROWSER_PREFIXES = ["", "WEBKIT_", "MOZ_"];
|
|
478
513
|
var WEBGL_EXTENSIONS = {
|
|
514
|
+
/* eslint-disable camelcase */
|
|
479
515
|
WEBGL_compressed_texture_s3tc: "dxt",
|
|
480
516
|
WEBGL_compressed_texture_s3tc_srgb: "dxt-srgb",
|
|
481
517
|
WEBGL_compressed_texture_etc1: "etc1",
|
|
@@ -484,12 +520,13 @@
|
|
|
484
520
|
WEBGL_compressed_texture_atc: "atc",
|
|
485
521
|
WEBGL_compressed_texture_astc: "astc",
|
|
486
522
|
EXT_texture_compression_rgtc: "rgtc"
|
|
523
|
+
/* eslint-enable camelcase */
|
|
487
524
|
};
|
|
488
525
|
var formats = null;
|
|
489
526
|
function getSupportedGPUTextureFormats(gl) {
|
|
490
527
|
if (!formats) {
|
|
491
528
|
gl = gl || getWebGLContext() || void 0;
|
|
492
|
-
formats = new Set();
|
|
529
|
+
formats = /* @__PURE__ */ new Set();
|
|
493
530
|
for (const prefix of BROWSER_PREFIXES) {
|
|
494
531
|
for (const extension in WEBGL_EXTENSIONS) {
|
|
495
532
|
if (gl && gl.getExtension(`${prefix}${extension}`)) {
|
|
@@ -540,6 +577,7 @@
|
|
|
540
577
|
|
|
541
578
|
// src/lib/parsers/parse-ktx.ts
|
|
542
579
|
var KTX2_ID = [
|
|
580
|
+
// '´', 'K', 'T', 'X', '2', '0', 'ª', '\r', '\n', '\x1A', '\n'
|
|
543
581
|
171,
|
|
544
582
|
75,
|
|
545
583
|
84,
|
|
@@ -555,7 +593,18 @@
|
|
|
555
593
|
];
|
|
556
594
|
function isKTX(data) {
|
|
557
595
|
const id = new Uint8Array(data);
|
|
558
|
-
const notKTX = id.byteLength < KTX2_ID.length || id[0] !== KTX2_ID[0] ||
|
|
596
|
+
const notKTX = id.byteLength < KTX2_ID.length || id[0] !== KTX2_ID[0] || // '´'
|
|
597
|
+
id[1] !== KTX2_ID[1] || // 'K'
|
|
598
|
+
id[2] !== KTX2_ID[2] || // 'T'
|
|
599
|
+
id[3] !== KTX2_ID[3] || // 'X'
|
|
600
|
+
id[4] !== KTX2_ID[4] || // ' '
|
|
601
|
+
id[5] !== KTX2_ID[5] || // '2'
|
|
602
|
+
id[6] !== KTX2_ID[6] || // '0'
|
|
603
|
+
id[7] !== KTX2_ID[7] || // 'ª'
|
|
604
|
+
id[8] !== KTX2_ID[8] || // '\r'
|
|
605
|
+
id[9] !== KTX2_ID[9] || // '\n'
|
|
606
|
+
id[10] !== KTX2_ID[10] || // '\x1A'
|
|
607
|
+
id[11] !== KTX2_ID[11];
|
|
559
608
|
return !notKTX;
|
|
560
609
|
}
|
|
561
610
|
|
|
@@ -653,7 +702,9 @@
|
|
|
653
702
|
function transcodeImage(basisFile, imageIndex, levelIndex, options) {
|
|
654
703
|
const width = basisFile.getImageWidth(imageIndex, levelIndex);
|
|
655
704
|
const height = basisFile.getImageHeight(imageIndex, levelIndex);
|
|
656
|
-
const hasAlpha = basisFile.getHasAlpha(
|
|
705
|
+
const hasAlpha = basisFile.getHasAlpha(
|
|
706
|
+
/* imageIndex, levelIndex */
|
|
707
|
+
);
|
|
657
708
|
const { compressed, format, basisFormat } = getBasisOptions(options, hasAlpha);
|
|
658
709
|
const decodedSize = basisFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, basisFormat);
|
|
659
710
|
const decodedData = new Uint8Array(decodedSize);
|
|
@@ -661,11 +712,14 @@
|
|
|
661
712
|
throw new Error("failed to start Basis transcoding");
|
|
662
713
|
}
|
|
663
714
|
return {
|
|
715
|
+
// standard loaders.gl image category payload
|
|
664
716
|
width,
|
|
665
717
|
height,
|
|
666
718
|
data: decodedData,
|
|
667
719
|
compressed,
|
|
668
720
|
format,
|
|
721
|
+
// Additional fields
|
|
722
|
+
// Add levelSize field.
|
|
669
723
|
hasAlpha
|
|
670
724
|
};
|
|
671
725
|
}
|
|
@@ -690,16 +744,33 @@
|
|
|
690
744
|
function transcodeKTX2Image(ktx2File, levelIndex, options) {
|
|
691
745
|
const { alphaFlag, height, width } = ktx2File.getImageLevelInfo(levelIndex, 0, 0);
|
|
692
746
|
const { compressed, format, basisFormat } = getBasisOptions(options, alphaFlag);
|
|
693
|
-
const decodedSize = ktx2File.getImageTranscodedSizeInBytes(
|
|
747
|
+
const decodedSize = ktx2File.getImageTranscodedSizeInBytes(
|
|
748
|
+
levelIndex,
|
|
749
|
+
0,
|
|
750
|
+
0,
|
|
751
|
+
basisFormat
|
|
752
|
+
);
|
|
694
753
|
const decodedData = new Uint8Array(decodedSize);
|
|
695
|
-
if (!ktx2File.transcodeImage(
|
|
754
|
+
if (!ktx2File.transcodeImage(
|
|
755
|
+
decodedData,
|
|
756
|
+
levelIndex,
|
|
757
|
+
0,
|
|
758
|
+
0,
|
|
759
|
+
basisFormat,
|
|
760
|
+
0,
|
|
761
|
+
-1,
|
|
762
|
+
-1
|
|
763
|
+
/* channel1 */
|
|
764
|
+
)) {
|
|
696
765
|
throw new Error("Failed to transcode KTX2 image");
|
|
697
766
|
}
|
|
698
767
|
return {
|
|
768
|
+
// standard loaders.gl image category payload
|
|
699
769
|
width,
|
|
700
770
|
height,
|
|
701
771
|
data: decodedData,
|
|
702
772
|
compressed,
|
|
773
|
+
// Additional fields
|
|
703
774
|
levelSize: decodedSize,
|
|
704
775
|
hasAlpha: alphaFlag,
|
|
705
776
|
format
|
|
@@ -752,9 +823,12 @@
|
|
|
752
823
|
options: {
|
|
753
824
|
basis: {
|
|
754
825
|
format: "auto",
|
|
826
|
+
// gl context doesn't exist on a worker thread
|
|
755
827
|
libraryPath: "libs/",
|
|
756
828
|
containerFormat: "auto",
|
|
829
|
+
// 'basis' || 'ktx2' || 'auto'
|
|
757
830
|
module: "transcoder"
|
|
831
|
+
// 'transcoder' || 'encoder'
|
|
758
832
|
}
|
|
759
833
|
}
|
|
760
834
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { VERSION } from
|
|
2
|
-
import { parseCompressedTexture } from
|
|
3
|
-
import parseBasis from
|
|
1
|
+
import { VERSION } from "./lib/utils/version.js";
|
|
2
|
+
import { parseCompressedTexture } from "./lib/parsers/parse-compressed-texture.js";
|
|
3
|
+
import parseBasis from "./lib/parsers/parse-basis.js";
|
|
4
4
|
export const CompressedTextureWorkerLoader = {
|
|
5
5
|
name: 'Texture Containers',
|
|
6
6
|
id: 'compressed-texture',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compressed-texture-loader.js","names":["VERSION","parseCompressedTexture","parseBasis","CompressedTextureWorkerLoader","name","id","module","version","worker","extensions","mimeTypes","binary","options","libraryPath","useBasis","CompressedTextureLoader","parse","arrayBuffer","_options$compressedT","basis","format","alpha","noAlpha","containerFormat","result"],"sources":["../src/compressed-texture-loader.ts"],"sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {VERSION} from './lib/utils/version';\nimport {parseCompressedTexture} from './lib/parsers/parse-compressed-texture';\nimport parseBasis from './lib/parsers/parse-basis';\n\nexport type TextureLoaderOptions = {\n 'compressed-texture'?: {\n libraryPath?: string;\n useBasis?: boolean;\n };\n};\n\n/**\n * Worker Loader for KTX, DDS, and PVR texture container formats\n */\nexport const CompressedTextureWorkerLoader: Loader<any, never, TextureLoaderOptions> = {\n name: 'Texture Containers',\n id: 'compressed-texture',\n module: 'textures',\n version: VERSION,\n worker: true,\n extensions: [\n 'ktx',\n 'ktx2',\n 'dds', // WEBGL_compressed_texture_s3tc, WEBGL_compressed_texture_atc\n 'pvr' // WEBGL_compressed_texture_pvrtc\n ],\n mimeTypes: [\n 'image/ktx2',\n 'image/ktx',\n 'image/vnd-ms.dds',\n 'image/x-dds',\n 'application/octet-stream'\n ],\n binary: true,\n options: {\n 'compressed-texture': {\n libraryPath: 'libs/',\n useBasis: false\n }\n }\n};\n\n/**\n * Loader for KTX, DDS, and PVR texture container formats\n */\nexport const CompressedTextureLoader: LoaderWithParser<any, never, TextureLoaderOptions> = {\n ...CompressedTextureWorkerLoader,\n parse: async (arrayBuffer: ArrayBuffer, options?: TextureLoaderOptions) => {\n if (options?.['compressed-texture']?.useBasis) {\n // @ts-expect-error TODO not allowed to modify inputs\n options.basis = {\n format: {\n alpha: 'BC3',\n noAlpha: 'BC1'\n },\n // @ts-expect-error TODO not allowed to modify inputs\n ...options.basis,\n containerFormat: 'ktx2',\n module: 'encoder'\n };\n const result = await parseBasis(arrayBuffer, options);\n return result[0];\n }\n return parseCompressedTexture(arrayBuffer);\n }\n};\n"],"mappings":"SACQA,OAAO;AAAA,SACPC,sBAAsB;AAAA,OACvBC,UAAU;AAYjB,OAAO,MAAMC,6BAAuE,GAAG;EACrFC,IAAI,EAAE,oBAAoB;EAC1BC,EAAE,EAAE,oBAAoB;EACxBC,MAAM,EAAE,UAAU;EAClBC,OAAO,EAAEP,OAAO;EAChBQ,MAAM,EAAE,IAAI;EACZC,UAAU,EAAE,CACV,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,CACN;EACDC,SAAS,EAAE,CACT,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,0BAA0B,CAC3B;EACDC,MAAM,EAAE,IAAI;EACZC,OAAO,EAAE;IACP,oBAAoB,EAAE;MACpBC,WAAW,EAAE,OAAO;MACpBC,QAAQ,EAAE;IACZ;EACF;AACF,CAAC;AAKD,OAAO,MAAMC,uBAA2E,GAAG;EACzF,GAAGZ,6BAA6B;EAChCa,KAAK,EAAE,MAAAA,CAAOC,WAAwB,EAAEL,OAA8B,KAAK;IAAA,IAAAM,oBAAA;IACzE,IAAIN,OAAO,aAAPA,OAAO,gBAAAM,oBAAA,GAAPN,OAAO,CAAG,oBAAoB,CAAC,cAAAM,oBAAA,eAA/BA,oBAAA,CAAiCJ,QAAQ,EAAE;MAE7CF,OAAO,CAACO,KAAK,GAAG;QACdC,MAAM,EAAE;UACNC,KAAK,EAAE,KAAK;UACZC,OAAO,EAAE;QACX,CAAC;QAED,GAAGV,OAAO,CAACO,KAAK;QAChBI,eAAe,EAAE,MAAM;QACvBjB,MAAM,EAAE;MACV,CAAC;MACD,MAAMkB,MAAM,GAAG,MAAMtB,UAAU,CAACe,WAAW,EAAEL,OAAO,CAAC;MACrD,OAAOY,MAAM,CAAC,CAAC,CAAC;IAClB;IACA,OAAOvB,sBAAsB,CAACgB,WAAW,CAAC;EAC5C;AACF,CAAC"}
|