@gamelearn/arcade-components 1.3.3 → 1.3.5-1
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/components/animation-component/components/AnimationComponent.js +9 -3
- package/dist/components/animation-component/mocks/mockForStory.js +16 -9
- package/dist/components/arcade-render/background/scene-elements/index.js +2 -4
- package/dist/components/arcade-render/element/AnimateElement.js +5 -7
- package/dist/components/arcade-render/element/BoundingBox.js +3 -5
- package/dist/components/arcade-render/element/Projection.js +3 -3
- package/dist/components/arcade-render/element/index.js +7 -9
- package/dist/components/arcade-render/elements-list/ClickableArea.js +4 -6
- package/dist/components/arcade-render/elements-list/Poster.js +4 -6
- package/dist/components/arcade-render/elements-list/index.js +5 -8
- package/dist/components/arcade-render/light/index.js +1 -3
- package/dist/components/arcade-render/light/useLight.js +7 -17
- package/dist/components/arcade-render/loading/Loading.js +2 -2
- package/dist/components/arcade-render/loading/LoadingLogic.js +5 -7
- package/dist/components/arcade-render/mocks/index.js +1 -3
- package/dist/components/arcade-render/scene/ConfigController.js +7 -7
- package/dist/components/arcade-render/scene/index.js +3 -3
- package/dist/components/arcade-render/scene/useCameraPan.js +2 -1
- package/dist/components/auto-evaluation-component/components/AutoEvaluation.js +4 -4
- package/dist/components/auto-evaluation-component/components/EndScreen.js +2 -2
- package/dist/components/auto-evaluation-component/mocks/mockForStory.js +3 -5
- package/dist/components/cards-selector-puzzle-component/components/Board/index.js +9 -5
- package/dist/components/cards-selector-puzzle-component/components/Card/index.js +2 -0
- package/dist/components/cards-selector-puzzle-component/components/CardsSelectorPuzzleComponent.js +12 -12
- package/dist/components/cards-selector-puzzle-component/mocks/mockForStory.js +0 -1
- package/dist/components/cartel-component/components/CartelComponent.js +3 -3
- package/dist/components/chained-image-click-puzzle-component/components/ChainedImageClickPuzzleComponent.js +3 -3
- package/dist/components/chained-image-click-puzzle-component/components/CurrentImagePuzzle.js +4 -4
- package/dist/components/chained-image-click-puzzle-component/mocks/mockForStory.js +0 -1
- package/dist/components/comic-component/components/ComicComponent.js +3 -3
- package/dist/components/comic-component/components/Slide.js +4 -4
- package/dist/components/comic-component/mocks/mockForStory.js +2 -5
- package/dist/components/conversational-component/components/ConversationalComponent.js +4 -4
- package/dist/components/conversational-pro-component/components/ConversationalProComponent.js +15 -18
- package/dist/components/conversational-pro-component/components/Slot.js +2 -0
- package/dist/components/conversational-pro-component/components/SlotList.js +7 -14
- package/dist/components/conversational-pro-component/components/scene/Panel.js +19 -14
- package/dist/components/conversational-pro-component/components/scene/Panels.js +2 -8
- package/dist/components/conversational-pro-component/components/scene/index.js +20 -19
- package/dist/components/conversational-pro-component/mocks/mockForStory.js +91 -92
- package/dist/components/cracker-puzzle-component/components/CrackerPuzzleComponent.js +4 -4
- package/dist/components/cracker-puzzle-component/components/helpers.js +1 -1
- package/dist/components/decision-component/components/DecisionBody.js +4 -3
- package/dist/components/decision-component/components/DecisionComponent.js +6 -8
- package/dist/components/decision-component/components/Feedback.js +6 -15
- package/dist/components/decision-component/mocks/mockForStory.js +1 -1
- package/dist/components/dialog-component/components/DialogComponent.js +50 -95
- package/dist/components/dialog-component/components/SpeechBubbleComponent.js +3 -5
- package/dist/components/dialog-component/mocks/mockForStory.js +2 -3
- package/dist/components/drag-item-puzzle-component/components/DragItemPuzzleComponent.js +6 -6
- package/dist/components/drag-item-puzzle-component/components/Messages.js +2 -4
- package/dist/components/drag-item-puzzle-component/mocks/mockForStory.js +2 -5
- package/dist/components/feedback-component/components/FeedbackComponent.js +5 -5
- package/dist/components/feedback-component/mocks/mockForStory.js +0 -1
- package/dist/components/frame-click-puzzle-component/components/CurrentFramePuzzle.js +4 -4
- package/dist/components/frame-click-puzzle-component/components/FrameClickPuzzleComponent.js +3 -3
- package/dist/components/frame-click-puzzle-component/components/PlayButton/index.js +3 -3
- package/dist/components/frame-click-puzzle-component/mocks/mockForStory.js +1 -2
- package/dist/components/hacker-puzzle-component/components/HackerPuzzleComponent.js +5 -5
- package/dist/components/hanged-puzzle-component/components/HangedPuzzleComponent.js +20 -38
- package/dist/components/hanged-puzzle-component/mocks/mockForStory.js +2 -4
- package/dist/components/hanged-puzzle-component/utils.js +2 -10
- package/dist/components/image-click-wrapper-component/components/ImageClickWrapperComponent.js +5 -9
- package/dist/components/image-component/components/ImageComponent.js +6 -6
- package/dist/components/image-component/mocks/mockForStory.js +1 -1
- package/dist/components/index.js +86 -86
- package/dist/components/inventory-item/components/InventoryItem.js +14 -12
- package/dist/components/inventory-item/mocks/mockForStory.js +5 -7
- package/dist/components/keyboard-puzzle-component/components/KeyboardPuzzleComponent.js +7 -8
- package/dist/components/keyboard-puzzle-component/mocks/mockForStory.js +2 -4
- package/dist/components/konva-components/Area/index.js +4 -4
- package/dist/components/konva-components/KonvaMapper.js +3 -3
- package/dist/components/lectures-component/components/LecturesComponent.js +10 -10
- package/dist/components/lectures-component/mocks/mockForStory.js +4 -6
- package/dist/components/login-puzzle-component/components/LoginPuzzleComponent.js +29 -80
- package/dist/components/login-puzzle-component/mocks/mockForStory.js +2 -4
- package/dist/components/media-visor/components/MediaVisor.js +13 -13
- package/dist/components/media-visor/mocks/mockForStory.js +2 -6
- package/dist/components/notice-component/components/NoticeComponent.js +2 -3
- package/dist/components/notice-component/mocks/mockForStory.js +2 -4
- package/dist/components/pattern-component/components/PatternComponent.js +1 -1
- package/dist/components/pdf-component/components/PdfComponent.js +7 -9
- package/dist/components/pdf-component/components/PdfVisor.js +10 -11
- package/dist/components/pdf-component/index.js +4 -4
- package/dist/components/pdf-component/mocks/mockForProps.js +0 -1
- package/dist/components/rewards-component/components/RewardItem.js +4 -4
- package/dist/components/rewards-component/components/RewardsComponent.js +5 -5
- package/dist/components/survey-component/components/ApplicableBox.js +4 -4
- package/dist/components/survey-component/components/OpinionBox.js +4 -4
- package/dist/components/survey-component/components/SurveyComponent.js +3 -3
- package/dist/components/survey-component/components/TextBox.js +1 -1
- package/dist/components/survey-component/mocks/mockForStory.js +2 -4
- package/dist/components/terminal-puzzle-component/components/FilesGroup/index.js +3 -3
- package/dist/components/terminal-puzzle-component/components/TerminalPuzzleComponent.js +3 -3
- package/dist/components/terminal-puzzle-component/components/Visor/index.js +2 -2
- package/dist/components/terminal-puzzle-component/components/utils/index.js +1 -1
- package/dist/components/terminal-puzzle-component/mocks/mockForStory.js +2 -3
- package/dist/components/test-component/components/Container.js +3 -3
- package/dist/components/test-component/components/Results.js +3 -3
- package/dist/components/test-component/components/TestComponent.js +8 -8
- package/dist/components/test-component/mocks/mockForStory.js +2 -5
- package/dist/components/text-click-puzzle-component/components/TextClickPuzzleComponent.js +110 -84
- package/dist/components/text-click-puzzle-component/mocks/mockForStory.js +0 -1
- package/dist/components/text-click-puzzle-component/utils/index.js +9 -15
- package/dist/components/url-component/components/UrlComponent.js +10 -9
- package/dist/components/url-component/mocks/mockForProps.js +6 -8
- package/dist/components/video-component/components/VideoComponent.js +7 -7
- package/dist/components/video-component/mocks/mockForStory.js +2 -4
- package/dist/components/video-visor/components/VideoControllers/BufferBar.js +3 -3
- package/dist/components/video-visor/components/VideoVisor.js +4 -3
- package/dist/components/video-visor/mocks/mockForStory.js +2 -5
- package/dist/components/web-builder-puzzle-component/Popups/PopupColorComponent/index.js +3 -3
- package/dist/components/web-builder-puzzle-component/Popups/PopupImageComponent/index.js +3 -3
- package/dist/components/web-builder-puzzle-component/Popups/PopupTextComponent/index.js +8 -8
- package/dist/components/web-builder-puzzle-component/Templates/Bank.js +1 -1
- package/dist/components/web-builder-puzzle-component/Templates/Facebook.js +1 -1
- package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/BankBody.js +5 -5
- package/dist/components/web-builder-puzzle-component/components/WebBuilderBody/FacebookBody.js +8 -8
- package/dist/components/web-builder-puzzle-component/components/WebBuilderPuzzleComponent.js +7 -6
- package/dist/components/web-builder-puzzle-component/mocks/mockForStory.js +2 -7
- package/dist/components/writer-puzzle-component/components/ElectionComponent.js +3 -3
- package/dist/components/writer-puzzle-component/components/FeedbackComponent.js +1 -1
- package/dist/components/writer-puzzle-component/components/FixedComponent.js +3 -3
- package/dist/components/writer-puzzle-component/components/Rewards.js +7 -7
- package/dist/components/writer-puzzle-component/components/SingleElection.js +3 -3
- package/dist/components/writer-puzzle-component/components/WriterPuzzleComponent.js +7 -9
- package/dist/components/zoom-test/components/ZoomTest.js +5 -5
- package/dist/components/zoom-test/mocks/mockForStory.js +4 -6
- package/dist/helpers/HtmlPro.js +34 -0
- package/dist/helpers/deviceDetection.js +1 -1
- package/dist/helpers/drawLOD.js +77 -60
- package/dist/helpers/index.js +8 -9
- package/dist/helpers/lodStats.js +25 -37
- package/dist/helpers/mocker.js +2 -6
- package/dist/helpers/useWindowSize.js +3 -5
- package/dist/test/testSceneWrapper.js +17 -12
- package/package.json +1 -1
package/dist/helpers/drawLOD.js
CHANGED
|
@@ -13,9 +13,9 @@ var _lodStats = _interopRequireDefault(require("./lodStats"));
|
|
|
13
13
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
15
|
|
|
16
|
-
function _getRequireWildcardCache(
|
|
16
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
17
17
|
|
|
18
|
-
function _interopRequireWildcard(obj
|
|
18
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
19
19
|
|
|
20
20
|
var loadingManager = new THREE.LoadingManager();
|
|
21
21
|
var imgLoader = new THREE.ImageLoader(loadingManager);
|
|
@@ -72,7 +72,7 @@ function makeTextSprite(message, opts) {
|
|
|
72
72
|
var fontsize = parameters.fontsize || 120;
|
|
73
73
|
var canvas = document.createElement('canvas');
|
|
74
74
|
var context = canvas.getContext('2d');
|
|
75
|
-
context.font =
|
|
75
|
+
context.font = fontsize + 'px ' + fontface; // get size data (height depends only on font size)
|
|
76
76
|
// var metrics = context.measureText(message);
|
|
77
77
|
// var textWidth = metrics.width;
|
|
78
78
|
// text color
|
|
@@ -96,8 +96,8 @@ function makeTextSprite(message, opts) {
|
|
|
96
96
|
}
|
|
97
97
|
/*
|
|
98
98
|
const texturablesDone = (params) => {
|
|
99
|
-
params.
|
|
100
|
-
elem.userData.
|
|
99
|
+
params._texturableElements.forEach((elem) => {
|
|
100
|
+
elem.userData._isDone = true;
|
|
101
101
|
})
|
|
102
102
|
}
|
|
103
103
|
*/
|
|
@@ -111,19 +111,19 @@ var materialize = function materialize(params, lod) {
|
|
|
111
111
|
if (doneLods >= totalLods) {
|
|
112
112
|
if (progressiveMode) {
|
|
113
113
|
var currentIndex = progressiveOrder.indexOf(lod);
|
|
114
|
-
var lastIndex = progressiveOrder.indexOf(params.
|
|
114
|
+
var lastIndex = progressiveOrder.indexOf(params._currentLOD);
|
|
115
115
|
|
|
116
116
|
if (currentIndex < lastIndex) {
|
|
117
117
|
materialize(params, progressiveOrder[currentIndex + 1]);
|
|
118
118
|
} else {// texturablesDone(params);
|
|
119
119
|
}
|
|
120
120
|
} else {// texturablesDone(params);
|
|
121
|
-
|
|
121
|
+
}
|
|
122
122
|
}
|
|
123
123
|
};
|
|
124
124
|
|
|
125
|
-
params.
|
|
126
|
-
if (params.
|
|
125
|
+
params._texturableElements.forEach(function (elem) {
|
|
126
|
+
if (params._texturesDistance && elem.distanceToCam > lodDistances[lod]) {
|
|
127
127
|
return;
|
|
128
128
|
}
|
|
129
129
|
|
|
@@ -132,22 +132,22 @@ var materialize = function materialize(params, lod) {
|
|
|
132
132
|
return response.json();
|
|
133
133
|
}).then(function (materials) {
|
|
134
134
|
elem.traverse(function (obj) {
|
|
135
|
-
if ((obj.isMesh || obj.isSkinnedMesh) && (!obj.material.
|
|
135
|
+
if ((obj.isMesh || obj.isSkinnedMesh) && (!obj.material._isDone || !obj.material._isDone[lod] || params._forceRender)) {
|
|
136
136
|
obj.material.wireframe = false;
|
|
137
|
-
if (!obj.material.
|
|
138
|
-
obj.material.
|
|
137
|
+
if (!obj.material._isDone) obj.material._isDone = {};
|
|
138
|
+
obj.material._isDone[lod] = true;
|
|
139
139
|
|
|
140
140
|
if (materials[obj.material.name]) {
|
|
141
141
|
materials[obj.material.name].forEach(function (item) {
|
|
142
142
|
var imgSrc = "".concat(elem.userData.url, ".textures.").concat(lod, ".").concat(item.positionInArray, ".png");
|
|
143
143
|
imgLoader.load(imgSrc, function (result) {
|
|
144
|
-
if (params.
|
|
144
|
+
if (params._showStats) {
|
|
145
145
|
statsTextures(lod, imgSrc, result);
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
obj.material[item.key].image = result;
|
|
149
149
|
|
|
150
|
-
if (params.
|
|
150
|
+
if (params._rgbSimulation) {
|
|
151
151
|
var image;
|
|
152
152
|
|
|
153
153
|
switch (lod) {
|
|
@@ -188,20 +188,23 @@ var updateSceneLods = function updateSceneLods(params) {
|
|
|
188
188
|
if (progressiveMode) {
|
|
189
189
|
materialize(params, progressiveOrder[0]);
|
|
190
190
|
} else {
|
|
191
|
-
materialize(params, params.
|
|
191
|
+
materialize(params, params._currentLOD);
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
194
|
};
|
|
195
195
|
|
|
196
196
|
var invalidateOutOfFrustum = function invalidateOutOfFrustum(params) {
|
|
197
|
-
params.
|
|
197
|
+
params._texturableElements = params._texturableElements.filter(function (elem) {
|
|
198
198
|
var bbox = new THREE.Box3().setFromObject(elem);
|
|
199
|
-
|
|
199
|
+
|
|
200
|
+
var insideFrustum = params._frustum.intersectsBox(bbox);
|
|
201
|
+
|
|
200
202
|
elem.bbox = bbox;
|
|
201
203
|
|
|
202
|
-
if (params.
|
|
204
|
+
if (params._showHelpers) {
|
|
203
205
|
var boundingHelper = new THREE.Box3Helper(bbox, insideFrustum ? 0x00ff00 : 0xff0000);
|
|
204
|
-
|
|
206
|
+
|
|
207
|
+
params._helpers.add(boundingHelper);
|
|
205
208
|
}
|
|
206
209
|
|
|
207
210
|
return insideFrustum;
|
|
@@ -209,14 +212,14 @@ var invalidateOutOfFrustum = function invalidateOutOfFrustum(params) {
|
|
|
209
212
|
};
|
|
210
213
|
|
|
211
214
|
var checkDistances = function checkDistances(params) {
|
|
212
|
-
params.
|
|
215
|
+
params._texturableElements.forEach(function (elem) {
|
|
213
216
|
var center = new THREE.Vector3();
|
|
214
217
|
elem.bbox.getCenter(center);
|
|
215
218
|
var bsphere = elem.bbox.getBoundingSphere(new THREE.Sphere(center));
|
|
216
|
-
var distance = params.
|
|
219
|
+
var distance = params._camera.position.distanceTo(center) - bsphere.radius;
|
|
217
220
|
elem.distanceToCam = distance;
|
|
218
221
|
|
|
219
|
-
if (params.
|
|
222
|
+
if (params._showHelpers) {
|
|
220
223
|
var sphere = new THREE.Mesh(new THREE.SphereGeometry(bsphere.radius, 32, 32), new THREE.MeshStandardMaterial({
|
|
221
224
|
color: 0xffffff,
|
|
222
225
|
opacity: 0.3,
|
|
@@ -224,17 +227,20 @@ var checkDistances = function checkDistances(params) {
|
|
|
224
227
|
wireframe: true
|
|
225
228
|
}));
|
|
226
229
|
sphere.position.copy(center);
|
|
227
|
-
|
|
230
|
+
|
|
231
|
+
params._helpers.add(sphere);
|
|
232
|
+
|
|
228
233
|
var sprite = makeTextSprite(distance);
|
|
229
234
|
sprite.position.copy(sphere.position);
|
|
230
235
|
sprite.position.y = sphere.position.y + bsphere.radius + 2;
|
|
231
|
-
|
|
236
|
+
|
|
237
|
+
params._helpers.add(sprite);
|
|
232
238
|
}
|
|
233
239
|
});
|
|
234
240
|
};
|
|
235
241
|
|
|
236
242
|
var statsGeometries = function statsGeometries(params) {
|
|
237
|
-
params.
|
|
243
|
+
params._texturableElements.forEach(function (item) {
|
|
238
244
|
var url = item.userData.url.replace('.glb', '.geometry.glb');
|
|
239
245
|
fetch(url).then(function (response) {
|
|
240
246
|
return response.blob();
|
|
@@ -247,7 +253,7 @@ var statsGeometries = function statsGeometries(params) {
|
|
|
247
253
|
});
|
|
248
254
|
};
|
|
249
255
|
|
|
250
|
-
var statsTextures = function statsTextures(lod, url) {
|
|
256
|
+
var statsTextures = function statsTextures(lod, url, image) {
|
|
251
257
|
fetch(url).then(function (response) {
|
|
252
258
|
return response.blob();
|
|
253
259
|
}).then(function (blob) {
|
|
@@ -259,17 +265,19 @@ var statsTextures = function statsTextures(lod, url) {
|
|
|
259
265
|
};
|
|
260
266
|
|
|
261
267
|
var setTexturableElements = function setTexturableElements(params) {
|
|
262
|
-
params.
|
|
263
|
-
|
|
268
|
+
params._texturableElements = [];
|
|
269
|
+
|
|
270
|
+
params._scene.traverse(function (item) {
|
|
264
271
|
if (item.userData.url) {
|
|
265
|
-
params.
|
|
272
|
+
params._texturableElements.push(item);
|
|
266
273
|
}
|
|
267
274
|
});
|
|
275
|
+
|
|
268
276
|
(0, _lodStats.default)({
|
|
269
277
|
reset: true
|
|
270
278
|
});
|
|
271
279
|
|
|
272
|
-
if (params.
|
|
280
|
+
if (params._showStats) {
|
|
273
281
|
statsGeometries(params);
|
|
274
282
|
}
|
|
275
283
|
};
|
|
@@ -298,50 +306,59 @@ var drawLOD = function drawLOD(scene, camera, settings) {
|
|
|
298
306
|
}
|
|
299
307
|
|
|
300
308
|
var params = {};
|
|
301
|
-
params.
|
|
302
|
-
params.
|
|
303
|
-
params.
|
|
304
|
-
params.
|
|
305
|
-
params.
|
|
309
|
+
params._currentLOD = settings !== null && settings !== void 0 && settings.currentLOD ? settings.currentLOD : currentLOD;
|
|
310
|
+
params._rgbSimulation = settings !== null && settings !== void 0 && settings.rgbSimulation ? settings.rgbSimulation : rgbSimulation;
|
|
311
|
+
params._showHelpers = settings !== null && settings !== void 0 && settings.showHelpers ? settings.showHelpers : showHelpers;
|
|
312
|
+
params._showStats = settings !== null && settings !== void 0 && settings.showStats ? settings.showStats : showStats;
|
|
313
|
+
params._forceRender = (scene === null || scene === void 0 ? void 0 : scene.lastLOD) !== (settings === null || settings === void 0 ? void 0 : settings.currentLOD) || (scene === null || scene === void 0 ? void 0 : scene.lastRGB) !== params._rgbSimulation;
|
|
306
314
|
scene.lastLOD = settings === null || settings === void 0 ? void 0 : settings.currentLOD;
|
|
307
|
-
scene.lastRGB = params.
|
|
308
|
-
params.
|
|
309
|
-
params.
|
|
310
|
-
params.
|
|
311
|
-
|
|
312
|
-
params.
|
|
313
|
-
|
|
314
|
-
params.
|
|
315
|
-
params.
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
315
|
+
scene.lastRGB = params._rgbSimulation;
|
|
316
|
+
params._texturesFrustum = (settings === null || settings === void 0 ? void 0 : settings.texturesFrustum) !== undefined ? settings.texturesFrustum : texturesFrustum;
|
|
317
|
+
params._texturesDistance = texturesDistance;
|
|
318
|
+
params._scene = scene;
|
|
319
|
+
|
|
320
|
+
params._scene.remove(getHelpers(params._scene));
|
|
321
|
+
|
|
322
|
+
params._helpers = new THREE.Group();
|
|
323
|
+
params._helpers.userData.isHelper = true;
|
|
324
|
+
|
|
325
|
+
params._scene.add(params._helpers);
|
|
326
|
+
|
|
327
|
+
params._camera = currentCamera;
|
|
328
|
+
params._frustum = null;
|
|
329
|
+
|
|
330
|
+
if (params._texturesFrustum || params._texturesDistance) {
|
|
331
|
+
if (params._camera) {
|
|
332
|
+
params._camera.updateMatrixWorld();
|
|
333
|
+
|
|
334
|
+
params._camera.updateProjectionMatrix();
|
|
335
|
+
|
|
336
|
+
params._frustum = new THREE.Frustum();
|
|
337
|
+
|
|
338
|
+
params._frustum.setFromProjectionMatrix(new THREE.Matrix4().multiplyMatrices(params._camera.projectionMatrix, params._camera.matrixWorldInverse));
|
|
324
339
|
} else {
|
|
325
|
-
params.
|
|
326
|
-
params.texturesDistance = false;
|
|
340
|
+
params._texturesFrustum = params._texturesDistance = false;
|
|
327
341
|
}
|
|
328
342
|
|
|
329
|
-
if (params.
|
|
330
|
-
var helper = new THREE.CameraHelper(params.
|
|
331
|
-
|
|
343
|
+
if (params._showHelpers) {
|
|
344
|
+
var helper = new THREE.CameraHelper(params._camera.clone());
|
|
345
|
+
|
|
346
|
+
params._helpers.add(helper);
|
|
347
|
+
|
|
332
348
|
helper.update();
|
|
333
349
|
var axesHelper = new THREE.AxesHelper(5);
|
|
334
|
-
|
|
350
|
+
|
|
351
|
+
params._helpers.add(axesHelper);
|
|
335
352
|
}
|
|
336
353
|
}
|
|
337
354
|
|
|
338
355
|
setTexturableElements(params);
|
|
339
356
|
|
|
340
|
-
if (params.
|
|
357
|
+
if (params._texturesFrustum) {
|
|
341
358
|
invalidateOutOfFrustum(params);
|
|
342
359
|
}
|
|
343
360
|
|
|
344
|
-
if (params.
|
|
361
|
+
if (params._texturesDistance) {
|
|
345
362
|
checkDistances(params);
|
|
346
363
|
}
|
|
347
364
|
|
package/dist/helpers/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.executeCrossFade = exports.screenToVector = exports.vectorToScreen = exports.getObjectPosition = exports.cameraFitAnyObject = exports.roundFloat = exports.vectorTranslateY = exports.vectorTranslateX = exports.vectorTranslateZ = exports.vectorTranslateOnAxis = exports.usePrevious = exports.formatMessage = exports.zAxis = exports.yAxis = exports.xAxis = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
|
|
@@ -104,16 +104,15 @@ var cameraFitAnyObject = function cameraFitAnyObject(object, camera) {
|
|
|
104
104
|
|
|
105
105
|
if (clone) {
|
|
106
106
|
return clonedCamera;
|
|
107
|
+
} else {
|
|
108
|
+
camera.copy(clonedCamera);
|
|
107
109
|
}
|
|
108
|
-
|
|
109
|
-
camera.copy(clonedCamera);
|
|
110
|
-
return null;
|
|
111
110
|
};
|
|
112
111
|
|
|
113
112
|
exports.cameraFitAnyObject = cameraFitAnyObject;
|
|
114
113
|
|
|
115
114
|
var getObjectPosition = function getObjectPosition(object, camera, canvas) {
|
|
116
|
-
if (!object) return
|
|
115
|
+
if (!object) return;
|
|
117
116
|
var point = new _three.Vector3();
|
|
118
117
|
var boundingBox = new _three.Box3().setFromObject(object);
|
|
119
118
|
boundingBox.getCenter(point);
|
|
@@ -129,10 +128,10 @@ var getObjectPosition = function getObjectPosition(object, camera, canvas) {
|
|
|
129
128
|
exports.getObjectPosition = getObjectPosition;
|
|
130
129
|
|
|
131
130
|
var vectorToScreen = function vectorToScreen(vector, camera) {
|
|
132
|
-
var width = window.innerWidth
|
|
133
|
-
|
|
134
|
-
var widthHalf = width / 2
|
|
135
|
-
|
|
131
|
+
var width = window.innerWidth,
|
|
132
|
+
height = window.innerHeight;
|
|
133
|
+
var widthHalf = width / 2,
|
|
134
|
+
heightHalf = height / 2;
|
|
136
135
|
var pos = vector.clone();
|
|
137
136
|
pos.project(camera);
|
|
138
137
|
pos.x = pos.x * widthHalf + widthHalf;
|
package/dist/helpers/lodStats.js
CHANGED
|
@@ -4,58 +4,46 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var style =
|
|
7
|
+
var _root = null;
|
|
8
|
+
var _geo = 0;
|
|
9
|
+
var _divideby64 = 0;
|
|
10
|
+
var _divideby16 = 0;
|
|
11
|
+
var _divideby4 = 0;
|
|
12
|
+
var _original = 0;
|
|
13
|
+
var style = "float:left;margin:5px;padding:5px;";
|
|
14
14
|
|
|
15
15
|
function formatBytes(a) {
|
|
16
16
|
var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
var c = b < 0 ? 0 : b;
|
|
23
|
-
var d = Math.floor(Math.log(a) / Math.log(1024));
|
|
24
|
-
return "".concat(parseFloat((a / Math.pow(1024, d)).toFixed(c)), " ").concat(['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'][d]);
|
|
17
|
+
if (0 === a) return "0 Bytes";
|
|
18
|
+
var c = 0 > b ? 0 : b,
|
|
19
|
+
d = Math.floor(Math.log(a) / Math.log(1024));
|
|
20
|
+
return parseFloat((a / Math.pow(1024, d)).toFixed(c)) + " " + ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"][d];
|
|
25
21
|
}
|
|
26
22
|
|
|
27
23
|
var lodStats = function lodStats(obj) {
|
|
28
|
-
if (!
|
|
24
|
+
if (!_root) {
|
|
29
25
|
var root = document.getElementById('root');
|
|
30
26
|
var previous = document.getElementById('lodStats');
|
|
31
|
-
|
|
32
|
-
if (previous) {
|
|
33
|
-
root.removeChild(previous);
|
|
34
|
-
}
|
|
35
|
-
|
|
27
|
+
if (previous) root.removeChild(previous);
|
|
36
28
|
var div = document.createElement('div');
|
|
37
|
-
div.style = "border-radius:5px;color:white; background-color:black
|
|
38
|
-
div.id =
|
|
29
|
+
div.style = "border-radius:5px;color:white; background-color:black;position: fixed; top: 0px; left: 100px; opacity: 0.5; z-index: 10001;";
|
|
30
|
+
div.id = "lodStats";
|
|
39
31
|
root.appendChild(div);
|
|
40
|
-
|
|
32
|
+
_root = div;
|
|
41
33
|
}
|
|
42
34
|
|
|
43
35
|
if (obj.reset) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
divideby64 = 0;
|
|
48
|
-
divideby16 = 0;
|
|
49
|
-
divideby4 = 0;
|
|
50
|
-
original = 0;
|
|
36
|
+
_root.innerHTML = '';
|
|
37
|
+
_root = null;
|
|
38
|
+
_geo = _divideby64 = _divideby16 = _divideby4 = _original = 0;
|
|
51
39
|
} else {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
40
|
+
_geo += obj.geometries ? obj.geometries : 0;
|
|
41
|
+
_divideby64 += obj.divideby64 ? obj.divideby64 : 0;
|
|
42
|
+
_divideby16 += obj.divideby16 ? obj.divideby16 : 0;
|
|
43
|
+
_divideby4 += obj.divideby4 ? obj.divideby4 : 0;
|
|
44
|
+
_original += obj.original ? obj.original : 0; // _root.innerHTML = `Geo: ${_geo} d64: ${_divideby64} d16: ${_divideby16} d4: ${_divideby4} original: ${_original}`;
|
|
57
45
|
|
|
58
|
-
|
|
46
|
+
_root.innerHTML = "\n <div style=\"".concat(style, "\"> \n <div>Geometries</div>\n <div>").concat(formatBytes(_geo), "</div>\n </div>\n <div style=\"").concat(style, "\"> \n <div style=\"color:red\">DivideBy64</div>\n <div>").concat(formatBytes(_divideby64), "</div>\n </div>\n <div style=\"").concat(style, "\"> \n <div style=\"color:green\">DivideBy16</div>\n <div>").concat(formatBytes(_divideby16), "</div>\n </div>\n <div style=\"").concat(style, "\"> \n <div style=\"color:blue\">DivideBy4</div>\n <div>").concat(formatBytes(_divideby4), "</div>\n </div>\n <div style=\"").concat(style, "\"> \n <div>Original</div>\n <div>").concat(formatBytes(_original), "</div>\n </div>\n ");
|
|
59
47
|
}
|
|
60
48
|
};
|
|
61
49
|
|
package/dist/helpers/mocker.js
CHANGED
|
@@ -3,11 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.translate = exports.soundActions = exports.
|
|
6
|
+
exports.translate = exports.soundActions = exports.noopSoundActions = exports.onFinish = exports.functionOnClose = exports.emitEvent = exports.setShowPoints = void 0;
|
|
7
7
|
|
|
8
|
-
/* eslint-disable no-console */
|
|
9
|
-
|
|
10
|
-
/* eslint-disable no-prototype-builtins */
|
|
11
8
|
var emitEvent = function emitEvent(_ref) {
|
|
12
9
|
var type = _ref.type,
|
|
13
10
|
payload = _ref.payload;
|
|
@@ -75,7 +72,6 @@ var emitEvent = function emitEvent(_ref) {
|
|
|
75
72
|
}
|
|
76
73
|
|
|
77
74
|
console.log('Emit event called:', type, 'payload:', payload);
|
|
78
|
-
return null;
|
|
79
75
|
};
|
|
80
76
|
|
|
81
77
|
exports.emitEvent = emitEvent;
|
|
@@ -118,7 +114,7 @@ var functionOnClose = function functionOnClose() {
|
|
|
118
114
|
exports.functionOnClose = functionOnClose;
|
|
119
115
|
|
|
120
116
|
var onFinish = function onFinish() {
|
|
121
|
-
var component = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] :
|
|
117
|
+
var component = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "a component";
|
|
122
118
|
console.log('you just called onfinish from...', component);
|
|
123
119
|
};
|
|
124
120
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.useWindowSize =
|
|
6
|
+
exports.useWindowSize = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
|
|
@@ -15,7 +15,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
15
15
|
|
|
16
16
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
17
17
|
|
|
18
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr
|
|
18
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
19
19
|
|
|
20
20
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
21
21
|
|
|
@@ -53,6 +53,4 @@ var useWindowSize = function useWindowSize() {
|
|
|
53
53
|
return windowSize;
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
-
exports.useWindowSize = useWindowSize;
|
|
57
|
-
var _default = useWindowSize;
|
|
58
|
-
exports.default = _default;
|
|
56
|
+
exports.useWindowSize = useWindowSize;
|
|
@@ -3,15 +3,19 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.default = exports.mockScene = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _scene = _interopRequireDefault(require("components/arcade-render/scene"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _background = _interopRequireDefault(require("components/arcade-render/background"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _elementsList = _interopRequireDefault(require("components/arcade-render/elements-list"));
|
|
15
|
+
|
|
16
|
+
var _bg001_street = _interopRequireDefault(require("components/arcade-render/mocks/scenes/bg001_street.json"));
|
|
17
|
+
|
|
18
|
+
var _characters = require("components/arcade-render/mocks/scenes/characters.json");
|
|
15
19
|
|
|
16
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
21
|
|
|
@@ -19,20 +23,21 @@ var mockScene = {
|
|
|
19
23
|
background: _bg001_street.default,
|
|
20
24
|
elements: _characters.elements,
|
|
21
25
|
scene: {
|
|
22
|
-
|
|
26
|
+
sceneChanged: true,
|
|
27
|
+
loadingText: 'Cargando... {percent}%',
|
|
28
|
+
hasControls: false
|
|
23
29
|
}
|
|
24
30
|
};
|
|
25
31
|
exports.mockScene = mockScene;
|
|
26
32
|
|
|
27
33
|
var SceneWrapper = function SceneWrapper(_ref) {
|
|
28
34
|
var children = _ref.children;
|
|
29
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
30
|
-
|
|
31
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}), children));
|
|
35
|
+
return /*#__PURE__*/_react.default.createElement(_scene.default, mockScene.scene, /*#__PURE__*/_react.default.createElement(_background.default, {
|
|
36
|
+
data: mockScene.background
|
|
37
|
+
}), /*#__PURE__*/_react.default.createElement(_elementsList.default, {
|
|
38
|
+
elements: mockScene.elements,
|
|
39
|
+
eventHandler: function eventHandler() {}
|
|
40
|
+
}), children);
|
|
36
41
|
};
|
|
37
42
|
|
|
38
43
|
var _default = SceneWrapper;
|