@combeenation/3d-viewer 12.0.0-alpha3 → 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 +62 -14
- package/dist/lib-cjs/api/manager/gltfExportManager.js +171 -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 +201 -83
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geometryHelper.js","sourceRoot":"","sources":["../../../../src/api/util/geometryHelper.ts"],"names":[],"mappings":";;;AAAA,2DAA8D;AAC9D,mEAA4D;AAS5D,MAAM,2BAA2B,GAAG,UAClC,aAA4B,EAC5B,OAAe,EACf,YAAqC;IAErC,0CAA0C;IAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IAC5E,kHAAkH;IAClH,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAClD,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAClD,OAAO,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAEhD,kCAAkC;IAClC,IAAI,aAAa,CAAC,kBAAkB,EAAE;QACpC,OAAO,CAAC,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;KACvE;IAED,+DAA+D;IAC/D,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"geometryHelper.js","sourceRoot":"","sources":["../../../../src/api/util/geometryHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -166,6 +166,15 @@ declare type SceneJson = {
|
|
|
166
166
|
engine?: {
|
|
167
167
|
antialiasing?: boolean;
|
|
168
168
|
options?: EngineOptions;
|
|
169
|
+
adaptToDeviceRatio?: boolean;
|
|
170
|
+
/**
|
|
171
|
+
* Possibility to limit the size of textures when getting loaded by the engine.
|
|
172
|
+
* Activating this feature potentially saves a lot of memory and can be used to avoid crashes when loading expensive
|
|
173
|
+
* models on weaker devices.
|
|
174
|
+
* In praxis this has been an issue with iPhones a lot, therefore it's possible to activate this feature for iPhones
|
|
175
|
+
* only as well.
|
|
176
|
+
*/
|
|
177
|
+
limitTextureSize?: LimitTextureSizeConfig | false;
|
|
169
178
|
};
|
|
170
179
|
scene: SceneDefinition;
|
|
171
180
|
animations?: AnimationDefinitions;
|
|
@@ -176,6 +185,10 @@ declare type SceneJson = {
|
|
|
176
185
|
*/
|
|
177
186
|
cloneMaterialsOnMutation?: boolean;
|
|
178
187
|
};
|
|
188
|
+
declare type LimitTextureSizeConfig = {
|
|
189
|
+
size: 512 | 1024;
|
|
190
|
+
devices: 'iPhone' | 'all';
|
|
191
|
+
};
|
|
179
192
|
/**
|
|
180
193
|
* Extends the `SceneJson` by removing the optional flag from some properties which surely exist in the auto generated
|
|
181
194
|
* spec
|
|
@@ -407,25 +420,6 @@ declare type AnimationDefinitions = {
|
|
|
407
420
|
declare type AnimationDefinition = GSAPTweenVars & {
|
|
408
421
|
shortestWay?: boolean;
|
|
409
422
|
};
|
|
410
|
-
/**
|
|
411
|
-
* Extends Babylon.js's {@link IExportOptions} by some viewer specific settings
|
|
412
|
-
*/
|
|
413
|
-
interface IExportOptionsExtended extends IExportOptions {
|
|
414
|
-
/**
|
|
415
|
-
* Refraction textures get lost when exporting the scene to GLB.\
|
|
416
|
-
* The short explanation is that refraction is calculated by "RenderTargetTexture", which is created in real time from
|
|
417
|
-
* the camera perspective. This data is not available in the GLB export, therefore the texture gets removed.\
|
|
418
|
-
* However if `exchangeRefractionMaterials` is set, a fallback material with a similar look is exported instead. This
|
|
419
|
-
* fallback material solves the refraction with a combination of certain color, roughness, metallic and transparency
|
|
420
|
-
* mode settings.
|
|
421
|
-
*/
|
|
422
|
-
exchangeRefractionMaterials?: boolean;
|
|
423
|
-
/**
|
|
424
|
-
* iOS devices crash when exporting textures which are larger than 1024.\
|
|
425
|
-
* If this flag is set, then all textures will be limited to a maximum texture size of 1024.
|
|
426
|
-
*/
|
|
427
|
-
limitTextureSize?: boolean;
|
|
428
|
-
}
|
|
429
423
|
declare type SpecGenerationData = {
|
|
430
424
|
name: string;
|
|
431
425
|
url: string;
|
|
@@ -5,5 +5,5 @@ import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
|
|
|
5
5
|
* @param list list of excluded geometry
|
|
6
6
|
* @returns boolean based on whether node (or one of its parents) was found in list
|
|
7
7
|
*/
|
|
8
|
-
declare const isNodeIncludedInExclusionList: (node: TransformNode, list: ExcludedGeometryList) => boolean;
|
|
8
|
+
declare const isNodeIncludedInExclusionList: (node: TransformNode, list: ExcludedGeometryList, skipParentCheck?: boolean) => boolean;
|
|
9
9
|
export { isNodeIncludedInExclusionList };
|
|
@@ -12,7 +12,7 @@ const tags_1 = require("@babylonjs/core/Misc/tags");
|
|
|
12
12
|
* @param list list of excluded geometry
|
|
13
13
|
* @returns boolean based on whether node (or one of its parents) was found in list
|
|
14
14
|
*/
|
|
15
|
-
const isNodeIncludedInExclusionList = function (node, list) {
|
|
15
|
+
const isNodeIncludedInExclusionList = function (node, list, skipParentCheck) {
|
|
16
16
|
const checkNode = (inputNode, nodeToCheck) => {
|
|
17
17
|
return inputNode.name === nodeToCheck.name;
|
|
18
18
|
};
|
|
@@ -49,7 +49,7 @@ const isNodeIncludedInExclusionList = function (node, list) {
|
|
|
49
49
|
return false;
|
|
50
50
|
};
|
|
51
51
|
let isExcluded = list.some(geometryToExclude => check(geometryToExclude, node));
|
|
52
|
-
if (!isExcluded && node.parent instanceof transformNode_1.TransformNode) {
|
|
52
|
+
if (!isExcluded && !skipParentCheck && node.parent instanceof transformNode_1.TransformNode) {
|
|
53
53
|
isExcluded = isNodeIncludedInExclusionList(node.parent, list);
|
|
54
54
|
}
|
|
55
55
|
return isExcluded;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structureHelper.js","sourceRoot":"","sources":["../../../../src/api/util/structureHelper.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAC7C,gDAA6C;AAC7C,gEAA6D;AAC7D,wEAAqE;AACrE,oDAAiD;AAEjD;;;;;GAKG;AACH,MAAM,6BAA6B,GAAG,
|
|
1
|
+
{"version":3,"file":"structureHelper.js","sourceRoot":"","sources":["../../../../src/api/util/structureHelper.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAC7C,gDAA6C;AAC7C,gEAA6D;AAC7D,wEAAqE;AACrE,oDAAiD;AAEjD;;;;;GAKG;AACH,MAAM,6BAA6B,GAAG,UACpC,IAAmB,EACnB,IAA0B,EAC1B,eAAyB;IAEzB,MAAM,SAAS,GAAG,CAAC,SAAwB,EAAE,WAA0B,EAAE,EAAE;QACzE,OAAO,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC;IAC7C,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,CAAC,OAAgB,EAAE,WAA0B,EAAE,EAAE;QACpE,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,CAAC,YAAqB,EAAE,WAA0B,EAAE,EAAE;QACzE,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,MAAM,oBAAoB,GAAG,CAAC,YAA6B,EAAE,WAA0B,EAAE,EAAE;QACzF,OAAO,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC;IACF,MAAM,sBAAsB,GAAG,CAAC,YAA+B,EAAE,WAA0B,EAAE,EAAE;QAC7F,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,KAAK,WAAW,CAAC,IAAI,CAAC;QACxF,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,IAAI,WAAI,CAAC,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAChG,OAAO,WAAW,IAAI,UAAU,CAAC;IACnC,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,iBAAmC,EAAE,IAAmB,EAAE,EAAE;QACzE,IAAI,iBAAiB,YAAY,iCAAe,EAAE;YAChD,OAAO,oBAAoB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;SACtD;QACD,IAAI,iBAAiB,YAAY,iBAAO,EAAE;YACxC,OAAO,YAAY,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;SAC9C;QACD,IAAI,iBAAiB,YAAY,iBAAO,EAAE;YACxC,OAAO,YAAY,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;SAC9C;QACD,IAAI,iBAAiB,YAAY,6BAAa,EAAE;YAC9C,OAAO,SAAS,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;SAC3C;QACD,IAAK,iBAAuC,CAAC,OAAO,IAAK,iBAAuC,CAAC,QAAQ,EAAE;YACzG,OAAO,sBAAsB,CAAC,iBAAsC,EAAE,IAAI,CAAC,CAAC;SAC7E;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC;IAChF,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,MAAM,YAAY,6BAAa,EAAE;QAC3E,UAAU,GAAG,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;KAC/D;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEO,sEAA6B"}
|