@combeenation/3d-viewer 9.0.2-alpha1 → 9.1.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/dist/lib-cjs/api/manager/gltfExportManager.d.ts +11 -8
- package/dist/lib-cjs/api/manager/gltfExportManager.js +23 -15
- package/dist/lib-cjs/api/manager/gltfExportManager.js.map +1 -1
- package/dist/lib-cjs/api/util/globalTypes.d.ts +5 -0
- package/dist/lib-cjs/buildinfo.json +1 -1
- package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/api/manager/gltfExportManager.ts +36 -14
- package/src/api/util/globalTypes.ts +5 -0
|
@@ -20,29 +20,32 @@ export declare class GltfExportManager {
|
|
|
20
20
|
* Exports selected nodes to a file.
|
|
21
21
|
* @param filename optional name of the exported .GLB file.
|
|
22
22
|
* @param exportOptions export options to be merged with default options.\
|
|
23
|
-
* `exportOptions.exchangeRefractionMaterials`
|
|
23
|
+
* `exportOptions.exchangeRefractionMaterials` and `exportOptions.limitTextureSize`
|
|
24
|
+
* default to `true` if not given.
|
|
24
25
|
* @param optimizeForAR adjusts the exported GLB so that known AR issues get fixed automatically
|
|
25
26
|
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
26
27
|
*/
|
|
27
|
-
exportGlb(filename?: string, { exchangeRefractionMaterials, ...exportOptions }?: IExportOptionsExtended, optimizeForAR?: boolean, excluded?: ExcludedGeometryList): Promise<File | undefined>;
|
|
28
|
+
exportGlb(filename?: string, { exchangeRefractionMaterials, limitTextureSize, ...exportOptions }?: IExportOptionsExtended, optimizeForAR?: boolean, excluded?: ExcludedGeometryList): Promise<File | undefined>;
|
|
28
29
|
/**
|
|
29
30
|
* Exports selected nodes to GLTF. This may result in more than one file, since textures are exported separately.
|
|
30
31
|
* @param filename name of the main (text-based) .GLTF file referring to separate texture files.
|
|
31
32
|
* @param exportOptions export options to be merged with default options.\
|
|
32
|
-
* `exportOptions.exchangeRefractionMaterials`
|
|
33
|
+
* `exportOptions.exchangeRefractionMaterials` and `exportOptions.limitTextureSize`
|
|
34
|
+
* default to `true` if not given.
|
|
33
35
|
* @param optimizeForAR adjusts the exported GLB so that known AR issues get fixed automatically
|
|
34
36
|
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
35
37
|
*/
|
|
36
|
-
exportGltfToFile(filename: string, { exchangeRefractionMaterials, ...exportOptions }?: IExportOptionsExtended, optimizeForAR?: boolean, excluded?: ExcludedGeometryList): Promise<void>;
|
|
38
|
+
exportGltfToFile(filename: string, { exchangeRefractionMaterials, limitTextureSize, ...exportOptions }?: IExportOptionsExtended, optimizeForAR?: boolean, excluded?: ExcludedGeometryList): Promise<void>;
|
|
37
39
|
/**
|
|
38
40
|
* Exports selected nodes to GLB. This results in one binary file.
|
|
39
41
|
* @param filename name of the .GLB file.
|
|
40
42
|
* @param exportOptions export options to be merged with default options.\
|
|
41
|
-
* `exportOptions.exchangeRefractionMaterials`
|
|
43
|
+
* `exportOptions.exchangeRefractionMaterials` and `exportOptions.limitTextureSize`
|
|
44
|
+
* default to `true` if not given.
|
|
42
45
|
* @param optimizeForAR adjusts the exported GLB so that known AR issues get fixed automatically
|
|
43
46
|
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
44
47
|
*/
|
|
45
|
-
exportGlbToFile(filename: string, { exchangeRefractionMaterials, ...exportOptions }?: IExportOptionsExtended, optimizeForAR?: boolean, excluded?: ExcludedGeometryList): Promise<void>;
|
|
48
|
+
exportGlbToFile(filename: string, { exchangeRefractionMaterials, limitTextureSize, ...exportOptions }?: IExportOptionsExtended, optimizeForAR?: boolean, excluded?: ExcludedGeometryList): Promise<void>;
|
|
46
49
|
/**
|
|
47
50
|
* Gets predefined {@link IExportOptions } merged with given ones.
|
|
48
51
|
*/
|
|
@@ -53,7 +56,7 @@ export declare class GltfExportManager {
|
|
|
53
56
|
* @returns Either the original scene if no adjustments have been made or a copied scene (which can be disposed after
|
|
54
57
|
* the export) if adjustments have been made
|
|
55
58
|
*/
|
|
56
|
-
protected exportPreProcess(exchangeRefractionMaterials: boolean, optimizeForAR: boolean): Promise<{
|
|
59
|
+
protected exportPreProcess(exchangeRefractionMaterials: boolean, limitTextureSize: boolean, optimizeForAR: boolean): Promise<{
|
|
57
60
|
scene: Scene;
|
|
58
61
|
sceneCopied: boolean;
|
|
59
62
|
}>;
|
|
@@ -61,7 +64,7 @@ export declare class GltfExportManager {
|
|
|
61
64
|
* Create a copy of the viewer scene, which can be further processed and optimized for the GLB export.
|
|
62
65
|
* There is no "scene.clone" function, therefore the scene is serialized and loaded again to achieve this result.
|
|
63
66
|
*/
|
|
64
|
-
protected copyViewerScene(): Promise<Scene>;
|
|
67
|
+
protected copyViewerScene(limitTextureSize: boolean): Promise<Scene>;
|
|
65
68
|
/**
|
|
66
69
|
* Stuff to be done after the GLTF export
|
|
67
70
|
*/
|
|
@@ -77,15 +77,16 @@ class GltfExportManager {
|
|
|
77
77
|
* Exports selected nodes to a file.
|
|
78
78
|
* @param filename optional name of the exported .GLB file.
|
|
79
79
|
* @param exportOptions export options to be merged with default options.\
|
|
80
|
-
* `exportOptions.exchangeRefractionMaterials`
|
|
80
|
+
* `exportOptions.exchangeRefractionMaterials` and `exportOptions.limitTextureSize`
|
|
81
|
+
* default to `true` if not given.
|
|
81
82
|
* @param optimizeForAR adjusts the exported GLB so that known AR issues get fixed automatically
|
|
82
83
|
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
83
84
|
*/
|
|
84
85
|
exportGlb(filename = 'glb-export.glb', _a = {}, optimizeForAR, excluded) {
|
|
85
|
-
var { exchangeRefractionMaterials = true } = _a, exportOptions = __rest(_a, ["exchangeRefractionMaterials"]);
|
|
86
|
+
var { exchangeRefractionMaterials = true, limitTextureSize = true } = _a, exportOptions = __rest(_a, ["exchangeRefractionMaterials", "limitTextureSize"]);
|
|
86
87
|
if (optimizeForAR === void 0) { optimizeForAR = false; }
|
|
87
88
|
return __awaiter(this, void 0, void 0, function* () {
|
|
88
|
-
const { scene, sceneCopied } = yield this.exportPreProcess(exchangeRefractionMaterials, optimizeForAR);
|
|
89
|
+
const { scene, sceneCopied } = yield this.exportPreProcess(exchangeRefractionMaterials, limitTextureSize, optimizeForAR);
|
|
89
90
|
const glbData = yield _2_0_1.GLTF2Export.GLBAsync(scene, 'dummy', this.gltfExportOptions(exportOptions, excluded));
|
|
90
91
|
this.exportPostProcess(scene, sceneCopied);
|
|
91
92
|
const resBlob = glbData.glTFFiles['dummy.glb'];
|
|
@@ -106,15 +107,16 @@ class GltfExportManager {
|
|
|
106
107
|
* Exports selected nodes to GLTF. This may result in more than one file, since textures are exported separately.
|
|
107
108
|
* @param filename name of the main (text-based) .GLTF file referring to separate texture files.
|
|
108
109
|
* @param exportOptions export options to be merged with default options.\
|
|
109
|
-
* `exportOptions.exchangeRefractionMaterials`
|
|
110
|
+
* `exportOptions.exchangeRefractionMaterials` and `exportOptions.limitTextureSize`
|
|
111
|
+
* default to `true` if not given.
|
|
110
112
|
* @param optimizeForAR adjusts the exported GLB so that known AR issues get fixed automatically
|
|
111
113
|
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
112
114
|
*/
|
|
113
115
|
exportGltfToFile(filename, _a = {}, optimizeForAR, excluded) {
|
|
114
|
-
var { exchangeRefractionMaterials = true } = _a, exportOptions = __rest(_a, ["exchangeRefractionMaterials"]);
|
|
116
|
+
var { exchangeRefractionMaterials = true, limitTextureSize = true } = _a, exportOptions = __rest(_a, ["exchangeRefractionMaterials", "limitTextureSize"]);
|
|
115
117
|
if (optimizeForAR === void 0) { optimizeForAR = false; }
|
|
116
118
|
return __awaiter(this, void 0, void 0, function* () {
|
|
117
|
-
const { scene, sceneCopied } = yield this.exportPreProcess(exchangeRefractionMaterials, optimizeForAR);
|
|
119
|
+
const { scene, sceneCopied } = yield this.exportPreProcess(exchangeRefractionMaterials, limitTextureSize, optimizeForAR);
|
|
118
120
|
const gltf = yield _2_0_1.GLTF2Export.GLTFAsync(scene, filename, this.gltfExportOptions(exportOptions, excluded));
|
|
119
121
|
gltf.downloadFiles();
|
|
120
122
|
this.exportPostProcess(scene, sceneCopied);
|
|
@@ -124,15 +126,16 @@ class GltfExportManager {
|
|
|
124
126
|
* Exports selected nodes to GLB. This results in one binary file.
|
|
125
127
|
* @param filename name of the .GLB file.
|
|
126
128
|
* @param exportOptions export options to be merged with default options.\
|
|
127
|
-
* `exportOptions.exchangeRefractionMaterials`
|
|
129
|
+
* `exportOptions.exchangeRefractionMaterials` and `exportOptions.limitTextureSize`
|
|
130
|
+
* default to `true` if not given.
|
|
128
131
|
* @param optimizeForAR adjusts the exported GLB so that known AR issues get fixed automatically
|
|
129
132
|
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
130
133
|
*/
|
|
131
134
|
exportGlbToFile(filename, _a = {}, optimizeForAR, excluded) {
|
|
132
|
-
var { exchangeRefractionMaterials = true } = _a, exportOptions = __rest(_a, ["exchangeRefractionMaterials"]);
|
|
135
|
+
var { exchangeRefractionMaterials = true, limitTextureSize = true } = _a, exportOptions = __rest(_a, ["exchangeRefractionMaterials", "limitTextureSize"]);
|
|
133
136
|
if (optimizeForAR === void 0) { optimizeForAR = false; }
|
|
134
137
|
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
-
const { scene, sceneCopied } = yield this.exportPreProcess(exchangeRefractionMaterials, optimizeForAR);
|
|
138
|
+
const { scene, sceneCopied } = yield this.exportPreProcess(exchangeRefractionMaterials, limitTextureSize, optimizeForAR);
|
|
136
139
|
const glb = yield _2_0_1.GLTF2Export.GLBAsync(scene, filename, this.gltfExportOptions(exportOptions, excluded));
|
|
137
140
|
glb.downloadFiles();
|
|
138
141
|
this.exportPostProcess(scene, sceneCopied);
|
|
@@ -164,14 +167,14 @@ class GltfExportManager {
|
|
|
164
167
|
* @returns Either the original scene if no adjustments have been made or a copied scene (which can be disposed after
|
|
165
168
|
* the export) if adjustments have been made
|
|
166
169
|
*/
|
|
167
|
-
exportPreProcess(exchangeRefractionMaterials, optimizeForAR) {
|
|
170
|
+
exportPreProcess(exchangeRefractionMaterials, limitTextureSize, optimizeForAR) {
|
|
168
171
|
return __awaiter(this, void 0, void 0, function* () {
|
|
169
|
-
if (!exchangeRefractionMaterials && !optimizeForAR) {
|
|
172
|
+
if (!exchangeRefractionMaterials && !optimizeForAR && !limitTextureSize) {
|
|
170
173
|
// no need to copy the scene if no adjustments have to be made
|
|
171
174
|
return { scene: this.viewer.scene, sceneCopied: false };
|
|
172
175
|
}
|
|
173
176
|
// copy the scene for the GLB export improvements, so that the original viewer scene remains untouched
|
|
174
|
-
const copiedScene = yield this.copyViewerScene();
|
|
177
|
+
const copiedScene = yield this.copyViewerScene(limitTextureSize);
|
|
175
178
|
if (exchangeRefractionMaterials) {
|
|
176
179
|
this.exchangeRefractionMaterials(copiedScene);
|
|
177
180
|
}
|
|
@@ -186,7 +189,7 @@ class GltfExportManager {
|
|
|
186
189
|
* Create a copy of the viewer scene, which can be further processed and optimized for the GLB export.
|
|
187
190
|
* There is no "scene.clone" function, therefore the scene is serialized and loaded again to achieve this result.
|
|
188
191
|
*/
|
|
189
|
-
copyViewerScene() {
|
|
192
|
+
copyViewerScene(limitTextureSize) {
|
|
190
193
|
return __awaiter(this, void 0, void 0, function* () {
|
|
191
194
|
// required by the scene serializer
|
|
192
195
|
yield Promise.resolve().then(() => __importStar(require(/* webpackChunkName: "physicsenginecomponent" */ '@babylonjs/core/Physics/physicsEngineComponent')));
|
|
@@ -200,8 +203,13 @@ class GltfExportManager {
|
|
|
200
203
|
// set the cropped metadata back to the viewer scene nodes
|
|
201
204
|
this.restoreMetadataOfAllNodes(metadataArr);
|
|
202
205
|
// load the scene into an invisible "dummy" canvas
|
|
203
|
-
const
|
|
204
|
-
const engine = new engine_1.Engine(
|
|
206
|
+
const dummyCanvas = document.createElement('canvas');
|
|
207
|
+
const engine = new engine_1.Engine(dummyCanvas);
|
|
208
|
+
if (limitTextureSize) {
|
|
209
|
+
// according to some tests iOS devices break when exporting a scene with textures above 1024
|
|
210
|
+
// this only affects the scene clone for the export
|
|
211
|
+
engine.getCaps().maxTextureSize = 1024;
|
|
212
|
+
}
|
|
205
213
|
sceneLoader_1.SceneLoader.ShowLoadingScreen = false;
|
|
206
214
|
const newScene = yield sceneLoader_1.SceneLoader.LoadAsync('', 'data:' + JSON.stringify(serializedScene), engine);
|
|
207
215
|
// this is required for offscreen canvas, otherwise the scene dispose code throws when trying to remove the cursor
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gltfExportManager.js","sourceRoot":"","sources":["../../../../src/api/manager/gltfExportManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAC3C,yDAAuD;AACvD,6DAAwE;AACxE,2DAAwD;AACxD,qEAAkE;AAClE,2EAAwE;AACxE,iEAA0D;AAC1D,mEAA4D;AAC5D,sEAAmE;AACnE,sDAAmD;AACnD,wEAAqE;AACrE,0EAAuE;AACvE,0DAA8E;AAC9E,yCAAuC;AAGvC,MAAa,iBAAiB;IAI5B;;OAEG;IACH,YAAgC,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAElD;;OAEG;IACI,MAAM,CAAO,MAAM,CAAC,MAAc;;YACvC,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;KAAA;IAED
|
|
1
|
+
{"version":3,"file":"gltfExportManager.js","sourceRoot":"","sources":["../../../../src/api/manager/gltfExportManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -419,6 +419,11 @@ interface IExportOptionsExtended extends IExportOptions {
|
|
|
419
419
|
* mode settings.
|
|
420
420
|
*/
|
|
421
421
|
exchangeRefractionMaterials?: boolean;
|
|
422
|
+
/**
|
|
423
|
+
* iOS devices crash when exporting textures which are larger than 1024.\
|
|
424
|
+
* If this flag is set, then all textures will be limited to a maximum texture size of 1024.
|
|
425
|
+
*/
|
|
426
|
+
limitTextureSize?: boolean;
|
|
422
427
|
}
|
|
423
428
|
declare type SpecGenerationData = {
|
|
424
429
|
name: string;
|