@combeenation/3d-viewer 12.0.0-alpha4 → 12.0.0-beta2
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/classes/element.d.ts +1 -1
- package/dist/lib-cjs/api/classes/element.js.map +1 -1
- package/dist/lib-cjs/api/classes/viewer.js +18 -2
- package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
- package/dist/lib-cjs/api/internal/sceneSetup.js +5 -2
- package/dist/lib-cjs/api/internal/sceneSetup.js.map +1 -1
- package/dist/lib-cjs/api/manager/gltfExportManager.d.ts +58 -11
- package/dist/lib-cjs/api/manager/gltfExportManager.js +162 -70
- package/dist/lib-cjs/api/manager/gltfExportManager.js.map +1 -1
- package/dist/lib-cjs/api/util/babylonHelper.d.ts +2 -2
- package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
- package/dist/lib-cjs/api/util/deviceHelper.d.ts +9 -0
- package/dist/lib-cjs/api/util/deviceHelper.js +29 -0
- package/dist/lib-cjs/api/util/deviceHelper.js.map +1 -0
- package/dist/lib-cjs/api/util/geometryHelper.d.ts +10 -0
- package/dist/lib-cjs/api/util/geometryHelper.js +17 -7
- package/dist/lib-cjs/api/util/geometryHelper.js.map +1 -1
- package/dist/lib-cjs/api/util/globalTypes.d.ts +13 -19
- package/dist/lib-cjs/api/util/structureHelper.d.ts +1 -1
- package/dist/lib-cjs/api/util/structureHelper.js +2 -2
- package/dist/lib-cjs/api/util/structureHelper.js.map +1 -1
- package/dist/lib-cjs/buildinfo.json +1 -1
- package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
- package/src/api/classes/element.ts +1 -1
- package/src/api/classes/viewer.ts +20 -1
- package/src/api/internal/sceneSetup.ts +7 -2
- package/src/api/manager/gltfExportManager.ts +189 -77
- package/src/api/util/babylonHelper.ts +4 -4
- package/src/api/util/deviceHelper.ts +31 -0
- package/src/api/util/geometryHelper.ts +19 -9
- package/src/api/util/globalTypes.ts +14 -20
- package/src/api/util/structureHelper.ts +6 -2
|
@@ -10,28 +10,41 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.GltfExportManager = void 0;
|
|
13
|
-
const index_1 = require("../../index");
|
|
14
13
|
const viewer_1 = require("../classes/viewer");
|
|
15
14
|
const babylonHelper_1 = require("../util/babylonHelper");
|
|
15
|
+
const deviceHelper_1 = require("../util/deviceHelper");
|
|
16
16
|
const geometryHelper_1 = require("../util/geometryHelper");
|
|
17
17
|
const structureHelper_1 = require("../util/structureHelper");
|
|
18
|
+
const pbrMaterial_1 = require("@babylonjs/core/Materials/PBR/pbrMaterial");
|
|
19
|
+
const renderTargetTexture_1 = require("@babylonjs/core/Materials/Textures/renderTargetTexture");
|
|
20
|
+
const math_vector_1 = require("@babylonjs/core/Maths/math.vector");
|
|
21
|
+
const instancedMesh_1 = require("@babylonjs/core/Meshes/instancedMesh");
|
|
18
22
|
const mesh_1 = require("@babylonjs/core/Meshes/mesh");
|
|
19
23
|
const transformNode_1 = require("@babylonjs/core/Meshes/transformNode");
|
|
20
24
|
const glTFSerializer_1 = require("@babylonjs/serializers/glTF/2.0/glTFSerializer");
|
|
21
25
|
class GltfExportManager {
|
|
22
26
|
constructor(viewer) {
|
|
23
27
|
this.viewer = viewer;
|
|
28
|
+
// store initial max texture size, so that we can restore it in the post processing
|
|
29
|
+
this._maxTextureSize = viewer.engine.getCaps().maxTextureSize;
|
|
24
30
|
}
|
|
25
31
|
static create(viewer) {
|
|
26
32
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
33
|
return new GltfExportManager(viewer);
|
|
28
34
|
});
|
|
29
35
|
}
|
|
30
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Exports selected nodes to a file.
|
|
38
|
+
* @param filename Optional name of the exported .GLB file.
|
|
39
|
+
* @param optimizeForAR Adjusts the exported GLB so that known issues get automatically fixed, this
|
|
40
|
+
* is mostly targeting Apples .usdz format.
|
|
41
|
+
* @param excluded Optional list of geometry (meshes, elements, variants,...) to be excluded from the export.
|
|
42
|
+
*/
|
|
43
|
+
exportGlb(filename = 'glb-export.glb', optimizeForAR = false, excluded) {
|
|
31
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
yield this._exportPreProcess(excluded);
|
|
33
|
-
const glbData = yield glTFSerializer_1.GLTF2Export.GLBAsync(this.viewer.scene, 'dummy',
|
|
34
|
-
yield this._exportPostProcess();
|
|
45
|
+
yield this._exportPreProcess(optimizeForAR, excluded);
|
|
46
|
+
const glbData = yield glTFSerializer_1.GLTF2Export.GLBAsync(this.viewer.scene, 'dummy', GltfExportManager._gltfExportOptions(optimizeForAR, excluded));
|
|
47
|
+
yield this._exportPostProcess(optimizeForAR);
|
|
35
48
|
const resBlob = glbData.glTFFiles['dummy.glb'];
|
|
36
49
|
// check if result is valid, according to the typings this could also be a string
|
|
37
50
|
if (resBlob instanceof Blob) {
|
|
@@ -46,92 +59,138 @@ class GltfExportManager {
|
|
|
46
59
|
}
|
|
47
60
|
});
|
|
48
61
|
}
|
|
49
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Exports selected nodes to GLTF. This may result in more than one file, since textures are exported seperately.
|
|
64
|
+
* @param filename Name of the main (text-based) .GLTF file referring to separate texture files.
|
|
65
|
+
* @param optimizeForAR Adjusts the exported GLB so that known issues get automatically fixed, this
|
|
66
|
+
* is mostly targeting Apples .usdz format.
|
|
67
|
+
* @param excluded Optional list of geometry (meshes, elements, variants,...) to be excluded from the export.
|
|
68
|
+
*/
|
|
69
|
+
exportGltfToFile(filename, optimizeForAR = false, excluded) {
|
|
50
70
|
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
-
yield this._exportPreProcess(excluded);
|
|
52
|
-
const gltf = yield glTFSerializer_1.GLTF2Export.GLTFAsync(this.viewer.scene, filename,
|
|
71
|
+
yield this._exportPreProcess(optimizeForAR, excluded);
|
|
72
|
+
const gltf = yield glTFSerializer_1.GLTF2Export.GLTFAsync(this.viewer.scene, filename, GltfExportManager._gltfExportOptions(optimizeForAR, excluded));
|
|
53
73
|
gltf.downloadFiles();
|
|
54
|
-
this._exportPostProcess();
|
|
74
|
+
this._exportPostProcess(optimizeForAR);
|
|
55
75
|
});
|
|
56
76
|
}
|
|
57
|
-
|
|
77
|
+
/**
|
|
78
|
+
* Exports selected nodes to GLB. This results in one binary file.
|
|
79
|
+
* @param filename Name of the main (text-based) .GLTF file referring to seperate texture files.
|
|
80
|
+
* @param optimizeForAR Adjusts the exported GLB so that known issues get automatically fixed, this
|
|
81
|
+
* is mostly targeting Apples .usdz format.
|
|
82
|
+
* @param excluded Optional list of geometry (meshes, elements, variants,...) to be excluded from the export.
|
|
83
|
+
*/
|
|
84
|
+
exportGlbToFile(filename, optimizeForAR = false, excluded) {
|
|
58
85
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
yield this._exportPreProcess(excluded);
|
|
60
|
-
const glb = yield glTFSerializer_1.GLTF2Export.GLBAsync(this.viewer.scene, filename,
|
|
86
|
+
yield this._exportPreProcess(optimizeForAR, excluded);
|
|
87
|
+
const glb = yield glTFSerializer_1.GLTF2Export.GLBAsync(this.viewer.scene, filename, GltfExportManager._gltfExportOptions(optimizeForAR, excluded));
|
|
61
88
|
glb.downloadFiles();
|
|
62
|
-
yield this._exportPostProcess();
|
|
89
|
+
yield this._exportPostProcess(optimizeForAR);
|
|
63
90
|
});
|
|
64
91
|
}
|
|
65
|
-
|
|
92
|
+
/**
|
|
93
|
+
* Prepares scene for GLB export.
|
|
94
|
+
* This is very important for AR exports, since we have to do a lot of conversions to satisfy Apples .usdz format.
|
|
95
|
+
*/
|
|
96
|
+
_exportPreProcess(optimizeForAR, excluded) {
|
|
66
97
|
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
if (!optimizeForAR) {
|
|
99
|
+
// actually nothing to do if AR optimization is not required
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
// pause rendering, since we are altering the active scene, which should not be visible to the user
|
|
67
103
|
this.viewer.pauseRendering();
|
|
68
|
-
//
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
104
|
+
// exchange materials if required
|
|
105
|
+
// the AR export should never contain textures larger than 1024 px:
|
|
106
|
+
// - iOS devices will crash most likely when trying to access AR endpoints with such files
|
|
107
|
+
// - file size will be reduced, which leads to faster loading times
|
|
108
|
+
// - textures > 1024 px shouldn't make a difference on mobiles anyway
|
|
109
|
+
// we don't have to rescale anything if are already on a downscaled device, since the textures are already <= 1024
|
|
110
|
+
// also we have to be very cautios with copying textures on these devices, since we are potentially very limited
|
|
111
|
+
// with the available memory
|
|
112
|
+
const isScaledDownDevice = (0, deviceHelper_1.getIsScaledDownDevice)();
|
|
113
|
+
if (!isScaledDownDevice) {
|
|
114
|
+
// the idea is to re-create all textures with a smaller texture size
|
|
115
|
+
// we have to exchange all materials for this to work
|
|
116
|
+
this.viewer.engine.clearInternalTexturesCache();
|
|
117
|
+
this.viewer.engine.getCaps().maxTextureSize = 1024;
|
|
118
|
+
this.viewer.scene.materials
|
|
119
|
+
.filter(material => material instanceof pbrMaterial_1.PBRMaterial)
|
|
120
|
+
.forEach(material => GltfExportManager._exchangeMaterial(material));
|
|
121
|
+
}
|
|
122
|
+
// since Babylon.js v6 the conversion to right handed GLB coordinate system is done differently
|
|
123
|
+
// previously the geometry itself has been altered, now they negate the scaling of all root nodes
|
|
124
|
+
// this is an issue for us, since we will receive this negated scalings in the exported GLB, which leads to issues
|
|
125
|
+
// on iOS devices
|
|
126
|
+
// we fix that by adding a top level root node with a negative scaling as well
|
|
127
|
+
// the exporter just removes this node as he detects a "noop root node" (implementation details of Babylon.js)
|
|
128
|
+
// everything beneath this node remains untouched
|
|
129
|
+
// TODO BJS Update: Test AR export on iPhones as well and double check if we still need this special logic
|
|
72
130
|
const exportRootNode = new transformNode_1.TransformNode(GltfExportManager._EXPORT_ROOT_NAME, this.viewer.scene);
|
|
73
|
-
exportRootNode.scaling = new
|
|
131
|
+
exportRootNode.scaling = new math_vector_1.Vector3(-1, 1, 1);
|
|
74
132
|
(0, babylonHelper_1.injectMetadata)(exportRootNode, {
|
|
75
133
|
[GltfExportManager._METADATA_PROPS.exportNode]: true,
|
|
76
134
|
[GltfExportManager._METADATA_PROPS.deleteAfterExport]: true,
|
|
77
135
|
});
|
|
78
|
-
//
|
|
136
|
+
// create clones of each node (recursively), optionally exchange with cloned materials and mark these nodes for the
|
|
137
|
+
// export
|
|
79
138
|
this.viewer.scene.rootNodes
|
|
80
139
|
.filter(rootNode => rootNode.name !== GltfExportManager._EXPORT_ROOT_NAME)
|
|
81
140
|
.forEach(rootNode => this._prepareNodeForExport(rootNode, exportRootNode, excluded));
|
|
82
141
|
// bake transformation of all meshes, so that no negative scalings are left
|
|
83
142
|
// it's important that this is done AFTER instanced meshes have been converted (_prepareNodeForExport)
|
|
84
|
-
this.
|
|
85
|
-
.filter(mesh => { var _a; return !!((_a = mesh.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.exportNode]); })
|
|
86
|
-
.forEach(mesh => (0, geometryHelper_1.bakeGeometryOfMesh)(mesh));
|
|
143
|
+
this._getNodesMarkedForExport(true).forEach(mesh => (0, geometryHelper_1.bakeGeometryOfMesh)(mesh));
|
|
87
144
|
// reset transformation of all "TransformNodes", which couldn't be handled by the geometry baking algorithm
|
|
88
145
|
// it's important that this is done AFTER all geometries have been baked
|
|
89
|
-
|
|
90
|
-
.filter(node => {
|
|
91
|
-
var _a;
|
|
92
|
-
return !!((_a = node.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.exportNode]) &&
|
|
93
|
-
node.name !== GltfExportManager._EXPORT_ROOT_NAME;
|
|
94
|
-
})
|
|
95
|
-
.forEach(node => (0, geometryHelper_1.resetTransformation)(node));
|
|
146
|
+
this._getNodesMarkedForExport().forEach(node => (0, geometryHelper_1.resetTransformation)(node));
|
|
96
147
|
});
|
|
97
148
|
}
|
|
98
|
-
|
|
149
|
+
/**
|
|
150
|
+
* Cleans up scene after export
|
|
151
|
+
*/
|
|
152
|
+
_exportPostProcess(optimizeForAR) {
|
|
99
153
|
return __awaiter(this, void 0, void 0, function* () {
|
|
100
|
-
|
|
154
|
+
if (!optimizeForAR) {
|
|
155
|
+
// nothing to do, since no changes have been made without AR optimizations
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
// dispose all nodes, materials and textures that have only been created for the export
|
|
101
159
|
this.viewer.scene.rootNodes
|
|
102
160
|
.filter(rootNode => { var _a; return (_a = rootNode.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.deleteAfterExport]; })
|
|
103
161
|
.forEach(rootNode => rootNode.dispose());
|
|
104
162
|
this.viewer.scene.materials
|
|
105
163
|
.filter(mat => { var _a; return !!((_a = mat.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.deleteAfterExport]); })
|
|
106
164
|
.forEach(material => material.dispose(false, false));
|
|
165
|
+
this.viewer.scene.textures
|
|
166
|
+
.filter(texture => { var _a; return !!((_a = texture.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.deleteAfterExport]); })
|
|
167
|
+
.forEach(texture => texture.dispose());
|
|
168
|
+
// reset engines max texture size and resume rendering
|
|
169
|
+
this.viewer.engine.getCaps().maxTextureSize = this._maxTextureSize;
|
|
107
170
|
this.viewer.resumeRendering();
|
|
108
171
|
});
|
|
109
172
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
return !!((_a = node.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.exportNode]);
|
|
115
|
-
},
|
|
116
|
-
};
|
|
117
|
-
}
|
|
173
|
+
/**
|
|
174
|
+
* Creates a clone of the node which should be used for the export.
|
|
175
|
+
* Also switches to the cloned material if required.
|
|
176
|
+
*/
|
|
118
177
|
_prepareNodeForExport(node, clonedParent, excluded) {
|
|
119
178
|
var _a, _b;
|
|
120
|
-
if (!
|
|
179
|
+
if (!GltfExportManager._shouldExportNode(node, excluded)) {
|
|
121
180
|
return;
|
|
122
181
|
}
|
|
123
182
|
// from here on we only have TransformNodes
|
|
124
183
|
const transformNode = node;
|
|
125
|
-
// clone original node and create unique name (via uniqueId)
|
|
126
|
-
const
|
|
127
|
-
const clonedNode = transformNode instanceof
|
|
128
|
-
? (0, geometryHelper_1.createMeshFromInstancedMesh)(transformNode,
|
|
129
|
-
: transformNode.clone(
|
|
184
|
+
// clone original node and create unique name (via uniqueId) for the export
|
|
185
|
+
const clonedNodeName = `${transformNode.name}_${transformNode.uniqueId}`;
|
|
186
|
+
const clonedNode = transformNode instanceof instancedMesh_1.InstancedMesh
|
|
187
|
+
? (0, geometryHelper_1.createMeshFromInstancedMesh)(transformNode, clonedNodeName, clonedParent)
|
|
188
|
+
: transformNode.clone(clonedNodeName, clonedParent, true);
|
|
130
189
|
// exchange material
|
|
131
190
|
if (clonedNode instanceof mesh_1.Mesh) {
|
|
132
191
|
const exchangeWithMaterial = (_b = (_a = clonedNode.material) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b[GltfExportManager._METADATA_PROPS.exchangeMaterialWith];
|
|
133
192
|
if (exchangeWithMaterial) {
|
|
134
|
-
clonedNode.material = this.viewer.scene.
|
|
193
|
+
clonedNode.material = this.viewer.scene.getMaterialByUniqueID(exchangeWithMaterial);
|
|
135
194
|
}
|
|
136
195
|
}
|
|
137
196
|
// signalize that this is a cloned node
|
|
@@ -143,10 +202,52 @@ class GltfExportManager {
|
|
|
143
202
|
const childs = transformNode.getChildTransformNodes(true);
|
|
144
203
|
childs.forEach(child => this._prepareNodeForExport(child, clonedNode, excluded));
|
|
145
204
|
}
|
|
146
|
-
|
|
205
|
+
/**
|
|
206
|
+
* Help function for receiving all nodes that are marked for the export
|
|
207
|
+
*/
|
|
208
|
+
_getNodesMarkedForExport(meshesOnly) {
|
|
209
|
+
const nodes = [...this.viewer.scene.meshes];
|
|
210
|
+
if (!meshesOnly) {
|
|
211
|
+
nodes.push(...this.viewer.scene.transformNodes);
|
|
212
|
+
}
|
|
213
|
+
const filteredNodes = nodes.filter(node => {
|
|
214
|
+
var _a;
|
|
215
|
+
return !!((_a = node.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.exportNode]) &&
|
|
216
|
+
// in the desired use cases we want to exclude the export root node
|
|
217
|
+
// maybe add a parameter if we have to include it in certain scenarios in the future
|
|
218
|
+
node.name !== GltfExportManager._EXPORT_ROOT_NAME;
|
|
219
|
+
});
|
|
220
|
+
return filteredNodes;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Defines options for the export.
|
|
224
|
+
* We don't allow the user to overwrite certain settings, since we rely on properties like `removeNoopRootNodes` to
|
|
225
|
+
* stay `true` in order to make the AR export work.
|
|
226
|
+
* We could theoretically allow it if AR optimization is not desired, but this may confuse the user.
|
|
227
|
+
*/
|
|
228
|
+
static _gltfExportOptions(optimizeForAR, excluded) {
|
|
229
|
+
return {
|
|
230
|
+
shouldExportNode: function (node) {
|
|
231
|
+
var _a;
|
|
232
|
+
if (optimizeForAR) {
|
|
233
|
+
// we explicitely marked nodes, that should be exported in AR mode
|
|
234
|
+
return !!((_a = node.metadata) === null || _a === void 0 ? void 0 : _a[GltfExportManager._METADATA_PROPS.exportNode]);
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
// use the default export node check (enabled state, exclusion list, etc...)
|
|
238
|
+
return GltfExportManager._shouldExportNode(node, excluded);
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Checks if a node should be available in the export
|
|
245
|
+
*/
|
|
246
|
+
static _shouldExportNode(node, excluded) {
|
|
147
247
|
if (!(node instanceof transformNode_1.TransformNode)) {
|
|
148
248
|
return false;
|
|
149
249
|
}
|
|
250
|
+
// TODO: think of adding "BackgroundHelper" and nodes with "infiniteDistance" here as well, at least in AR mode
|
|
150
251
|
if (node.name === viewer_1.Viewer.BOUNDING_BOX_NAME) {
|
|
151
252
|
return false;
|
|
152
253
|
}
|
|
@@ -158,32 +259,23 @@ class GltfExportManager {
|
|
|
158
259
|
}
|
|
159
260
|
return true;
|
|
160
261
|
}
|
|
161
|
-
_shouldReplaceMaterial(material) {
|
|
162
|
-
if (!(material instanceof index_1.PBRMaterial)) {
|
|
163
|
-
return false;
|
|
164
|
-
}
|
|
165
|
-
if (!material.subSurface.isRefractionEnabled) {
|
|
166
|
-
return false;
|
|
167
|
-
}
|
|
168
|
-
if (material.transparencyMode !== index_1.PBRMaterial.PBRMATERIAL_OPAQUE) {
|
|
169
|
-
return false;
|
|
170
|
-
}
|
|
171
|
-
return true;
|
|
172
|
-
}
|
|
173
262
|
/**
|
|
174
|
-
*
|
|
263
|
+
* Creates a clone of the material which should be used for the export.
|
|
264
|
+
* This is mostly required for recreating textures with lower sizes.
|
|
265
|
+
* Also refraction fixes will be applied.
|
|
175
266
|
*/
|
|
176
|
-
|
|
267
|
+
static _exchangeMaterial(material) {
|
|
177
268
|
const newName = `${material.name}_clone`;
|
|
178
269
|
const clonedMaterial = material.clone(newName);
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
clonedMaterial
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
270
|
+
// mark all exported textures, so that they will be deleted after the export
|
|
271
|
+
// CAUTION: disposing `RenderTargetTextures` will leave the scene in a "not ready" state
|
|
272
|
+
// I haven't found a solution for this in a certain time, so I'd just leave the in the scene, there are not used
|
|
273
|
+
// anyway since their parent material is disposed
|
|
274
|
+
clonedMaterial
|
|
275
|
+
.getActiveTextures()
|
|
276
|
+
.filter(texture => !(texture instanceof renderTargetTexture_1.RenderTargetTexture))
|
|
277
|
+
.forEach(texture => (0, babylonHelper_1.injectMetadata)(texture, { [GltfExportManager._METADATA_PROPS.deleteAfterExport]: true }));
|
|
278
|
+
(0, babylonHelper_1.injectMetadata)(material, { [GltfExportManager._METADATA_PROPS.exchangeMaterialWith]: clonedMaterial.uniqueId });
|
|
187
279
|
(0, babylonHelper_1.injectMetadata)(clonedMaterial, { [GltfExportManager._METADATA_PROPS.deleteAfterExport]: true });
|
|
188
280
|
}
|
|
189
281
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gltfExportManager.js","sourceRoot":"","sources":["../../../../src/api/manager/gltfExportManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"gltfExportManager.js","sourceRoot":"","sources":["../../../../src/api/manager/gltfExportManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,7 +52,7 @@ declare const cloneTransformNodeMaterial: (node: TransformNode, prefix?: DottedP
|
|
|
52
52
|
* @param deep
|
|
53
53
|
* @param metadata
|
|
54
54
|
*/
|
|
55
|
-
declare const injectMetadata: (object: Node | Material, metadata: {}, deep?: boolean) => void;
|
|
55
|
+
declare const injectMetadata: (object: Node | Material | BaseTexture, metadata: {}, deep?: boolean) => void;
|
|
56
56
|
/**
|
|
57
57
|
* @param node
|
|
58
58
|
* @param assertCallable
|
|
@@ -234,5 +234,5 @@ declare const duplicateNodeNames: (nodes: Node[], predicate?: ((node: Node) => b
|
|
|
234
234
|
* @param nodeNames
|
|
235
235
|
*/
|
|
236
236
|
declare const reportDuplicateNodeNames: (nodeNames: string[]) => void;
|
|
237
|
-
declare const drawPaintableOnMaterial: (material: Material, imageSource:
|
|
237
|
+
declare const drawPaintableOnMaterial: (material: Material, imageSource: HTMLImageElement, scene: Scene, options?: PaintableOptions) => void;
|
|
238
238
|
export { getRootNode, isLoadableTexture, mapToDottedNodes, getDottedPathForNode, cloneTransformNode, cloneNodeWithParents, cloneTransformNodeMaterial, getOrCreateMaterial, applyMaterial, injectMetadata, assertTransformNode, assertMeshCapability, activateTransformNode, deactivateTransformNode, enableNodeWithParents, disableNodeWithParents, transformTransformNode, setMaterial, setSourceNodeMaterial, setMaterialColor, setMaterialTexture, setMaterialMetallness, setMaterialRoughness, addToHighlightLayer, removeFromHighlightLayer, setReceiveShadows, addToShadowGenerator, removeFromShadowGenerator, getClientRectFromMesh, changeEnvironment, backgroundDomeName, envHelperMetadataName, mapTags, intersectingNodeNames, duplicateNodeNames, reportDuplicateNodeNames, drawPaintableOnMaterial, };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babylonHelper.js","sourceRoot":"","sources":["../../../../src/api/util/babylonHelper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"babylonHelper.js","sourceRoot":"","sources":["../../../../src/api/util/babylonHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the current device is an iPhone
|
|
3
|
+
*/
|
|
4
|
+
declare const getIsIPhone: () => boolean;
|
|
5
|
+
/**
|
|
6
|
+
* Checks if the current device is "scaled down", as defined in the Spec
|
|
7
|
+
*/
|
|
8
|
+
declare const getIsScaledDownDevice: () => boolean;
|
|
9
|
+
export { getIsIPhone, getIsScaledDownDevice };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getIsScaledDownDevice = exports.getIsIPhone = void 0;
|
|
4
|
+
const specStorage_1 = require("../store/specStorage");
|
|
5
|
+
/**
|
|
6
|
+
* Checks if the current device is an iPhone
|
|
7
|
+
*/
|
|
8
|
+
const getIsIPhone = () => {
|
|
9
|
+
const isIPhone = /iPhone/.test(navigator.userAgent);
|
|
10
|
+
return isIPhone;
|
|
11
|
+
};
|
|
12
|
+
exports.getIsIPhone = getIsIPhone;
|
|
13
|
+
/**
|
|
14
|
+
* Checks if the current device is "scaled down", as defined in the Spec
|
|
15
|
+
*/
|
|
16
|
+
const getIsScaledDownDevice = () => {
|
|
17
|
+
var _a;
|
|
18
|
+
const sceneJson = specStorage_1.SpecStorage.get('scene');
|
|
19
|
+
if (!((_a = sceneJson.engine) === null || _a === void 0 ? void 0 : _a.limitTextureSize)) {
|
|
20
|
+
// no down scaling defined
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
// check device
|
|
24
|
+
const deviceFits = sceneJson.engine.limitTextureSize.devices === 'all' ||
|
|
25
|
+
(sceneJson.engine.limitTextureSize.devices === 'iPhone' && getIsIPhone());
|
|
26
|
+
return deviceFits;
|
|
27
|
+
};
|
|
28
|
+
exports.getIsScaledDownDevice = getIsScaledDownDevice;
|
|
29
|
+
//# sourceMappingURL=deviceHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceHelper.js","sourceRoot":"","sources":["../../../../src/api/util/deviceHelper.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AAEnD;;GAEG;AACH,MAAM,WAAW,GAAG,GAAG,EAAE;IACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAEpD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAqBO,kCAAW;AAnBpB;;GAEG;AACH,MAAM,qBAAqB,GAAG,GAAG,EAAE;;IACjC,MAAM,SAAS,GAAG,yBAAW,CAAC,GAAG,CAAY,OAAO,CAAC,CAAC;IAEtD,IAAI,CAAC,CAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,gBAAgB,CAAA,EAAE;QACvC,0BAA0B;QAC1B,OAAO,KAAK,CAAC;KACd;IAED,eAAe;IACf,MAAM,UAAU,GACd,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,KAAK,KAAK;QACnD,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,KAAK,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC;IAE5E,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEoB,sDAAqB"}
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
import { InstancedMesh } from '@babylonjs/core/Meshes/instancedMesh';
|
|
2
2
|
import { Mesh } from '@babylonjs/core/Meshes/mesh';
|
|
3
3
|
import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
|
|
4
|
+
/**
|
|
5
|
+
* Creates a "standard" mesh from an instanced mesh, by cloning the source mesh and applying transformation data
|
|
6
|
+
*/
|
|
4
7
|
declare const createMeshFromInstancedMesh: (instancedMesh: InstancedMesh, newName: string, clonedParent: Nullable<TransformNode>) => Mesh;
|
|
8
|
+
/**
|
|
9
|
+
* Removes transformation data from the mesh and stores it in the geometry, which is called "baking".
|
|
10
|
+
* Also considers the geometry change from morph targets.
|
|
11
|
+
*/
|
|
5
12
|
declare const bakeGeometryOfMesh: (mesh: Mesh) => void;
|
|
13
|
+
/**
|
|
14
|
+
* Resets transformation to initial state
|
|
15
|
+
*/
|
|
6
16
|
declare const resetTransformation: (node: TransformNode) => void;
|
|
7
17
|
export { createMeshFromInstancedMesh, bakeGeometryOfMesh, resetTransformation };
|
|
@@ -3,6 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.resetTransformation = exports.bakeGeometryOfMesh = exports.createMeshFromInstancedMesh = void 0;
|
|
4
4
|
const buffer_1 = require("@babylonjs/core/Buffers/buffer");
|
|
5
5
|
const math_vector_1 = require("@babylonjs/core/Maths/math.vector");
|
|
6
|
+
/**
|
|
7
|
+
* Creates a "standard" mesh from an instanced mesh, by cloning the source mesh and applying transformation data
|
|
8
|
+
*/
|
|
6
9
|
const createMeshFromInstancedMesh = function (instancedMesh, newName, clonedParent) {
|
|
7
10
|
// first create a clone of the source mesh
|
|
8
11
|
const newMesh = instancedMesh.sourceMesh.clone(newName, clonedParent, true);
|
|
@@ -20,6 +23,10 @@ const createMeshFromInstancedMesh = function (instancedMesh, newName, clonedPare
|
|
|
20
23
|
return newMesh;
|
|
21
24
|
};
|
|
22
25
|
exports.createMeshFromInstancedMesh = createMeshFromInstancedMesh;
|
|
26
|
+
/**
|
|
27
|
+
* Removes transformation data from the mesh and stores it in the geometry, which is called "baking".
|
|
28
|
+
* Also considers the geometry change from morph targets.
|
|
29
|
+
*/
|
|
23
30
|
const bakeGeometryOfMesh = function (mesh) {
|
|
24
31
|
if (!mesh.geometry) {
|
|
25
32
|
// no geometry available, nothing to do
|
|
@@ -43,6 +50,16 @@ const bakeGeometryOfMesh = function (mesh) {
|
|
|
43
50
|
mesh.bakeCurrentTransformIntoVertices();
|
|
44
51
|
};
|
|
45
52
|
exports.bakeGeometryOfMesh = bakeGeometryOfMesh;
|
|
53
|
+
/**
|
|
54
|
+
* Resets transformation to initial state
|
|
55
|
+
*/
|
|
56
|
+
const resetTransformation = function (node) {
|
|
57
|
+
node.position = new math_vector_1.Vector3(0, 0, 0);
|
|
58
|
+
node.rotation = new math_vector_1.Vector3(0, 0, 0);
|
|
59
|
+
node.rotationQuaternion = null;
|
|
60
|
+
node.scaling = new math_vector_1.Vector3(1, 1, 1);
|
|
61
|
+
};
|
|
62
|
+
exports.resetTransformation = resetTransformation;
|
|
46
63
|
/**
|
|
47
64
|
* @param kind morph targets can affect various vertices kinds, whereas "position" is the most common one
|
|
48
65
|
* still other kinds (like normals or tangents) can be affected as well and can be provided on this input
|
|
@@ -80,11 +97,4 @@ const _getVerticesDataFromMorphTarget = function (kind, morphTarget) {
|
|
|
80
97
|
}
|
|
81
98
|
return null;
|
|
82
99
|
};
|
|
83
|
-
const resetTransformation = function (node) {
|
|
84
|
-
node.position = new math_vector_1.Vector3(0, 0, 0);
|
|
85
|
-
node.rotation = new math_vector_1.Vector3(0, 0, 0);
|
|
86
|
-
node.rotationQuaternion = null;
|
|
87
|
-
node.scaling = new math_vector_1.Vector3(1, 1, 1);
|
|
88
|
-
};
|
|
89
|
-
exports.resetTransformation = resetTransformation;
|
|
90
100
|
//# sourceMappingURL=geometryHelper.js.map
|