@combeenation/3d-viewer 5.1.2 → 5.2.0-alpha1
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/README.md +111 -111
- package/dist/lib-cjs/buildinfo.json +3 -3
- package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/animationInterface.d.ts +8 -8
- package/dist/lib-cjs/src/api/classes/animationInterface.js +3 -0
- package/dist/lib-cjs/src/api/classes/animationInterface.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/classes/dottedPath.d.ts +79 -79
- package/dist/lib-cjs/src/api/classes/dottedPath.js +167 -0
- package/dist/lib-cjs/src/api/classes/dottedPath.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/element.d.ts +149 -149
- package/dist/lib-cjs/src/api/classes/element.js +669 -0
- package/dist/lib-cjs/src/api/classes/element.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/classes/event.d.ts +326 -326
- package/dist/lib-cjs/src/api/classes/event.js +350 -0
- package/dist/lib-cjs/src/api/classes/event.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/classes/eventBroadcaster.d.ts +26 -26
- package/dist/lib-cjs/src/api/classes/eventBroadcaster.js +50 -0
- package/dist/lib-cjs/src/api/classes/eventBroadcaster.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/classes/parameter.d.ts +336 -336
- package/dist/lib-cjs/src/api/classes/parameter.js +462 -0
- package/dist/lib-cjs/src/api/classes/parameter.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/parameterObservable.d.ts +36 -36
- package/dist/lib-cjs/src/api/classes/parameterObservable.js +98 -0
- package/dist/lib-cjs/src/api/classes/parameterObservable.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/parameterizable.d.ts +15 -15
- package/dist/lib-cjs/src/api/classes/parameterizable.js +103 -0
- package/dist/lib-cjs/src/api/classes/parameterizable.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/placementAnimation.d.ts +45 -44
- package/dist/lib-cjs/{api → src/api}/classes/placementAnimation.js +175 -163
- package/dist/lib-cjs/src/api/classes/placementAnimation.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/classes/variant.d.ts +234 -234
- package/dist/lib-cjs/src/api/classes/variant.js +837 -0
- package/dist/lib-cjs/src/api/classes/variant.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/variantInstance.d.ts +45 -45
- package/dist/lib-cjs/src/api/classes/variantInstance.js +102 -0
- package/dist/lib-cjs/src/api/classes/variantInstance.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/classes/variantParameterizable.d.ts +17 -17
- package/dist/lib-cjs/src/api/classes/variantParameterizable.js +89 -0
- package/dist/lib-cjs/src/api/classes/variantParameterizable.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/viewer.d.ts +187 -184
- package/dist/lib-cjs/src/api/classes/viewer.js +594 -0
- package/dist/lib-cjs/src/api/classes/viewer.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/classes/viewerLight.d.ts +66 -66
- package/dist/lib-cjs/src/api/classes/viewerLight.js +344 -0
- package/dist/lib-cjs/src/api/classes/viewerLight.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/internal/lensRendering.d.ts +8 -8
- package/dist/lib-cjs/{api → src/api}/internal/lensRendering.js +11 -11
- package/dist/lib-cjs/src/api/internal/lensRendering.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/internal/sceneSetup.d.ts +13 -13
- package/dist/lib-cjs/src/api/internal/sceneSetup.js +226 -0
- package/dist/lib-cjs/src/api/internal/sceneSetup.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/manager/animationManager.d.ts +30 -29
- package/dist/lib-cjs/src/api/manager/animationManager.js +127 -0
- package/dist/lib-cjs/src/api/manager/animationManager.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/manager/gltfExportManager.d.ts +65 -65
- package/dist/lib-cjs/src/api/manager/gltfExportManager.js +197 -0
- package/dist/lib-cjs/src/api/manager/gltfExportManager.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/manager/sceneManager.d.ts +31 -31
- package/dist/lib-cjs/src/api/manager/sceneManager.js +128 -0
- package/dist/lib-cjs/src/api/manager/sceneManager.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/manager/variantInstanceManager.d.ts +92 -92
- package/dist/lib-cjs/src/api/manager/variantInstanceManager.js +261 -0
- package/dist/lib-cjs/src/api/manager/variantInstanceManager.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/store/specStorage.d.ts +24 -24
- package/dist/lib-cjs/{api → src/api}/store/specStorage.js +50 -51
- package/dist/lib-cjs/src/api/store/specStorage.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/util/babylonHelper.d.ts +174 -174
- package/dist/lib-cjs/{api → src/api}/util/babylonHelper.js +591 -611
- package/dist/lib-cjs/src/api/util/babylonHelper.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/util/globalTypes.d.ts +366 -366
- package/dist/lib-cjs/src/api/util/globalTypes.js +2 -0
- package/dist/lib-cjs/src/api/util/globalTypes.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/util/resourceHelper.d.ts +58 -58
- package/dist/lib-cjs/src/api/util/resourceHelper.js +202 -0
- package/dist/lib-cjs/src/api/util/resourceHelper.js.map +1 -0
- package/dist/lib-cjs/{api → src/api}/util/sceneLoaderHelper.d.ts +35 -35
- package/dist/lib-cjs/{api → src/api}/util/sceneLoaderHelper.js +141 -140
- package/dist/lib-cjs/src/api/util/sceneLoaderHelper.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/util/stringHelper.d.ts +9 -9
- package/dist/lib-cjs/{api → src/api}/util/stringHelper.js +23 -25
- package/dist/lib-cjs/src/api/util/stringHelper.js.map +1 -0
- package/dist/{lib-es6 → lib-cjs/src}/api/util/structureHelper.d.ts +9 -9
- package/dist/lib-cjs/{api → src/api}/util/structureHelper.js +48 -48
- package/dist/lib-cjs/src/api/util/structureHelper.js.map +1 -0
- package/dist/lib-cjs/{index.d.ts → src/index.d.ts} +51 -49
- package/dist/lib-cjs/{index.js → src/index.js} +110 -89
- package/dist/lib-cjs/src/index.js.map +1 -0
- package/dist/lib-es6/buildinfo.json +3 -3
- package/dist/lib-es6/es6.tsconfig.tsbuildinfo +1 -0
- package/dist/lib-es6/{api → src/api}/classes/animationInterface.d.ts +8 -8
- package/dist/lib-es6/src/api/classes/animationInterface.js +2 -0
- package/dist/lib-es6/src/api/classes/animationInterface.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/classes/dottedPath.d.ts +79 -79
- package/dist/lib-es6/src/api/classes/dottedPath.js +163 -0
- package/dist/lib-es6/src/api/classes/dottedPath.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/element.d.ts +149 -149
- package/dist/lib-es6/src/api/classes/element.js +665 -0
- package/dist/lib-es6/src/api/classes/element.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/classes/event.d.ts +326 -326
- package/dist/lib-es6/src/api/classes/event.js +346 -0
- package/dist/lib-es6/src/api/classes/event.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/classes/eventBroadcaster.d.ts +26 -26
- package/dist/lib-es6/src/api/classes/eventBroadcaster.js +43 -0
- package/dist/lib-es6/src/api/classes/eventBroadcaster.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/classes/parameter.d.ts +336 -336
- package/dist/lib-es6/src/api/classes/parameter.js +458 -0
- package/dist/lib-es6/src/api/classes/parameter.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/parameterObservable.d.ts +36 -36
- package/dist/lib-es6/src/api/classes/parameterObservable.js +94 -0
- package/dist/lib-es6/src/api/classes/parameterObservable.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/parameterizable.d.ts +15 -15
- package/dist/lib-es6/src/api/classes/parameterizable.js +99 -0
- package/dist/lib-es6/src/api/classes/parameterizable.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/placementAnimation.d.ts +45 -44
- package/dist/lib-es6/{api → src/api}/classes/placementAnimation.js +171 -160
- package/dist/lib-es6/src/api/classes/placementAnimation.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/classes/variant.d.ts +234 -234
- package/dist/lib-es6/src/api/classes/variant.js +833 -0
- package/dist/lib-es6/src/api/classes/variant.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/variantInstance.d.ts +45 -45
- package/dist/lib-es6/src/api/classes/variantInstance.js +98 -0
- package/dist/lib-es6/src/api/classes/variantInstance.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/classes/variantParameterizable.d.ts +17 -17
- package/dist/lib-es6/src/api/classes/variantParameterizable.js +85 -0
- package/dist/lib-es6/src/api/classes/variantParameterizable.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/viewer.d.ts +187 -184
- package/dist/lib-es6/src/api/classes/viewer.js +587 -0
- package/dist/lib-es6/src/api/classes/viewer.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/classes/viewerLight.d.ts +66 -66
- package/dist/lib-es6/src/api/classes/viewerLight.js +317 -0
- package/dist/lib-es6/src/api/classes/viewerLight.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/internal/lensRendering.d.ts +8 -8
- package/dist/lib-es6/{api → src/api}/internal/lensRendering.js +8 -8
- package/dist/lib-es6/src/api/internal/lensRendering.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/internal/sceneSetup.d.ts +13 -13
- package/dist/lib-es6/src/api/internal/sceneSetup.js +198 -0
- package/dist/lib-es6/src/api/internal/sceneSetup.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/manager/animationManager.d.ts +30 -29
- package/dist/lib-es6/src/api/manager/animationManager.js +123 -0
- package/dist/lib-es6/src/api/manager/animationManager.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/manager/gltfExportManager.d.ts +65 -65
- package/dist/lib-es6/{api → src/api}/manager/gltfExportManager.js +192 -220
- package/dist/lib-es6/src/api/manager/gltfExportManager.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/manager/sceneManager.d.ts +31 -31
- package/dist/lib-es6/src/api/manager/sceneManager.js +124 -0
- package/dist/lib-es6/src/api/manager/sceneManager.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/manager/variantInstanceManager.d.ts +92 -92
- package/dist/lib-es6/src/api/manager/variantInstanceManager.js +257 -0
- package/dist/lib-es6/src/api/manager/variantInstanceManager.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/store/specStorage.d.ts +24 -24
- package/dist/lib-es6/{api → src/api}/store/specStorage.js +46 -48
- package/dist/lib-es6/src/api/store/specStorage.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/util/babylonHelper.d.ts +174 -174
- package/dist/lib-es6/{api → src/api}/util/babylonHelper.js +561 -581
- package/dist/lib-es6/src/api/util/babylonHelper.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/util/globalTypes.d.ts +366 -366
- package/dist/lib-es6/src/api/util/globalTypes.js +2 -0
- package/dist/lib-es6/src/api/util/globalTypes.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/util/resourceHelper.d.ts +58 -58
- package/dist/lib-es6/src/api/util/resourceHelper.js +192 -0
- package/dist/lib-es6/src/api/util/resourceHelper.js.map +1 -0
- package/dist/lib-es6/{api → src/api}/util/sceneLoaderHelper.d.ts +35 -35
- package/dist/lib-es6/{api → src/api}/util/sceneLoaderHelper.js +131 -133
- package/dist/lib-es6/src/api/util/sceneLoaderHelper.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/util/stringHelper.d.ts +9 -9
- package/dist/lib-es6/{api → src/api}/util/stringHelper.js +19 -21
- package/dist/lib-es6/src/api/util/stringHelper.js.map +1 -0
- package/dist/{lib-cjs → lib-es6/src}/api/util/structureHelper.d.ts +9 -9
- package/dist/lib-es6/{api → src/api}/util/structureHelper.js +45 -45
- package/dist/lib-es6/src/api/util/structureHelper.js.map +1 -0
- package/dist/lib-es6/{index.js → src/index.d.ts} +51 -51
- package/dist/lib-es6/{index.d.ts → src/index.js} +49 -49
- package/dist/lib-es6/src/index.js.map +1 -0
- package/dist/lib-full/lens-rendering.js +2 -0
- package/dist/lib-full/lens-rendering.js.map +1 -0
- package/dist/lib-full/main.js +3 -0
- package/dist/lib-full/main.js.LICENSE.txt +9 -0
- package/dist/lib-full/main.js.map +1 -0
- package/package.json +76 -88
- package/src/api/classes/animationInterface.ts +10 -10
- package/src/api/classes/dottedPath.ts +181 -181
- package/src/api/classes/element.ts +716 -716
- package/src/api/classes/event.ts +367 -367
- package/src/api/classes/eventBroadcaster.ts +52 -52
- package/src/api/classes/parameter.ts +494 -494
- package/src/api/classes/parameterObservable.ts +100 -100
- package/src/api/classes/parameterizable.ts +87 -87
- package/src/api/classes/placementAnimation.ts +161 -160
- package/src/api/classes/variant.ts +904 -905
- package/src/api/classes/variantInstance.ts +97 -97
- package/src/api/classes/variantParameterizable.ts +85 -85
- package/src/api/classes/viewer.ts +669 -668
- package/src/api/classes/viewerLight.ts +334 -334
- package/src/api/internal/debugViewer.ts +90 -90
- package/src/api/internal/lensRendering.ts +9 -10
- package/src/api/internal/sceneSetup.ts +204 -204
- package/src/api/manager/animationManager.ts +143 -142
- package/src/api/manager/gltfExportManager.ts +191 -191
- package/src/api/manager/sceneManager.ts +127 -127
- package/src/api/manager/variantInstanceManager.ts +265 -265
- package/src/api/store/specStorage.ts +51 -51
- package/src/api/util/babylonHelper.ts +663 -663
- package/src/api/util/globalTypes.ts +413 -413
- package/src/api/util/resourceHelper.ts +189 -189
- package/src/api/util/sceneLoaderHelper.ts +148 -147
- package/src/api/util/stringHelper.ts +23 -23
- package/src/api/util/structureHelper.ts +49 -49
- package/src/dev.ts +61 -64
- package/src/index.ts +96 -94
- package/src/types.d.ts +28 -28
- package/dist/lib-cjs/api/classes/animationInterface.js +0 -2
- package/dist/lib-cjs/api/classes/animationInterface.js.map +0 -1
- package/dist/lib-cjs/api/classes/dottedPath.js +0 -188
- package/dist/lib-cjs/api/classes/dottedPath.js.map +0 -1
- package/dist/lib-cjs/api/classes/element.js +0 -824
- package/dist/lib-cjs/api/classes/element.js.map +0 -1
- package/dist/lib-cjs/api/classes/elementParameterizable.d.ts +0 -14
- package/dist/lib-cjs/api/classes/elementParameterizable.js +0 -135
- package/dist/lib-cjs/api/classes/elementParameterizable.js.map +0 -1
- package/dist/lib-cjs/api/classes/event.js +0 -372
- package/dist/lib-cjs/api/classes/event.js.map +0 -1
- package/dist/lib-cjs/api/classes/eventBroadcaster.js +0 -54
- package/dist/lib-cjs/api/classes/eventBroadcaster.js.map +0 -1
- package/dist/lib-cjs/api/classes/parameter.js +0 -472
- package/dist/lib-cjs/api/classes/parameter.js.map +0 -1
- package/dist/lib-cjs/api/classes/parameterObservable.js +0 -102
- package/dist/lib-cjs/api/classes/parameterObservable.js.map +0 -1
- package/dist/lib-cjs/api/classes/parameterizable.js +0 -150
- package/dist/lib-cjs/api/classes/parameterizable.js.map +0 -1
- package/dist/lib-cjs/api/classes/placementAnimation.js.map +0 -1
- package/dist/lib-cjs/api/classes/variant.js +0 -1204
- package/dist/lib-cjs/api/classes/variant.js.map +0 -1
- package/dist/lib-cjs/api/classes/variantInstance.js +0 -109
- package/dist/lib-cjs/api/classes/variantInstance.js.map +0 -1
- package/dist/lib-cjs/api/classes/variantParameterizable.js +0 -100
- package/dist/lib-cjs/api/classes/variantParameterizable.js.map +0 -1
- package/dist/lib-cjs/api/classes/viewer.js +0 -732
- package/dist/lib-cjs/api/classes/viewer.js.map +0 -1
- package/dist/lib-cjs/api/classes/viewerLight.js +0 -393
- package/dist/lib-cjs/api/classes/viewerLight.js.map +0 -1
- package/dist/lib-cjs/api/internal/debugViewer.d.ts +0 -13
- package/dist/lib-cjs/api/internal/debugViewer.js +0 -87
- package/dist/lib-cjs/api/internal/debugViewer.js.map +0 -1
- package/dist/lib-cjs/api/internal/lensRendering.js.map +0 -1
- package/dist/lib-cjs/api/internal/sceneSetup.js +0 -239
- package/dist/lib-cjs/api/internal/sceneSetup.js.map +0 -1
- package/dist/lib-cjs/api/manager/animationManager.js +0 -131
- package/dist/lib-cjs/api/manager/animationManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/gltfExportManager.js +0 -224
- package/dist/lib-cjs/api/manager/gltfExportManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/sceneManager.js +0 -153
- package/dist/lib-cjs/api/manager/sceneManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/variantInstanceManager.js +0 -336
- package/dist/lib-cjs/api/manager/variantInstanceManager.js.map +0 -1
- package/dist/lib-cjs/api/store/specStorage.js.map +0 -1
- package/dist/lib-cjs/api/util/babylonHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/globalTypes.js +0 -2
- package/dist/lib-cjs/api/util/globalTypes.js.map +0 -1
- package/dist/lib-cjs/api/util/resourceHelper.js +0 -258
- package/dist/lib-cjs/api/util/resourceHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/sceneLoaderHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/stringHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/structureHelper.js.map +0 -1
- package/dist/lib-cjs/index.js.map +0 -1
- package/dist/lib-es6/api/classes/animationInterface.js +0 -2
- package/dist/lib-es6/api/classes/animationInterface.js.map +0 -1
- package/dist/lib-es6/api/classes/dottedPath.js +0 -185
- package/dist/lib-es6/api/classes/dottedPath.js.map +0 -1
- package/dist/lib-es6/api/classes/element.js +0 -821
- package/dist/lib-es6/api/classes/element.js.map +0 -1
- package/dist/lib-es6/api/classes/event.js +0 -369
- package/dist/lib-es6/api/classes/event.js.map +0 -1
- package/dist/lib-es6/api/classes/eventBroadcaster.js +0 -51
- package/dist/lib-es6/api/classes/eventBroadcaster.js.map +0 -1
- package/dist/lib-es6/api/classes/parameter.js +0 -469
- package/dist/lib-es6/api/classes/parameter.js.map +0 -1
- package/dist/lib-es6/api/classes/parameterObservable.js +0 -99
- package/dist/lib-es6/api/classes/parameterObservable.js.map +0 -1
- package/dist/lib-es6/api/classes/parameterizable.js +0 -147
- package/dist/lib-es6/api/classes/parameterizable.js.map +0 -1
- package/dist/lib-es6/api/classes/placementAnimation.js.map +0 -1
- package/dist/lib-es6/api/classes/variant.js +0 -1199
- package/dist/lib-es6/api/classes/variant.js.map +0 -1
- package/dist/lib-es6/api/classes/variantInstance.js +0 -106
- package/dist/lib-es6/api/classes/variantInstance.js.map +0 -1
- package/dist/lib-es6/api/classes/variantParameterizable.js +0 -97
- package/dist/lib-es6/api/classes/variantParameterizable.js.map +0 -1
- package/dist/lib-es6/api/classes/viewer.js +0 -729
- package/dist/lib-es6/api/classes/viewer.js.map +0 -1
- package/dist/lib-es6/api/classes/viewerLight.js +0 -390
- package/dist/lib-es6/api/classes/viewerLight.js.map +0 -1
- package/dist/lib-es6/api/internal/debugViewer.d.ts +0 -13
- package/dist/lib-es6/api/internal/debugViewer.js +0 -84
- package/dist/lib-es6/api/internal/debugViewer.js.map +0 -1
- package/dist/lib-es6/api/internal/lensRendering.js.map +0 -1
- package/dist/lib-es6/api/internal/sceneSetup.js +0 -234
- package/dist/lib-es6/api/internal/sceneSetup.js.map +0 -1
- package/dist/lib-es6/api/manager/animationManager.js +0 -128
- package/dist/lib-es6/api/manager/animationManager.js.map +0 -1
- package/dist/lib-es6/api/manager/gltfExportManager.js.map +0 -1
- package/dist/lib-es6/api/manager/sceneManager.js +0 -150
- package/dist/lib-es6/api/manager/sceneManager.js.map +0 -1
- package/dist/lib-es6/api/manager/variantInstanceManager.js +0 -333
- package/dist/lib-es6/api/manager/variantInstanceManager.js.map +0 -1
- package/dist/lib-es6/api/store/specStorage.js.map +0 -1
- package/dist/lib-es6/api/util/babylonHelper.js.map +0 -1
- package/dist/lib-es6/api/util/globalTypes.js +0 -2
- package/dist/lib-es6/api/util/globalTypes.js.map +0 -1
- package/dist/lib-es6/api/util/resourceHelper.js +0 -248
- package/dist/lib-es6/api/util/resourceHelper.js.map +0 -1
- package/dist/lib-es6/api/util/sceneLoaderHelper.js.map +0 -1
- package/dist/lib-es6/api/util/stringHelper.js.map +0 -1
- package/dist/lib-es6/api/util/structureHelper.js.map +0 -1
- package/dist/lib-es6/index.js.map +0 -1
- package/dist/webpack-stats.json +0 -0
- package/src/buildinfo.json +0 -3
- package/src/commonjs.tsconfig.json +0 -10
- package/src/declaration.tsconfig.json +0 -8
- package/src/es6.tsconfig.json +0 -10
- package/src/pagesconfig.json +0 -81
- package/src/tsconfig.json +0 -33
- package/src/tsconfig.types.json +0 -9
|
@@ -1,239 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaultEnvHelperColor = exports.defaultSceneClearColor = exports.sceneSetup = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
require("@babylonjs/core/Helpers/sceneHelpers");
|
|
6
|
-
require("@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader");
|
|
7
|
-
var math_color_1 = require("@babylonjs/core/Maths/math.color");
|
|
8
|
-
var math_vector_1 = require("@babylonjs/core/Maths/math.vector");
|
|
9
|
-
var meshBuilder_1 = require("@babylonjs/core/Meshes/meshBuilder");
|
|
10
|
-
var defaultRenderingPipeline_1 = require("@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline");
|
|
11
|
-
var scene_1 = require("@babylonjs/core/scene");
|
|
12
|
-
var lodash_es_1 = require("lodash-es");
|
|
13
|
-
var parameter_1 = require("../classes/parameter");
|
|
14
|
-
var defaultSceneClearColor = new math_color_1.Color4(0, 0, 0, 0);
|
|
15
|
-
exports.defaultSceneClearColor = defaultSceneClearColor;
|
|
16
|
-
var defaultEnvHelperColor = new math_color_1.Color4(1, 1, 1, 0);
|
|
17
|
-
exports.defaultEnvHelperColor = defaultEnvHelperColor;
|
|
18
|
-
/**
|
|
19
|
-
* @param scene
|
|
20
|
-
* @param name
|
|
21
|
-
* @param definition
|
|
22
|
-
*/
|
|
23
|
-
var processGround = function (scene, name, definition) {
|
|
24
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
25
|
-
return tslib_1.__generator(this, function (_a) {
|
|
26
|
-
return [2 /*return*/, new Promise(function (resolve) {
|
|
27
|
-
var _resolve = function (ground) {
|
|
28
|
-
if (definition.receiveShadows !== undefined) {
|
|
29
|
-
ground.receiveShadows = definition.receiveShadows;
|
|
30
|
-
}
|
|
31
|
-
resolve(ground);
|
|
32
|
-
};
|
|
33
|
-
switch (definition.type) {
|
|
34
|
-
case 'baked':
|
|
35
|
-
if (!definition.meshId) {
|
|
36
|
-
throw new Error("A baked ground must define a \"meshId\".");
|
|
37
|
-
}
|
|
38
|
-
_resolve(scene.getMeshByID(definition.meshId));
|
|
39
|
-
break;
|
|
40
|
-
case 'ground':
|
|
41
|
-
_resolve(meshBuilder_1.MeshBuilder.CreateGround(name, definition, scene));
|
|
42
|
-
break;
|
|
43
|
-
case 'heightmap':
|
|
44
|
-
if (!definition.url) {
|
|
45
|
-
throw new Error("A heightmap ground must define an \"url\".");
|
|
46
|
-
}
|
|
47
|
-
definition.onReady = function (_ground) {
|
|
48
|
-
_resolve(_ground);
|
|
49
|
-
};
|
|
50
|
-
meshBuilder_1.MeshBuilder.CreateGroundFromHeightMap(name, definition.url, definition, scene);
|
|
51
|
-
break;
|
|
52
|
-
default:
|
|
53
|
-
throw new Error("Ground of type \"" + definition.type + "\" not implemented (yet).");
|
|
54
|
-
}
|
|
55
|
-
})];
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
};
|
|
59
|
-
/**
|
|
60
|
-
* @param scene
|
|
61
|
-
*/
|
|
62
|
-
var defaultCamera = function (scene) {
|
|
63
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
64
|
-
return tslib_1.__generator(this, function (_a) {
|
|
65
|
-
switch (_a.label) {
|
|
66
|
-
case 0: return [4 /*yield*/, processCamera(scene, 'default_camera', {
|
|
67
|
-
type: 'arc',
|
|
68
|
-
active: true,
|
|
69
|
-
})];
|
|
70
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
};
|
|
75
|
-
/**
|
|
76
|
-
* @param scene
|
|
77
|
-
* @param name
|
|
78
|
-
* @param cameraSetup
|
|
79
|
-
*/
|
|
80
|
-
var processCamera = function (scene, name, cameraSetup) {
|
|
81
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
82
|
-
var camera, target, _a, arcCameraModule;
|
|
83
|
-
return tslib_1.__generator(this, function (_b) {
|
|
84
|
-
switch (_b.label) {
|
|
85
|
-
case 0:
|
|
86
|
-
target = math_vector_1.Vector3.Zero();
|
|
87
|
-
if (cameraSetup.target) {
|
|
88
|
-
target = parameter_1.Parameter.parseVector(cameraSetup.target);
|
|
89
|
-
}
|
|
90
|
-
_a = cameraSetup.type;
|
|
91
|
-
switch (_a) {
|
|
92
|
-
case 'arc': return [3 /*break*/, 1];
|
|
93
|
-
}
|
|
94
|
-
return [3 /*break*/, 3];
|
|
95
|
-
case 1: return [4 /*yield*/, Promise.resolve().then(function () { return require(
|
|
96
|
-
/* webpackChunkName: "arc-rotate-camera" */ '@babylonjs/core/Cameras/arcRotateCamera'); })];
|
|
97
|
-
case 2:
|
|
98
|
-
arcCameraModule = _b.sent();
|
|
99
|
-
camera = new arcCameraModule.ArcRotateCamera(name, Math.PI / 4, Math.PI / 4, 2, target, scene);
|
|
100
|
-
camera.metadata = {
|
|
101
|
-
alpha: Math.PI / 4,
|
|
102
|
-
beta: Math.PI / 4,
|
|
103
|
-
radius: 2,
|
|
104
|
-
};
|
|
105
|
-
return [3 /*break*/, 3];
|
|
106
|
-
case 3:
|
|
107
|
-
if (cameraSetup.active) {
|
|
108
|
-
camera.attachControl(scene.getEngine().getRenderingCanvas(), true);
|
|
109
|
-
}
|
|
110
|
-
if (cameraSetup.fov) {
|
|
111
|
-
camera.fov = cameraSetup.fov;
|
|
112
|
-
}
|
|
113
|
-
camera.storeState();
|
|
114
|
-
return [2 /*return*/, camera];
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
};
|
|
119
|
-
/**
|
|
120
|
-
* @param engine
|
|
121
|
-
* @param sceneJson
|
|
122
|
-
*/
|
|
123
|
-
var sceneSetup = function (engine, sceneJson) {
|
|
124
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
125
|
-
var scene, cameras, cameraDefinitions, _a, _b, _i, cameraName, _c, _d, camera, groundDefinitions, _e, _f, _g, groundName, defaultPipeline, module_1;
|
|
126
|
-
return tslib_1.__generator(this, function (_h) {
|
|
127
|
-
switch (_h.label) {
|
|
128
|
-
case 0:
|
|
129
|
-
scene = new scene_1.Scene(engine);
|
|
130
|
-
scene.clearColor = defaultSceneClearColor;
|
|
131
|
-
cameras = [];
|
|
132
|
-
cameraDefinitions = lodash_es_1.get(sceneJson.scene, 'cameras');
|
|
133
|
-
if (!!lodash_es_1.isEmpty(cameraDefinitions)) return [3 /*break*/, 5];
|
|
134
|
-
_a = [];
|
|
135
|
-
for (_b in cameraDefinitions)
|
|
136
|
-
_a.push(_b);
|
|
137
|
-
_i = 0;
|
|
138
|
-
_h.label = 1;
|
|
139
|
-
case 1:
|
|
140
|
-
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
141
|
-
cameraName = _a[_i];
|
|
142
|
-
_d = (_c = cameras).push;
|
|
143
|
-
return [4 /*yield*/, processCamera(scene, cameraName, cameraDefinitions[cameraName])];
|
|
144
|
-
case 2:
|
|
145
|
-
_d.apply(_c, [_h.sent()]);
|
|
146
|
-
_h.label = 3;
|
|
147
|
-
case 3:
|
|
148
|
-
_i++;
|
|
149
|
-
return [3 /*break*/, 1];
|
|
150
|
-
case 4: return [3 /*break*/, 7];
|
|
151
|
-
case 5: return [4 /*yield*/, defaultCamera(scene)];
|
|
152
|
-
case 6:
|
|
153
|
-
camera = _h.sent();
|
|
154
|
-
cameras.push(camera);
|
|
155
|
-
_h.label = 7;
|
|
156
|
-
case 7:
|
|
157
|
-
groundDefinitions = lodash_es_1.get(sceneJson.scene, 'grounds');
|
|
158
|
-
if (!!lodash_es_1.isEmpty(groundDefinitions)) return [3 /*break*/, 11];
|
|
159
|
-
_e = [];
|
|
160
|
-
for (_f in groundDefinitions)
|
|
161
|
-
_e.push(_f);
|
|
162
|
-
_g = 0;
|
|
163
|
-
_h.label = 8;
|
|
164
|
-
case 8:
|
|
165
|
-
if (!(_g < _e.length)) return [3 /*break*/, 11];
|
|
166
|
-
groundName = _e[_g];
|
|
167
|
-
return [4 /*yield*/, processGround(scene, groundName, groundDefinitions[groundName])];
|
|
168
|
-
case 9:
|
|
169
|
-
_h.sent();
|
|
170
|
-
_h.label = 10;
|
|
171
|
-
case 10:
|
|
172
|
-
_g++;
|
|
173
|
-
return [3 /*break*/, 8];
|
|
174
|
-
case 11:
|
|
175
|
-
defaultPipeline = new defaultRenderingPipeline_1.DefaultRenderingPipeline('default-rendering-pipeline', false, scene);
|
|
176
|
-
/* DISABLED: causes problems with Internet Explorer
|
|
177
|
-
defaultPipeline.imageProcessingEnabled = true;
|
|
178
|
-
*/
|
|
179
|
-
if (sceneJson.scene.globals.aa) {
|
|
180
|
-
defaultPipeline.fxaaEnabled = true; //implicitly does FxaaPostProcess()
|
|
181
|
-
}
|
|
182
|
-
// Set samples regardless of fxaa setting since we don't want to use fxaa but still increase the sample count
|
|
183
|
-
defaultPipeline.samples = 8;
|
|
184
|
-
if (!sceneJson.scene.globals['camera-settings']) return [3 /*break*/, 13];
|
|
185
|
-
if (sceneJson.scene.globals['camera-settings'].sharpen &&
|
|
186
|
-
sceneJson.scene.globals['camera-settings'].sharpen.enabled) {
|
|
187
|
-
defaultPipeline.sharpenEnabled = true; //implicitly does SharpenPostProcess()
|
|
188
|
-
//defaultPipeline.sharpen.colorAmount = 1;
|
|
189
|
-
//defaultPipeline.sharpen.edgeAmount = 0;
|
|
190
|
-
}
|
|
191
|
-
if (sceneJson.scene.globals['camera-settings'].bloom &&
|
|
192
|
-
sceneJson.scene.globals['camera-settings'].bloom.enabled) {
|
|
193
|
-
defaultPipeline.bloomEnabled = true;
|
|
194
|
-
if (sceneJson.scene.globals['camera-settings'].bloom.size) {
|
|
195
|
-
defaultPipeline.bloomScale = sceneJson.scene.globals['camera-settings'].bloom.size;
|
|
196
|
-
}
|
|
197
|
-
if (sceneJson.scene.globals['camera-settings'].bloom.threshold) {
|
|
198
|
-
defaultPipeline.bloomThreshold = sceneJson.scene.globals['camera-settings'].bloom.threshold;
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
if (sceneJson.scene.globals['camera-settings'].contrast) {
|
|
202
|
-
scene.imageProcessingConfiguration.contrast = sceneJson.scene.globals['camera-settings'].contrast;
|
|
203
|
-
}
|
|
204
|
-
if (sceneJson.scene.globals['camera-settings'].exposure) {
|
|
205
|
-
scene.imageProcessingConfiguration.exposure = sceneJson.scene.globals['camera-settings'].exposure;
|
|
206
|
-
}
|
|
207
|
-
if (!(sceneJson.scene.globals['camera-settings'].dof && sceneJson.scene.globals['camera-settings'].dof.enabled)) return [3 /*break*/, 13];
|
|
208
|
-
return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "lens-rendering" */ './lensRendering'); })];
|
|
209
|
-
case 12:
|
|
210
|
-
module_1 = _h.sent();
|
|
211
|
-
new module_1.LensRenderingPipeline('lens-rendering', sceneJson.scene.globals['camera-settings'].dof.settings, scene, 1.0, cameras);
|
|
212
|
-
_h.label = 13;
|
|
213
|
-
case 13:
|
|
214
|
-
// TODO: make this dynamic
|
|
215
|
-
/*
|
|
216
|
-
const texture = new HDRCubeTexture("/assets/small_cave_1k.hdr", scene, 256);
|
|
217
|
-
texture.gammaSpace = false;
|
|
218
|
-
scene.environmentTexture = texture;
|
|
219
|
-
// scene.environmentTexture.
|
|
220
|
-
|
|
221
|
-
const skyboxMaterial = new StandardMaterial("skyBox", scene);
|
|
222
|
-
skyboxMaterial.backFaceCulling = false;
|
|
223
|
-
skyboxMaterial.reflectionTexture = texture;
|
|
224
|
-
skyboxMaterial.reflectionTexture.coordinatesMode = Texture.SKYBOX_MODE;
|
|
225
|
-
skyboxMaterial.disableLighting = false;
|
|
226
|
-
// TODO: replace with BoxBuilder
|
|
227
|
-
const skybox = MeshBuilder.CreateBox("skyBox", {size: 1000.0}, scene);
|
|
228
|
-
skybox.isPickable = false; //never pick a skybox
|
|
229
|
-
skybox.infiniteDistance = true;
|
|
230
|
-
skybox.material = skyboxMaterial;
|
|
231
|
-
*/
|
|
232
|
-
// TODO: shadows don't work with HemishpericLight
|
|
233
|
-
return [2 /*return*/, scene];
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
});
|
|
237
|
-
};
|
|
238
|
-
exports.sceneSetup = sceneSetup;
|
|
239
|
-
//# sourceMappingURL=sceneSetup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sceneSetup.js","sourceRoot":"","sources":["../../../../src/api/internal/sceneSetup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AnimationManager = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var animation_1 = require("@babylonjs/core/Animations/animation");
|
|
6
|
-
//import { CustomEase } from 'gsap/CustomEase';
|
|
7
|
-
//import { ExpoScaleEase, RoughEase, SlowMo } from 'gsap/EasePack';
|
|
8
|
-
var lodash_es_1 = require("lodash-es");
|
|
9
|
-
var placementAnimation_1 = require("../classes/placementAnimation");
|
|
10
|
-
//gsap.registerPlugin( CustomEase, ExpoScaleEase, RoughEase, SlowMo );
|
|
11
|
-
var AnimationManager = /** @class */ (function () {
|
|
12
|
-
/**
|
|
13
|
-
* Constructor.
|
|
14
|
-
*/
|
|
15
|
-
function AnimationManager(scene) {
|
|
16
|
-
this.scene = scene;
|
|
17
|
-
this.animations = [];
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Creates an {@link AnimationManager} based on given BabylonJS scene.
|
|
21
|
-
*/
|
|
22
|
-
AnimationManager.create = function (scene) {
|
|
23
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
24
|
-
return tslib_1.__generator(this, function (_b) {
|
|
25
|
-
return [2 /*return*/, new AnimationManager(scene)];
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* @deprecated Use viewer.moveCameraTo().
|
|
31
|
-
*/
|
|
32
|
-
AnimationManager.prototype.resetCamera = function (animate) {
|
|
33
|
-
if (animate === void 0) { animate = false; }
|
|
34
|
-
//TODO currently only works for arcrotate. are there any other cameras?
|
|
35
|
-
var activeCamera = this.scene.activeCamera;
|
|
36
|
-
if (!activeCamera) {
|
|
37
|
-
throw new Error('There is no active camera');
|
|
38
|
-
}
|
|
39
|
-
var initAlpha = activeCamera.metadata.alpha;
|
|
40
|
-
var initBeta = activeCamera.metadata.beta;
|
|
41
|
-
var initRadius = activeCamera.metadata.radius;
|
|
42
|
-
if (animate) {
|
|
43
|
-
this.animateArcRotateCamera(initAlpha, initBeta, initRadius);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
activeCamera.alpha = initAlpha;
|
|
47
|
-
activeCamera.beta = initBeta;
|
|
48
|
-
activeCamera.radius = initRadius;
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
/**
|
|
52
|
-
* @deprecated Use viewer.moveCameraTo().
|
|
53
|
-
*/
|
|
54
|
-
AnimationManager.prototype.animateArcRotateCamera = function (targetAlpha, targetBeta, targetRadius) {
|
|
55
|
-
var activeCamera = this.scene.activeCamera;
|
|
56
|
-
if (!activeCamera) {
|
|
57
|
-
throw new Error('There is no active camera');
|
|
58
|
-
}
|
|
59
|
-
var alphaAnimation = new animation_1.Animation('alphaAnimation', 'alpha', 30, animation_1.Animation.ANIMATIONTYPE_FLOAT, animation_1.Animation.ANIMATIONLOOPMODE_CONSTANT);
|
|
60
|
-
var betaAnimation = new animation_1.Animation('betaAnimation', 'beta', 30, animation_1.Animation.ANIMATIONTYPE_FLOAT, animation_1.Animation.ANIMATIONLOOPMODE_CONSTANT);
|
|
61
|
-
var radiusAnimation = new animation_1.Animation('radiusAnimation', 'radius', 30, animation_1.Animation.ANIMATIONTYPE_FLOAT, animation_1.Animation.ANIMATIONLOOPMODE_CONSTANT);
|
|
62
|
-
alphaAnimation.setKeys([
|
|
63
|
-
{
|
|
64
|
-
frame: 0,
|
|
65
|
-
value: activeCamera.alpha,
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
frame: 100,
|
|
69
|
-
value: targetAlpha,
|
|
70
|
-
},
|
|
71
|
-
]);
|
|
72
|
-
betaAnimation.setKeys([
|
|
73
|
-
{
|
|
74
|
-
frame: 0,
|
|
75
|
-
value: activeCamera.beta,
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
frame: 100,
|
|
79
|
-
value: targetBeta,
|
|
80
|
-
},
|
|
81
|
-
]);
|
|
82
|
-
radiusAnimation.setKeys([
|
|
83
|
-
{
|
|
84
|
-
frame: 0,
|
|
85
|
-
value: activeCamera.radius,
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
frame: 100,
|
|
89
|
-
value: targetRadius,
|
|
90
|
-
},
|
|
91
|
-
]);
|
|
92
|
-
activeCamera.animations.push(alphaAnimation);
|
|
93
|
-
activeCamera.animations.push(betaAnimation);
|
|
94
|
-
activeCamera.animations.push(radiusAnimation);
|
|
95
|
-
var animation = this.scene.beginAnimation(activeCamera, 0, 100, false, 10);
|
|
96
|
-
animation.disposeOnEnd = true;
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* Stops and kills all running animations.
|
|
100
|
-
*/
|
|
101
|
-
AnimationManager.prototype.killAllAnimations = function () {
|
|
102
|
-
this.animations.forEach(function (animation) { return animation.kill(); });
|
|
103
|
-
this.animations = [];
|
|
104
|
-
};
|
|
105
|
-
/**
|
|
106
|
-
* @see {@link PlacementAnimation.play}
|
|
107
|
-
*/
|
|
108
|
-
AnimationManager.prototype.animateToPlacement = function (mutable, placement, animation) {
|
|
109
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
110
|
-
var _animation, animationPromise;
|
|
111
|
-
var _this = this;
|
|
112
|
-
return tslib_1.__generator(this, function (_b) {
|
|
113
|
-
switch (_b.label) {
|
|
114
|
-
case 0:
|
|
115
|
-
_animation = new placementAnimation_1.PlacementAnimation(mutable, placement, animation);
|
|
116
|
-
this.animations.push(_animation);
|
|
117
|
-
animationPromise = _animation.play();
|
|
118
|
-
animationPromise.then(function (a) {
|
|
119
|
-
lodash_es_1.remove(_this.animations, function (_a) { return _a === a; });
|
|
120
|
-
a.kill();
|
|
121
|
-
});
|
|
122
|
-
return [4 /*yield*/, animationPromise];
|
|
123
|
-
case 1: return [2 /*return*/, _b.sent()];
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
};
|
|
128
|
-
return AnimationManager;
|
|
129
|
-
}());
|
|
130
|
-
exports.AnimationManager = AnimationManager;
|
|
131
|
-
//# sourceMappingURL=animationManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"animationManager.js","sourceRoot":"","sources":["../../../../src/api/manager/animationManager.ts"],"names":[],"mappings":";;;;AAAA,kEAAqF;AAIrF,+CAA+C;AAC/C,mEAAmE;AACnE,uCAAmC;AACnC,oEAAmE;AAEnE,sEAAsE;AAEtE;IAGE;;OAEG;IACH,0BAAgC,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;QALrC,eAAU,GAAyB,EAAE,CAAC;IAKE,CAAC;IAEhD;;OAEG;IACiB,uBAAM,GAA1B,UAA2B,KAAmB;;;gBAC5C,sBAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAC;;;KACpC;IAED;;OAEG;IACI,sCAAW,GAAlB,UAAmB,OAAwB;QAAxB,wBAAA,EAAA,eAAwB;QACzC,uEAAuE;QACvE,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAyC,CAAC;QACxE,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;QAED,IAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC9C,IAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5C,IAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEhD,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;SAC9D;aAAM;YACL,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC;YAC/B,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;YAC7B,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC;SAClC;IACH,CAAC;IAED;;OAEG;IACI,iDAAsB,GAA7B,UAA8B,WAAmB,EAAE,UAAkB,EAAE,YAAoB;QACzF,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAyC,CAAC;QACxE,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;QACD,IAAM,cAAc,GAAG,IAAI,qBAAgB,CACzC,gBAAgB,EAChB,OAAO,EACP,EAAE,EACF,qBAAgB,CAAC,mBAAmB,EACpC,qBAAgB,CAAC,0BAA0B,CAC5C,CAAC;QACF,IAAM,aAAa,GAAG,IAAI,qBAAgB,CACxC,eAAe,EACf,MAAM,EACN,EAAE,EACF,qBAAgB,CAAC,mBAAmB,EACpC,qBAAgB,CAAC,0BAA0B,CAC5C,CAAC;QACF,IAAM,eAAe,GAAG,IAAI,qBAAgB,CAC1C,iBAAiB,EACjB,QAAQ,EACR,EAAE,EACF,qBAAgB,CAAC,mBAAmB,EACpC,qBAAgB,CAAC,0BAA0B,CAC5C,CAAC;QACF,cAAc,CAAC,OAAO,CAAC;YACrB;gBACE,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,YAAY,CAAC,KAAK;aAC1B;YACD;gBACE,KAAK,EAAE,GAAG;gBACV,KAAK,EAAE,WAAW;aACnB;SACF,CAAC,CAAC;QACH,aAAa,CAAC,OAAO,CAAC;YACpB;gBACE,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,YAAY,CAAC,IAAI;aACzB;YACD;gBACE,KAAK,EAAE,GAAG;gBACV,KAAK,EAAE,UAAU;aAClB;SACF,CAAC,CAAC;QACH,eAAe,CAAC,OAAO,CAAC;YACtB;gBACE,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,YAAY,CAAC,MAAM;aAC3B;YACD;gBACE,KAAK,EAAE,GAAG;gBACV,KAAK,EAAE,YAAY;aACpB;SACF,CAAC,CAAC;QACH,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC7C,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5C,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAE9C,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3E,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,4CAAiB,GAAxB;QACE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,UAAA,SAAS,IAAI,OAAA,SAAS,CAAC,IAAI,EAAE,EAAhB,CAAgB,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACU,6CAAkB,GAA/B,UACE,OAAe,EACf,SAAuC,EACvC,SAAwC;;;;;;;wBAElC,UAAU,GAAG,IAAI,uCAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;wBACzE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC3B,gBAAgB,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;wBAC3C,gBAAgB,CAAC,IAAI,CAAC,UAAA,CAAC;4BACrB,kBAAM,CAAC,KAAI,CAAC,UAAU,EAAE,UAAA,EAAE,IAAI,OAAA,EAAE,KAAK,CAAC,EAAR,CAAQ,CAAC,CAAC;4BACxC,CAAC,CAAC,IAAI,EAAE,CAAC;wBACX,CAAC,CAAC,CAAC;wBACI,qBAAM,gBAAgB,EAAA;4BAA7B,sBAAO,SAAsB,EAAC;;;;KAC/B;IACH,uBAAC;AAAD,CAAC,AAlID,IAkIC;AAlIY,4CAAgB"}
|
|
@@ -1,224 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GltfExportManager = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var pbrMaterial_1 = require("@babylonjs/core/Materials/PBR/pbrMaterial");
|
|
6
|
-
var math_color_1 = require("@babylonjs/core/Maths/math.color");
|
|
7
|
-
var abstractMesh_1 = require("@babylonjs/core/Meshes/abstractMesh");
|
|
8
|
-
var _2_0_1 = require("@babylonjs/serializers/glTF/2.0");
|
|
9
|
-
var structureHelper_1 = require("../util/structureHelper");
|
|
10
|
-
var lodash_es_1 = require("lodash-es");
|
|
11
|
-
var mesh_1 = require("@babylonjs/core/Meshes/mesh");
|
|
12
|
-
var GltfExportManager = /** @class */ (function () {
|
|
13
|
-
/**
|
|
14
|
-
* Constructor.
|
|
15
|
-
*/
|
|
16
|
-
function GltfExportManager(viewer) {
|
|
17
|
-
this.viewer = viewer;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Creates an {@link GltfExportManager}.
|
|
21
|
-
*/
|
|
22
|
-
GltfExportManager.create = function (viewer) {
|
|
23
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
24
|
-
return tslib_1.__generator(this, function (_a) {
|
|
25
|
-
return [2 /*return*/, new GltfExportManager(viewer)];
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Exports selected nodes to a file.
|
|
31
|
-
* @param filename optional name of the exported .GLB file.
|
|
32
|
-
* @param exportOptions export options to be merged with default options.
|
|
33
|
-
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export.
|
|
34
|
-
*/
|
|
35
|
-
GltfExportManager.prototype.exportGlb = function (filename, exportOptions, excluded) {
|
|
36
|
-
if (filename === void 0) { filename = 'glb-export.glb'; }
|
|
37
|
-
if (exportOptions === void 0) { exportOptions = {}; }
|
|
38
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
39
|
-
var glbData, resBlob;
|
|
40
|
-
return tslib_1.__generator(this, function (_a) {
|
|
41
|
-
switch (_a.label) {
|
|
42
|
-
case 0:
|
|
43
|
-
this.exportPreProcess();
|
|
44
|
-
return [4 /*yield*/, _2_0_1.GLTF2Export.GLBAsync(this.viewer.scene, 'dummy', this.gltfExportOptions(exportOptions, excluded))];
|
|
45
|
-
case 1:
|
|
46
|
-
glbData = _a.sent();
|
|
47
|
-
this.exportPostProcess();
|
|
48
|
-
resBlob = glbData.glTFFiles['dummy.glb'];
|
|
49
|
-
// check if result is valid, according to the typings this could also be a string
|
|
50
|
-
if (resBlob instanceof Blob) {
|
|
51
|
-
if (!filename.endsWith('.glb')) {
|
|
52
|
-
filename += '.glb';
|
|
53
|
-
}
|
|
54
|
-
return [2 /*return*/, new File([resBlob], filename)];
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
// result was not a valid blob
|
|
58
|
-
return [2 /*return*/, undefined];
|
|
59
|
-
}
|
|
60
|
-
return [2 /*return*/];
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
/**
|
|
66
|
-
* Exports selected nodes to GLTF. This may result in more than one file, since textures are exported separately.
|
|
67
|
-
* @param filename name of the main (text-based) .GLTF file referring to separate texture files.
|
|
68
|
-
* @param exportOptions export options to be merged with default options.
|
|
69
|
-
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export.
|
|
70
|
-
*/
|
|
71
|
-
GltfExportManager.prototype.exportGltfToFile = function (filename, exportOptions, excluded) {
|
|
72
|
-
if (exportOptions === void 0) { exportOptions = {}; }
|
|
73
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
74
|
-
return tslib_1.__generator(this, function (_a) {
|
|
75
|
-
switch (_a.label) {
|
|
76
|
-
case 0:
|
|
77
|
-
this.exportPreProcess();
|
|
78
|
-
return [4 /*yield*/, _2_0_1.GLTF2Export.GLTFAsync(this.viewer.scene, filename, this.gltfExportOptions(exportOptions, excluded)).then(function (glb) {
|
|
79
|
-
glb.downloadFiles();
|
|
80
|
-
})];
|
|
81
|
-
case 1:
|
|
82
|
-
_a.sent();
|
|
83
|
-
this.exportPostProcess();
|
|
84
|
-
return [2 /*return*/];
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
};
|
|
89
|
-
/**
|
|
90
|
-
* Exports selected nodes to GLB. This results in one binary file.
|
|
91
|
-
* @param filename name of the .GLB file.
|
|
92
|
-
* @param exportOptions export options to be merged with default options.
|
|
93
|
-
* @param excluded optional list of geometry (meshes, elements, variants, variantInstances) to be excluded from export
|
|
94
|
-
*/
|
|
95
|
-
GltfExportManager.prototype.exportGlbToFile = function (filename, exportOptions, excluded) {
|
|
96
|
-
if (exportOptions === void 0) { exportOptions = {}; }
|
|
97
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
98
|
-
return tslib_1.__generator(this, function (_a) {
|
|
99
|
-
switch (_a.label) {
|
|
100
|
-
case 0:
|
|
101
|
-
this.exportPreProcess();
|
|
102
|
-
return [4 /*yield*/, _2_0_1.GLTF2Export.GLBAsync(this.viewer.scene, filename, this.gltfExportOptions(exportOptions, excluded)).then(function (glb) {
|
|
103
|
-
glb.downloadFiles();
|
|
104
|
-
})];
|
|
105
|
-
case 1:
|
|
106
|
-
_a.sent();
|
|
107
|
-
this.exportPostProcess();
|
|
108
|
-
return [2 /*return*/];
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
};
|
|
113
|
-
/**
|
|
114
|
-
* Gets predefined {@link IExportOptions } merged with given ones.
|
|
115
|
-
*/
|
|
116
|
-
GltfExportManager.prototype.gltfExportOptions = function (mergeWithOptions, excluded) {
|
|
117
|
-
if (mergeWithOptions === void 0) { mergeWithOptions = {}; }
|
|
118
|
-
var defaultOptions = {
|
|
119
|
-
// includeCoordinateSystemConversionNodes: true,
|
|
120
|
-
shouldExportNode: function (node) {
|
|
121
|
-
if (!node.isEnabled()) {
|
|
122
|
-
return false;
|
|
123
|
-
}
|
|
124
|
-
if (node.isVisible === false) {
|
|
125
|
-
return false;
|
|
126
|
-
}
|
|
127
|
-
if (node.name === '__bounding_box__') {
|
|
128
|
-
return false;
|
|
129
|
-
}
|
|
130
|
-
if (excluded && node instanceof mesh_1.Mesh && structureHelper_1.isMeshIncludedInExclusionList(node, excluded)) {
|
|
131
|
-
return false;
|
|
132
|
-
}
|
|
133
|
-
return true;
|
|
134
|
-
},
|
|
135
|
-
};
|
|
136
|
-
return lodash_es_1.merge({}, defaultOptions, mergeWithOptions);
|
|
137
|
-
};
|
|
138
|
-
/**
|
|
139
|
-
* Stuff to be done before exporting to GLTF
|
|
140
|
-
*/
|
|
141
|
-
GltfExportManager.prototype.exportPreProcess = function () {
|
|
142
|
-
this.viewer.pauseRendering();
|
|
143
|
-
this.exchangeRefractionMaterials();
|
|
144
|
-
};
|
|
145
|
-
/**
|
|
146
|
-
* Stuff to be done after the GLTF export
|
|
147
|
-
*/
|
|
148
|
-
GltfExportManager.prototype.exportPostProcess = function () {
|
|
149
|
-
this.restoreRefractionMaterials();
|
|
150
|
-
this.viewer.resumeRendering();
|
|
151
|
-
};
|
|
152
|
-
/**
|
|
153
|
-
* Materials with refraction set are not exported properly.
|
|
154
|
-
* Exchange all such (relevant) materials with a more export-friendly version
|
|
155
|
-
*/
|
|
156
|
-
GltfExportManager.prototype.exchangeRefractionMaterials = function () {
|
|
157
|
-
for (var _i = 0, _a = this.viewer.scene.getNodes(); _i < _a.length; _i++) {
|
|
158
|
-
var n = _a[_i];
|
|
159
|
-
if (!(n instanceof abstractMesh_1.AbstractMesh))
|
|
160
|
-
continue;
|
|
161
|
-
if (!(n.material instanceof pbrMaterial_1.PBRMaterial))
|
|
162
|
-
continue;
|
|
163
|
-
if (!n.material.subSurface.isRefractionEnabled)
|
|
164
|
-
continue;
|
|
165
|
-
if (n.material.transparencyMode !== pbrMaterial_1.PBRMaterial.PBRMATERIAL_OPAQUE)
|
|
166
|
-
continue;
|
|
167
|
-
// if we're here, we have a node holding a material with set refraction whose transparencyMode is set to PBRMATERIAL_OPAQUE
|
|
168
|
-
n.material = this.createRefractionMaterialReplacement(n.material);
|
|
169
|
-
}
|
|
170
|
-
};
|
|
171
|
-
/**
|
|
172
|
-
* Restore original materials with set refraction.
|
|
173
|
-
*/
|
|
174
|
-
GltfExportManager.prototype.restoreRefractionMaterials = function () {
|
|
175
|
-
for (var _i = 0, _a = this.viewer.scene.getNodes(); _i < _a.length; _i++) {
|
|
176
|
-
var n = _a[_i];
|
|
177
|
-
if (!(n instanceof abstractMesh_1.AbstractMesh))
|
|
178
|
-
continue;
|
|
179
|
-
if (!(n.material instanceof pbrMaterial_1.PBRMaterial))
|
|
180
|
-
continue;
|
|
181
|
-
if (!this.isMaterialClonedForExport(n.material))
|
|
182
|
-
continue;
|
|
183
|
-
// at this point we have a pbrmaterial tagged as cloned in its metadata that's set on a mesh
|
|
184
|
-
// restore and dispose
|
|
185
|
-
var currMaterial = n.material;
|
|
186
|
-
var prevMaterial = this.viewer.scene.getMaterialByUniqueID(n.material.metadata.clonedFrom);
|
|
187
|
-
if (prevMaterial) {
|
|
188
|
-
n.material = prevMaterial; // restore previous material
|
|
189
|
-
currMaterial.dispose(false, true); // dispose of clone
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
};
|
|
193
|
-
/**
|
|
194
|
-
* Create an export-friendly replacement material for a material using refraction.
|
|
195
|
-
* @param mat Material to be replaced
|
|
196
|
-
*/
|
|
197
|
-
GltfExportManager.prototype.createRefractionMaterialReplacement = function (mat) {
|
|
198
|
-
// if we're dealing with a clone already, return it instead of cloning
|
|
199
|
-
if (this.isMaterialClonedForExport(mat))
|
|
200
|
-
return mat;
|
|
201
|
-
// change material according to https://www.notion.so/combeenation/Glas-materials-don-t-look-glasy-after-export-d5fda2c6515e4420a8772744d3e6b460
|
|
202
|
-
var clonedMaterial = mat.clone(mat.name); // clone material. clone uses same name
|
|
203
|
-
clonedMaterial.metadata = tslib_1.__assign(tslib_1.__assign({}, mat.metadata), { clonedFrom: mat.uniqueId }); // create shallow copy of metadata on clone. see https://forum.babylonjs.com/t/the-metadata-of-the-mesh-cloned-by-the-instantiatemodelstoscene-method-is-a-shallow-copy/21563
|
|
204
|
-
clonedMaterial.refractionTexture = null;
|
|
205
|
-
clonedMaterial.metallicReflectanceTexture = null; // is this the correct one for metallic roughness?
|
|
206
|
-
clonedMaterial.alpha = 0.7;
|
|
207
|
-
clonedMaterial.albedoColor = new math_color_1.Color3(0.3, 0.3, 0.3);
|
|
208
|
-
clonedMaterial.transparencyMode = pbrMaterial_1.PBRMaterial.PBRMATERIAL_ALPHABLEND;
|
|
209
|
-
clonedMaterial.metallic = 0.65;
|
|
210
|
-
clonedMaterial.roughness = 0.15;
|
|
211
|
-
return clonedMaterial;
|
|
212
|
-
};
|
|
213
|
-
/**
|
|
214
|
-
* Inspect if a material was temporarily cloned for GLB export
|
|
215
|
-
* @param mat Material to be inspected
|
|
216
|
-
*/
|
|
217
|
-
GltfExportManager.prototype.isMaterialClonedForExport = function (mat) {
|
|
218
|
-
var _a;
|
|
219
|
-
return !!((_a = mat.metadata) === null || _a === void 0 ? void 0 : _a.clonedFrom);
|
|
220
|
-
};
|
|
221
|
-
return GltfExportManager;
|
|
222
|
-
}());
|
|
223
|
-
exports.GltfExportManager = GltfExportManager;
|
|
224
|
-
//# sourceMappingURL=gltfExportManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gltfExportManager.js","sourceRoot":"","sources":["../../../../src/api/manager/gltfExportManager.ts"],"names":[],"mappings":"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"}
|