@needle-tools/engine 2.32.0-pre → 2.34.0-pre
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/CHANGELOG.md +15 -0
- package/dist/needle-engine.d.ts +195 -164
- package/dist/needle-engine.js +394 -344
- package/dist/needle-engine.js.map +4 -4
- package/dist/needle-engine.min.js +70 -20
- package/dist/needle-engine.min.js.map +4 -4
- package/lib/engine/engine_create_objects.d.ts +11 -0
- package/lib/engine/engine_create_objects.js +20 -0
- package/lib/engine/engine_create_objects.js.map +1 -0
- package/lib/engine/engine_instancing.d.ts +5 -0
- package/lib/engine/engine_instancing.js +22 -0
- package/lib/engine/engine_instancing.js.map +1 -0
- package/lib/engine/engine_physics.d.ts +2 -0
- package/lib/engine/engine_physics.js +7 -1
- package/lib/engine/engine_physics.js.map +1 -1
- package/lib/engine/extensions/NEEDLE_components.js +2 -0
- package/lib/engine/extensions/NEEDLE_components.js.map +1 -1
- package/lib/engine/extensions/NEEDLE_techniques_webgl.d.ts +1 -0
- package/lib/engine/extensions/NEEDLE_techniques_webgl.js +26 -0
- package/lib/engine/extensions/NEEDLE_techniques_webgl.js.map +1 -1
- package/lib/engine-components/Animation.js +1 -1
- package/lib/engine-components/Animation.js.map +1 -1
- package/lib/engine-components/Collider.d.ts +1 -0
- package/lib/engine-components/Collider.js +6 -2
- package/lib/engine-components/Collider.js.map +1 -1
- package/lib/engine-components/Component.js +4 -51
- package/lib/engine-components/Component.js.map +1 -1
- package/lib/engine-components/DragControls.js +1 -1
- package/lib/engine-components/DragControls.js.map +1 -1
- package/lib/engine-components/Renderer.d.ts +0 -3
- package/lib/engine-components/Renderer.js +1 -20
- package/lib/engine-components/Renderer.js.map +1 -1
- package/lib/engine-components/ScreenCapture.d.ts +8 -14
- package/lib/engine-components/ScreenCapture.js +62 -74
- package/lib/engine-components/ScreenCapture.js.map +1 -1
- package/lib/engine-components/SyncedCamera.js +1 -1
- package/lib/engine-components/SyncedCamera.js.map +1 -1
- package/lib/engine-components/SyncedTransform.js +1 -1
- package/lib/engine-components/SyncedTransform.js.map +1 -1
- package/lib/engine-components/VideoPlayer.d.ts +14 -3
- package/lib/engine-components/VideoPlayer.js +390 -47
- package/lib/engine-components/VideoPlayer.js.map +1 -1
- package/lib/engine-components/WebARSessionRoot.js +1 -1
- package/lib/engine-components/WebARSessionRoot.js.map +1 -1
- package/lib/engine-components/WebXRAvatar.js +1 -1
- package/lib/engine-components/WebXRAvatar.js.map +1 -1
- package/lib/engine-components/WebXRController.d.ts +1 -0
- package/lib/engine-components/WebXRController.js +12 -1
- package/lib/engine-components/WebXRController.js.map +1 -1
- package/lib/engine-components/codegen/{exports.d.ts → components.d.ts} +2 -2
- package/{src/engine-components/codegen/exports.ts → lib/engine-components/codegen/components.js} +3 -2
- package/lib/engine-components/codegen/components.js.map +1 -0
- package/lib/engine-components/js-extensions/Object3D.d.ts +2 -0
- package/lib/engine-components/js-extensions/Object3D.js +75 -0
- package/lib/engine-components/js-extensions/Object3D.js.map +1 -0
- package/lib/engine-components/ui/EventSystem.d.ts +3 -0
- package/lib/engine-components/ui/EventSystem.js +17 -8
- package/lib/engine-components/ui/EventSystem.js.map +1 -1
- package/lib/needle-engine.d.ts +2 -1
- package/lib/needle-engine.js +3 -2
- package/lib/needle-engine.js.map +1 -1
- package/package.json +2 -2
- package/src/engine/codegen/register_types.js +2 -4
- package/src/engine/engine_create_objects.ts +27 -0
- package/src/engine/engine_instancing.ts +25 -0
- package/src/engine/engine_physics.ts +9 -1
- package/src/engine/extensions/NEEDLE_components.ts +3 -0
- package/src/engine/extensions/NEEDLE_techniques_webgl.ts +34 -2
- package/src/engine-components/Animation.ts +1 -1
- package/src/engine-components/Collider.ts +7 -2
- package/src/engine-components/Component.ts +4 -64
- package/src/engine-components/DragControls.ts +1 -1
- package/src/engine-components/Renderer.ts +2 -20
- package/src/engine-components/ScreenCapture.ts +62 -75
- package/src/engine-components/SyncedCamera.ts +1 -1
- package/src/engine-components/SyncedTransform.ts +1 -1
- package/src/engine-components/VideoPlayer.ts +401 -48
- package/src/engine-components/WebARSessionRoot.ts +1 -1
- package/src/engine-components/WebXRAvatar.ts +1 -1
- package/src/engine-components/WebXRController.ts +11 -1
- package/{lib/engine-components/codegen/exports.js → src/engine-components/codegen/components.ts} +1 -3
- package/src/engine-components/js-extensions/Object3D.ts +91 -0
- package/src/engine-components/ui/EventSystem.ts +19 -10
- package/src/needle-engine.ts +3 -3
- package/lib/engine-components/ComponentExtensions.d.ts +0 -2
- package/lib/engine-components/ComponentExtensions.js +0 -3
- package/lib/engine-components/ComponentExtensions.js.map +0 -1
- package/lib/engine-components/codegen/exports.js.map +0 -1
- package/src/engine-components/ComponentExtensions.ts +0 -7
|
@@ -4,14 +4,22 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { Behaviour } from "./Component";
|
|
7
|
+
import { Behaviour, GameObject } from "./Component";
|
|
8
8
|
import * as THREE from "three";
|
|
9
9
|
import { serializeable } from "../engine/engine_serialization_decorator";
|
|
10
|
-
import { Object3D, Texture } from "three";
|
|
10
|
+
import { Object3D, ShaderMaterial, Texture, Vector2, Vector4 } from "three";
|
|
11
11
|
import { awaitInput } from "../engine/engine_input_utils";
|
|
12
12
|
import { getParam } from "../engine/engine_utils";
|
|
13
13
|
import { Renderer } from "./Renderer";
|
|
14
|
+
import { getWorldScale } from "../engine/engine_three_utils";
|
|
15
|
+
import { ObjectUtils, PrimitiveType } from "../engine/engine_create_objects";
|
|
14
16
|
const debug = getParam("debugvideo");
|
|
17
|
+
export var AspectMode;
|
|
18
|
+
(function (AspectMode) {
|
|
19
|
+
AspectMode[AspectMode["None"] = 0] = "None";
|
|
20
|
+
AspectMode[AspectMode["AdjustHeight"] = 1] = "AdjustHeight";
|
|
21
|
+
AspectMode[AspectMode["AdjustWidth"] = 2] = "AdjustWidth";
|
|
22
|
+
})(AspectMode || (AspectMode = {}));
|
|
15
23
|
export var VideoSource;
|
|
16
24
|
(function (VideoSource) {
|
|
17
25
|
/// <summary>
|
|
@@ -41,6 +49,7 @@ export class VideoPlayer extends Behaviour {
|
|
|
41
49
|
renderer = null;
|
|
42
50
|
playOnAwake = true;
|
|
43
51
|
playOnEnable;
|
|
52
|
+
aspectMode = AspectMode.None;
|
|
44
53
|
renderMode;
|
|
45
54
|
targetMaterialProperty;
|
|
46
55
|
targetMaterialRenderer;
|
|
@@ -94,13 +103,16 @@ export class VideoPlayer extends Behaviour {
|
|
|
94
103
|
this.videoElement.removeAttribute("crossorigin");
|
|
95
104
|
}
|
|
96
105
|
}
|
|
106
|
+
get videoTexture() {
|
|
107
|
+
return this._videoTexture;
|
|
108
|
+
}
|
|
97
109
|
_crossOrigin = "anonymous";
|
|
98
110
|
audioOutputMode = VideoAudioOutputMode.AudioSource;
|
|
99
111
|
source;
|
|
100
112
|
clip = null;
|
|
101
113
|
url = null;
|
|
102
114
|
videoElement = null;
|
|
103
|
-
|
|
115
|
+
_videoTexture = null;
|
|
104
116
|
videoMaterial = null;
|
|
105
117
|
_isPlaying = false;
|
|
106
118
|
wasPlaying = false;
|
|
@@ -114,6 +126,7 @@ export class VideoPlayer extends Behaviour {
|
|
|
114
126
|
this.videoElement.srcObject = video;
|
|
115
127
|
if (this._isPlaying)
|
|
116
128
|
this.videoElement.play();
|
|
129
|
+
this.updateAspect();
|
|
117
130
|
}
|
|
118
131
|
}
|
|
119
132
|
setClipURL(url) {
|
|
@@ -128,8 +141,10 @@ export class VideoPlayer extends Behaviour {
|
|
|
128
141
|
this.create(true);
|
|
129
142
|
else {
|
|
130
143
|
this.videoElement.src = url;
|
|
131
|
-
if (this._isPlaying)
|
|
132
|
-
this.
|
|
144
|
+
if (this._isPlaying) {
|
|
145
|
+
this.stop();
|
|
146
|
+
this.play();
|
|
147
|
+
}
|
|
133
148
|
}
|
|
134
149
|
}
|
|
135
150
|
awake() {
|
|
@@ -151,6 +166,11 @@ export class VideoPlayer extends Behaviour {
|
|
|
151
166
|
if (this.playOnEnable === true) {
|
|
152
167
|
this.handleBeginPlaying(true);
|
|
153
168
|
}
|
|
169
|
+
if (this.screenspace) {
|
|
170
|
+
this._overlay?.start();
|
|
171
|
+
}
|
|
172
|
+
else
|
|
173
|
+
this._overlay?.stop();
|
|
154
174
|
}
|
|
155
175
|
onDisable() {
|
|
156
176
|
this.pause();
|
|
@@ -160,9 +180,9 @@ export class VideoPlayer extends Behaviour {
|
|
|
160
180
|
this.videoElement.parentElement?.removeChild(this.videoElement);
|
|
161
181
|
this.videoElement = null;
|
|
162
182
|
}
|
|
163
|
-
if (this.
|
|
164
|
-
this.
|
|
165
|
-
this.
|
|
183
|
+
if (this._videoTexture) {
|
|
184
|
+
this._videoTexture.dispose();
|
|
185
|
+
this._videoTexture = null;
|
|
166
186
|
}
|
|
167
187
|
}
|
|
168
188
|
_receivedInput = false;
|
|
@@ -173,6 +193,13 @@ export class VideoPlayer extends Behaviour {
|
|
|
173
193
|
this.updateVideoElementSettings();
|
|
174
194
|
});
|
|
175
195
|
this._targetObjects = [];
|
|
196
|
+
if (getParam("videoscreenspace")) {
|
|
197
|
+
window.addEventListener("keydown", evt => {
|
|
198
|
+
if (evt.key === "f") {
|
|
199
|
+
this.screenspace = !this.screenspace;
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
}
|
|
176
203
|
}
|
|
177
204
|
play() {
|
|
178
205
|
if (!this.videoElement)
|
|
@@ -219,20 +246,43 @@ export class VideoPlayer extends Behaviour {
|
|
|
219
246
|
// hide it because otherwise it would overlay the website with default css
|
|
220
247
|
this.updateVideoElementStyles();
|
|
221
248
|
}
|
|
222
|
-
if (typeof src === "string")
|
|
249
|
+
if (typeof src === "string") {
|
|
223
250
|
this.videoElement.src = src;
|
|
251
|
+
const str = this.videoElement["captureStream"]?.call(this.videoElement);
|
|
252
|
+
this.clip = str;
|
|
253
|
+
}
|
|
224
254
|
else
|
|
225
255
|
this.videoElement.srcObject = src;
|
|
226
|
-
if (!this.
|
|
227
|
-
this.
|
|
228
|
-
this.
|
|
229
|
-
this.
|
|
256
|
+
if (!this._videoTexture)
|
|
257
|
+
this._videoTexture = new THREE.VideoTexture(this.videoElement);
|
|
258
|
+
this._videoTexture.flipY = false;
|
|
259
|
+
this._videoTexture.encoding = THREE.sRGBEncoding;
|
|
230
260
|
this.handleBeginPlaying(playAutomatically);
|
|
261
|
+
console.log(this);
|
|
231
262
|
}
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
263
|
+
updateAspect() {
|
|
264
|
+
if (this.aspectMode === AspectMode.None)
|
|
265
|
+
return;
|
|
266
|
+
this.startCoroutine(this.updateAspectImpl());
|
|
267
|
+
}
|
|
268
|
+
_overlay = null;
|
|
269
|
+
get screenspace() {
|
|
270
|
+
return this._overlay?.enabled ?? false;
|
|
235
271
|
}
|
|
272
|
+
set screenspace(val) {
|
|
273
|
+
if (val) {
|
|
274
|
+
if (!this._videoTexture)
|
|
275
|
+
return;
|
|
276
|
+
if (!this._overlay)
|
|
277
|
+
this._overlay = new VideoOverlay(this.context);
|
|
278
|
+
this._overlay.add(this._videoTexture);
|
|
279
|
+
}
|
|
280
|
+
else
|
|
281
|
+
this._overlay?.remove(this._videoTexture);
|
|
282
|
+
if (this._overlay)
|
|
283
|
+
this._overlay.enabled = val;
|
|
284
|
+
}
|
|
285
|
+
_targetObjects;
|
|
236
286
|
createVideoElement() {
|
|
237
287
|
const video = document.createElement("video");
|
|
238
288
|
if (this._crossOrigin)
|
|
@@ -251,13 +301,15 @@ export class VideoPlayer extends Behaviour {
|
|
|
251
301
|
switch (this.renderMode) {
|
|
252
302
|
case VideoRenderMode.MaterialOverride:
|
|
253
303
|
target = this.targetMaterialRenderer?.gameObject;
|
|
304
|
+
if (!target)
|
|
305
|
+
target = GameObject.getComponent(this.gameObject, Renderer)?.gameObject;
|
|
254
306
|
break;
|
|
255
307
|
case VideoRenderMode.RenderTexture:
|
|
256
308
|
console.error("VideoPlayer renderTexture not implemented yet. Please use material override instead");
|
|
257
309
|
return;
|
|
258
310
|
}
|
|
259
311
|
if (!target) {
|
|
260
|
-
console.error("Missing target for video material renderer", this);
|
|
312
|
+
console.error("Missing target for video material renderer", this.name, VideoRenderMode[this.renderMode], this);
|
|
261
313
|
return;
|
|
262
314
|
}
|
|
263
315
|
const mat = target["material"];
|
|
@@ -268,12 +320,12 @@ export class VideoPlayer extends Behaviour {
|
|
|
268
320
|
target["material"] = this.videoMaterial;
|
|
269
321
|
}
|
|
270
322
|
if (!this.targetMaterialProperty) {
|
|
271
|
-
this.videoMaterial.map = this.
|
|
323
|
+
this.videoMaterial.map = this._videoTexture;
|
|
272
324
|
}
|
|
273
325
|
else {
|
|
274
326
|
switch (this.targetMaterialProperty) {
|
|
275
327
|
default:
|
|
276
|
-
this.videoMaterial.map = this.
|
|
328
|
+
this.videoMaterial.map = this._videoTexture;
|
|
277
329
|
break;
|
|
278
330
|
// doesnt render:
|
|
279
331
|
// case "emissiveTexture":
|
|
@@ -314,6 +366,59 @@ export class VideoPlayer extends Behaviour {
|
|
|
314
366
|
this.videoElement.style.userSelect = "none";
|
|
315
367
|
this.videoElement.style.visibility = "hidden";
|
|
316
368
|
this.videoElement.style.display = "none";
|
|
369
|
+
this.updateAspect();
|
|
370
|
+
}
|
|
371
|
+
_updateAspectRoutineId = -1;
|
|
372
|
+
*updateAspectImpl() {
|
|
373
|
+
const id = ++this._updateAspectRoutineId;
|
|
374
|
+
const lastAspect = undefined;
|
|
375
|
+
const stream = this.clip;
|
|
376
|
+
while (id === this._updateAspectRoutineId && this.aspectMode !== AspectMode.None && this.clip && stream === this.clip && this._isPlaying) {
|
|
377
|
+
if (!stream || typeof stream === "string") {
|
|
378
|
+
return;
|
|
379
|
+
}
|
|
380
|
+
let aspect = undefined;
|
|
381
|
+
for (const track of stream.getVideoTracks()) {
|
|
382
|
+
const settings = track.getSettings();
|
|
383
|
+
if (settings && settings.width && settings.height) {
|
|
384
|
+
aspect = settings.width / settings.height;
|
|
385
|
+
break;
|
|
386
|
+
}
|
|
387
|
+
// on firefox capture canvas stream works but looks like
|
|
388
|
+
// the canvas stream track doesnt contain settings?!!?
|
|
389
|
+
else {
|
|
390
|
+
aspect = this.context.renderer.domElement.clientWidth / this.context.renderer.domElement.clientHeight;
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
if (aspect === undefined) {
|
|
394
|
+
for (let i = 0; i < 10; i++)
|
|
395
|
+
yield;
|
|
396
|
+
if (!this.isPlaying)
|
|
397
|
+
break;
|
|
398
|
+
continue;
|
|
399
|
+
}
|
|
400
|
+
if (lastAspect === aspect) {
|
|
401
|
+
yield;
|
|
402
|
+
continue;
|
|
403
|
+
}
|
|
404
|
+
for (const obj of this._targetObjects) {
|
|
405
|
+
let worldAspect = 1;
|
|
406
|
+
if (obj.parent) {
|
|
407
|
+
const parentScale = getWorldScale(obj.parent);
|
|
408
|
+
worldAspect = parentScale.x / parentScale.y;
|
|
409
|
+
}
|
|
410
|
+
switch (this.aspectMode) {
|
|
411
|
+
case AspectMode.AdjustHeight:
|
|
412
|
+
obj.scale.y = 1 / aspect * obj.scale.x * worldAspect;
|
|
413
|
+
break;
|
|
414
|
+
case AspectMode.AdjustWidth:
|
|
415
|
+
obj.scale.x = aspect * obj.scale.y * worldAspect;
|
|
416
|
+
break;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
for (let i = 0; i < 3; i++)
|
|
420
|
+
yield;
|
|
421
|
+
}
|
|
317
422
|
}
|
|
318
423
|
}
|
|
319
424
|
__decorate([
|
|
@@ -325,6 +430,9 @@ __decorate([
|
|
|
325
430
|
__decorate([
|
|
326
431
|
serializeable()
|
|
327
432
|
], VideoPlayer.prototype, "playOnEnable", void 0);
|
|
433
|
+
__decorate([
|
|
434
|
+
serializeable()
|
|
435
|
+
], VideoPlayer.prototype, "aspectMode", void 0);
|
|
328
436
|
__decorate([
|
|
329
437
|
serializeable()
|
|
330
438
|
], VideoPlayer.prototype, "renderMode", void 0);
|
|
@@ -346,32 +454,267 @@ __decorate([
|
|
|
346
454
|
__decorate([
|
|
347
455
|
serializeable()
|
|
348
456
|
], VideoPlayer.prototype, "isLooping", null);
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
457
|
+
class VideoOverlay {
|
|
458
|
+
context;
|
|
459
|
+
constructor(context) {
|
|
460
|
+
this.context = context;
|
|
461
|
+
this._input = new VideoOverlayInput(this);
|
|
462
|
+
}
|
|
463
|
+
get enabled() {
|
|
464
|
+
return this._isInScreenspaceMode;
|
|
465
|
+
}
|
|
466
|
+
set enabled(val) {
|
|
467
|
+
if (val)
|
|
468
|
+
this.start();
|
|
469
|
+
else
|
|
470
|
+
this.stop();
|
|
471
|
+
}
|
|
472
|
+
add(video) {
|
|
473
|
+
if (this._videos.indexOf(video) === -1) {
|
|
474
|
+
this._videos.push(video);
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
remove(video) {
|
|
478
|
+
if (!video)
|
|
479
|
+
return;
|
|
480
|
+
const index = this._videos.indexOf(video);
|
|
481
|
+
if (index >= 0) {
|
|
482
|
+
this._videos.splice(index, 1);
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
start() {
|
|
486
|
+
if (this._isInScreenspaceMode)
|
|
487
|
+
return;
|
|
488
|
+
if (this._videos.length < 0)
|
|
489
|
+
return;
|
|
490
|
+
const texture = this._videos[this._videos.length - 1];
|
|
491
|
+
if (!texture)
|
|
492
|
+
return;
|
|
493
|
+
this._isInScreenspaceMode = true;
|
|
494
|
+
if (!this._screenspaceModeQuad) {
|
|
495
|
+
this._screenspaceModeQuad = ObjectUtils.createPrimitive(PrimitiveType.Quad, {
|
|
496
|
+
material: new ScreenspaceTexture(texture)
|
|
497
|
+
});
|
|
498
|
+
if (!this._screenspaceModeQuad)
|
|
499
|
+
return;
|
|
500
|
+
this._screenspaceModeQuad.geometry.scale(2, 2, 2);
|
|
501
|
+
}
|
|
502
|
+
const quad = this._screenspaceModeQuad;
|
|
503
|
+
this.context.scene.add(quad);
|
|
504
|
+
this.updateScreenspaceMaterialUniforms();
|
|
505
|
+
const mat = quad.material;
|
|
506
|
+
mat?.reset();
|
|
507
|
+
this._input?.enable(mat);
|
|
508
|
+
}
|
|
509
|
+
stop() {
|
|
510
|
+
this._isInScreenspaceMode = false;
|
|
511
|
+
if (this._screenspaceModeQuad) {
|
|
512
|
+
this._input?.disable();
|
|
513
|
+
this._screenspaceModeQuad.removeFromParent();
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
updateScreenspaceMaterialUniforms() {
|
|
517
|
+
const mat = this._screenspaceModeQuad?.material;
|
|
518
|
+
if (!mat)
|
|
519
|
+
return;
|
|
520
|
+
// mat.videoAspect = this.videoTexture?.image?.width / this.videoTexture?.image?.height;
|
|
521
|
+
mat.screenAspect = this.context.domElement.clientWidth / this.context.domElement.clientHeight;
|
|
522
|
+
}
|
|
523
|
+
_videos = [];
|
|
524
|
+
_screenspaceModeQuad;
|
|
525
|
+
_isInScreenspaceMode = false;
|
|
526
|
+
_input;
|
|
527
|
+
}
|
|
528
|
+
class VideoOverlayInput {
|
|
529
|
+
_onResizeScreenFn;
|
|
530
|
+
_onKeyUpFn;
|
|
531
|
+
_onMouseWheelFn;
|
|
532
|
+
context;
|
|
533
|
+
overlay;
|
|
534
|
+
constructor(overlay) {
|
|
535
|
+
this.overlay = overlay;
|
|
536
|
+
this.context = overlay.context;
|
|
537
|
+
}
|
|
538
|
+
_material;
|
|
539
|
+
enable(mat) {
|
|
540
|
+
this._material = mat;
|
|
541
|
+
window.addEventListener("resize", this._onResizeScreenFn = () => {
|
|
542
|
+
this.overlay.updateScreenspaceMaterialUniforms();
|
|
543
|
+
});
|
|
544
|
+
window.addEventListener("keyup", this._onKeyUpFn = (args) => {
|
|
545
|
+
if (args.key === "Escape")
|
|
546
|
+
this.overlay.stop();
|
|
547
|
+
});
|
|
548
|
+
window.addEventListener("wheel", this._onMouseWheelFn = (args) => {
|
|
549
|
+
if (this.overlay.enabled) {
|
|
550
|
+
mat.zoom += args.deltaY * .0005;
|
|
551
|
+
args.preventDefault();
|
|
552
|
+
}
|
|
553
|
+
}, { passive: false });
|
|
554
|
+
const delta = new Vector2();
|
|
555
|
+
window.addEventListener("mousemove", (args) => {
|
|
556
|
+
if (this.overlay.enabled && this.context.input.getPointerPressed(0)) {
|
|
557
|
+
const normalizedMovement = new Vector2(args.movementX, args.movementY);
|
|
558
|
+
normalizedMovement.x /= this.context.domElement.clientWidth;
|
|
559
|
+
normalizedMovement.y /= this.context.domElement.clientHeight;
|
|
560
|
+
delta.set(normalizedMovement.x, normalizedMovement.y);
|
|
561
|
+
delta.multiplyScalar(mat.zoom / -this.context.time.deltaTime * .01);
|
|
562
|
+
mat.offset = mat.offset.add(delta);
|
|
563
|
+
}
|
|
564
|
+
});
|
|
565
|
+
window.addEventListener("pointermove", (args) => {
|
|
566
|
+
if (this.overlay.enabled && this.context.input.getPointerPressed(0)) {
|
|
567
|
+
const count = this.context.input.getTouchesPressedCount();
|
|
568
|
+
if (count === 1) {
|
|
569
|
+
delta.set(args.movementX, args.movementY);
|
|
570
|
+
delta.multiplyScalar(mat.zoom * -this.context.time.deltaTime * .05);
|
|
571
|
+
mat.offset = mat.offset.add(delta);
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
});
|
|
575
|
+
let lastTouchStartTime = 0;
|
|
576
|
+
window.addEventListener("touchstart", e => {
|
|
577
|
+
if (e.touches.length < 2) {
|
|
578
|
+
if (this.context.time.time - lastTouchStartTime < .3) {
|
|
579
|
+
this.overlay.stop();
|
|
580
|
+
}
|
|
581
|
+
lastTouchStartTime = this.context.time.time;
|
|
582
|
+
return;
|
|
583
|
+
}
|
|
584
|
+
this._isPinching = true;
|
|
585
|
+
this._lastPinch = 0;
|
|
586
|
+
});
|
|
587
|
+
window.addEventListener("touchmove", e => {
|
|
588
|
+
if (!this._isPinching || !this._material)
|
|
589
|
+
return;
|
|
590
|
+
const touch1 = e.touches[0];
|
|
591
|
+
const touch2 = e.touches[1];
|
|
592
|
+
const dx = touch1.clientX - touch2.clientX;
|
|
593
|
+
const dy = touch1.clientY - touch2.clientY;
|
|
594
|
+
const distance = Math.sqrt(dx * dx + dy * dy);
|
|
595
|
+
if (this._lastPinch !== 0) {
|
|
596
|
+
const delta = distance - this._lastPinch;
|
|
597
|
+
this._material.zoom -= delta * .004;
|
|
598
|
+
}
|
|
599
|
+
this._lastPinch = distance;
|
|
600
|
+
});
|
|
601
|
+
window.addEventListener("touchend", () => {
|
|
602
|
+
this._isPinching = false;
|
|
603
|
+
});
|
|
604
|
+
}
|
|
605
|
+
_isPinching = false;
|
|
606
|
+
_lastPinch = 0;
|
|
607
|
+
disable() {
|
|
608
|
+
if (this._onResizeScreenFn) {
|
|
609
|
+
window.removeEventListener("resize", this._onResizeScreenFn);
|
|
610
|
+
this._onResizeScreenFn = undefined;
|
|
611
|
+
}
|
|
612
|
+
if (this._onKeyUpFn) {
|
|
613
|
+
window.removeEventListener("keyup", this._onKeyUpFn);
|
|
614
|
+
this._onKeyUpFn = undefined;
|
|
615
|
+
}
|
|
616
|
+
if (this._onMouseWheelFn) {
|
|
617
|
+
window.removeEventListener("wheel", this._onMouseWheelFn);
|
|
618
|
+
this._onMouseWheelFn = undefined;
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
class ScreenspaceTexture extends ShaderMaterial {
|
|
623
|
+
set screenAspect(val) {
|
|
624
|
+
this.uniforms["screenAspect"].value = val;
|
|
625
|
+
this.needsUpdate = true;
|
|
626
|
+
}
|
|
627
|
+
set offset(vec) {
|
|
628
|
+
const val = this.uniforms["offsetScale"].value;
|
|
629
|
+
val.x = vec.x;
|
|
630
|
+
val.y = vec.y;
|
|
631
|
+
// console.log(val);
|
|
632
|
+
this.uniforms["offsetScale"].value = val;
|
|
633
|
+
this.needsUpdate = true;
|
|
634
|
+
}
|
|
635
|
+
_offset = new Vector2();
|
|
636
|
+
get offset() {
|
|
637
|
+
const val = this.uniforms["offsetScale"].value;
|
|
638
|
+
this._offset.set(val.x, val.y);
|
|
639
|
+
return this._offset;
|
|
640
|
+
}
|
|
641
|
+
set zoom(val) {
|
|
642
|
+
const zoom = this.uniforms["offsetScale"].value;
|
|
643
|
+
if (val < .001)
|
|
644
|
+
val = .001;
|
|
645
|
+
zoom.z = val;
|
|
646
|
+
// zoom.z = this.maxZoom - val;
|
|
647
|
+
// zoom.z /= this.maxZoom;
|
|
648
|
+
this.needsUpdate = true;
|
|
649
|
+
}
|
|
650
|
+
get zoom() {
|
|
651
|
+
return this.uniforms["offsetScale"].value.z; // * this.maxZoom;
|
|
652
|
+
}
|
|
653
|
+
reset() {
|
|
654
|
+
this.offset = this.offset.set(0, 0);
|
|
655
|
+
this.zoom = 1;
|
|
656
|
+
this.needsUpdate = true;
|
|
657
|
+
}
|
|
658
|
+
// maxZoom : number = 10
|
|
659
|
+
constructor(tex) {
|
|
660
|
+
super();
|
|
661
|
+
this.uniforms = {
|
|
662
|
+
map: { value: tex },
|
|
663
|
+
screenAspect: { value: 1 },
|
|
664
|
+
offsetScale: { value: new Vector4(0, 0, 1, 1) }
|
|
665
|
+
};
|
|
666
|
+
this.vertexShader = `
|
|
667
|
+
uniform sampler2D map;
|
|
668
|
+
uniform float screenAspect;
|
|
669
|
+
uniform vec4 offsetScale;
|
|
670
|
+
varying vec2 vUv;
|
|
671
|
+
|
|
672
|
+
void main() {
|
|
673
|
+
|
|
674
|
+
gl_Position = vec4( position , 1.0 );
|
|
675
|
+
vUv = uv;
|
|
676
|
+
vUv.y = 1. - vUv.y;
|
|
677
|
+
|
|
678
|
+
// fit into screen
|
|
679
|
+
ivec2 res = textureSize(map, 0);
|
|
680
|
+
float videoAspect = float(res.x) / float(res.y);
|
|
681
|
+
float aspect = videoAspect / screenAspect;
|
|
682
|
+
if(aspect >= 1.0)
|
|
683
|
+
{
|
|
684
|
+
vUv.y = vUv.y * aspect;
|
|
685
|
+
float offset = (1. - aspect) * .5;
|
|
686
|
+
vUv.y = vUv.y + offset;
|
|
687
|
+
}
|
|
688
|
+
else
|
|
689
|
+
{
|
|
690
|
+
vUv.x = vUv.x / aspect;
|
|
691
|
+
float offset = (1. - 1. / aspect) * .5;
|
|
692
|
+
vUv.x = vUv.x + offset;
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
vUv.x -= .5;
|
|
696
|
+
vUv.y -= .5;
|
|
697
|
+
|
|
698
|
+
vUv.x *= offsetScale.z;
|
|
699
|
+
vUv.y *= offsetScale.z;
|
|
700
|
+
vUv.x += offsetScale.x;
|
|
701
|
+
vUv.y += offsetScale.y;
|
|
702
|
+
|
|
703
|
+
vUv.x += .5;
|
|
704
|
+
vUv.y += .5;
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
`;
|
|
708
|
+
this.fragmentShader = `
|
|
709
|
+
uniform sampler2D map;
|
|
710
|
+
varying vec2 vUv;
|
|
711
|
+
void main() {
|
|
712
|
+
if(vUv.x < 0. || vUv.x > 1. || vUv.y < 0. || vUv.y > 1.)
|
|
713
|
+
gl_FragColor = vec4(0., 0., 0., 1.);
|
|
714
|
+
else
|
|
715
|
+
gl_FragColor = texture2D(map, vUv);
|
|
716
|
+
}
|
|
717
|
+
`;
|
|
718
|
+
}
|
|
719
|
+
}
|
|
377
720
|
//# sourceMappingURL=VideoPlayer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["../../../engine-components/VideoPlayer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VideoPlayer.js","sourceRoot":"","sources":["../../../engine-components/VideoPlayer.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { Behaviour, GameObject } from "./Component";
|
|
8
8
|
import * as THREE from 'three';
|
|
9
9
|
import { WebXR } from "./WebXR";
|
|
10
|
-
import { InstancingUtil } from "
|
|
10
|
+
import { InstancingUtil } from "../engine/engine_instancing";
|
|
11
11
|
import { serializeable } from "../engine/engine_serialization_decorator";
|
|
12
12
|
// https://github.com/takahirox/takahirox.github.io/blob/master/three.js.mmdeditor/examples/js/controls/DeviceOrientationControls.js
|
|
13
13
|
export class WebARSessionRoot extends Behaviour {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebARSessionRoot.js","sourceRoot":"","sources":["../../../engine-components/WebARSessionRoot.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAS,KAAK,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"WebARSessionRoot.js","sourceRoot":"","sources":["../../../engine-components/WebARSessionRoot.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { XRFlag, XRStateFlag } from "./XRFlag";
|
|
|
5
5
|
import { Avatar_POI } from "./avatar/Avatar_Brain_LookAt";
|
|
6
6
|
import { getParam } from "../engine/engine_utils";
|
|
7
7
|
import { ViewDevice } from "../engine/engine_playerview";
|
|
8
|
-
import { InstancingUtil } from "
|
|
8
|
+
import { InstancingUtil } from "../engine/engine_instancing";
|
|
9
9
|
export const debug = getParam("debugavatar");
|
|
10
10
|
export class AvatarMarker extends Behaviour {
|
|
11
11
|
static getAvatar(index) {
|