@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.
@@ -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` defaults to `true` if not given.
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` defaults to `true` if not given.
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` defaults to `true` if not given.
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` defaults to `true` if not given.
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` defaults to `true` if not given.
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` defaults to `true` if not given.
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 offscreenCanvas = new OffscreenCanvas(0, 0);
204
- const engine = new engine_1.Engine(offscreenCanvas);
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":"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"}
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;
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "9.0.2-alpha1"
2
+ "version": "9.1.0"
3
3
  }