@loaders.gl/gltf 3.3.0-alpha.1 → 3.3.0-alpha.10
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/dist.min.js +236 -148
- package/dist/es5/bundle.js +0 -1
- package/dist/es5/bundle.js.map +1 -1
- package/dist/es5/glb-loader.js +2 -13
- package/dist/es5/glb-loader.js.map +1 -1
- package/dist/es5/glb-writer.js +3 -6
- package/dist/es5/glb-writer.js.map +1 -1
- package/dist/es5/gltf-loader.js +11 -23
- package/dist/es5/gltf-loader.js.map +1 -1
- package/dist/es5/gltf-writer.js +2 -5
- package/dist/es5/gltf-writer.js.map +1 -1
- package/dist/es5/index.js +10 -17
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/api/gltf-extensions.js +15 -47
- package/dist/es5/lib/api/gltf-extensions.js.map +1 -1
- package/dist/es5/lib/api/gltf-scenegraph.js +128 -96
- package/dist/es5/lib/api/gltf-scenegraph.js.map +1 -1
- package/dist/es5/lib/api/normalize-gltf-v1.js +34 -72
- package/dist/es5/lib/api/normalize-gltf-v1.js.map +1 -1
- package/dist/es5/lib/api/post-process-gltf.js +26 -89
- package/dist/es5/lib/api/post-process-gltf.js.map +1 -1
- package/dist/es5/lib/encoders/encode-glb.js +10 -8
- package/dist/es5/lib/encoders/encode-glb.js.map +1 -1
- package/dist/es5/lib/encoders/encode-gltf.js +3 -6
- package/dist/es5/lib/encoders/encode-gltf.js.map +1 -1
- package/dist/es5/lib/extensions/EXT_meshopt_compression.js +2 -28
- package/dist/es5/lib/extensions/EXT_meshopt_compression.js.map +1 -1
- package/dist/es5/lib/extensions/EXT_texture_webp.js +5 -18
- package/dist/es5/lib/extensions/EXT_texture_webp.js.map +1 -1
- package/dist/es5/lib/extensions/KHR_binary_gltf.js +5 -12
- package/dist/es5/lib/extensions/KHR_binary_gltf.js.map +1 -1
- package/dist/es5/lib/extensions/KHR_draco_mesh_compression.js +11 -79
- package/dist/es5/lib/extensions/KHR_draco_mesh_compression.js.map +1 -1
- package/dist/es5/lib/extensions/KHR_texture_basisu.js +5 -14
- package/dist/es5/lib/extensions/KHR_texture_basisu.js.map +1 -1
- package/dist/es5/lib/extensions/KHR_texture_transform.js +17 -72
- package/dist/es5/lib/extensions/KHR_texture_transform.js.map +1 -1
- package/dist/es5/lib/extensions/deprecated/EXT_feature_metadata.js +110 -0
- package/dist/es5/lib/extensions/deprecated/EXT_feature_metadata.js.map +1 -0
- package/dist/es5/lib/extensions/deprecated/KHR_lights_punctual.js +0 -24
- package/dist/es5/lib/extensions/deprecated/KHR_lights_punctual.js.map +1 -1
- package/dist/es5/lib/extensions/deprecated/KHR_materials_unlit.js +3 -20
- package/dist/es5/lib/extensions/deprecated/KHR_materials_unlit.js.map +1 -1
- package/dist/es5/lib/extensions/deprecated/KHR_techniques_webgl.js +12 -29
- package/dist/es5/lib/extensions/deprecated/KHR_techniques_webgl.js.map +1 -1
- package/dist/es5/lib/gltf-utils/get-typed-array.js +1 -1
- package/dist/es5/lib/gltf-utils/get-typed-array.js.map +1 -1
- package/dist/es5/lib/gltf-utils/gltf-attribute-utils.js +5 -17
- package/dist/es5/lib/gltf-utils/gltf-attribute-utils.js.map +1 -1
- package/dist/es5/lib/gltf-utils/gltf-constants.js +3 -4
- package/dist/es5/lib/gltf-utils/gltf-constants.js.map +1 -1
- package/dist/es5/lib/gltf-utils/gltf-utils.js +1 -8
- package/dist/es5/lib/gltf-utils/gltf-utils.js.map +1 -1
- package/dist/es5/lib/gltf-utils/resolve-url.js +0 -5
- package/dist/es5/lib/gltf-utils/resolve-url.js.map +1 -1
- package/dist/es5/lib/parsers/parse-glb.js +11 -17
- package/dist/es5/lib/parsers/parse-glb.js.map +1 -1
- package/dist/es5/lib/parsers/parse-gltf.js +21 -79
- package/dist/es5/lib/parsers/parse-gltf.js.map +1 -1
- package/dist/es5/lib/types/glb-types.js.map +1 -1
- package/dist/es5/lib/types/gltf-json-schema.js.map +1 -1
- package/dist/es5/lib/types/gltf-postprocessed-schema.js.map +1 -1
- package/dist/es5/lib/types/gltf-types.js.map +1 -1
- package/dist/es5/lib/utils/assert.js +0 -1
- package/dist/es5/lib/utils/assert.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/meshopt/meshopt-decoder.js +10 -47
- package/dist/es5/meshopt/meshopt-decoder.js.map +1 -1
- package/dist/es5/webp/webp.js +3 -19
- package/dist/es5/webp/webp.js.map +1 -1
- package/dist/esm/bundle.js +1 -1
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/glb-loader.js +0 -1
- package/dist/esm/glb-loader.js.map +1 -1
- package/dist/esm/glb-writer.js +3 -1
- package/dist/esm/glb-writer.js.map +1 -1
- package/dist/esm/gltf-loader.js +9 -3
- package/dist/esm/gltf-loader.js.map +1 -1
- package/dist/esm/gltf-writer.js +3 -2
- package/dist/esm/gltf-writer.js.map +1 -1
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/api/gltf-extensions.js +17 -9
- package/dist/esm/lib/api/gltf-extensions.js.map +1 -1
- package/dist/esm/lib/api/gltf-scenegraph.js +40 -68
- package/dist/esm/lib/api/gltf-scenegraph.js.map +1 -1
- package/dist/esm/lib/api/normalize-gltf-v1.js +5 -36
- package/dist/esm/lib/api/normalize-gltf-v1.js.map +1 -1
- package/dist/esm/lib/api/post-process-gltf.js +26 -93
- package/dist/esm/lib/api/post-process-gltf.js.map +1 -1
- package/dist/esm/lib/encoders/encode-glb.js +9 -2
- package/dist/esm/lib/encoders/encode-glb.js.map +1 -1
- package/dist/esm/lib/encoders/encode-gltf.js +6 -4
- package/dist/esm/lib/encoders/encode-gltf.js.map +1 -1
- package/dist/esm/lib/extensions/EXT_meshopt_compression.js +5 -6
- package/dist/esm/lib/extensions/EXT_meshopt_compression.js.map +1 -1
- package/dist/esm/lib/extensions/EXT_texture_webp.js +4 -6
- package/dist/esm/lib/extensions/EXT_texture_webp.js.map +1 -1
- package/dist/esm/lib/extensions/KHR_binary_gltf.js +3 -2
- package/dist/esm/lib/extensions/KHR_binary_gltf.js.map +1 -1
- package/dist/esm/lib/extensions/KHR_draco_mesh_compression.js +18 -17
- package/dist/esm/lib/extensions/KHR_draco_mesh_compression.js.map +1 -1
- package/dist/esm/lib/extensions/KHR_texture_basisu.js +4 -3
- package/dist/esm/lib/extensions/KHR_texture_basisu.js.map +1 -1
- package/dist/esm/lib/extensions/KHR_texture_transform.js +8 -34
- package/dist/esm/lib/extensions/KHR_texture_transform.js.map +1 -1
- package/dist/esm/lib/extensions/deprecated/EXT_feature_metadata.js +84 -0
- package/dist/esm/lib/extensions/deprecated/EXT_feature_metadata.js.map +1 -0
- package/dist/esm/lib/extensions/deprecated/KHR_lights_punctual.js +4 -4
- package/dist/esm/lib/extensions/deprecated/KHR_lights_punctual.js.map +1 -1
- package/dist/esm/lib/extensions/deprecated/KHR_materials_unlit.js +4 -3
- package/dist/esm/lib/extensions/deprecated/KHR_materials_unlit.js.map +1 -1
- package/dist/esm/lib/extensions/deprecated/KHR_techniques_webgl.js +10 -9
- package/dist/esm/lib/extensions/deprecated/KHR_techniques_webgl.js.map +1 -1
- package/dist/esm/lib/gltf-utils/get-typed-array.js +4 -0
- package/dist/esm/lib/gltf-utils/get-typed-array.js.map +1 -1
- package/dist/esm/lib/gltf-utils/gltf-attribute-utils.js +7 -11
- package/dist/esm/lib/gltf-utils/gltf-attribute-utils.js.map +1 -1
- package/dist/esm/lib/gltf-utils/gltf-constants.js +1 -0
- package/dist/esm/lib/gltf-utils/gltf-constants.js.map +1 -1
- package/dist/esm/lib/gltf-utils/gltf-utils.js +0 -2
- package/dist/esm/lib/gltf-utils/gltf-utils.js.map +1 -1
- package/dist/esm/lib/gltf-utils/resolve-url.js +1 -4
- package/dist/esm/lib/gltf-utils/resolve-url.js.map +1 -1
- package/dist/esm/lib/parsers/parse-glb.js +19 -16
- package/dist/esm/lib/parsers/parse-glb.js.map +1 -1
- package/dist/esm/lib/parsers/parse-gltf.js +15 -17
- package/dist/esm/lib/parsers/parse-gltf.js.map +1 -1
- package/dist/esm/lib/types/glb-types.js.map +1 -1
- package/dist/esm/lib/types/gltf-json-schema.js.map +1 -1
- package/dist/esm/lib/types/gltf-postprocessed-schema.js.map +1 -1
- package/dist/esm/lib/types/gltf-types.js.map +1 -1
- package/dist/esm/lib/utils/assert.js +1 -0
- package/dist/esm/lib/utils/assert.js.map +1 -1
- package/dist/esm/lib/utils/version.js +2 -1
- package/dist/esm/lib/utils/version.js.map +1 -1
- package/dist/esm/meshopt/meshopt-decoder.js +11 -15
- package/dist/esm/meshopt/meshopt-decoder.js.map +1 -1
- package/dist/esm/webp/webp.js +3 -5
- package/dist/esm/webp/webp.js.map +1 -1
- package/dist/glb-loader.d.ts +1 -1
- package/dist/glb-loader.d.ts.map +1 -1
- package/dist/gltf-loader.d.ts +1 -1
- package/dist/gltf-loader.d.ts.map +1 -1
- package/dist/gltf-writer.d.ts +1 -1
- package/dist/gltf-writer.d.ts.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/api/gltf-extensions.d.ts +1 -1
- package/dist/lib/api/gltf-extensions.d.ts.map +1 -1
- package/dist/lib/api/gltf-extensions.js +8 -2
- package/dist/lib/api/gltf-scenegraph.d.ts +5 -11
- package/dist/lib/api/gltf-scenegraph.d.ts.map +1 -1
- package/dist/lib/api/gltf-scenegraph.js +13 -0
- package/dist/lib/api/normalize-gltf-v1.d.ts.map +1 -1
- package/dist/lib/api/normalize-gltf-v1.js +6 -2
- package/dist/lib/extensions/EXT_meshopt_compression.js +1 -1
- package/dist/lib/extensions/EXT_texture_webp.d.ts.map +1 -1
- package/dist/lib/extensions/EXT_texture_webp.js +1 -0
- package/dist/lib/extensions/KHR_binary_gltf.js +1 -1
- package/dist/lib/extensions/KHR_draco_mesh_compression.js +1 -1
- package/dist/lib/extensions/KHR_texture_basisu.d.ts.map +1 -1
- package/dist/lib/extensions/KHR_texture_basisu.js +1 -0
- package/dist/lib/extensions/deprecated/EXT_feature_metadata.d.ts +6 -0
- package/dist/lib/extensions/deprecated/EXT_feature_metadata.d.ts.map +1 -0
- package/dist/lib/extensions/deprecated/EXT_feature_metadata.js +118 -0
- package/dist/lib/extensions/deprecated/KHR_materials_unlit.js +2 -2
- package/dist/lib/extensions/deprecated/KHR_techniques_webgl.d.ts.map +1 -1
- package/dist/lib/extensions/deprecated/KHR_techniques_webgl.js +1 -0
- package/dist/lib/parsers/parse-glb.d.ts +1 -1
- package/dist/lib/parsers/parse-glb.d.ts.map +1 -1
- package/dist/lib/parsers/parse-gltf.d.ts +1 -1
- package/dist/lib/parsers/parse-gltf.d.ts.map +1 -1
- package/dist/lib/parsers/parse-gltf.js +9 -2
- package/dist/lib/types/glb-types.d.ts +2 -2
- package/dist/lib/types/glb-types.d.ts.map +1 -1
- package/dist/lib/types/gltf-json-schema.d.ts +394 -9
- package/dist/lib/types/gltf-json-schema.d.ts.map +1 -1
- package/dist/lib/types/gltf-postprocessed-schema.d.ts +1 -1
- package/dist/lib/types/gltf-postprocessed-schema.d.ts.map +1 -1
- package/dist/lib/types/gltf-types.d.ts +8 -5
- package/dist/lib/types/gltf-types.d.ts.map +1 -1
- package/dist/webp/webp.d.ts +1 -1
- package/dist/webp/webp.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/index.ts +7 -1
- package/src/lib/api/gltf-extensions.ts +3 -1
- package/src/lib/api/gltf-scenegraph.ts +21 -12
- package/src/lib/api/normalize-gltf-v1.ts +2 -1
- package/src/lib/extensions/EXT_meshopt_compression.ts +1 -1
- package/src/lib/extensions/EXT_texture_webp.ts +1 -0
- package/src/lib/extensions/KHR_binary_gltf.ts +1 -1
- package/src/lib/extensions/KHR_draco_mesh_compression.ts +1 -1
- package/src/lib/extensions/KHR_texture_basisu.ts +1 -0
- package/src/lib/extensions/deprecated/EXT_feature_metadata.ts +163 -0
- package/src/lib/extensions/deprecated/KHR_materials_unlit.ts +3 -3
- package/src/lib/extensions/deprecated/KHR_techniques_webgl.ts +1 -0
- package/src/lib/parsers/parse-gltf.ts +4 -1
- package/src/lib/types/gltf-json-schema.ts +432 -3
- package/src/lib/types/gltf-types.ts +9 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gltf-extensions.d.ts","sourceRoot":"","sources":["../../../src/lib/api/gltf-extensions.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,qBAAqB,CAAC;AACzC,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"gltf-extensions.d.ts","sourceRoot":"","sources":["../../../src/lib/api/gltf-extensions.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,qBAAqB,CAAC;AACzC,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAoBzD,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAC,IAAI,EAAE,IAAI,CAAA;KAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,KAAA,KAAK,IAAI,CAAC;IACnF,MAAM,CAAC,EAAE,CACP,QAAQ,EAAE;QACR,IAAI,EAAE,IAAI,CAAC;QACX,OAAO,EAAE;YAAC,WAAW,EAAE,WAAW,CAAC;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAC,EAAE,CAAC;KAC/E,EACD,OAAO,EAAE,iBAAiB,EAC1B,OAAO,KAAA,KACJ,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAC,IAAI,EAAE,IAAI,CAAA;KAAC,EAAE,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACvE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,mBAAmB,EAgB3C,CAAC;AAEF,8CAA8C;AAC9C,wBAAgB,oBAAoB,CAAC,IAAI,KAAA,EAAE,OAAO,GAAE,iBAAsB,EAAE,OAAO,CAAC,KAAA,QAKnF;AAED,kCAAkC;AAClC,wBAAsB,gBAAgB,CAAC,IAAI,KAAA,EAAE,OAAO,GAAE,iBAAsB,EAAE,OAAO,CAAC,KAAA,iBAOrF"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -32,6 +36,7 @@ const KHR_texture_transform = __importStar(require("../extensions/KHR_texture_tr
|
|
|
32
36
|
const KHR_lights_punctual = __importStar(require("../extensions/deprecated/KHR_lights_punctual"));
|
|
33
37
|
const KHR_materials_unlit = __importStar(require("../extensions/deprecated/KHR_materials_unlit"));
|
|
34
38
|
const KHR_techniques_webgl = __importStar(require("../extensions/deprecated/KHR_techniques_webgl"));
|
|
39
|
+
const EXT_feature_metadata = __importStar(require("../extensions/deprecated/EXT_feature_metadata"));
|
|
35
40
|
/**
|
|
36
41
|
* List of extensions processed by the GLTFLoader
|
|
37
42
|
* Note that may extensions can only be handled on the rendering stage and are left out here
|
|
@@ -50,7 +55,8 @@ exports.EXTENSIONS = [
|
|
|
50
55
|
KHR_lights_punctual,
|
|
51
56
|
KHR_materials_unlit,
|
|
52
57
|
KHR_techniques_webgl,
|
|
53
|
-
KHR_texture_transform
|
|
58
|
+
KHR_texture_transform,
|
|
59
|
+
EXT_feature_metadata
|
|
54
60
|
];
|
|
55
61
|
/** Call before any resource loading starts */
|
|
56
62
|
function preprocessExtensions(gltf, options = {}, context) {
|
|
@@ -1,10 +1,5 @@
|
|
|
1
|
-
import type { GLTF, GLTFScene, GLTFNode, GLTFMesh, GLTFSkin, GLTFMaterial, GLTFAccessor, GLTFSampler, GLTFTexture, GLTFImage, GLTFBuffer, GLTFBufferView } from '../types/gltf-types';
|
|
2
|
-
|
|
3
|
-
json: GLTF;
|
|
4
|
-
buffers: any[];
|
|
5
|
-
binary?: ArrayBuffer;
|
|
6
|
-
};
|
|
7
|
-
declare type Extension = {
|
|
1
|
+
import type { GLTF, GLTFScene, GLTFNode, GLTFMesh, GLTFSkin, GLTFMaterial, GLTFAccessor, GLTFSampler, GLTFTexture, GLTFImage, GLTFBuffer, GLTFBufferView, GLTFWithBuffers } from '../types/gltf-types';
|
|
2
|
+
type Extension = {
|
|
8
3
|
[key: string]: any;
|
|
9
4
|
};
|
|
10
5
|
/**
|
|
@@ -19,16 +14,15 @@ export default class GLTFScenegraph {
|
|
|
19
14
|
buffers?: any[];
|
|
20
15
|
});
|
|
21
16
|
get json(): GLTF;
|
|
22
|
-
getApplicationData(key: string):
|
|
23
|
-
[key: string]: any;
|
|
24
|
-
};
|
|
17
|
+
getApplicationData(key: string): unknown;
|
|
25
18
|
getExtraData(key: string): {
|
|
26
|
-
[key: string]:
|
|
19
|
+
[key: string]: unknown;
|
|
27
20
|
};
|
|
28
21
|
getExtension<T = Extension>(extensionName: string): T | null;
|
|
29
22
|
getRequiredExtension<T = Extension>(extensionName: string): T | null;
|
|
30
23
|
getRequiredExtensions(): string[];
|
|
31
24
|
getUsedExtensions(): string[];
|
|
25
|
+
getRemovedExtensions(): string[];
|
|
32
26
|
getObjectExtension<T = Extension>(object: {
|
|
33
27
|
[key: string]: any;
|
|
34
28
|
}, extensionName: string): T | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gltf-scenegraph.d.ts","sourceRoot":"","sources":["../../../src/lib/api/gltf-scenegraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,SAAS,EACT,UAAU,EACV,cAAc,
|
|
1
|
+
{"version":3,"file":"gltf-scenegraph.d.ts","sourceRoot":"","sources":["../../../src/lib/api/gltf-scenegraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,9 @@ class GLTFScenegraph {
|
|
|
58
58
|
getUsedExtensions() {
|
|
59
59
|
return this.json.extensionsUsed || [];
|
|
60
60
|
}
|
|
61
|
+
getRemovedExtensions() {
|
|
62
|
+
return (this.json.extensionsRemoved || []);
|
|
63
|
+
}
|
|
61
64
|
getObjectExtension(object, extensionName) {
|
|
62
65
|
const extensions = object.extensions || {};
|
|
63
66
|
return extensions[extensionName];
|
|
@@ -237,6 +240,9 @@ class GLTFScenegraph {
|
|
|
237
240
|
* Removes an extension from the top-level list
|
|
238
241
|
*/
|
|
239
242
|
removeExtension(extensionName) {
|
|
243
|
+
if (!this.getExtension(extensionName)) {
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
240
246
|
if (this.json.extensionsRequired) {
|
|
241
247
|
this._removeStringFromArray(this.json.extensionsRequired, extensionName);
|
|
242
248
|
}
|
|
@@ -246,6 +252,13 @@ class GLTFScenegraph {
|
|
|
246
252
|
if (this.json.extensions) {
|
|
247
253
|
delete this.json.extensions[extensionName];
|
|
248
254
|
}
|
|
255
|
+
if (!Array.isArray(this.json.extensionsRemoved)) {
|
|
256
|
+
this.json.extensionsRemoved = [];
|
|
257
|
+
}
|
|
258
|
+
const extensionsRemoved = this.json.extensionsRemoved;
|
|
259
|
+
if (!extensionsRemoved.includes(extensionName)) {
|
|
260
|
+
extensionsRemoved.push(extensionName);
|
|
261
|
+
}
|
|
249
262
|
}
|
|
250
263
|
/**
|
|
251
264
|
* Set default scene which is to be displayed at load time
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize-gltf-v1.d.ts","sourceRoot":"","sources":["../../../src/lib/api/normalize-gltf-v1.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"normalize-gltf-v1.d.ts","sourceRoot":"","sources":["../../../src/lib/api/normalize-gltf-v1.ts"],"names":[],"mappings":"AAsTA,wBAAgB,eAAe,CAAC,IAAI,KAAA,EAAE,OAAO,KAAK,QAEjD"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -281,7 +285,7 @@ class GLTFV1Normalizer {
|
|
|
281
285
|
metallicFactor: 1,
|
|
282
286
|
roughnessFactor: 1
|
|
283
287
|
};
|
|
284
|
-
const textureId = material.values?.tex || material.values?.texture2d_0;
|
|
288
|
+
const textureId = material.values?.tex || material.values?.texture2d_0 || material.values?.diffuseTex;
|
|
285
289
|
const textureIndex = json.textures.findIndex((texture) => texture.id === textureId);
|
|
286
290
|
if (textureIndex !== -1) {
|
|
287
291
|
material.pbrMetallicRoughness.baseColorTexture = { index: textureIndex };
|
|
@@ -26,7 +26,7 @@ async function decode(gltfData, options) {
|
|
|
26
26
|
}
|
|
27
27
|
// Decompress meshes in parallel
|
|
28
28
|
await Promise.all(promises);
|
|
29
|
-
// We have now decompressed all primitives, so remove the top-level
|
|
29
|
+
// We have now decompressed all primitives, so remove the top-level extension
|
|
30
30
|
scenegraph.removeExtension(EXT_MESHOPT_COMPRESSION);
|
|
31
31
|
}
|
|
32
32
|
exports.decode = decode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EXT_texture_webp.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/EXT_texture_webp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,IAAI,EAAwB,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAOzD,qBAAqB;AACrB,eAAO,MAAM,IAAI,qBAAmB,CAAC;AAErC;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"EXT_texture_webp.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/EXT_texture_webp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,IAAI,EAAwB,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAOzD,qBAAqB;AACrB,eAAO,MAAM,IAAI,qBAAmB,CAAC;AAErC;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CA0BnF"}
|
|
@@ -28,6 +28,7 @@ function preprocess(gltfData, options) {
|
|
|
28
28
|
for (const texture of json.textures || []) {
|
|
29
29
|
const extension = scenegraph.getObjectExtension(texture, EXT_TEXTURE_WEBP);
|
|
30
30
|
if (extension) {
|
|
31
|
+
// TODO - if multiple texture extensions are present which one wins?
|
|
31
32
|
texture.source = extension.source;
|
|
32
33
|
}
|
|
33
34
|
scenegraph.removeObjectExtension(texture, EXT_TEXTURE_WEBP);
|
|
@@ -32,7 +32,7 @@ function preprocess(gltfData) {
|
|
|
32
32
|
if (json.buffers && json.buffers[0]) {
|
|
33
33
|
delete json.buffers[0].uri;
|
|
34
34
|
}
|
|
35
|
-
// Remove the top-level extension as it has now been
|
|
35
|
+
// Remove the top-level extension as it has now been processed
|
|
36
36
|
gltfScenegraph.removeExtension(KHR_BINARY_GLTF);
|
|
37
37
|
}
|
|
38
38
|
exports.preprocess = preprocess;
|
|
@@ -36,7 +36,7 @@ async function decode(gltfData, options, context) {
|
|
|
36
36
|
}
|
|
37
37
|
// Decompress meshes in parallel
|
|
38
38
|
await Promise.all(promises);
|
|
39
|
-
// We have now decompressed all primitives, so remove the top-level
|
|
39
|
+
// We have now decompressed all primitives, so remove the top-level extension
|
|
40
40
|
scenegraph.removeExtension(KHR_DRACO_MESH_COMPRESSION);
|
|
41
41
|
}
|
|
42
42
|
exports.decode = decode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KHR_texture_basisu.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/KHR_texture_basisu.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,IAAI,EAA0B,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAMzD,qBAAqB;AACrB,eAAO,MAAM,IAAI,uBAAqB,CAAC;AAEvC;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"KHR_texture_basisu.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/KHR_texture_basisu.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,IAAI,EAA0B,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAMzD,qBAAqB;AACrB,eAAO,MAAM,IAAI,uBAAqB,CAAC;AAEvC;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAkBnF"}
|
|
@@ -21,6 +21,7 @@ function preprocess(gltfData, options) {
|
|
|
21
21
|
for (const texture of json.textures || []) {
|
|
22
22
|
const extension = scene.getObjectExtension(texture, KHR_TEXTURE_BASISU);
|
|
23
23
|
if (extension) {
|
|
24
|
+
// TODO - if multiple texture extensions are present which one wins?
|
|
24
25
|
texture.source = extension.source;
|
|
25
26
|
}
|
|
26
27
|
scene.removeObjectExtension(texture, KHR_TEXTURE_BASISU);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EXT_feature_metadata.d.ts","sourceRoot":"","sources":["../../../../src/lib/extensions/deprecated/EXT_feature_metadata.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAcjD,eAAO,MAAM,IAAI,yBAAuB,CAAC;AAEzC,wBAAsB,MAAM,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.decode = exports.name = void 0;
|
|
7
|
+
const gltf_scenegraph_1 = __importDefault(require("../../api/gltf-scenegraph"));
|
|
8
|
+
/** Extension name */
|
|
9
|
+
const EXT_FEATURE_METADATA = 'EXT_feature_metadata';
|
|
10
|
+
exports.name = EXT_FEATURE_METADATA;
|
|
11
|
+
async function decode(gltfData) {
|
|
12
|
+
const scenegraph = new gltf_scenegraph_1.default(gltfData);
|
|
13
|
+
decodeExtFeatureMetadata(scenegraph);
|
|
14
|
+
}
|
|
15
|
+
exports.decode = decode;
|
|
16
|
+
/**
|
|
17
|
+
* Decodes feature metadata from extension
|
|
18
|
+
* @param scenegraph
|
|
19
|
+
*/
|
|
20
|
+
function decodeExtFeatureMetadata(scenegraph) {
|
|
21
|
+
const extension = scenegraph.getExtension(EXT_FEATURE_METADATA);
|
|
22
|
+
const schemaClasses = extension?.schema?.classes;
|
|
23
|
+
const featureTables = extension?.featureTables;
|
|
24
|
+
const featureTextures = extension?.featureTextures;
|
|
25
|
+
if (featureTextures) {
|
|
26
|
+
/*
|
|
27
|
+
* TODO add support for featureTextures
|
|
28
|
+
* Spec - https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_feature_metadata#feature-textures
|
|
29
|
+
*/
|
|
30
|
+
// eslint-disable-next-line no-console
|
|
31
|
+
console.warn('featureTextures is not yet supported in the "EXT_feature_metadata" extension.');
|
|
32
|
+
}
|
|
33
|
+
if (schemaClasses && featureTables) {
|
|
34
|
+
for (const schemaName in schemaClasses) {
|
|
35
|
+
const schemaClass = schemaClasses[schemaName];
|
|
36
|
+
const featureTable = findFeatureTableByName(featureTables, schemaName);
|
|
37
|
+
if (featureTable) {
|
|
38
|
+
handleFeatureTableProperties(scenegraph, featureTable, schemaClass);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Navigate throw all properies in feature table and gets properties data.
|
|
45
|
+
* @param scenegraph
|
|
46
|
+
* @param featureTable
|
|
47
|
+
* @param schemaClass
|
|
48
|
+
*/
|
|
49
|
+
function handleFeatureTableProperties(scenegraph, featureTable, schemaClass) {
|
|
50
|
+
for (const propertyName in schemaClass.properties) {
|
|
51
|
+
const schemaProperty = schemaClass.properties[propertyName];
|
|
52
|
+
const featureTableProperty = featureTable?.properties?.[propertyName];
|
|
53
|
+
const numberOfFeatures = featureTable.count;
|
|
54
|
+
if (featureTableProperty) {
|
|
55
|
+
const data = getPropertyDataFromBinarySource(scenegraph, schemaProperty, numberOfFeatures, featureTableProperty);
|
|
56
|
+
featureTableProperty.data = data;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Decode properties from binary sourse based on property type.
|
|
62
|
+
* @param scenegraph
|
|
63
|
+
* @param schemaProperty
|
|
64
|
+
* @param numberOfFeatures
|
|
65
|
+
* @param featureTableProperty
|
|
66
|
+
*/
|
|
67
|
+
function getPropertyDataFromBinarySource(scenegraph, schemaProperty, numberOfFeatures, featureTableProperty) {
|
|
68
|
+
const bufferView = featureTableProperty.bufferView;
|
|
69
|
+
// TODO think maybe we shouldn't get data only in Uint8Array format.
|
|
70
|
+
let data = scenegraph.getTypedArrayForBufferView(bufferView);
|
|
71
|
+
switch (schemaProperty.type) {
|
|
72
|
+
case 'STRING': {
|
|
73
|
+
// stringOffsetBufferView should be available for string type.
|
|
74
|
+
const stringOffsetBufferView = featureTableProperty.stringOffsetBufferView;
|
|
75
|
+
const offsetsData = scenegraph.getTypedArrayForBufferView(stringOffsetBufferView);
|
|
76
|
+
data = getStringAttributes(data, offsetsData, numberOfFeatures);
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
default:
|
|
80
|
+
}
|
|
81
|
+
return data;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Find the feature table by class name.
|
|
85
|
+
* @param featureTables
|
|
86
|
+
* @param schemaClassName
|
|
87
|
+
*/
|
|
88
|
+
function findFeatureTableByName(featureTables, schemaClassName) {
|
|
89
|
+
for (const featureTableName in featureTables) {
|
|
90
|
+
const featureTable = featureTables[featureTableName];
|
|
91
|
+
if (featureTable.class === schemaClassName) {
|
|
92
|
+
return featureTable;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Getting string attributes from binary data.
|
|
99
|
+
* Spec - https://github.com/CesiumGS/3d-tiles/tree/main/specification/Metadata#strings
|
|
100
|
+
* @param data
|
|
101
|
+
* @param offsetsData
|
|
102
|
+
* @param stringsCount
|
|
103
|
+
*/
|
|
104
|
+
function getStringAttributes(data, offsetsData, stringsCount) {
|
|
105
|
+
const stringsArray = [];
|
|
106
|
+
const textDecoder = new TextDecoder('utf8');
|
|
107
|
+
let stringOffset = 0;
|
|
108
|
+
const bytesPerStringSize = 4;
|
|
109
|
+
for (let index = 0; index < stringsCount; index++) {
|
|
110
|
+
// TODO check if it is multiplication on bytesPerStringSize is valid operation?
|
|
111
|
+
const stringByteSize = offsetsData[(index + 1) * bytesPerStringSize] - offsetsData[index * bytesPerStringSize];
|
|
112
|
+
const stringData = data.subarray(stringOffset, stringByteSize + stringOffset);
|
|
113
|
+
const stringAttribute = textDecoder.decode(stringData);
|
|
114
|
+
stringsArray.push(stringAttribute);
|
|
115
|
+
stringOffset += stringByteSize;
|
|
116
|
+
}
|
|
117
|
+
return stringsArray;
|
|
118
|
+
}
|
|
@@ -12,8 +12,6 @@ exports.name = KHR_MATERIALS_UNLIT;
|
|
|
12
12
|
async function decode(gltfData) {
|
|
13
13
|
const gltfScenegraph = new gltf_scenegraph_1.default(gltfData);
|
|
14
14
|
const { json } = gltfScenegraph;
|
|
15
|
-
// Remove the top-level extension
|
|
16
|
-
gltfScenegraph.removeExtension(KHR_MATERIALS_UNLIT);
|
|
17
15
|
// Any nodes that have the extension, add lights field pointing to light object
|
|
18
16
|
// and remove the extension
|
|
19
17
|
for (const material of json.materials || []) {
|
|
@@ -24,6 +22,8 @@ async function decode(gltfData) {
|
|
|
24
22
|
}
|
|
25
23
|
gltfScenegraph.removeObjectExtension(material, KHR_MATERIALS_UNLIT);
|
|
26
24
|
}
|
|
25
|
+
// Remove the top-level extension
|
|
26
|
+
gltfScenegraph.removeExtension(KHR_MATERIALS_UNLIT);
|
|
27
27
|
}
|
|
28
28
|
exports.decode = decode;
|
|
29
29
|
function encode(gltfData) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KHR_techniques_webgl.d.ts","sourceRoot":"","sources":["../../../../src/lib/extensions/deprecated/KHR_techniques_webgl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAMjD,eAAO,MAAM,IAAI,yBAAuB,CAAC;AAEzC,wBAAsB,MAAM,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"KHR_techniques_webgl.d.ts","sourceRoot":"","sources":["../../../../src/lib/extensions/deprecated/KHR_techniques_webgl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,wBAAwB,CAAC;AAMjD,eAAO,MAAM,IAAI,yBAAuB,CAAC;AAEzC,wBAAsB,MAAM,CAAC,QAAQ,EAAE;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BlE;AAED,wBAAsB,MAAM,CAAC,QAAQ,KAAA,EAAE,OAAO,KAAA,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-glb.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-glb.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,oBAAoB,CAAC;AAG5C,
|
|
1
|
+
{"version":3,"file":"parse-glb.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-glb.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,oBAAoB,CAAC;AAG5C,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAyBF,wBAAgB,KAAK,CACnB,WAAW,EAAE,WAAW,EACxB,UAAU,GAAE,MAAU,EACtB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAMT;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,WAAW,EACxB,UAAU,GAAE,MAAU,EACtB,OAAO,GAAE,eAAoB,UAqC9B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { LoaderContext } from '@loaders.gl/loader-utils';
|
|
2
2
|
import type { GLTFLoaderOptions } from '../../gltf-loader';
|
|
3
3
|
import type { GLTFWithBuffers } from '../types/gltf-types';
|
|
4
|
-
export
|
|
4
|
+
export type GLTFParseOptions = {
|
|
5
5
|
normalize?: boolean;
|
|
6
6
|
loadImages?: boolean;
|
|
7
7
|
loadBuffers?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-gltf.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-gltf.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAE5D,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAYzD,
|
|
1
|
+
{"version":3,"file":"parse-gltf.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-gltf.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAE5D,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAYzD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAMF,wBAAgB,MAAM,CAAC,WAAW,KAAA,EAAE,OAAO,CAAC,KAAA,GAAG,OAAO,CAGrD;AAED,wBAAsB,SAAS,CAC7B,IAAI,EAAE,eAAe,EACrB,mBAAmB,KAAA,EACnB,UAAU,oBAAI,EACd,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,aAAa,gCA4BvB"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -167,10 +171,13 @@ function getReferencesImageIndices(gltf) {
|
|
|
167
171
|
async function loadImage(gltf, image, index, options, context) {
|
|
168
172
|
const { fetch, parse } = context;
|
|
169
173
|
let arrayBuffer;
|
|
170
|
-
if (image.uri) {
|
|
174
|
+
if (image.uri && !image.hasOwnProperty('bufferView')) {
|
|
171
175
|
const uri = (0, resolve_url_1.resolveUrl)(image.uri, options);
|
|
172
176
|
const response = await fetch(uri);
|
|
173
177
|
arrayBuffer = await response.arrayBuffer();
|
|
178
|
+
image.bufferView = {
|
|
179
|
+
data: arrayBuffer
|
|
180
|
+
};
|
|
174
181
|
}
|
|
175
182
|
if (Number.isFinite(image.bufferView)) {
|
|
176
183
|
const array = (0, get_typed_array_1.getTypedArrayForBufferView)(gltf.json, gltf.buffers, image.bufferView);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glb-types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/glb-types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"glb-types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/glb-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAGhB,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;IAGF,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B,CAAC"}
|