@loaders.gl/textures 4.2.0-alpha.4 → 4.2.0-alpha.5
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-loader.js +27 -19
- package/dist/compressed-texture-loader.js +51 -31
- package/dist/compressed-texture-writer.js +32 -19
- package/dist/crunch-loader.js +19 -13
- package/dist/dist.dev.js +326 -212
- package/dist/dist.min.js +10 -0
- package/dist/index.cjs +41 -60
- package/dist/index.cjs.map +7 -0
- package/dist/index.d.ts +16 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -13
- package/dist/ktx2-basis-writer.js +21 -15
- package/dist/lib/encoders/encode-ktx.js +6 -3
- package/dist/lib/encoders/encode-ktx2-basis-texture.js +38 -33
- package/dist/lib/encoders/encode-texture.d.ts +1 -1
- package/dist/lib/encoders/encode-texture.d.ts.map +1 -1
- package/dist/lib/encoders/encode-texture.js +23 -9
- package/dist/lib/gl-extensions.js +70 -59
- package/dist/lib/parsers/basis-module-loader.js +97 -61
- package/dist/lib/parsers/crunch-module-loader.js +29 -13
- package/dist/lib/parsers/parse-basis.js +217 -205
- package/dist/lib/parsers/parse-compressed-texture.js +20 -11
- package/dist/lib/parsers/parse-crunch.js +89 -59
- package/dist/lib/parsers/parse-dds.js +82 -53
- package/dist/lib/parsers/parse-ktx.js +37 -18
- package/dist/lib/parsers/parse-npy.js +70 -53
- package/dist/lib/parsers/parse-pvr.js +203 -112
- package/dist/lib/texture-api/async-deep-map.js +33 -28
- package/dist/lib/texture-api/deep-load.js +7 -5
- package/dist/lib/texture-api/generate-url.d.ts +1 -1
- package/dist/lib/texture-api/generate-url.d.ts.map +1 -1
- package/dist/lib/texture-api/generate-url.js +12 -10
- package/dist/lib/texture-api/load-image-array.d.ts +1 -1
- package/dist/lib/texture-api/load-image-array.d.ts.map +1 -1
- package/dist/lib/texture-api/load-image-array.js +13 -15
- package/dist/lib/texture-api/load-image-cube.d.ts +1 -1
- package/dist/lib/texture-api/load-image-cube.d.ts.map +1 -1
- package/dist/lib/texture-api/load-image-cube.js +32 -51
- package/dist/lib/texture-api/load-image.d.ts +1 -1
- package/dist/lib/texture-api/load-image.d.ts.map +1 -1
- package/dist/lib/texture-api/load-image.js +30 -36
- package/dist/lib/texture-api/texture-api-types.js +3 -1
- package/dist/lib/utils/extract-mipmap-images.js +43 -29
- package/dist/lib/utils/ktx-format-helper.js +119 -68
- package/dist/lib/utils/texture-formats.js +40 -26
- package/dist/lib/utils/version.js +6 -1
- package/dist/npy-loader.d.ts +1 -1
- package/dist/npy-loader.d.ts.map +1 -1
- package/dist/npy-loader.js +24 -15
- package/dist/workers/basis-worker-node.js +4 -1
- package/dist/workers/basis-worker.js +3 -1
- package/dist/workers/compressed-texture-worker.js +4 -1
- package/dist/workers/crunch-worker.d.ts +1 -1
- package/dist/workers/crunch-worker.d.ts.map +1 -1
- package/dist/workers/crunch-worker.js +8 -3
- package/dist/workers/ktx2-basis-writer-worker-node.js +23 -26
- package/dist/workers/ktx2-basis-writer-worker.js +22 -26
- package/dist/workers/npy-worker.js +3 -1
- package/package.json +13 -9
- package/dist/basis-loader.js.map +0 -1
- package/dist/compressed-texture-loader.js.map +0 -1
- package/dist/compressed-texture-writer.js.map +0 -1
- package/dist/crunch-loader.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/ktx2-basis-writer.js.map +0 -1
- package/dist/lib/encoders/encode-ktx.js.map +0 -1
- package/dist/lib/encoders/encode-ktx2-basis-texture.js.map +0 -1
- package/dist/lib/encoders/encode-texture.js.map +0 -1
- package/dist/lib/gl-extensions.js.map +0 -1
- package/dist/lib/parsers/basis-module-loader.js.map +0 -1
- package/dist/lib/parsers/crunch-module-loader.js.map +0 -1
- package/dist/lib/parsers/parse-basis.js.map +0 -1
- package/dist/lib/parsers/parse-compressed-texture.js.map +0 -1
- package/dist/lib/parsers/parse-crunch.js.map +0 -1
- package/dist/lib/parsers/parse-dds.js.map +0 -1
- package/dist/lib/parsers/parse-ktx.js.map +0 -1
- package/dist/lib/parsers/parse-npy.js.map +0 -1
- package/dist/lib/parsers/parse-pvr.js.map +0 -1
- package/dist/lib/texture-api/async-deep-map.js.map +0 -1
- package/dist/lib/texture-api/deep-load.js.map +0 -1
- package/dist/lib/texture-api/generate-url.js.map +0 -1
- package/dist/lib/texture-api/load-image-array.js.map +0 -1
- package/dist/lib/texture-api/load-image-cube.js.map +0 -1
- package/dist/lib/texture-api/load-image.js.map +0 -1
- package/dist/lib/texture-api/texture-api-types.js.map +0 -1
- package/dist/lib/utils/extract-mipmap-images.js.map +0 -1
- package/dist/lib/utils/ktx-format-helper.js.map +0 -1
- package/dist/lib/utils/texture-formats.js.map +0 -1
- package/dist/lib/utils/version.js.map +0 -1
- package/dist/libs/libs/README.md +0 -9
- package/dist/libs/libs/basis_encoder.js +0 -21
- package/dist/libs/libs/basis_encoder.wasm +0 -0
- package/dist/libs/libs/basis_transcoder.js +0 -22
- package/dist/libs/libs/basis_transcoder.wasm +0 -0
- package/dist/libs/libs/crunch.js +0 -136
- package/dist/npy-loader.js.map +0 -1
- package/dist/workers/basis-worker-node.js.map +0 -1
- package/dist/workers/basis-worker.js.map +0 -1
- package/dist/workers/compressed-texture-worker.js.map +0 -1
- package/dist/workers/crunch-worker.js.map +0 -1
- package/dist/workers/ktx2-basis-writer-worker-node.js.map +0 -1
- package/dist/workers/ktx2-basis-writer-worker.js.map +0 -1
- package/dist/workers/npy-worker.js.map +0 -1
package/dist/basis-loader.js
CHANGED
|
@@ -1,26 +1,34 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { VERSION } from "./lib/utils/version.js";
|
|
2
5
|
import parseBasis from "./lib/parsers/parse-basis.js";
|
|
6
|
+
/**
|
|
7
|
+
* Worker loader for Basis super compressed textures
|
|
8
|
+
*/
|
|
3
9
|
export const BasisWorkerLoader = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
name: 'Basis',
|
|
11
|
+
id: 'basis',
|
|
12
|
+
module: 'textures',
|
|
13
|
+
version: VERSION,
|
|
14
|
+
worker: true,
|
|
15
|
+
extensions: ['basis', 'ktx2'],
|
|
16
|
+
mimeTypes: ['application/octet-stream', 'image/ktx2'],
|
|
17
|
+
tests: ['sB'],
|
|
18
|
+
binary: true,
|
|
19
|
+
options: {
|
|
20
|
+
basis: {
|
|
21
|
+
format: 'auto', // gl context doesn't exist on a worker thread
|
|
22
|
+
libraryPath: 'libs/',
|
|
23
|
+
containerFormat: 'auto', // 'basis' || 'ktx2' || 'auto'
|
|
24
|
+
module: 'transcoder' // 'transcoder' || 'encoder'
|
|
25
|
+
}
|
|
19
26
|
}
|
|
20
|
-
}
|
|
21
27
|
};
|
|
28
|
+
/**
|
|
29
|
+
* Loader for Basis super compressed textures
|
|
30
|
+
*/
|
|
22
31
|
export const BasisLoader = {
|
|
23
|
-
|
|
24
|
-
|
|
32
|
+
...BasisWorkerLoader,
|
|
33
|
+
parse: parseBasis
|
|
25
34
|
};
|
|
26
|
-
//# sourceMappingURL=basis-loader.js.map
|
|
@@ -1,40 +1,60 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { VERSION } from "./lib/utils/version.js";
|
|
2
5
|
import { parseCompressedTexture } from "./lib/parsers/parse-compressed-texture.js";
|
|
3
6
|
import parseBasis from "./lib/parsers/parse-basis.js";
|
|
7
|
+
/**
|
|
8
|
+
* Worker Loader for KTX, DDS, and PVR texture container formats
|
|
9
|
+
*/
|
|
4
10
|
export const CompressedTextureWorkerLoader = {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
name: 'Texture Containers',
|
|
12
|
+
id: 'compressed-texture',
|
|
13
|
+
module: 'textures',
|
|
14
|
+
version: VERSION,
|
|
15
|
+
worker: true,
|
|
16
|
+
extensions: [
|
|
17
|
+
'ktx',
|
|
18
|
+
'ktx2',
|
|
19
|
+
'dds', // WEBGL_compressed_texture_s3tc, WEBGL_compressed_texture_atc
|
|
20
|
+
'pvr' // WEBGL_compressed_texture_pvrtc
|
|
21
|
+
],
|
|
22
|
+
mimeTypes: [
|
|
23
|
+
'image/ktx2',
|
|
24
|
+
'image/ktx',
|
|
25
|
+
'image/vnd-ms.dds',
|
|
26
|
+
'image/x-dds',
|
|
27
|
+
'application/octet-stream'
|
|
28
|
+
],
|
|
29
|
+
binary: true,
|
|
30
|
+
options: {
|
|
31
|
+
'compressed-texture': {
|
|
32
|
+
libraryPath: 'libs/',
|
|
33
|
+
useBasis: false
|
|
34
|
+
}
|
|
17
35
|
}
|
|
18
|
-
}
|
|
19
36
|
};
|
|
37
|
+
/**
|
|
38
|
+
* Loader for KTX, DDS, and PVR texture container formats
|
|
39
|
+
*/
|
|
20
40
|
export const CompressedTextureLoader = {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
41
|
+
...CompressedTextureWorkerLoader,
|
|
42
|
+
parse: async (arrayBuffer, options) => {
|
|
43
|
+
if (options?.['compressed-texture']?.useBasis) {
|
|
44
|
+
// @ts-expect-error TODO not allowed to modify inputs
|
|
45
|
+
options.basis = {
|
|
46
|
+
format: {
|
|
47
|
+
alpha: 'BC3',
|
|
48
|
+
noAlpha: 'BC1'
|
|
49
|
+
},
|
|
50
|
+
// @ts-expect-error TODO not allowed to modify inputs
|
|
51
|
+
...options.basis,
|
|
52
|
+
containerFormat: 'ktx2',
|
|
53
|
+
module: 'encoder'
|
|
54
|
+
};
|
|
55
|
+
const result = await parseBasis(arrayBuffer, options);
|
|
56
|
+
return result[0];
|
|
57
|
+
}
|
|
58
|
+
return parseCompressedTexture(arrayBuffer);
|
|
36
59
|
}
|
|
37
|
-
return parseCompressedTexture(arrayBuffer);
|
|
38
|
-
}
|
|
39
60
|
};
|
|
40
|
-
//# sourceMappingURL=compressed-texture-loader.js.map
|
|
@@ -1,24 +1,37 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { VERSION } from "./lib/utils/version.js";
|
|
2
5
|
import { encodeImageURLToCompressedTextureURL } from "./lib/encoders/encode-texture.js";
|
|
6
|
+
/**
|
|
7
|
+
* DDS Texture Container Exporter
|
|
8
|
+
*/
|
|
3
9
|
export const CompressedTextureWriter = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
name: 'DDS Texture Container',
|
|
11
|
+
id: 'dds',
|
|
12
|
+
module: 'textures',
|
|
13
|
+
version: VERSION,
|
|
14
|
+
extensions: ['dds'],
|
|
15
|
+
options: {
|
|
16
|
+
texture: {
|
|
17
|
+
format: 'auto',
|
|
18
|
+
compression: 'auto',
|
|
19
|
+
quality: 'auto',
|
|
20
|
+
mipmap: false,
|
|
21
|
+
flipY: false,
|
|
22
|
+
toolFlags: ''
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
encodeURLtoURL: encodeImageURLToCompressedTextureURL,
|
|
26
|
+
encode() {
|
|
27
|
+
throw new Error('Not implemented');
|
|
17
28
|
}
|
|
18
|
-
},
|
|
19
|
-
encodeURLtoURL: encodeImageURLToCompressedTextureURL,
|
|
20
|
-
encode() {
|
|
21
|
-
throw new Error('Not implemented');
|
|
22
|
-
}
|
|
23
29
|
};
|
|
24
|
-
|
|
30
|
+
// TYPE TESTS - TODO find a better way than exporting junk
|
|
31
|
+
// export const _TypecheckCompressedTextureWriter: typeof CompressedTextureWriter & {
|
|
32
|
+
// encodeURLtoURL: (
|
|
33
|
+
// inputUrl: string,
|
|
34
|
+
// outputUrl: string,
|
|
35
|
+
// options?: CompressedTextureWriterOptions
|
|
36
|
+
// ) => Promise<string>;
|
|
37
|
+
// } = CompressedTextureWriter;
|
package/dist/crunch-loader.js
CHANGED
|
@@ -1,17 +1,23 @@
|
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
1
4
|
import { VERSION } from "./lib/utils/version.js";
|
|
5
|
+
/**
|
|
6
|
+
* Worker loader for the Crunch compressed texture container format
|
|
7
|
+
* @note We avoid bundling crunch - it is a rare format and large lib, so we only offer worker loader
|
|
8
|
+
*/
|
|
2
9
|
export const CrunchLoader = {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
id: 'crunch',
|
|
11
|
+
name: 'Crunch',
|
|
12
|
+
module: 'textures',
|
|
13
|
+
version: VERSION,
|
|
14
|
+
worker: true,
|
|
15
|
+
extensions: ['crn'],
|
|
16
|
+
mimeTypes: ['image/crn', 'image/x-crn', 'application/octet-stream'],
|
|
17
|
+
binary: true,
|
|
18
|
+
options: {
|
|
19
|
+
crunch: {
|
|
20
|
+
libraryPath: 'libs/'
|
|
21
|
+
}
|
|
14
22
|
}
|
|
15
|
-
}
|
|
16
23
|
};
|
|
17
|
-
//# sourceMappingURL=crunch-loader.js.map
|