@loaders.gl/textures 4.4.0-alpha.9 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +197 -1
- package/dist/basis-loader.d.ts +15 -10
- package/dist/basis-loader.d.ts.map +1 -1
- package/dist/basis-loader.js +0 -1
- package/dist/basis-loader.js.map +1 -1
- package/dist/basis-worker-node.js +797 -9971
- package/dist/basis-worker.js +300 -145
- package/dist/compressed-texture-loader.d.ts +0 -4
- package/dist/compressed-texture-loader.d.ts.map +1 -1
- package/dist/compressed-texture-loader.js +0 -1
- package/dist/compressed-texture-loader.js.map +1 -1
- package/dist/compressed-texture-worker.js +1110 -358
- package/dist/crunch-loader.d.ts +1 -5
- package/dist/crunch-loader.d.ts.map +1 -1
- package/dist/crunch-loader.js +1 -3
- package/dist/crunch-loader.js.map +1 -1
- package/dist/crunch-worker.js +168 -87
- package/dist/dist.dev.js +2647 -670
- package/dist/dist.min.js +1 -2
- package/dist/index.cjs +1642 -428
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +13 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/ktx2-basis-writer-worker-node.js +444 -9763
- package/dist/ktx2-basis-writer-worker.js +13 -3
- package/dist/lib/composite-image/image-texture-cube.d.ts +47 -0
- package/dist/lib/composite-image/image-texture-cube.d.ts.map +1 -0
- package/dist/lib/composite-image/image-texture-cube.js +42 -0
- package/dist/lib/composite-image/image-texture-cube.js.map +1 -0
- package/dist/lib/composite-image/parse-composite-image.d.ts +43 -0
- package/dist/lib/composite-image/parse-composite-image.d.ts.map +1 -0
- package/dist/lib/composite-image/parse-composite-image.js +437 -0
- package/dist/lib/composite-image/parse-composite-image.js.map +1 -0
- package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts.map +1 -1
- package/dist/lib/encoders/encode-ktx2-basis-texture.js +2 -1
- package/dist/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
- package/dist/lib/gl-extensions.d.ts +166 -58
- package/dist/lib/gl-extensions.d.ts.map +1 -1
- package/dist/lib/gl-extensions.js +177 -66
- package/dist/lib/gl-extensions.js.map +1 -1
- package/dist/lib/gl-types.d.ts +4 -0
- package/dist/lib/gl-types.d.ts.map +1 -0
- package/dist/lib/gl-types.js +5 -0
- package/dist/lib/gl-types.js.map +1 -0
- package/dist/lib/parsers/crunch-module-loader.d.ts +2 -2
- package/dist/lib/parsers/crunch-module-loader.d.ts.map +1 -1
- package/dist/lib/parsers/crunch-module-loader.js.map +1 -1
- package/dist/lib/parsers/parse-basis.d.ts +24 -2
- package/dist/lib/parsers/parse-basis.d.ts.map +1 -1
- package/dist/lib/parsers/parse-basis.js +262 -64
- package/dist/lib/parsers/parse-basis.js.map +1 -1
- package/dist/lib/parsers/parse-crunch.d.ts.map +1 -1
- package/dist/lib/parsers/parse-crunch.js +6 -6
- package/dist/lib/parsers/parse-crunch.js.map +1 -1
- package/dist/lib/parsers/parse-dds.d.ts.map +1 -1
- package/dist/lib/parsers/parse-dds.js +10 -11
- package/dist/lib/parsers/parse-dds.js.map +1 -1
- package/dist/lib/parsers/parse-hdr.d.ts +21 -0
- package/dist/lib/parsers/parse-hdr.d.ts.map +1 -0
- package/dist/lib/parsers/parse-hdr.js +305 -0
- package/dist/lib/parsers/parse-hdr.js.map +1 -0
- package/dist/lib/parsers/parse-ktx.d.ts.map +1 -1
- package/dist/lib/parsers/parse-ktx.js +10 -3
- package/dist/lib/parsers/parse-ktx.js.map +1 -1
- package/dist/lib/parsers/parse-pvr.d.ts.map +1 -1
- package/dist/lib/parsers/parse-pvr.js +31 -74
- package/dist/lib/parsers/parse-pvr.js.map +1 -1
- package/dist/lib/texture-api/generate-url.d.ts.map +1 -1
- package/dist/lib/texture-api/generate-url.js +2 -10
- package/dist/lib/texture-api/generate-url.js.map +1 -1
- package/dist/lib/texture-api/load-image-array.d.ts +6 -3
- package/dist/lib/texture-api/load-image-array.d.ts.map +1 -1
- package/dist/lib/texture-api/load-image-array.js +5 -3
- package/dist/lib/texture-api/load-image-array.js.map +1 -1
- package/dist/lib/texture-api/load-image-cube.d.ts +7 -11
- package/dist/lib/texture-api/load-image-cube.d.ts.map +1 -1
- package/dist/lib/texture-api/load-image-cube.js +8 -20
- package/dist/lib/texture-api/load-image-cube.js.map +1 -1
- package/dist/lib/texture-api/load-image.d.ts +6 -3
- package/dist/lib/texture-api/load-image.d.ts.map +1 -1
- package/dist/lib/texture-api/load-image.js +8 -4
- package/dist/lib/texture-api/load-image.js.map +1 -1
- package/dist/lib/texture-api/texture-api-types.d.ts +13 -0
- package/dist/lib/texture-api/texture-api-types.d.ts.map +1 -1
- package/dist/lib/utils/detect-supported-texture-formats.d.ts +14 -0
- package/dist/lib/utils/detect-supported-texture-formats.d.ts.map +1 -0
- package/dist/lib/utils/detect-supported-texture-formats.js +197 -0
- package/dist/lib/utils/detect-supported-texture-formats.js.map +1 -0
- package/dist/lib/utils/extract-mipmap-images.d.ts +6 -2
- package/dist/lib/utils/extract-mipmap-images.d.ts.map +1 -1
- package/dist/lib/utils/extract-mipmap-images.js +13 -2
- package/dist/lib/utils/extract-mipmap-images.js.map +1 -1
- package/dist/lib/utils/ktx-format-helper.d.ts +9 -1
- package/dist/lib/utils/ktx-format-helper.d.ts.map +1 -1
- package/dist/lib/utils/ktx-format-helper.js +76 -109
- package/dist/lib/utils/ktx-format-helper.js.map +1 -1
- package/dist/lib/utils/texture-format-map.d.ts +10 -0
- package/dist/lib/utils/texture-format-map.d.ts.map +1 -0
- package/dist/lib/utils/texture-format-map.js +87 -0
- package/dist/lib/utils/texture-format-map.js.map +1 -0
- package/dist/lib/utils/version.js +1 -1
- package/dist/lib/utils/version.js.map +1 -1
- package/dist/npy-loader.d.ts +2 -2
- package/dist/npy-worker.js +1 -1
- package/dist/radiance-hdr-loader.d.ts +25 -0
- package/dist/radiance-hdr-loader.d.ts.map +1 -0
- package/dist/radiance-hdr-loader.js +23 -0
- package/dist/radiance-hdr-loader.js.map +1 -0
- package/dist/texture-array-loader.d.ts +25 -0
- package/dist/texture-array-loader.d.ts.map +1 -0
- package/dist/texture-array-loader.js +24 -0
- package/dist/texture-array-loader.js.map +1 -0
- package/dist/texture-cube-array-loader.d.ts +25 -0
- package/dist/texture-cube-array-loader.d.ts.map +1 -0
- package/dist/texture-cube-array-loader.js +24 -0
- package/dist/texture-cube-array-loader.js.map +1 -0
- package/dist/texture-cube-loader.d.ts +25 -0
- package/dist/texture-cube-loader.d.ts.map +1 -0
- package/dist/texture-cube-loader.js +24 -0
- package/dist/texture-cube-loader.js.map +1 -0
- package/dist/texture-loader.d.ts +25 -0
- package/dist/texture-loader.d.ts.map +1 -0
- package/dist/texture-loader.js +24 -0
- package/dist/texture-loader.js.map +1 -0
- package/dist/workers/crunch-worker.d.ts +1 -3
- package/dist/workers/crunch-worker.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/basis-loader.ts +19 -9
- package/src/compressed-texture-loader.ts +0 -3
- package/src/crunch-loader.ts +1 -5
- package/src/index.ts +21 -4
- package/src/lib/composite-image/image-texture-cube.ts +49 -0
- package/src/lib/composite-image/parse-composite-image.ts +699 -0
- package/src/lib/encoders/encode-ktx2-basis-texture.ts +2 -1
- package/src/lib/gl-extensions.ts +188 -81
- package/src/lib/gl-types.ts +136 -0
- package/src/lib/parsers/crunch-module-loader.ts +4 -4
- package/src/lib/parsers/parse-basis.ts +326 -62
- package/src/lib/parsers/parse-crunch.ts +11 -8
- package/src/lib/parsers/parse-dds.ts +11 -12
- package/src/lib/parsers/parse-hdr.ts +426 -0
- package/src/lib/parsers/parse-ktx.ts +13 -3
- package/src/lib/parsers/parse-pvr.ts +33 -75
- package/src/lib/texture-api/generate-url.ts +2 -12
- package/src/lib/texture-api/load-image-array.ts +15 -6
- package/src/lib/texture-api/load-image-cube.ts +20 -34
- package/src/lib/texture-api/load-image.ts +19 -8
- package/src/lib/texture-api/texture-api-types.ts +15 -0
- package/src/lib/utils/detect-supported-texture-formats.ts +210 -0
- package/src/lib/utils/extract-mipmap-images.ts +23 -4
- package/src/lib/utils/ktx-format-helper.ts +135 -111
- package/src/lib/utils/texture-format-map.ts +162 -0
- package/src/radiance-hdr-loader.ts +36 -0
- package/src/texture-array-loader.ts +46 -0
- package/src/texture-cube-array-loader.ts +49 -0
- package/src/texture-cube-loader.ts +46 -0
- package/src/texture-loader.ts +49 -0
- package/dist/lib/utils/texture-formats.d.ts +0 -8
- package/dist/lib/utils/texture-formats.d.ts.map +0 -1
- package/dist/lib/utils/texture-formats.js +0 -51
- package/dist/lib/utils/texture-formats.js.map +0 -1
- package/src/lib/utils/texture-formats.ts +0 -59
package/dist/crunch-loader.d.ts
CHANGED
|
@@ -4,8 +4,6 @@ import type { TextureLevel } from '@loaders.gl/schema';
|
|
|
4
4
|
export type CrunchLoaderOptions = LoaderOptions & {
|
|
5
5
|
/** CrunchLoader options */
|
|
6
6
|
crunch?: {
|
|
7
|
-
/** @deprecated Specify where to load the Crunch decoder library */
|
|
8
|
-
libraryPath?: string;
|
|
9
7
|
/** Override the URL to the worker bundle (by default loads from unpkg.com) */
|
|
10
8
|
workerUrl?: string;
|
|
11
9
|
};
|
|
@@ -26,9 +24,7 @@ export declare const CrunchLoader: {
|
|
|
26
24
|
readonly mimeTypes: ["image/crn", "image/x-crn", "application/octet-stream"];
|
|
27
25
|
readonly binary: true;
|
|
28
26
|
readonly options: {
|
|
29
|
-
readonly crunch: {
|
|
30
|
-
readonly libraryPath: "libs/";
|
|
31
|
-
};
|
|
27
|
+
readonly crunch: {};
|
|
32
28
|
};
|
|
33
29
|
};
|
|
34
30
|
//# sourceMappingURL=crunch-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crunch-loader.d.ts","sourceRoot":"","sources":["../src/crunch-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAS,aAAa,EAAC,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGrD,2BAA2B;AAC3B,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,2BAA2B;IAC3B,MAAM,CAAC,EAAE;QACP,
|
|
1
|
+
{"version":3,"file":"crunch-loader.d.ts","sourceRoot":"","sources":["../src/crunch-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAS,aAAa,EAAC,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGrD,2BAA2B;AAC3B,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,2BAA2B;IAC3B,MAAM,CAAC,EAAE;QACP,8EAA8E;QAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY;uBACM,YAAY,EAAE;wBACxB,KAAK;;;;;;;;;;;;CAa6C,CAAC"}
|
package/dist/crunch-loader.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crunch-loader.js","sourceRoot":"","sources":["../src/crunch-loader.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,OAAO,EAAC,+BAA4B;
|
|
1
|
+
{"version":3,"file":"crunch-loader.js","sourceRoot":"","sources":["../src/crunch-loader.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAIpC,OAAO,EAAC,OAAO,EAAC,+BAA4B;AAW5C;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,IAAiC;IAC3C,SAAS,EAAE,IAAa;IAExB,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,CAAC,KAAK,CAAC;IACnB,SAAS,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,0BAA0B,CAAC;IACnE,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE;QACP,MAAM,EAAE,EAAE;KACX;CACoE,CAAC"}
|
package/dist/crunch-worker.js
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
globalThis._loadersgl_.version = NPM_TAG;
|
|
30
30
|
warningIssued = true;
|
|
31
31
|
} else {
|
|
32
|
-
globalThis._loadersgl_.version = "4.4.0
|
|
32
|
+
globalThis._loadersgl_.version = "4.4.0";
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
return globalThis._loadersgl_.version;
|
|
@@ -183,6 +183,16 @@
|
|
|
183
183
|
|
|
184
184
|
// ../worker-utils/src/lib/library-utils/library-utils.ts
|
|
185
185
|
var loadLibraryPromises = {};
|
|
186
|
+
function extractLoadLibraryOptions(options = {}) {
|
|
187
|
+
const useLocalLibraries = options.useLocalLibraries ?? options.core?.useLocalLibraries;
|
|
188
|
+
const CDN = options.CDN ?? options.core?.CDN;
|
|
189
|
+
const modules = options.modules;
|
|
190
|
+
return {
|
|
191
|
+
...useLocalLibraries !== void 0 ? { useLocalLibraries } : {},
|
|
192
|
+
...CDN !== void 0 ? { CDN } : {},
|
|
193
|
+
...modules !== void 0 ? { modules } : {}
|
|
194
|
+
};
|
|
195
|
+
}
|
|
186
196
|
async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
|
|
187
197
|
if (moduleName) {
|
|
188
198
|
libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
|
|
@@ -379,7 +389,7 @@
|
|
|
379
389
|
}
|
|
380
390
|
|
|
381
391
|
// src/lib/utils/version.ts
|
|
382
|
-
var VERSION2 = true ? "4.4.0
|
|
392
|
+
var VERSION2 = true ? "4.4.0" : "latest";
|
|
383
393
|
|
|
384
394
|
// src/crunch-loader.ts
|
|
385
395
|
var CrunchLoader = {
|
|
@@ -394,9 +404,7 @@
|
|
|
394
404
|
mimeTypes: ["image/crn", "image/x-crn", "application/octet-stream"],
|
|
395
405
|
binary: true,
|
|
396
406
|
options: {
|
|
397
|
-
crunch: {
|
|
398
|
-
libraryPath: "libs/"
|
|
399
|
-
}
|
|
407
|
+
crunch: {}
|
|
400
408
|
}
|
|
401
409
|
};
|
|
402
410
|
|
|
@@ -425,92 +433,173 @@
|
|
|
425
433
|
}
|
|
426
434
|
|
|
427
435
|
// src/lib/gl-extensions.ts
|
|
428
|
-
var
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
436
|
+
var GL_RGBA32F = 34836;
|
|
437
|
+
var GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 33776;
|
|
438
|
+
var GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 33777;
|
|
439
|
+
var GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 33778;
|
|
440
|
+
var GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 33779;
|
|
441
|
+
var GL_COMPRESSED_R11_EAC = 37488;
|
|
442
|
+
var GL_COMPRESSED_SIGNED_R11_EAC = 37489;
|
|
443
|
+
var GL_COMPRESSED_RG11_EAC = 37490;
|
|
444
|
+
var GL_COMPRESSED_SIGNED_RG11_EAC = 37491;
|
|
445
|
+
var GL_COMPRESSED_RGB8_ETC2 = 37492;
|
|
446
|
+
var GL_COMPRESSED_RGBA8_ETC2_EAC = 37493;
|
|
447
|
+
var GL_COMPRESSED_SRGB8_ETC2 = 37494;
|
|
448
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 37495;
|
|
449
|
+
var GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37496;
|
|
450
|
+
var GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 37497;
|
|
451
|
+
var GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 35840;
|
|
452
|
+
var GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 35841;
|
|
453
|
+
var GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 35842;
|
|
454
|
+
var GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 35843;
|
|
455
|
+
var GL_COMPRESSED_RGB_ETC1_WEBGL = 36196;
|
|
456
|
+
var GL_COMPRESSED_RGB_ATC_WEBGL = 35986;
|
|
457
|
+
var GL_COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL = 35987;
|
|
458
|
+
var GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL = 34798;
|
|
459
|
+
var GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 37808;
|
|
460
|
+
var GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 37809;
|
|
461
|
+
var GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 37810;
|
|
462
|
+
var GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 37811;
|
|
463
|
+
var GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 37812;
|
|
464
|
+
var GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 37813;
|
|
465
|
+
var GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 37814;
|
|
466
|
+
var GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 37815;
|
|
467
|
+
var GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 37816;
|
|
468
|
+
var GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 37817;
|
|
469
|
+
var GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 37818;
|
|
470
|
+
var GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 37819;
|
|
471
|
+
var GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 37820;
|
|
472
|
+
var GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 37821;
|
|
473
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 37840;
|
|
474
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 37841;
|
|
475
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 37842;
|
|
476
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 37843;
|
|
477
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 37844;
|
|
478
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 37845;
|
|
479
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 37846;
|
|
480
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 37847;
|
|
481
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 37848;
|
|
482
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 37849;
|
|
483
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 37850;
|
|
484
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 37851;
|
|
485
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 37852;
|
|
486
|
+
var GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 37853;
|
|
487
|
+
var GL_COMPRESSED_RED_RGTC1_EXT = 36283;
|
|
488
|
+
var GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 36284;
|
|
489
|
+
var GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 36285;
|
|
490
|
+
var GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 36286;
|
|
491
|
+
var GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 35916;
|
|
492
|
+
var GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 35917;
|
|
493
|
+
var GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 35918;
|
|
494
|
+
var GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 35919;
|
|
495
|
+
|
|
496
|
+
// src/lib/utils/texture-format-map.ts
|
|
497
|
+
var WEBGL_TO_TEXTURE_FORMAT = {
|
|
498
|
+
[GL_RGBA32F]: "rgba32float",
|
|
499
|
+
[GL_COMPRESSED_RGB_S3TC_DXT1_EXT]: "bc1-rgb-unorm-webgl",
|
|
500
|
+
[GL_COMPRESSED_SRGB_S3TC_DXT1_EXT]: "bc1-rgb-unorm-srgb-webgl",
|
|
501
|
+
[GL_COMPRESSED_RGBA_S3TC_DXT1_EXT]: "bc1-rgba-unorm",
|
|
502
|
+
[GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT]: "bc1-rgba-unorm-srgb",
|
|
503
|
+
[GL_COMPRESSED_RGBA_S3TC_DXT3_EXT]: "bc2-rgba-unorm",
|
|
504
|
+
[GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT]: "bc2-rgba-unorm-srgb",
|
|
505
|
+
[GL_COMPRESSED_RGBA_S3TC_DXT5_EXT]: "bc3-rgba-unorm",
|
|
506
|
+
[GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT]: "bc3-rgba-unorm-srgb",
|
|
507
|
+
[GL_COMPRESSED_RED_RGTC1_EXT]: "bc4-r-unorm",
|
|
508
|
+
[GL_COMPRESSED_SIGNED_RED_RGTC1_EXT]: "bc4-r-snorm",
|
|
509
|
+
[GL_COMPRESSED_RED_GREEN_RGTC2_EXT]: "bc5-rg-unorm",
|
|
510
|
+
[GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT]: "bc5-rg-snorm",
|
|
511
|
+
[GL_COMPRESSED_RGB8_ETC2]: "etc2-rgb8unorm",
|
|
512
|
+
[GL_COMPRESSED_SRGB8_ETC2]: "etc2-rgb8unorm-srgb",
|
|
513
|
+
[GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2]: "etc2-rgb8a1unorm",
|
|
514
|
+
[GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2]: "etc2-rgb8a1unorm-srgb",
|
|
515
|
+
[GL_COMPRESSED_RGBA8_ETC2_EAC]: "etc2-rgba8unorm",
|
|
516
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC]: "etc2-rgba8unorm-srgb",
|
|
517
|
+
[GL_COMPRESSED_R11_EAC]: "eac-r11unorm",
|
|
518
|
+
[GL_COMPRESSED_SIGNED_R11_EAC]: "eac-r11snorm",
|
|
519
|
+
[GL_COMPRESSED_RG11_EAC]: "eac-rg11unorm",
|
|
520
|
+
[GL_COMPRESSED_SIGNED_RG11_EAC]: "eac-rg11snorm",
|
|
521
|
+
[GL_COMPRESSED_RGBA_ASTC_4x4_KHR]: "astc-4x4-unorm",
|
|
522
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR]: "astc-4x4-unorm-srgb",
|
|
523
|
+
[GL_COMPRESSED_RGBA_ASTC_5x4_KHR]: "astc-5x4-unorm",
|
|
524
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR]: "astc-5x4-unorm-srgb",
|
|
525
|
+
[GL_COMPRESSED_RGBA_ASTC_5x5_KHR]: "astc-5x5-unorm",
|
|
526
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR]: "astc-5x5-unorm-srgb",
|
|
527
|
+
[GL_COMPRESSED_RGBA_ASTC_6x5_KHR]: "astc-6x5-unorm",
|
|
528
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR]: "astc-6x5-unorm-srgb",
|
|
529
|
+
[GL_COMPRESSED_RGBA_ASTC_6x6_KHR]: "astc-6x6-unorm",
|
|
530
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR]: "astc-6x6-unorm-srgb",
|
|
531
|
+
[GL_COMPRESSED_RGBA_ASTC_8x5_KHR]: "astc-8x5-unorm",
|
|
532
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR]: "astc-8x5-unorm-srgb",
|
|
533
|
+
[GL_COMPRESSED_RGBA_ASTC_8x6_KHR]: "astc-8x6-unorm",
|
|
534
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR]: "astc-8x6-unorm-srgb",
|
|
535
|
+
[GL_COMPRESSED_RGBA_ASTC_8x8_KHR]: "astc-8x8-unorm",
|
|
536
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR]: "astc-8x8-unorm-srgb",
|
|
537
|
+
[GL_COMPRESSED_RGBA_ASTC_10x5_KHR]: "astc-10x5-unorm",
|
|
538
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR]: "astc-10x5-unorm-srgb",
|
|
539
|
+
[GL_COMPRESSED_RGBA_ASTC_10x6_KHR]: "astc-10x6-unorm",
|
|
540
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR]: "astc-10x6-unorm-srgb",
|
|
541
|
+
[GL_COMPRESSED_RGBA_ASTC_10x8_KHR]: "astc-10x8-unorm",
|
|
542
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR]: "astc-10x8-unorm-srgb",
|
|
543
|
+
[GL_COMPRESSED_RGBA_ASTC_10x10_KHR]: "astc-10x10-unorm",
|
|
544
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR]: "astc-10x10-unorm-srgb",
|
|
545
|
+
[GL_COMPRESSED_RGBA_ASTC_12x10_KHR]: "astc-12x10-unorm",
|
|
546
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR]: "astc-12x10-unorm-srgb",
|
|
547
|
+
[GL_COMPRESSED_RGBA_ASTC_12x12_KHR]: "astc-12x12-unorm",
|
|
548
|
+
[GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR]: "astc-12x12-unorm-srgb",
|
|
549
|
+
[GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG]: "pvrtc-rgb4unorm-webgl",
|
|
550
|
+
[GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG]: "pvrtc-rgba4unorm-webgl",
|
|
551
|
+
[GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG]: "pvrtc-rgb2unorm-webgl",
|
|
552
|
+
[GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG]: "pvrtc-rgba2unorm-webgl",
|
|
553
|
+
[GL_COMPRESSED_RGB_ETC1_WEBGL]: "etc1-rgb-unorm-webgl",
|
|
554
|
+
[GL_COMPRESSED_RGB_ATC_WEBGL]: "atc-rgb-unorm-webgl",
|
|
555
|
+
[GL_COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL]: "atc-rgba-unorm-webgl",
|
|
556
|
+
[GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL]: "atc-rgbai-unorm-webgl"
|
|
495
557
|
};
|
|
558
|
+
var TEXTURE_FORMAT_TO_WEBGL = Object.fromEntries(
|
|
559
|
+
Object.entries(WEBGL_TO_TEXTURE_FORMAT).map(([format, textureFormat]) => [
|
|
560
|
+
textureFormat,
|
|
561
|
+
Number(format)
|
|
562
|
+
])
|
|
563
|
+
);
|
|
564
|
+
function getTextureFormatFromWebGLFormat(format) {
|
|
565
|
+
if (format === void 0) {
|
|
566
|
+
return void 0;
|
|
567
|
+
}
|
|
568
|
+
return WEBGL_TO_TEXTURE_FORMAT[format];
|
|
569
|
+
}
|
|
570
|
+
function getWebGLFormatFromTextureFormat(textureFormat) {
|
|
571
|
+
if (textureFormat === void 0) {
|
|
572
|
+
return void 0;
|
|
573
|
+
}
|
|
574
|
+
return TEXTURE_FORMAT_TO_WEBGL[textureFormat];
|
|
575
|
+
}
|
|
496
576
|
|
|
497
577
|
// src/lib/utils/extract-mipmap-images.ts
|
|
498
578
|
function extractMipmapImages(data, options) {
|
|
499
579
|
const images = new Array(options.mipMapLevels);
|
|
580
|
+
const textureFormat = options.textureFormat || getTextureFormatFromWebGLFormat(options.internalFormat);
|
|
581
|
+
const format = options.internalFormat || getWebGLFormatFromTextureFormat(options.textureFormat);
|
|
500
582
|
let levelWidth = options.width;
|
|
501
583
|
let levelHeight = options.height;
|
|
502
584
|
let offset = 0;
|
|
503
585
|
for (let i = 0; i < options.mipMapLevels; ++i) {
|
|
504
586
|
const levelSize = getLevelSize(options, levelWidth, levelHeight, data, i);
|
|
505
587
|
const levelData = getLevelData(data, i, offset, levelSize);
|
|
506
|
-
|
|
588
|
+
const image = {
|
|
589
|
+
shape: "texture-level",
|
|
507
590
|
compressed: true,
|
|
508
|
-
format: options.internalFormat,
|
|
509
591
|
data: levelData,
|
|
510
592
|
width: levelWidth,
|
|
511
593
|
height: levelHeight,
|
|
512
594
|
levelSize
|
|
513
595
|
};
|
|
596
|
+
if (format !== void 0) {
|
|
597
|
+
image.format = format;
|
|
598
|
+
}
|
|
599
|
+
if (textureFormat) {
|
|
600
|
+
image.textureFormat = textureFormat;
|
|
601
|
+
}
|
|
602
|
+
images[i] = image;
|
|
514
603
|
levelWidth = Math.max(1, levelWidth >> 1);
|
|
515
604
|
levelHeight = Math.max(1, levelHeight >> 1);
|
|
516
605
|
offset += levelSize;
|
|
@@ -531,14 +620,6 @@
|
|
|
531
620
|
}
|
|
532
621
|
|
|
533
622
|
// src/lib/parsers/parse-dds.ts
|
|
534
|
-
var DDS_PIXEL_FORMATS = {
|
|
535
|
-
DXT1: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
|
|
536
|
-
DXT3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
|
|
537
|
-
DXT5: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
|
|
538
|
-
"ATC ": GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ATC_WEBGL,
|
|
539
|
-
ATCA: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
|
|
540
|
-
ATCI: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
|
|
541
|
-
};
|
|
542
623
|
function getDxt1LevelSize(width, height) {
|
|
543
624
|
return (width + 3 >> 2) * (height + 3 >> 2) * 8;
|
|
544
625
|
}
|
|
@@ -557,22 +638,22 @@
|
|
|
557
638
|
};
|
|
558
639
|
var DXT_FORMAT_MAP = {
|
|
559
640
|
[CRN_FORMAT.cCRNFmtDXT1]: {
|
|
560
|
-
|
|
641
|
+
textureFormat: "bc1-rgb-unorm-webgl",
|
|
561
642
|
sizeFunction: getDxt1LevelSize
|
|
562
643
|
},
|
|
563
644
|
[CRN_FORMAT.cCRNFmtDXT3]: {
|
|
564
|
-
|
|
645
|
+
textureFormat: "bc2-rgba-unorm",
|
|
565
646
|
sizeFunction: getDxtXLevelSize
|
|
566
647
|
},
|
|
567
648
|
[CRN_FORMAT.cCRNFmtDXT5]: {
|
|
568
|
-
|
|
649
|
+
textureFormat: "bc3-rgba-unorm",
|
|
569
650
|
sizeFunction: getDxtXLevelSize
|
|
570
651
|
}
|
|
571
652
|
};
|
|
572
653
|
var cachedDstSize = 0;
|
|
573
654
|
var dst;
|
|
574
655
|
async function parseCrunch(data, options) {
|
|
575
|
-
const crunchModule2 = await loadCrunchModule(options);
|
|
656
|
+
const crunchModule2 = await loadCrunchModule(extractLoadLibraryOptions(options));
|
|
576
657
|
const srcSize = data.byteLength;
|
|
577
658
|
const bytes = new Uint8Array(data);
|
|
578
659
|
const src = crunchModule2._malloc(srcSize);
|
|
@@ -602,7 +683,7 @@
|
|
|
602
683
|
width,
|
|
603
684
|
height,
|
|
604
685
|
sizeFunction,
|
|
605
|
-
|
|
686
|
+
textureFormat: DXT_FORMAT_MAP[format].textureFormat
|
|
606
687
|
});
|
|
607
688
|
}
|
|
608
689
|
function arrayBufferCopy(srcData, dstData, dstByteOffset, numBytes) {
|