@loaders.gl/textures 4.0.0-alpha.8 → 4.0.0-beta.1
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/basis-worker-node.js +91 -79
- package/dist/basis-worker.js +66 -38
- package/dist/compressed-texture-loader.d.ts +2 -35
- package/dist/compressed-texture-loader.d.ts.map +1 -1
- package/dist/compressed-texture-worker.js +75 -47
- package/dist/crunch-loader.d.ts +9 -17
- package/dist/crunch-loader.d.ts.map +1 -1
- package/dist/crunch-worker.js +53 -25
- package/dist/dist.min.js +99 -55
- package/dist/es5/compressed-texture-loader.js +15 -17
- package/dist/es5/compressed-texture-loader.js.map +1 -1
- package/dist/es5/crunch-loader.js +1 -3
- package/dist/es5/crunch-loader.js.map +1 -1
- package/dist/es5/index.js +14 -0
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/ktx2-basis-writer.js +5 -5
- package/dist/es5/ktx2-basis-writer.js.map +1 -1
- package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js +6 -5
- package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
- package/dist/es5/lib/parsers/basis-module-loader.js +26 -21
- package/dist/es5/lib/parsers/basis-module-loader.js.map +1 -1
- package/dist/es5/lib/parsers/crunch-module-loader.js +6 -1
- package/dist/es5/lib/parsers/crunch-module-loader.js.map +1 -1
- package/dist/es5/lib/parsers/parse-basis.js +7 -7
- package/dist/es5/lib/parsers/parse-basis.js.map +1 -1
- package/dist/es5/lib/texture-api/deep-load.js.map +1 -1
- package/dist/es5/lib/utils/version.js +1 -1
- package/dist/es5/lib/utils/version.js.map +1 -1
- package/dist/es5/workers/compressed-texture-worker.js.map +1 -1
- package/dist/es5/workers/ktx2-basis-writer-worker-node.js.map +1 -1
- package/dist/es5/workers/ktx2-basis-writer-worker.js.map +1 -1
- package/dist/esm/compressed-texture-loader.js +10 -11
- package/dist/esm/compressed-texture-loader.js.map +1 -1
- package/dist/esm/crunch-loader.js +0 -1
- package/dist/esm/crunch-loader.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/ktx2-basis-writer.js +6 -5
- package/dist/esm/ktx2-basis-writer.js.map +1 -1
- package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js +1 -1
- package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
- package/dist/esm/lib/parsers/basis-module-loader.js +13 -10
- package/dist/esm/lib/parsers/basis-module-loader.js.map +1 -1
- package/dist/esm/lib/parsers/crunch-module-loader.js +4 -1
- package/dist/esm/lib/parsers/crunch-module-loader.js.map +1 -1
- package/dist/esm/lib/parsers/parse-basis.js +3 -3
- package/dist/esm/lib/parsers/parse-basis.js.map +1 -1
- package/dist/esm/lib/texture-api/deep-load.js.map +1 -1
- package/dist/esm/lib/utils/version.js +1 -1
- package/dist/esm/lib/utils/version.js.map +1 -1
- package/dist/esm/workers/compressed-texture-worker.js.map +1 -1
- package/dist/esm/workers/ktx2-basis-writer-worker-node.js.map +1 -1
- package/dist/esm/workers/ktx2-basis-writer-worker.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/ktx2-basis-writer-worker-node.js +86 -72
- package/dist/ktx2-basis-writer-worker.js +61 -31
- package/dist/ktx2-basis-writer.d.ts +8 -7
- package/dist/ktx2-basis-writer.d.ts.map +1 -1
- package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts.map +1 -1
- package/dist/lib/parsers/basis-module-loader.d.ts +11 -1
- package/dist/lib/parsers/basis-module-loader.d.ts.map +1 -1
- package/dist/lib/parsers/crunch-module-loader.d.ts +4 -0
- package/dist/lib/parsers/crunch-module-loader.d.ts.map +1 -1
- package/dist/lib/texture-api/deep-load.d.ts.map +1 -1
- package/dist/npy-worker.js +9 -4
- package/dist/workers/crunch-worker.d.ts +13 -9
- package/dist/workers/crunch-worker.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/compressed-texture-loader.ts +14 -17
- package/src/crunch-loader.ts +10 -7
- package/src/index.ts +4 -0
- package/src/ktx2-basis-writer.ts +14 -13
- package/src/lib/encoders/encode-ktx2-basis-texture.ts +6 -1
- package/src/lib/parsers/basis-module-loader.ts +19 -16
- package/src/lib/parsers/crunch-module-loader.ts +6 -1
- package/src/lib/parsers/parse-basis.ts +3 -3
- package/src/lib/texture-api/deep-load.ts +0 -1
- package/src/workers/compressed-texture-worker.ts +1 -0
- package/src/workers/ktx2-basis-writer-worker-node.ts +2 -2
- package/src/workers/ktx2-basis-writer-worker.ts +2 -2
- package/dist/basis-loader.js +0 -37
- package/dist/bundle.js +0 -5
- package/dist/compressed-texture-loader.js +0 -64
- package/dist/compressed-texture-writer.js +0 -34
- package/dist/crunch-loader.js +0 -25
- package/dist/index.js +0 -52
- package/dist/ktx2-basis-writer.js +0 -26
- package/dist/lib/encoders/encode-ktx.js +0 -10
- package/dist/lib/encoders/encode-ktx2-basis-texture.js +0 -41
- package/dist/lib/encoders/encode-texture.js +0 -27
- package/dist/lib/gl-extensions.js +0 -72
- package/dist/lib/parsers/basis-module-loader.js +0 -114
- package/dist/lib/parsers/crunch-module-loader.js +0 -35
- package/dist/lib/parsers/parse-basis.js +0 -245
- package/dist/lib/parsers/parse-compressed-texture.js +0 -26
- package/dist/lib/parsers/parse-crunch.js +0 -106
- package/dist/lib/parsers/parse-dds.js +0 -108
- package/dist/lib/parsers/parse-ktx.js +0 -46
- package/dist/lib/parsers/parse-npy.js +0 -81
- package/dist/lib/parsers/parse-pvr.js +0 -250
- package/dist/lib/texture-api/async-deep-map.js +0 -41
- package/dist/lib/texture-api/deep-load.js +0 -16
- package/dist/lib/texture-api/generate-url.js +0 -17
- package/dist/lib/texture-api/load-image-array.js +0 -21
- package/dist/lib/texture-api/load-image-cube.js +0 -47
- package/dist/lib/texture-api/load-image.js +0 -43
- package/dist/lib/texture-api/texture-api-types.js +0 -3
- package/dist/lib/utils/extract-mipmap-images.js +0 -50
- package/dist/lib/utils/ktx-format-helper.js +0 -125
- package/dist/lib/utils/texture-formats.js +0 -51
- package/dist/lib/utils/version.js +0 -8
- package/dist/npy-loader.js +0 -31
- package/dist/types.js +0 -1
- package/dist/workers/basis-worker-node.js +0 -7
- package/dist/workers/basis-worker.js +0 -5
- package/dist/workers/compressed-texture-worker.js +0 -5
- package/dist/workers/crunch-worker.js +0 -14
- package/dist/workers/ktx2-basis-writer-worker-node.js +0 -28
- package/dist/workers/ktx2-basis-writer-worker.js +0 -26
- package/dist/workers/npy-worker.js +0 -5
|
@@ -28,10 +28,19 @@
|
|
|
28
28
|
});
|
|
29
29
|
|
|
30
30
|
// ../worker-utils/src/lib/env-utils/version.ts
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
function getVersion() {
|
|
32
|
+
if (!globalThis._loadersgl_?.version) {
|
|
33
|
+
globalThis._loadersgl_ = globalThis._loadersgl_ || {};
|
|
34
|
+
if (false) {
|
|
35
|
+
console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
|
|
36
|
+
globalThis._loadersgl_.version = NPM_TAG;
|
|
37
|
+
} else {
|
|
38
|
+
globalThis._loadersgl_.version = "4.0.0-beta.1";
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return globalThis._loadersgl_.version;
|
|
34
42
|
}
|
|
43
|
+
var VERSION = getVersion();
|
|
35
44
|
|
|
36
45
|
// ../worker-utils/src/lib/env-utils/assert.ts
|
|
37
46
|
function assert(condition, message) {
|
|
@@ -168,40 +177,38 @@
|
|
|
168
177
|
|
|
169
178
|
// ../worker-utils/src/lib/library-utils/library-utils.ts
|
|
170
179
|
var node = __toModule(require_require_utils());
|
|
171
|
-
var LATEST = "beta";
|
|
172
|
-
var VERSION2 = typeof VERSION !== "undefined" ? VERSION : LATEST;
|
|
173
180
|
var loadLibraryPromises = {};
|
|
174
|
-
async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
|
|
181
|
+
async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
|
|
175
182
|
if (moduleName) {
|
|
176
|
-
libraryUrl = getLibraryUrl(libraryUrl, moduleName, options);
|
|
183
|
+
libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
|
|
177
184
|
}
|
|
178
185
|
loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
|
|
179
186
|
return await loadLibraryPromises[libraryUrl];
|
|
180
187
|
}
|
|
181
|
-
function getLibraryUrl(library, moduleName, options) {
|
|
182
|
-
if (library.startsWith("http")) {
|
|
188
|
+
function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
|
|
189
|
+
if (!options.useLocalLibraries && library.startsWith("http")) {
|
|
183
190
|
return library;
|
|
184
191
|
}
|
|
192
|
+
libraryName = libraryName || library;
|
|
185
193
|
const modules = options.modules || {};
|
|
186
|
-
if (modules[
|
|
187
|
-
return modules[
|
|
194
|
+
if (modules[libraryName]) {
|
|
195
|
+
return modules[libraryName];
|
|
188
196
|
}
|
|
189
197
|
if (!isBrowser) {
|
|
190
|
-
return `modules/${moduleName}/dist/libs/${
|
|
198
|
+
return `modules/${moduleName}/dist/libs/${libraryName}`;
|
|
191
199
|
}
|
|
192
200
|
if (options.CDN) {
|
|
193
201
|
assert(options.CDN.startsWith("http"));
|
|
194
|
-
return `${options.CDN}/${moduleName}@${
|
|
202
|
+
return `${options.CDN}/${moduleName}@${VERSION}/dist/libs/${libraryName}`;
|
|
195
203
|
}
|
|
196
204
|
if (isWorker) {
|
|
197
|
-
return `../src/libs/${
|
|
205
|
+
return `../src/libs/${libraryName}`;
|
|
198
206
|
}
|
|
199
|
-
return `modules/${moduleName}/src/libs/${
|
|
207
|
+
return `modules/${moduleName}/src/libs/${libraryName}`;
|
|
200
208
|
}
|
|
201
209
|
async function loadLibraryFromFile(libraryUrl) {
|
|
202
210
|
if (libraryUrl.endsWith("wasm")) {
|
|
203
|
-
|
|
204
|
-
return await response2.arrayBuffer();
|
|
211
|
+
return await loadAsArrayBuffer(libraryUrl);
|
|
205
212
|
}
|
|
206
213
|
if (!isBrowser) {
|
|
207
214
|
try {
|
|
@@ -213,8 +220,7 @@
|
|
|
213
220
|
if (isWorker) {
|
|
214
221
|
return importScripts(libraryUrl);
|
|
215
222
|
}
|
|
216
|
-
const
|
|
217
|
-
const scriptSource = await response.text();
|
|
223
|
+
const scriptSource = await loadAsText(libraryUrl);
|
|
218
224
|
return loadLibraryFromString(scriptSource, libraryUrl);
|
|
219
225
|
}
|
|
220
226
|
function loadLibraryFromString(scriptSource, id) {
|
|
@@ -235,14 +241,31 @@
|
|
|
235
241
|
document.body.appendChild(script);
|
|
236
242
|
return null;
|
|
237
243
|
}
|
|
244
|
+
async function loadAsArrayBuffer(url) {
|
|
245
|
+
if (!node.readFileAsArrayBuffer || url.startsWith("http")) {
|
|
246
|
+
const response = await fetch(url);
|
|
247
|
+
return await response.arrayBuffer();
|
|
248
|
+
}
|
|
249
|
+
return await node.readFileAsArrayBuffer(url);
|
|
250
|
+
}
|
|
251
|
+
async function loadAsText(url) {
|
|
252
|
+
if (!node.readFileAsText || url.startsWith("http")) {
|
|
253
|
+
const response = await fetch(url);
|
|
254
|
+
return await response.text();
|
|
255
|
+
}
|
|
256
|
+
return await node.readFileAsText(url);
|
|
257
|
+
}
|
|
238
258
|
|
|
239
259
|
// src/lib/utils/version.ts
|
|
240
|
-
var
|
|
260
|
+
var VERSION2 = true ? "4.0.0-beta.1" : "beta";
|
|
241
261
|
|
|
242
262
|
// src/lib/parsers/basis-module-loader.ts
|
|
243
|
-
var
|
|
244
|
-
|
|
245
|
-
|
|
263
|
+
var BASIS_EXTERNAL_LIBRARIES = {
|
|
264
|
+
TRANSCODER: "basis_transcoder.js",
|
|
265
|
+
TRANSCODER_WASM: "basis_transcoder.wasm",
|
|
266
|
+
ENCODER: "basis_encoder.js",
|
|
267
|
+
ENCODER_WASM: "basis_encoder.wasm"
|
|
268
|
+
};
|
|
246
269
|
var loadBasisEncoderPromise;
|
|
247
270
|
async function loadBasisEncoderModule(options) {
|
|
248
271
|
const modules = options.modules || {};
|
|
@@ -256,8 +279,8 @@
|
|
|
256
279
|
let BASIS_ENCODER = null;
|
|
257
280
|
let wasmBinary = null;
|
|
258
281
|
[BASIS_ENCODER, wasmBinary] = await Promise.all([
|
|
259
|
-
await loadLibrary(
|
|
260
|
-
await loadLibrary(
|
|
282
|
+
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options),
|
|
283
|
+
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)
|
|
261
284
|
]);
|
|
262
285
|
BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;
|
|
263
286
|
return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);
|
|
@@ -278,7 +301,12 @@
|
|
|
278
301
|
|
|
279
302
|
// src/lib/encoders/encode-ktx2-basis-texture.ts
|
|
280
303
|
async function encodeKTX2BasisTexture(image, options = {}) {
|
|
281
|
-
const {
|
|
304
|
+
const {
|
|
305
|
+
useSRGB = false,
|
|
306
|
+
qualityLevel = 10,
|
|
307
|
+
encodeUASTC = false,
|
|
308
|
+
mipmaps = false
|
|
309
|
+
} = options?.["ktx2-basis-writer"] || {};
|
|
282
310
|
const { BasisEncoder } = await loadBasisEncoderModule(options);
|
|
283
311
|
const basisEncoder = new BasisEncoder();
|
|
284
312
|
try {
|
|
@@ -308,13 +336,15 @@
|
|
|
308
336
|
name: "Basis Universal Supercompressed GPU Texture",
|
|
309
337
|
id: "ktx2-basis-writer",
|
|
310
338
|
module: "textures",
|
|
311
|
-
version:
|
|
339
|
+
version: VERSION2,
|
|
312
340
|
extensions: ["ktx2"],
|
|
313
341
|
options: {
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
342
|
+
["ktx2-basis-writer"]: {
|
|
343
|
+
useSRGB: false,
|
|
344
|
+
qualityLevel: 10,
|
|
345
|
+
encodeUASTC: false,
|
|
346
|
+
mipmaps: false
|
|
347
|
+
}
|
|
318
348
|
},
|
|
319
349
|
encode: encodeKTX2BasisTexture
|
|
320
350
|
};
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import type { Writer } from '@loaders.gl/loader-utils';
|
|
1
|
+
import type { Writer, WriterOptions } from '@loaders.gl/loader-utils';
|
|
2
2
|
import type { ImageDataType } from '@loaders.gl/images';
|
|
3
3
|
/** @todo should be in basis sub-object */
|
|
4
|
-
export type KTX2BasisWriterOptions = {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
export type KTX2BasisWriterOptions = WriterOptions & {
|
|
5
|
+
['ktx2-basis-writer']?: {
|
|
6
|
+
useSRGB?: boolean;
|
|
7
|
+
qualityLevel?: number;
|
|
8
|
+
encodeUASTC?: boolean;
|
|
9
|
+
mipmaps?: boolean;
|
|
10
|
+
};
|
|
9
11
|
};
|
|
10
12
|
/**
|
|
11
13
|
* Basis Universal Supercompressed GPU Texture.
|
|
12
14
|
* Spec - https://github.com/Esri/i3s-spec/blob/master/docs/1.8/textureSetDefinitionFormat.cmn.md
|
|
13
15
|
*/
|
|
14
16
|
export declare const KTX2BasisWriter: Writer<ImageDataType, unknown, KTX2BasisWriterOptions>;
|
|
15
|
-
export declare const _TypecheckKTX2TextureWriter: Writer;
|
|
16
17
|
//# sourceMappingURL=ktx2-basis-writer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ktx2-basis-writer.d.ts","sourceRoot":"","sources":["../src/ktx2-basis-writer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ktx2-basis-writer.d.ts","sourceRoot":"","sources":["../src/ktx2-basis-writer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAEpE,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGtD,0CAA0C;AAC1C,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IACnD,CAAC,mBAAmB,CAAC,CAAC,EAAE;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,OAAO,EAAE,sBAAsB,CAiBlF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode-ktx2-basis-texture.d.ts","sourceRoot":"","sources":["../../../src/lib/encoders/encode-ktx2-basis-texture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGtD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,aAAa,EACpB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"encode-ktx2-basis-texture.d.ts","sourceRoot":"","sources":["../../../src/lib/encoders/encode-ktx2-basis-texture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGtD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,aAAa,EACpB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,WAAW,CAAC,CAmCtB"}
|
|
@@ -1,9 +1,19 @@
|
|
|
1
|
+
export declare const BASIS_EXTERNAL_LIBRARIES: {
|
|
2
|
+
/** Basis transcoder, javascript wrapper part */
|
|
3
|
+
TRANSCODER: string;
|
|
4
|
+
/** Basis transcoder, compiled web assembly part */
|
|
5
|
+
TRANSCODER_WASM: string;
|
|
6
|
+
/** Basis encoder, javascript wrapper part */
|
|
7
|
+
ENCODER: string;
|
|
8
|
+
/** Basis encoder, compiled web assembly part */
|
|
9
|
+
ENCODER_WASM: string;
|
|
10
|
+
};
|
|
1
11
|
/**
|
|
2
12
|
* Loads wasm transcoder module
|
|
3
13
|
* @param options
|
|
4
14
|
* @returns {BasisFile} promise
|
|
5
15
|
*/
|
|
6
|
-
export declare function
|
|
16
|
+
export declare function loadBasisTranscoderModule(options: any): Promise<any>;
|
|
7
17
|
/**
|
|
8
18
|
* Loads wasm encoder module
|
|
9
19
|
* @param options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basis-module-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/basis-module-loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"basis-module-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/basis-module-loader.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB;IACnC,gDAAgD;;IAEhD,mDAAmD;;IAEnD,6CAA6C;;IAE7C,gDAAgD;;CAEjD,CAAC;AAIF;;;;GAIG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,KAAA,gBAQtD;AA+CD;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,KAAA,gBAQnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crunch-module-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/crunch-module-loader.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,KAAA,GAAG,OAAO,CAAC,GAAG,CAAC,CAO5D"}
|
|
1
|
+
{"version":3,"file":"crunch-module-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/crunch-module-loader.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,yBAAyB;IACpC,wEAAwE;;CAEzE,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,KAAA,GAAG,OAAO,CAAC,GAAG,CAAC,CAO5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deep-load.d.ts","sourceRoot":"","sources":["../../../src/lib/texture-api/deep-load.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC9C,MAAM,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAErF,wBAAsB,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,oBAEhF;AAED,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"deep-load.d.ts","sourceRoot":"","sources":["../../../src/lib/texture-api/deep-load.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC9C,MAAM,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAErF,wBAAsB,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,oBAEhF;AAED,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAI7F"}
|
package/dist/npy-worker.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
(() => {
|
|
2
2
|
// src/lib/utils/version.ts
|
|
3
|
-
var VERSION = true ? "4.0.0-
|
|
3
|
+
var VERSION = true ? "4.0.0-beta.1" : "beta";
|
|
4
4
|
|
|
5
5
|
// src/lib/parsers/parse-npy.ts
|
|
6
6
|
var a = new Uint32Array([305419896]);
|
|
@@ -206,7 +206,7 @@
|
|
|
206
206
|
options,
|
|
207
207
|
context: {
|
|
208
208
|
...context,
|
|
209
|
-
|
|
209
|
+
_parse: parseOnMainThread
|
|
210
210
|
}
|
|
211
211
|
});
|
|
212
212
|
WorkerBody.postMessage("done", { result });
|
|
@@ -219,7 +219,7 @@
|
|
|
219
219
|
}
|
|
220
220
|
};
|
|
221
221
|
}
|
|
222
|
-
function parseOnMainThread(arrayBuffer, options) {
|
|
222
|
+
function parseOnMainThread(arrayBuffer, loader, options, context) {
|
|
223
223
|
return new Promise((resolve, reject) => {
|
|
224
224
|
const id = requestId++;
|
|
225
225
|
const onMessage = (type, payload2) => {
|
|
@@ -243,7 +243,12 @@
|
|
|
243
243
|
WorkerBody.postMessage("process", payload);
|
|
244
244
|
});
|
|
245
245
|
}
|
|
246
|
-
async function parseData({
|
|
246
|
+
async function parseData({
|
|
247
|
+
loader,
|
|
248
|
+
arrayBuffer,
|
|
249
|
+
options,
|
|
250
|
+
context
|
|
251
|
+
}) {
|
|
247
252
|
let data;
|
|
248
253
|
let parser;
|
|
249
254
|
if (loader.parseSync || loader.parse) {
|
|
@@ -4,18 +4,22 @@ import { parseCrunch } from '../lib/parsers/parse-crunch';
|
|
|
4
4
|
*/
|
|
5
5
|
export declare const CrunchLoaderWithParser: {
|
|
6
6
|
parse: typeof parseCrunch;
|
|
7
|
-
|
|
7
|
+
dataType?: import("@loaders.gl/schema").TextureLevel[] | undefined;
|
|
8
|
+
batchType?: undefined;
|
|
9
|
+
options: import("../crunch-loader").CrunchLoaderOptions;
|
|
10
|
+
deprecatedOptions?: Record<string, string | Record<string, string>> | undefined;
|
|
8
11
|
name: string;
|
|
12
|
+
id: string;
|
|
9
13
|
module: string;
|
|
10
|
-
version:
|
|
11
|
-
worker
|
|
14
|
+
version: string;
|
|
15
|
+
worker?: string | boolean | undefined;
|
|
16
|
+
category?: string | undefined;
|
|
12
17
|
extensions: string[];
|
|
13
18
|
mimeTypes: string[];
|
|
14
|
-
binary
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
19
|
+
binary?: boolean | undefined;
|
|
20
|
+
text?: boolean | undefined;
|
|
21
|
+
tests?: (string | ArrayBuffer | ((ArrayBuffer: ArrayBuffer) => boolean))[] | undefined;
|
|
22
|
+
supported?: boolean | undefined;
|
|
23
|
+
testText?: ((string: string) => boolean) | undefined;
|
|
20
24
|
};
|
|
21
25
|
//# sourceMappingURL=crunch-worker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crunch-worker.d.ts","sourceRoot":"","sources":["../../src/workers/crunch-worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"crunch-worker.d.ts","sourceRoot":"","sources":["../../src/workers/crunch-worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;CAGlC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/textures",
|
|
3
|
-
"version": "4.0.0-
|
|
3
|
+
"version": "4.0.0-beta.1",
|
|
4
4
|
"description": "Framework-independent loaders for compressed and super compressed (basis) textures ",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -45,15 +45,15 @@
|
|
|
45
45
|
"build-crunch-worker": "esbuild src/workers/crunch-worker.ts --outfile=dist/crunch-worker.js --target=esnext --bundle --define:__VERSION__=\\\"$npm_package_version\\\""
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@loaders.gl/images": "4.0.0-
|
|
49
|
-
"@loaders.gl/loader-utils": "4.0.0-
|
|
50
|
-
"@loaders.gl/schema": "4.0.0-
|
|
51
|
-
"@loaders.gl/worker-utils": "4.0.0-
|
|
48
|
+
"@loaders.gl/images": "4.0.0-beta.1",
|
|
49
|
+
"@loaders.gl/loader-utils": "4.0.0-beta.1",
|
|
50
|
+
"@loaders.gl/schema": "4.0.0-beta.1",
|
|
51
|
+
"@loaders.gl/worker-utils": "4.0.0-beta.1",
|
|
52
52
|
"ktx-parse": "^0.0.4",
|
|
53
53
|
"texture-compressor": "^1.0.2"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@loaders.gl/polyfills": "4.0.0-
|
|
56
|
+
"@loaders.gl/polyfills": "4.0.0-beta.1"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "35c625e67132b0784e597d9ddabae8aefea29ff2"
|
|
59
59
|
}
|
|
@@ -10,17 +10,10 @@ export type TextureLoaderOptions = {
|
|
|
10
10
|
};
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
const DEFAULT_TEXTURE_LOADER_OPTIONS = {
|
|
14
|
-
'compressed-texture': {
|
|
15
|
-
libraryPath: 'libs/',
|
|
16
|
-
useBasis: false
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
|
|
20
13
|
/**
|
|
21
14
|
* Worker Loader for KTX, DDS, and PVR texture container formats
|
|
22
15
|
*/
|
|
23
|
-
export const CompressedTextureWorkerLoader = {
|
|
16
|
+
export const CompressedTextureWorkerLoader: Loader<any, never, TextureLoaderOptions> = {
|
|
24
17
|
name: 'Texture Containers',
|
|
25
18
|
id: 'compressed-texture',
|
|
26
19
|
module: 'textures',
|
|
@@ -40,31 +33,35 @@ export const CompressedTextureWorkerLoader = {
|
|
|
40
33
|
'application/octet-stream'
|
|
41
34
|
],
|
|
42
35
|
binary: true,
|
|
43
|
-
options:
|
|
36
|
+
options: {
|
|
37
|
+
'compressed-texture': {
|
|
38
|
+
libraryPath: 'libs/',
|
|
39
|
+
useBasis: false
|
|
40
|
+
}
|
|
41
|
+
}
|
|
44
42
|
};
|
|
45
43
|
|
|
46
44
|
/**
|
|
47
45
|
* Loader for KTX, DDS, and PVR texture container formats
|
|
48
46
|
*/
|
|
49
|
-
export const CompressedTextureLoader = {
|
|
47
|
+
export const CompressedTextureLoader: LoaderWithParser<any, never, TextureLoaderOptions> = {
|
|
50
48
|
...CompressedTextureWorkerLoader,
|
|
51
|
-
parse: async (arrayBuffer, options) => {
|
|
52
|
-
if (options['compressed-texture']
|
|
49
|
+
parse: async (arrayBuffer: ArrayBuffer, options?: TextureLoaderOptions) => {
|
|
50
|
+
if (options?.['compressed-texture']?.useBasis) {
|
|
51
|
+
// @ts-expect-error TODO not allowed to modify inputs
|
|
53
52
|
options.basis = {
|
|
54
53
|
format: {
|
|
55
54
|
alpha: 'BC3',
|
|
56
55
|
noAlpha: 'BC1'
|
|
57
56
|
},
|
|
57
|
+
// @ts-expect-error TODO not allowed to modify inputs
|
|
58
58
|
...options.basis,
|
|
59
59
|
containerFormat: 'ktx2',
|
|
60
60
|
module: 'encoder'
|
|
61
61
|
};
|
|
62
|
-
|
|
62
|
+
const result = await parseBasis(arrayBuffer, options);
|
|
63
|
+
return result[0];
|
|
63
64
|
}
|
|
64
65
|
return parseCompressedTexture(arrayBuffer);
|
|
65
66
|
}
|
|
66
67
|
};
|
|
67
|
-
|
|
68
|
-
// TYPE TESTS - TODO find a better way than exporting junk
|
|
69
|
-
export const _TypecheckCompressedTextureWorkerLoader: Loader = CompressedTextureWorkerLoader;
|
|
70
|
-
export const _TypecheckCompressedTextureLoader: LoaderWithParser = CompressedTextureLoader;
|
package/src/crunch-loader.ts
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
import type {Loader} from '@loaders.gl/loader-utils';
|
|
1
|
+
import type {Loader, LoaderOptions} from '@loaders.gl/loader-utils';
|
|
2
|
+
import type {TextureLevel} from '@loaders.gl/schema';
|
|
2
3
|
import {VERSION} from './lib/utils/version';
|
|
3
4
|
|
|
5
|
+
export type CrunchLoaderOptions = LoaderOptions & {
|
|
6
|
+
crunch?: {
|
|
7
|
+
libraryPath?: string;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
|
|
4
11
|
/**
|
|
5
12
|
* Worker loader for the Crunch compressed texture container format
|
|
13
|
+
* @note We avoid bundling crunch - it is a rare format and large lib, so we only offer worker loader
|
|
6
14
|
*/
|
|
7
|
-
export const CrunchLoader = {
|
|
15
|
+
export const CrunchLoader: Loader<TextureLevel[], never, CrunchLoaderOptions> = {
|
|
8
16
|
id: 'crunch',
|
|
9
17
|
name: 'Crunch',
|
|
10
18
|
module: 'textures',
|
|
@@ -19,8 +27,3 @@ export const CrunchLoader = {
|
|
|
19
27
|
}
|
|
20
28
|
}
|
|
21
29
|
};
|
|
22
|
-
|
|
23
|
-
// We avoid bundling crunch - rare format, only offer worker loader
|
|
24
|
-
|
|
25
|
-
// TYPE TESTS - TODO find a better way than exporting junk
|
|
26
|
-
export const _TypecheckCrunchLoader: Loader = CrunchLoader;
|
package/src/index.ts
CHANGED
|
@@ -10,6 +10,10 @@ export {CompressedTextureLoader, CompressedTextureWorkerLoader} from './compress
|
|
|
10
10
|
export {CrunchLoader} from './crunch-loader';
|
|
11
11
|
export {NPYLoader, NPYWorkerLoader} from './npy-loader';
|
|
12
12
|
|
|
13
|
+
// Module constants
|
|
14
|
+
export {BASIS_EXTERNAL_LIBRARIES} from './lib/parsers/basis-module-loader';
|
|
15
|
+
export {CRUNCH_EXTERNAL_LIBRARIES} from './lib/parsers/crunch-module-loader';
|
|
16
|
+
|
|
13
17
|
// Writers
|
|
14
18
|
export {CompressedTextureWriter} from './compressed-texture-writer';
|
|
15
19
|
export {KTX2BasisWriter} from './ktx2-basis-writer';
|
package/src/ktx2-basis-writer.ts
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
// loaders.gl, MIT license
|
|
2
2
|
|
|
3
|
-
import type {Writer} from '@loaders.gl/loader-utils';
|
|
3
|
+
import type {Writer, WriterOptions} from '@loaders.gl/loader-utils';
|
|
4
4
|
import {VERSION} from './lib/utils/version';
|
|
5
5
|
import type {ImageDataType} from '@loaders.gl/images';
|
|
6
6
|
import {encodeKTX2BasisTexture} from './lib/encoders/encode-ktx2-basis-texture';
|
|
7
7
|
|
|
8
8
|
/** @todo should be in basis sub-object */
|
|
9
|
-
export type KTX2BasisWriterOptions = {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
export type KTX2BasisWriterOptions = WriterOptions & {
|
|
10
|
+
['ktx2-basis-writer']?: {
|
|
11
|
+
useSRGB?: boolean;
|
|
12
|
+
qualityLevel?: number;
|
|
13
|
+
encodeUASTC?: boolean;
|
|
14
|
+
mipmaps?: boolean;
|
|
15
|
+
};
|
|
14
16
|
};
|
|
15
17
|
|
|
16
18
|
/**
|
|
@@ -25,14 +27,13 @@ export const KTX2BasisWriter: Writer<ImageDataType, unknown, KTX2BasisWriterOpti
|
|
|
25
27
|
|
|
26
28
|
extensions: ['ktx2'],
|
|
27
29
|
options: {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
['ktx2-basis-writer']: {
|
|
31
|
+
useSRGB: false,
|
|
32
|
+
qualityLevel: 10,
|
|
33
|
+
encodeUASTC: false,
|
|
34
|
+
mipmaps: false
|
|
35
|
+
}
|
|
32
36
|
},
|
|
33
37
|
|
|
34
38
|
encode: encodeKTX2BasisTexture
|
|
35
39
|
};
|
|
36
|
-
|
|
37
|
-
// TYPE TESTS - TODO find a better way than exporting junk
|
|
38
|
-
export const _TypecheckKTX2TextureWriter: Writer = KTX2BasisWriter;
|
|
@@ -13,7 +13,12 @@ export async function encodeKTX2BasisTexture(
|
|
|
13
13
|
options: any = {}
|
|
14
14
|
): Promise<ArrayBuffer> {
|
|
15
15
|
// TODO remove default values after writer options will be normalized like it done in load module.
|
|
16
|
-
const {
|
|
16
|
+
const {
|
|
17
|
+
useSRGB = false,
|
|
18
|
+
qualityLevel = 10,
|
|
19
|
+
encodeUASTC = false,
|
|
20
|
+
mipmaps = false
|
|
21
|
+
} = options?.['ktx2-basis-writer'] || {};
|
|
17
22
|
const {BasisEncoder} = await loadBasisEncoderModule(options);
|
|
18
23
|
const basisEncoder = new BasisEncoder();
|
|
19
24
|
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
// __VERSION__ is injected by babel-plugin-version-inline
|
|
2
|
-
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
3
|
-
const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';
|
|
4
|
-
|
|
5
|
-
// @ts-nocheck
|
|
6
1
|
import {loadLibrary} from '@loaders.gl/worker-utils';
|
|
7
2
|
|
|
8
|
-
const
|
|
9
|
-
|
|
3
|
+
export const BASIS_EXTERNAL_LIBRARIES = {
|
|
4
|
+
/** Basis transcoder, javascript wrapper part */
|
|
5
|
+
TRANSCODER: 'basis_transcoder.js',
|
|
6
|
+
/** Basis transcoder, compiled web assembly part */
|
|
7
|
+
TRANSCODER_WASM: 'basis_transcoder.wasm',
|
|
8
|
+
/** Basis encoder, javascript wrapper part */
|
|
9
|
+
ENCODER: 'basis_encoder.js',
|
|
10
|
+
/** Basis encoder, compiled web assembly part */
|
|
11
|
+
ENCODER_WASM: 'basis_encoder.wasm'
|
|
12
|
+
};
|
|
10
13
|
|
|
11
14
|
let loadBasisTranscoderPromise;
|
|
12
15
|
|
|
@@ -15,13 +18,13 @@ let loadBasisTranscoderPromise;
|
|
|
15
18
|
* @param options
|
|
16
19
|
* @returns {BasisFile} promise
|
|
17
20
|
*/
|
|
18
|
-
export async function
|
|
21
|
+
export async function loadBasisTranscoderModule(options) {
|
|
19
22
|
const modules = options.modules || {};
|
|
20
23
|
if (modules.basis) {
|
|
21
24
|
return modules.basis;
|
|
22
25
|
}
|
|
23
26
|
|
|
24
|
-
loadBasisTranscoderPromise = loadBasisTranscoderPromise ||
|
|
27
|
+
loadBasisTranscoderPromise = loadBasisTranscoderPromise || loadBasisTranscoder(options);
|
|
25
28
|
return await loadBasisTranscoderPromise;
|
|
26
29
|
}
|
|
27
30
|
|
|
@@ -30,19 +33,19 @@ export async function loadBasisTrascoderModule(options) {
|
|
|
30
33
|
* @param options
|
|
31
34
|
* @returns {BasisFile} promise
|
|
32
35
|
*/
|
|
33
|
-
async function
|
|
36
|
+
async function loadBasisTranscoder(options) {
|
|
34
37
|
let BASIS = null;
|
|
35
38
|
let wasmBinary = null;
|
|
36
39
|
|
|
37
40
|
[BASIS, wasmBinary] = await Promise.all([
|
|
38
|
-
await loadLibrary(
|
|
39
|
-
await loadLibrary(
|
|
41
|
+
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, 'textures', options),
|
|
42
|
+
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, 'textures', options)
|
|
40
43
|
]);
|
|
41
44
|
|
|
42
45
|
// Depends on how import happened...
|
|
43
46
|
// @ts-ignore TS2339: Property does not exist on type
|
|
44
47
|
BASIS = BASIS || globalThis.BASIS;
|
|
45
|
-
return await
|
|
48
|
+
return await initializeBasisTranscoderModule(BASIS, wasmBinary);
|
|
46
49
|
}
|
|
47
50
|
|
|
48
51
|
/**
|
|
@@ -51,7 +54,7 @@ async function loadBasisTrascoder(options) {
|
|
|
51
54
|
* @param wasmBinary - wasm part of the module
|
|
52
55
|
* @returns {BasisFile} promise
|
|
53
56
|
*/
|
|
54
|
-
function
|
|
57
|
+
function initializeBasisTranscoderModule(BasisModule, wasmBinary) {
|
|
55
58
|
const options: {wasmBinary?} = {};
|
|
56
59
|
|
|
57
60
|
if (wasmBinary) {
|
|
@@ -95,8 +98,8 @@ async function loadBasisEncoder(options) {
|
|
|
95
98
|
let wasmBinary = null;
|
|
96
99
|
|
|
97
100
|
[BASIS_ENCODER, wasmBinary] = await Promise.all([
|
|
98
|
-
await loadLibrary(
|
|
99
|
-
await loadLibrary(
|
|
101
|
+
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, 'textures', options),
|
|
102
|
+
await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, 'textures', options)
|
|
100
103
|
]);
|
|
101
104
|
|
|
102
105
|
// Depends on how import happened...
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
// @ts-nocheck
|
|
2
2
|
import {loadLibrary} from '@loaders.gl/worker-utils';
|
|
3
3
|
|
|
4
|
+
export const CRUNCH_EXTERNAL_LIBRARIES = {
|
|
5
|
+
/** Crunch decoder library. It is used as dynamically imported script */
|
|
6
|
+
DECODER: 'crunch.js'
|
|
7
|
+
};
|
|
8
|
+
|
|
4
9
|
/**
|
|
5
10
|
* Load crunch decoder module
|
|
6
11
|
* @param options - loader options
|
|
@@ -27,7 +32,7 @@ async function loadCrunch(options) {
|
|
|
27
32
|
return crunchModule;
|
|
28
33
|
}
|
|
29
34
|
|
|
30
|
-
let loadCrunchDecoder = await loadLibrary(
|
|
35
|
+
let loadCrunchDecoder = await loadLibrary(CRUNCH_EXTERNAL_LIBRARIES.DECODER, 'textures', options);
|
|
31
36
|
|
|
32
37
|
// Depends on how import happened...
|
|
33
38
|
// @ts-ignore TS2339: Property does not exist on type
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable indent */
|
|
2
2
|
import type {TextureLevel} from '@loaders.gl/schema';
|
|
3
|
-
import {loadBasisEncoderModule,
|
|
3
|
+
import {loadBasisEncoderModule, loadBasisTranscoderModule} from './basis-module-loader';
|
|
4
4
|
import {GL_EXTENSIONS_CONSTANTS} from '../gl-extensions';
|
|
5
5
|
import {getSupportedGPUTextureFormats} from '../utils/texture-formats';
|
|
6
6
|
import {isKTX} from './parse-ktx';
|
|
@@ -86,7 +86,7 @@ export default async function parseBasis(data: ArrayBuffer, options): Promise<Te
|
|
|
86
86
|
const fileConstructors = await loadBasisEncoderModule(options);
|
|
87
87
|
return parseKTX2File(fileConstructors.KTX2File, data, options);
|
|
88
88
|
}
|
|
89
|
-
const {BasisFile} = await
|
|
89
|
+
const {BasisFile} = await loadBasisTranscoderModule(options);
|
|
90
90
|
return parseBasisFile(BasisFile, data, options);
|
|
91
91
|
}
|
|
92
92
|
switch (options.basis.module) {
|
|
@@ -101,7 +101,7 @@ export default async function parseBasis(data: ArrayBuffer, options): Promise<Te
|
|
|
101
101
|
}
|
|
102
102
|
case 'transcoder':
|
|
103
103
|
default:
|
|
104
|
-
const {BasisFile} = await
|
|
104
|
+
const {BasisFile} = await loadBasisTranscoderModule(options);
|
|
105
105
|
return parseBasisFile(BasisFile, data, options);
|
|
106
106
|
}
|
|
107
107
|
}
|