@combeenation/3d-viewer 4.0.0-beta4 → 4.0.1-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.
Files changed (106) hide show
  1. package/README.md +114 -112
  2. package/dist/lib-cjs/api/classes/animationInterface.d.ts +8 -8
  3. package/dist/lib-cjs/api/classes/animationInterface.js +1 -1
  4. package/dist/lib-cjs/api/classes/dottedPath.d.ts +79 -79
  5. package/dist/lib-cjs/api/classes/dottedPath.js +190 -190
  6. package/dist/lib-cjs/api/classes/element.d.ts +130 -125
  7. package/dist/lib-cjs/api/classes/element.js +743 -682
  8. package/dist/lib-cjs/api/classes/element.js.map +1 -1
  9. package/dist/lib-cjs/api/classes/elementParameterizable.d.ts +14 -14
  10. package/dist/lib-cjs/api/classes/elementParameterizable.js +134 -134
  11. package/dist/lib-cjs/api/classes/event.d.ts +326 -312
  12. package/dist/lib-cjs/api/classes/event.js +371 -357
  13. package/dist/lib-cjs/api/classes/event.js.map +1 -1
  14. package/dist/lib-cjs/api/classes/eventBroadcaster.d.ts +26 -26
  15. package/dist/lib-cjs/api/classes/eventBroadcaster.js +53 -53
  16. package/dist/lib-cjs/api/classes/parameter.d.ts +259 -165
  17. package/dist/lib-cjs/api/classes/parameter.js +387 -267
  18. package/dist/lib-cjs/api/classes/parameter.js.map +1 -1
  19. package/dist/lib-cjs/api/classes/parameterObservable.d.ts +36 -36
  20. package/dist/lib-cjs/api/classes/parameterObservable.js +101 -126
  21. package/dist/lib-cjs/api/classes/parameterObservable.js.map +1 -1
  22. package/dist/lib-cjs/api/classes/parameterizable.d.ts +15 -15
  23. package/dist/lib-cjs/api/classes/parameterizable.js +149 -149
  24. package/dist/lib-cjs/api/classes/placementAnimation.d.ts +43 -38
  25. package/dist/lib-cjs/api/classes/placementAnimation.js +160 -138
  26. package/dist/lib-cjs/api/classes/placementAnimation.js.map +1 -1
  27. package/dist/lib-cjs/api/classes/variant.d.ts +234 -190
  28. package/dist/lib-cjs/api/classes/variant.js +1147 -873
  29. package/dist/lib-cjs/api/classes/variant.js.map +1 -1
  30. package/dist/lib-cjs/api/classes/variantInstance.d.ts +45 -41
  31. package/dist/lib-cjs/api/classes/variantInstance.js +108 -98
  32. package/dist/lib-cjs/api/classes/variantInstance.js.map +1 -1
  33. package/dist/lib-cjs/api/classes/variantParameterizable.d.ts +17 -17
  34. package/dist/lib-cjs/api/classes/variantParameterizable.js +92 -92
  35. package/dist/lib-cjs/api/classes/viewer.d.ts +131 -128
  36. package/dist/lib-cjs/api/classes/viewer.js +567 -486
  37. package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
  38. package/dist/lib-cjs/api/classes/viewerLight.d.ts +66 -65
  39. package/dist/lib-cjs/api/classes/viewerLight.js +389 -322
  40. package/dist/lib-cjs/api/classes/viewerLight.js.map +1 -1
  41. package/dist/lib-cjs/api/internal/debugViewer.d.ts +13 -13
  42. package/dist/lib-cjs/api/internal/debugViewer.js +87 -87
  43. package/dist/lib-cjs/api/internal/lensRendering.d.ts +8 -8
  44. package/dist/lib-cjs/api/internal/lensRendering.js +11 -11
  45. package/dist/lib-cjs/api/internal/sceneSetup.d.ts +10 -6
  46. package/dist/lib-cjs/api/internal/sceneSetup.js +231 -227
  47. package/dist/lib-cjs/api/internal/sceneSetup.js.map +1 -1
  48. package/dist/lib-cjs/api/manager/animationManager.d.ts +29 -29
  49. package/dist/lib-cjs/api/manager/animationManager.js +121 -121
  50. package/dist/lib-cjs/api/manager/sceneManager.d.ts +32 -32
  51. package/dist/lib-cjs/api/manager/sceneManager.js +132 -132
  52. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +90 -90
  53. package/dist/lib-cjs/api/manager/variantInstanceManager.js +321 -321
  54. package/dist/lib-cjs/api/store/specStorage.d.ts +24 -24
  55. package/dist/lib-cjs/api/store/specStorage.js +51 -51
  56. package/dist/lib-cjs/api/util/babylonHelper.d.ts +175 -125
  57. package/dist/lib-cjs/api/util/babylonHelper.js +520 -368
  58. package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
  59. package/dist/lib-cjs/api/util/globalTypes.d.ts +333 -279
  60. package/dist/lib-cjs/api/util/globalTypes.js +1 -1
  61. package/dist/lib-cjs/api/util/resourceHelper.d.ts +53 -51
  62. package/dist/lib-cjs/api/util/resourceHelper.js +240 -243
  63. package/dist/lib-cjs/api/util/resourceHelper.js.map +1 -1
  64. package/dist/lib-cjs/api/util/stringHelper.d.ts +9 -9
  65. package/dist/lib-cjs/api/util/stringHelper.js +25 -25
  66. package/dist/lib-cjs/buildinfo.json +3 -3
  67. package/dist/lib-cjs/index.d.ts +48 -46
  68. package/dist/lib-cjs/index.js +86 -82
  69. package/dist/lib-cjs/index.js.map +1 -1
  70. package/package.json +83 -83
  71. package/src/api/classes/animationInterface.ts +11 -11
  72. package/src/api/classes/dottedPath.ts +189 -189
  73. package/src/api/classes/element.ts +644 -617
  74. package/src/api/classes/event.ts +370 -355
  75. package/src/api/classes/eventBroadcaster.ts +54 -54
  76. package/src/api/classes/parameter.ts +408 -277
  77. package/src/api/classes/parameterObservable.ts +99 -121
  78. package/src/api/classes/{elementParameterizable.ts → parameterizable.ts} +89 -78
  79. package/src/api/classes/placementAnimation.ts +157 -133
  80. package/src/api/classes/variant.ts +817 -670
  81. package/src/api/classes/variantInstance.ts +88 -81
  82. package/src/api/classes/variantParameterizable.ts +73 -0
  83. package/src/api/classes/viewer.ts +487 -421
  84. package/src/api/classes/viewerLight.ts +330 -0
  85. package/src/api/internal/debugViewer.ts +81 -81
  86. package/src/api/internal/lensRendering.ts +10 -10
  87. package/src/api/internal/sceneSetup.ts +194 -204
  88. package/src/api/manager/animationManager.ts +116 -116
  89. package/src/api/manager/sceneManager.ts +105 -105
  90. package/src/api/manager/variantInstanceManager.ts +236 -236
  91. package/src/api/store/specStorage.ts +53 -53
  92. package/src/api/util/babylonHelper.ts +555 -392
  93. package/src/api/util/globalTypes.ts +380 -319
  94. package/src/api/util/resourceHelper.ts +184 -187
  95. package/src/api/util/stringHelper.ts +26 -0
  96. package/src/buildinfo.json +2 -2
  97. package/src/commonjs.tsconfig.json +13 -13
  98. package/src/declaration.tsconfig.json +10 -10
  99. package/src/dev.ts +42 -46
  100. package/src/es6.tsconfig.json +13 -13
  101. package/src/index.ts +91 -87
  102. package/src/pagesconfig.json +61 -57
  103. package/src/tsconfig.json +43 -43
  104. package/src/tsconfig.types.json +9 -9
  105. package/src/types.d.ts +4 -4
  106. package/dist/webpack-stats.json +0 -0
@@ -1,228 +1,232 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sceneSetup = void 0;
4
- var tslib_1 = require("tslib");
5
- require("@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader");
6
- require("@babylonjs/core/Helpers/sceneHelpers");
7
- var math_color_1 = require("@babylonjs/core/Maths/math.color");
8
- var math_vector_1 = require("@babylonjs/core/Maths/math.vector");
9
- var defaultRenderingPipeline_1 = require("@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline");
10
- var scene_1 = require("@babylonjs/core/scene");
11
- var parameter_1 = require("../classes/parameter");
12
- var defaultLightning = function (scene) {
13
- return tslib_1.__awaiter(this, void 0, void 0, function () {
14
- var defaultSetup, defaultLight;
15
- return tslib_1.__generator(this, function (_a) {
16
- switch (_a.label) {
17
- case 0:
18
- defaultSetup = {
19
- type: 'hemispheric',
20
- };
21
- return [4 /*yield*/, processLight(scene, 'default_light', defaultSetup)];
22
- case 1:
23
- defaultLight = _a.sent();
24
- defaultLight.groundColor = math_color_1.Color3.Black();
25
- defaultLight.diffuse = math_color_1.Color3.White();
26
- return [2 /*return*/, defaultLight];
27
- }
28
- });
29
- });
30
- };
31
- var processLight = function (scene, name, lightSetup) {
32
- return tslib_1.__awaiter(this, void 0, void 0, function () {
33
- var light, _a, hemisphericLightModule, pointLightModule;
34
- return tslib_1.__generator(this, function (_b) {
35
- switch (_b.label) {
36
- case 0:
37
- _a = lightSetup.type;
38
- switch (_a) {
39
- case 'hemispheric': return [3 /*break*/, 1];
40
- case 'point': return [3 /*break*/, 3];
41
- }
42
- return [3 /*break*/, 5];
43
- case 1: return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "hemispheric-light" */ '@babylonjs/core/Lights/hemisphericLight'); })];
44
- case 2:
45
- hemisphericLightModule = _b.sent();
46
- light = new hemisphericLightModule.HemisphericLight(name, math_vector_1.Vector3.Up(), scene);
47
- return [3 /*break*/, 5];
48
- case 3: return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "point-light" */ '@babylonjs/core/Lights/pointLight'); })];
49
- case 4:
50
- pointLightModule = _b.sent();
51
- light = new pointLightModule.PointLight(name, math_vector_1.Vector3.Up(), scene);
52
- return [3 /*break*/, 5];
53
- case 5: return [2 /*return*/, light];
54
- }
55
- });
56
- });
57
- };
58
- var defaultCamera = function (scene) {
59
- return tslib_1.__awaiter(this, void 0, void 0, function () {
60
- var cameraSetup, defaultCamera;
61
- return tslib_1.__generator(this, function (_a) {
62
- switch (_a.label) {
63
- case 0:
64
- cameraSetup = {
65
- type: 'arc',
66
- active: true,
67
- };
68
- return [4 /*yield*/, processCamera(scene, 'default_camera', cameraSetup)];
69
- case 1:
70
- defaultCamera = _a.sent();
71
- return [2 /*return*/, defaultCamera];
72
- }
73
- });
74
- });
75
- };
76
- var processCamera = function (scene, name, cameraSetup) {
77
- return tslib_1.__awaiter(this, void 0, void 0, function () {
78
- var camera, target, _a, arcCameraModule;
79
- return tslib_1.__generator(this, function (_b) {
80
- switch (_b.label) {
81
- case 0:
82
- target = math_vector_1.Vector3.Zero();
83
- if (cameraSetup.target) {
84
- target = parameter_1.Parameter.parseVector(cameraSetup.target);
85
- }
86
- _a = cameraSetup.type;
87
- switch (_a) {
88
- case 'arc': return [3 /*break*/, 1];
89
- }
90
- return [3 /*break*/, 3];
91
- case 1: return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "arc-rotate-camera" */ '@babylonjs/core/Cameras/arcRotateCamera'); })];
92
- case 2:
93
- arcCameraModule = _b.sent();
94
- camera = new arcCameraModule.ArcRotateCamera(name, Math.PI / 4, Math.PI / 4, 2, target, scene);
95
- camera.metadata = {
96
- alpha: Math.PI / 4,
97
- beta: Math.PI / 4,
98
- radius: 2
99
- };
100
- return [3 /*break*/, 3];
101
- case 3:
102
- if (cameraSetup.active) {
103
- camera.attachControl(scene.getEngine().getRenderingCanvas(), true);
104
- }
105
- if (cameraSetup.fov) {
106
- camera.fov = cameraSetup.fov;
107
- }
108
- camera.storeState();
109
- return [2 /*return*/, camera];
110
- }
111
- });
112
- });
113
- };
114
- var sceneSetup = function (engine, sceneJson) {
115
- return tslib_1.__awaiter(this, void 0, void 0, function () {
116
- var scene, cameras, camera, _a, _b, _i, camera, _c, _d, _e, _f, _g, light, defaultPipeline, module_1;
117
- return tslib_1.__generator(this, function (_h) {
118
- switch (_h.label) {
119
- case 0:
120
- scene = new scene_1.Scene(engine);
121
- scene.clearColor = new math_color_1.Color4(0, 0, 0, 0);
122
- cameras = [];
123
- if (!(!sceneJson.scene.hasOwnProperty('cameras') || (sceneJson.scene.cameras && !Object.keys(sceneJson.scene.cameras).length))) return [3 /*break*/, 2];
124
- return [4 /*yield*/, defaultCamera(scene)];
125
- case 1:
126
- camera = _h.sent();
127
- cameras.push(camera);
128
- return [3 /*break*/, 6];
129
- case 2:
130
- _a = [];
131
- for (_b in sceneJson.scene.cameras)
132
- _a.push(_b);
133
- _i = 0;
134
- _h.label = 3;
135
- case 3:
136
- if (!(_i < _a.length)) return [3 /*break*/, 6];
137
- camera = _a[_i];
138
- _d = (_c = cameras).push;
139
- return [4 /*yield*/, processCamera(scene, camera, sceneJson.scene.cameras[camera])];
140
- case 4:
141
- _d.apply(_c, [_h.sent()]);
142
- _h.label = 5;
143
- case 5:
144
- _i++;
145
- return [3 /*break*/, 3];
146
- case 6:
147
- if (!(!sceneJson.scene.hasOwnProperty('lights') || (sceneJson.scene.lights && !Object.keys(sceneJson.scene.lights).length))) return [3 /*break*/, 7];
148
- return [3 /*break*/, 11];
149
- case 7:
150
- _e = [];
151
- for (_f in sceneJson.scene.lights)
152
- _e.push(_f);
153
- _g = 0;
154
- _h.label = 8;
155
- case 8:
156
- if (!(_g < _e.length)) return [3 /*break*/, 11];
157
- light = _e[_g];
158
- return [4 /*yield*/, processLight(scene, light, sceneJson.scene.lights[light])];
159
- case 9:
160
- _h.sent();
161
- _h.label = 10;
162
- case 10:
163
- _g++;
164
- return [3 /*break*/, 8];
165
- case 11:
166
- defaultPipeline = new defaultRenderingPipeline_1.DefaultRenderingPipeline('default-rendering-pipeline', false, scene);
167
- /* DISABLED: causes problems with Internet Explorer
168
- defaultPipeline.imageProcessingEnabled = true;
169
- */
170
- if (sceneJson.scene.globals.aa) {
171
- defaultPipeline.fxaaEnabled = true; //implicitly does FxaaPostProcess()
172
- }
173
- // Set samples regardless of fxaa setting since we don't want to use fxaa but still increase the sample count
174
- defaultPipeline.samples = 8;
175
- if (!sceneJson.scene.globals['camera-settings']) return [3 /*break*/, 13];
176
- if (sceneJson.scene.globals['camera-settings'].sharpen && sceneJson.scene.globals['camera-settings'].sharpen.enabled) {
177
- defaultPipeline.sharpenEnabled = true; //implicitly does SharpenPostProcess()
178
- //defaultPipeline.sharpen.colorAmount = 1;
179
- //defaultPipeline.sharpen.edgeAmount = 0;
180
- }
181
- if (sceneJson.scene.globals['camera-settings'].bloom && sceneJson.scene.globals['camera-settings'].bloom.enabled) {
182
- defaultPipeline.bloomEnabled = true;
183
- if (sceneJson.scene.globals['camera-settings'].bloom.size) {
184
- defaultPipeline.bloomScale = sceneJson.scene.globals['camera-settings'].bloom.size;
185
- }
186
- if (sceneJson.scene.globals['camera-settings'].bloom.threshold) {
187
- defaultPipeline.bloomThreshold = sceneJson.scene.globals['camera-settings'].bloom.threshold;
188
- }
189
- }
190
- if (sceneJson.scene.globals['camera-settings'].contrast) {
191
- scene.imageProcessingConfiguration.contrast = sceneJson.scene.globals['camera-settings'].contrast;
192
- }
193
- if (sceneJson.scene.globals['camera-settings'].exposure) {
194
- scene.imageProcessingConfiguration.exposure = sceneJson.scene.globals['camera-settings'].exposure;
195
- }
196
- if (!(sceneJson.scene.globals['camera-settings'].dof && sceneJson.scene.globals['camera-settings'].dof.enabled)) return [3 /*break*/, 13];
197
- return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "lens-rendering" */ './lensRendering'); })];
198
- case 12:
199
- module_1 = _h.sent();
200
- new module_1.LensRenderingPipeline('lens-rendering', sceneJson.scene.globals['camera-settings'].dof.settings, scene, 1.0, cameras);
201
- _h.label = 13;
202
- case 13:
203
- // TODO: make this dynamic
204
- /*
205
- const texture = new HDRCubeTexture("/assets/small_cave_1k.hdr", scene, 256);
206
- texture.gammaSpace = false;
207
- scene.environmentTexture = texture;
208
- // scene.environmentTexture.
209
-
210
- const skyboxMaterial = new StandardMaterial("skyBox", scene);
211
- skyboxMaterial.backFaceCulling = false;
212
- skyboxMaterial.reflectionTexture = texture;
213
- skyboxMaterial.reflectionTexture.coordinatesMode = Texture.SKYBOX_MODE;
214
- skyboxMaterial.disableLighting = false;
215
- // TODO: replace with BoxBuilder
216
- const skybox = MeshBuilder.CreateBox("skyBox", {size: 1000.0}, scene);
217
- skybox.isPickable = false; //never pick a skybox
218
- skybox.infiniteDistance = true;
219
- skybox.material = skyboxMaterial;
220
- */
221
- // TODO: shadows don't work with HemishpericLight
222
- return [2 /*return*/, scene];
223
- }
224
- });
225
- });
226
- };
227
- exports.sceneSetup = sceneSetup;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ 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
+ /**
15
+ * @param scene
16
+ * @param name
17
+ * @param definition
18
+ */
19
+ var processGround = function (scene, name, definition) {
20
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
21
+ return tslib_1.__generator(this, function (_a) {
22
+ return [2 /*return*/, new Promise(function (resolve) {
23
+ var _resolve = function (ground) {
24
+ if (definition.receiveShadows !== undefined) {
25
+ ground.receiveShadows = definition.receiveShadows;
26
+ }
27
+ resolve(ground);
28
+ };
29
+ switch (definition.type) {
30
+ case 'baked':
31
+ if (!definition.meshId) {
32
+ throw new Error("A baked ground must define a \"meshId\".");
33
+ }
34
+ _resolve(scene.getMeshByID(definition.meshId));
35
+ break;
36
+ case 'ground':
37
+ _resolve(meshBuilder_1.MeshBuilder.CreateGround(name, definition, scene));
38
+ break;
39
+ case 'heightmap':
40
+ if (!definition.url) {
41
+ throw new Error("A heightmap ground must define an \"url\".");
42
+ }
43
+ definition.onReady = function (_ground) {
44
+ _resolve(_ground);
45
+ };
46
+ meshBuilder_1.MeshBuilder.CreateGroundFromHeightMap(name, definition.url, definition, scene);
47
+ break;
48
+ default:
49
+ throw new Error("Ground of type \"" + definition.type + "\" not implemented (yet).");
50
+ }
51
+ })];
52
+ });
53
+ });
54
+ };
55
+ /**
56
+ * @param scene
57
+ */
58
+ var defaultCamera = function (scene) {
59
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
60
+ return tslib_1.__generator(this, function (_a) {
61
+ switch (_a.label) {
62
+ case 0: return [4 /*yield*/, processCamera(scene, 'default_camera', {
63
+ type: 'arc',
64
+ active: true,
65
+ })];
66
+ case 1: return [2 /*return*/, _a.sent()];
67
+ }
68
+ });
69
+ });
70
+ };
71
+ /**
72
+ * @param scene
73
+ * @param name
74
+ * @param cameraSetup
75
+ */
76
+ var processCamera = function (scene, name, cameraSetup) {
77
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
78
+ var camera, target, _a, arcCameraModule;
79
+ return tslib_1.__generator(this, function (_b) {
80
+ switch (_b.label) {
81
+ case 0:
82
+ target = math_vector_1.Vector3.Zero();
83
+ if (cameraSetup.target) {
84
+ target = parameter_1.Parameter.parseVector(cameraSetup.target);
85
+ }
86
+ _a = cameraSetup.type;
87
+ switch (_a) {
88
+ case 'arc': return [3 /*break*/, 1];
89
+ }
90
+ return [3 /*break*/, 3];
91
+ case 1: return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "arc-rotate-camera" */ '@babylonjs/core/Cameras/arcRotateCamera'); })];
92
+ case 2:
93
+ arcCameraModule = _b.sent();
94
+ camera = new arcCameraModule.ArcRotateCamera(name, Math.PI / 4, Math.PI / 4, 2, target, scene);
95
+ camera.metadata = {
96
+ alpha: Math.PI / 4,
97
+ beta: Math.PI / 4,
98
+ radius: 2
99
+ };
100
+ return [3 /*break*/, 3];
101
+ case 3:
102
+ if (cameraSetup.active) {
103
+ camera.attachControl(scene.getEngine().getRenderingCanvas(), true);
104
+ }
105
+ if (cameraSetup.fov) {
106
+ camera.fov = cameraSetup.fov;
107
+ }
108
+ camera.storeState();
109
+ return [2 /*return*/, camera];
110
+ }
111
+ });
112
+ });
113
+ };
114
+ /**
115
+ * @param engine
116
+ * @param sceneJson
117
+ */
118
+ var sceneSetup = function (engine, sceneJson) {
119
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
120
+ var scene, cameras, cameraDefinitions, _a, _b, _i, cameraName, _c, _d, camera, groundDefinitions, _e, _f, _g, groundName, defaultPipeline, module_1;
121
+ return tslib_1.__generator(this, function (_h) {
122
+ switch (_h.label) {
123
+ case 0:
124
+ scene = new scene_1.Scene(engine);
125
+ scene.clearColor = new math_color_1.Color4(0, 0, 0, 0);
126
+ cameras = [];
127
+ cameraDefinitions = lodash_es_1.get(sceneJson.scene, 'cameras');
128
+ if (!!lodash_es_1.isEmpty(cameraDefinitions)) return [3 /*break*/, 5];
129
+ _a = [];
130
+ for (_b in cameraDefinitions)
131
+ _a.push(_b);
132
+ _i = 0;
133
+ _h.label = 1;
134
+ case 1:
135
+ if (!(_i < _a.length)) return [3 /*break*/, 4];
136
+ cameraName = _a[_i];
137
+ _d = (_c = cameras).push;
138
+ return [4 /*yield*/, processCamera(scene, cameraName, cameraDefinitions[cameraName])];
139
+ case 2:
140
+ _d.apply(_c, [_h.sent()]);
141
+ _h.label = 3;
142
+ case 3:
143
+ _i++;
144
+ return [3 /*break*/, 1];
145
+ case 4: return [3 /*break*/, 7];
146
+ case 5: return [4 /*yield*/, defaultCamera(scene)];
147
+ case 6:
148
+ camera = _h.sent();
149
+ cameras.push(camera);
150
+ _h.label = 7;
151
+ case 7:
152
+ groundDefinitions = lodash_es_1.get(sceneJson.scene, 'grounds');
153
+ if (!!lodash_es_1.isEmpty(groundDefinitions)) return [3 /*break*/, 11];
154
+ _e = [];
155
+ for (_f in groundDefinitions)
156
+ _e.push(_f);
157
+ _g = 0;
158
+ _h.label = 8;
159
+ case 8:
160
+ if (!(_g < _e.length)) return [3 /*break*/, 11];
161
+ groundName = _e[_g];
162
+ return [4 /*yield*/, processGround(scene, groundName, groundDefinitions[groundName])];
163
+ case 9:
164
+ _h.sent();
165
+ _h.label = 10;
166
+ case 10:
167
+ _g++;
168
+ return [3 /*break*/, 8];
169
+ case 11:
170
+ defaultPipeline = new defaultRenderingPipeline_1.DefaultRenderingPipeline('default-rendering-pipeline', false, scene);
171
+ /* DISABLED: causes problems with Internet Explorer
172
+ defaultPipeline.imageProcessingEnabled = true;
173
+ */
174
+ if (sceneJson.scene.globals.aa) {
175
+ defaultPipeline.fxaaEnabled = true; //implicitly does FxaaPostProcess()
176
+ }
177
+ // Set samples regardless of fxaa setting since we don't want to use fxaa but still increase the sample count
178
+ defaultPipeline.samples = 8;
179
+ if (!sceneJson.scene.globals['camera-settings']) return [3 /*break*/, 13];
180
+ if (sceneJson.scene.globals['camera-settings'].sharpen && sceneJson.scene.globals['camera-settings'].sharpen.enabled) {
181
+ defaultPipeline.sharpenEnabled = true; //implicitly does SharpenPostProcess()
182
+ //defaultPipeline.sharpen.colorAmount = 1;
183
+ //defaultPipeline.sharpen.edgeAmount = 0;
184
+ }
185
+ if (sceneJson.scene.globals['camera-settings'].bloom && sceneJson.scene.globals['camera-settings'].bloom.enabled) {
186
+ defaultPipeline.bloomEnabled = true;
187
+ if (sceneJson.scene.globals['camera-settings'].bloom.size) {
188
+ defaultPipeline.bloomScale = sceneJson.scene.globals['camera-settings'].bloom.size;
189
+ }
190
+ if (sceneJson.scene.globals['camera-settings'].bloom.threshold) {
191
+ defaultPipeline.bloomThreshold = sceneJson.scene.globals['camera-settings'].bloom.threshold;
192
+ }
193
+ }
194
+ if (sceneJson.scene.globals['camera-settings'].contrast) {
195
+ scene.imageProcessingConfiguration.contrast = sceneJson.scene.globals['camera-settings'].contrast;
196
+ }
197
+ if (sceneJson.scene.globals['camera-settings'].exposure) {
198
+ scene.imageProcessingConfiguration.exposure = sceneJson.scene.globals['camera-settings'].exposure;
199
+ }
200
+ if (!(sceneJson.scene.globals['camera-settings'].dof && sceneJson.scene.globals['camera-settings'].dof.enabled)) return [3 /*break*/, 13];
201
+ return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "lens-rendering" */ './lensRendering'); })];
202
+ case 12:
203
+ module_1 = _h.sent();
204
+ new module_1.LensRenderingPipeline('lens-rendering', sceneJson.scene.globals['camera-settings'].dof.settings, scene, 1.0, cameras);
205
+ _h.label = 13;
206
+ case 13:
207
+ // TODO: make this dynamic
208
+ /*
209
+ const texture = new HDRCubeTexture("/assets/small_cave_1k.hdr", scene, 256);
210
+ texture.gammaSpace = false;
211
+ scene.environmentTexture = texture;
212
+ // scene.environmentTexture.
213
+
214
+ const skyboxMaterial = new StandardMaterial("skyBox", scene);
215
+ skyboxMaterial.backFaceCulling = false;
216
+ skyboxMaterial.reflectionTexture = texture;
217
+ skyboxMaterial.reflectionTexture.coordinatesMode = Texture.SKYBOX_MODE;
218
+ skyboxMaterial.disableLighting = false;
219
+ // TODO: replace with BoxBuilder
220
+ const skybox = MeshBuilder.CreateBox("skyBox", {size: 1000.0}, scene);
221
+ skybox.isPickable = false; //never pick a skybox
222
+ skybox.infiniteDistance = true;
223
+ skybox.material = skyboxMaterial;
224
+ */
225
+ // TODO: shadows don't work with HemishpericLight
226
+ return [2 /*return*/, scene];
227
+ }
228
+ });
229
+ });
230
+ };
231
+ exports.sceneSetup = sceneSetup;
228
232
  //# sourceMappingURL=sceneSetup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sceneSetup.js","sourceRoot":"","sources":["../../../../src/api/internal/sceneSetup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sceneSetup.js","sourceRoot":"","sources":["../../../../src/api/internal/sceneSetup.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,29 @@
1
- import { Scene as BabylonScene, Scene } from '@babylonjs/core/scene';
2
- export declare class AnimationManager {
3
- protected scene: Scene;
4
- animations: AnimationInterface[];
5
- /**
6
- * Constructor.
7
- */
8
- protected constructor(scene: Scene);
9
- /**
10
- * Creates an {@link AnimationManager} based on given BabylonJS scene.
11
- */
12
- static create(scene: BabylonScene): Promise<AnimationManager>;
13
- /**
14
- * @deprecated Use viewer.moveCameraTo().
15
- */
16
- resetCamera(animate?: boolean): void;
17
- /**
18
- * @deprecated Use viewer.moveCameraTo().
19
- */
20
- animateArcRotateCamera(targetAlpha: number, targetBeta: number, targetRadius: number): void;
21
- /**
22
- * Stops and kills all running animations.
23
- */
24
- killAllAnimations(): void;
25
- /**
26
- * @see {@link PlacementAnimation.play}
27
- */
28
- animateToPlacement(mutable: object, placement: PlacementDefinition | string, animation?: AnimationDefinition | string): Promise<AnimationInterface>;
29
- }
1
+ import { Scene as BabylonScene, Scene } from '@babylonjs/core/scene';
2
+ export declare class AnimationManager {
3
+ protected scene: Scene;
4
+ animations: AnimationInterface[];
5
+ /**
6
+ * Constructor.
7
+ */
8
+ protected constructor(scene: Scene);
9
+ /**
10
+ * Creates an {@link AnimationManager} based on given BabylonJS scene.
11
+ */
12
+ static create(scene: BabylonScene): Promise<AnimationManager>;
13
+ /**
14
+ * @deprecated Use viewer.moveCameraTo().
15
+ */
16
+ resetCamera(animate?: boolean): void;
17
+ /**
18
+ * @deprecated Use viewer.moveCameraTo().
19
+ */
20
+ animateArcRotateCamera(targetAlpha: number, targetBeta: number, targetRadius: number): void;
21
+ /**
22
+ * Stops and kills all running animations.
23
+ */
24
+ killAllAnimations(): void;
25
+ /**
26
+ * @see {@link PlacementAnimation.play}
27
+ */
28
+ animateToPlacement(mutable: object, placement: PlacementDefinition | string, animation?: AnimationDefinition | string): Promise<AnimationInterface>;
29
+ }