@needle-tools/engine 2.31.1-pre → 2.33.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.
Files changed (65) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/needle-engine.d.ts +129 -122
  3. package/dist/needle-engine.js +346 -346
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +19 -19
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/debug/error_overlay.js +4 -4
  8. package/lib/engine/debug/error_overlay.js.map +1 -1
  9. package/lib/engine/engine_input.d.ts +87 -102
  10. package/lib/engine/engine_input.js +173 -99
  11. package/lib/engine/engine_input.js.map +1 -1
  12. package/lib/engine/engine_mainloop_utils.d.ts +2 -1
  13. package/lib/engine/engine_mainloop_utils.js +5 -2
  14. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  15. package/lib/engine/engine_physics.d.ts +5 -1
  16. package/lib/engine/engine_physics.js +72 -22
  17. package/lib/engine/engine_physics.js.map +1 -1
  18. package/lib/engine/engine_setup.js +7 -3
  19. package/lib/engine/engine_setup.js.map +1 -1
  20. package/lib/engine/extensions/NEEDLE_components.js +2 -0
  21. package/lib/engine/extensions/NEEDLE_components.js.map +1 -1
  22. package/lib/engine/extensions/NEEDLE_techniques_webgl.d.ts +1 -0
  23. package/lib/engine/extensions/NEEDLE_techniques_webgl.js +26 -0
  24. package/lib/engine/extensions/NEEDLE_techniques_webgl.js.map +1 -1
  25. package/lib/engine-components/Collider.js +2 -2
  26. package/lib/engine-components/Collider.js.map +1 -1
  27. package/lib/engine-components/Component.d.ts +10 -3
  28. package/lib/engine-components/Component.js +100 -90
  29. package/lib/engine-components/Component.js.map +1 -1
  30. package/lib/engine-components/Rigidbody.d.ts +7 -4
  31. package/lib/engine-components/Rigidbody.js +43 -26
  32. package/lib/engine-components/Rigidbody.js.map +1 -1
  33. package/lib/engine-components/ScreenCapture.d.ts +8 -4
  34. package/lib/engine-components/ScreenCapture.js +73 -18
  35. package/lib/engine-components/ScreenCapture.js.map +1 -1
  36. package/lib/engine-components/codegen/{exports.d.ts → components.d.ts} +2 -1
  37. package/lib/engine-components/codegen/{exports.js → components.js} +3 -2
  38. package/lib/engine-components/codegen/components.js.map +1 -0
  39. package/lib/engine-components/js-extensions/Object3D.d.ts +2 -0
  40. package/lib/engine-components/js-extensions/Object3D.js +75 -0
  41. package/lib/engine-components/js-extensions/Object3D.js.map +1 -0
  42. package/lib/needle-engine.d.ts +2 -1
  43. package/lib/needle-engine.js +3 -2
  44. package/lib/needle-engine.js.map +1 -1
  45. package/package.json +1 -1
  46. package/src/engine/codegen/register_types.js +4 -4
  47. package/src/engine/debug/error_overlay.ts +3 -3
  48. package/src/engine/engine_input.ts +179 -103
  49. package/src/engine/engine_mainloop_utils.ts +6 -2
  50. package/src/engine/engine_physics.ts +86 -24
  51. package/src/engine/engine_setup.ts +8 -3
  52. package/src/engine/extensions/NEEDLE_components.ts +3 -0
  53. package/src/engine/extensions/NEEDLE_techniques_webgl.ts +34 -2
  54. package/src/engine-components/Collider.ts +2 -2
  55. package/src/engine-components/Component.ts +111 -103
  56. package/src/engine-components/RigidBody.ts +51 -29
  57. package/src/engine-components/ScreenCapture.ts +73 -20
  58. package/src/engine-components/codegen/{exports.ts → components.ts} +1 -1
  59. package/src/engine-components/js-extensions/Object3D.ts +91 -0
  60. package/src/needle-engine.ts +3 -3
  61. package/lib/engine-components/ComponentExtensions.d.ts +0 -2
  62. package/lib/engine-components/ComponentExtensions.js +0 -3
  63. package/lib/engine-components/ComponentExtensions.js.map +0 -1
  64. package/lib/engine-components/codegen/exports.js.map +0 -1
  65. package/src/engine-components/ComponentExtensions.ts +0 -7
@@ -11,6 +11,7 @@ import * as THREE from 'three';
11
11
  import { getWorldPosition } from "../engine/engine_three_utils";
12
12
  import { serializeable } from "../engine/engine_serialization_decorator";
13
13
  import { Watch } from "../engine/engine_utils";
14
+ import { Vector3 } from "three";
14
15
  export class Rigidbody extends Behaviour {
15
16
  mass = 1;
16
17
  set isKinematic(kinematic) {
@@ -41,7 +42,7 @@ export class Rigidbody extends Behaviour {
41
42
  _ignoreChange = false;
42
43
  _dirty = false;
43
44
  _positionWatch;
44
- // private _matrixWatch?: Watch;
45
+ _matrixWatch;
45
46
  _setMatrix;
46
47
  constructor() {
47
48
  super();
@@ -52,10 +53,12 @@ export class Rigidbody extends Behaviour {
52
53
  this.currentVelocity = new THREE.Vector3();
53
54
  this._smoothedVelocity = new THREE.Vector3();
54
55
  this.lastWorldPosition = getWorldPosition(this.gameObject).clone();
56
+ this._matrixWatch = undefined;
57
+ this._positionWatch = undefined;
55
58
  }
56
- start() {
57
- this.setBodyFromGameObject();
58
- }
59
+ // start() {
60
+ // this.setBodyFromGameObject();
61
+ // }
59
62
  onEnable() {
60
63
  if (this._body) {
61
64
  this.context.physics.addBody(this.gameObject, this._body);
@@ -72,20 +75,12 @@ export class Rigidbody extends Behaviour {
72
75
  this._positionWatch.subscribeWrite(_ => {
73
76
  if (!this.context.physics.isUpdating && !this._ignoreChange) {
74
77
  this._dirty = true;
78
+ this._setMatrix.copy(this.gameObject.matrix);
75
79
  this._setMatrix.setPosition(this.gameObject.position);
76
80
  }
77
81
  });
78
- // this._matrixWatch = onChange(this.gameObject.matrix, "elements", (newValue, oldValue) => {
79
- // if (newValue !== oldValue) {
80
- // if (!this.context.physics.isUpdating && !this._ignoreChange) {
81
- // this.dirty = true;
82
- // this._setMatrix.copy(this.gameObject.matrix);
83
- // }
84
- // }
85
- // });
86
82
  }
87
83
  onDisable() {
88
- // this._matrixWatch?.u();
89
84
  if (this._body)
90
85
  this.context.physics.removeBody(this.gameObject, this._body, false);
91
86
  }
@@ -93,27 +88,20 @@ export class Rigidbody extends Behaviour {
93
88
  if (this._body)
94
89
  this.context.physics.removeBody(this.gameObject, this._body);
95
90
  }
96
- earlyUpdate() {
91
+ onBeforeRender() {
92
+ this._ignoreChange = true;
93
+ this.updateVelocity();
97
94
  if (this._dirty) {
98
- this._ignoreChange = true;
99
95
  this._dirty = false;
100
- // // console.log("RESET");
101
96
  this._setMatrix.decompose(this.gameObject.position, this.gameObject.quaternion, this.gameObject.scale);
102
97
  this.setBodyFromGameObject();
103
- this._ignoreChange = false;
104
98
  }
105
- }
106
- onBeforeRender() {
107
- this._ignoreChange = true;
108
- this.updateVelocity();
109
- // this._ignoreChange = true;
110
- // this._setMatrix.decompose(this.gameObject.position, this.gameObject.quaternion, this.gameObject.scale);
111
- // this.setBodyFromGameObject();
112
99
  this._ignoreChange = false;
113
100
  }
114
101
  initialize() {
115
- if (this._body)
102
+ if (this._body) {
116
103
  return;
104
+ }
117
105
  const options = new BodyOptions();
118
106
  options.drag = this.drag;
119
107
  options.angularDrag = this.angularDrag;
@@ -127,7 +115,12 @@ export class Rigidbody extends Behaviour {
127
115
  this.body?.wakeUp();
128
116
  }
129
117
  applyForce(vec, rel) {
130
- this.body?.applyForce(new CANNON.Vec3(vec.x, vec.y, vec.z), rel ? new CANNON.Vec3(rel.x, rel.y, rel.z) : undefined);
118
+ const force = new CANNON.Vec3(vec.x, vec.y, vec.z);
119
+ force.scale(1 / this.context.time.deltaTime, force);
120
+ this.body?.applyForce(force, rel ? new CANNON.Vec3(rel.x, rel.y, rel.z) : undefined);
121
+ }
122
+ setForce(x, y, z) {
123
+ this.body?.force.set(x, y, z);
131
124
  }
132
125
  getVelocity() {
133
126
  if (this.body)
@@ -137,10 +130,34 @@ export class Rigidbody extends Behaviour {
137
130
  setVelocity(x, y, z) {
138
131
  if (!this.body)
139
132
  return;
133
+ if (x instanceof Vector3) {
134
+ const vec = x;
135
+ x = vec.x;
136
+ y = vec.y;
137
+ z = vec.z;
138
+ }
140
139
  this.body.velocity.x = x / this.context.time.deltaTime;
141
140
  this.body.velocity.y = y / this.context.time.deltaTime;
142
141
  this.body.velocity.z = z / this.context.time.deltaTime;
143
142
  }
143
+ getTorque() {
144
+ if (this.body)
145
+ return Rigidbody.tempPosition.set(this.body?.torque.x, this.body?.torque.y, this.body?.torque.z);
146
+ return Rigidbody.tempPosition.set(0, 0, 0);
147
+ }
148
+ setTorque(x, y, z) {
149
+ if (!this.body)
150
+ return;
151
+ if (x instanceof Vector3) {
152
+ const vec = x;
153
+ x = vec.x;
154
+ y = vec.y;
155
+ z = vec.z;
156
+ }
157
+ this.body.torque.x = x / this.context.time.deltaTime;
158
+ this.body.torque.y = y / this.context.time.deltaTime;
159
+ this.body.torque.z = z / this.context.time.deltaTime;
160
+ }
144
161
  get smoothedVelocity() { return this._smoothedVelocity; }
145
162
  setAngularVelocity(x, y, z) {
146
163
  if (!this.body)
@@ -1 +1 @@
1
- {"version":3,"file":"Rigidbody.js","sourceRoot":"","sources":["../../../engine-components/Rigidbody.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Rigidbody.js","sourceRoot":"","sources":["../../../engine-components/Rigidbody.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { Behaviour } from "./Component";
2
+ import { VideoPlayer } from "./VideoPlayer";
2
3
  import { IPointerClickHandler } from "./ui/PointerEvents";
3
4
  export declare enum ScreenCaptureDevice {
4
5
  Screen = 0,
5
- Camera = 1
6
+ Camera = 1,
7
+ Canvas = 2
6
8
  }
7
9
  export declare enum ScreenCaptureMode {
8
10
  Idle = 0,
@@ -16,12 +18,14 @@ export declare enum AspectMode {
16
18
  }
17
19
  export declare class ScreenCapture extends Behaviour implements IPointerClickHandler {
18
20
  onPointerClick(): void;
21
+ videoPlayer?: VideoPlayer;
19
22
  device: ScreenCaptureDevice;
20
23
  aspectMode: AspectMode;
21
- get isSending(): boolean | null;
22
- get isReceiving(): boolean | null;
24
+ get currentScream(): MediaStream | null;
25
+ get currentMode(): ScreenCaptureMode;
26
+ get isSending(): boolean | undefined;
27
+ get isReceiving(): boolean;
23
28
  private _net?;
24
- private _video?;
25
29
  private _requestOpen;
26
30
  private _currentStream;
27
31
  private _currentMode;
@@ -12,10 +12,13 @@ import { serializeable } from "../engine/engine_serialization";
12
12
  import { EventDispatcher } from "three";
13
13
  import { AudioSource } from "./AudioSource";
14
14
  import { getWorldScale } from "../engine/engine_three_utils";
15
+ import { getParam } from "../engine/engine_utils";
16
+ const debug = getParam("debugscreenshare");
15
17
  export var ScreenCaptureDevice;
16
18
  (function (ScreenCaptureDevice) {
17
19
  ScreenCaptureDevice[ScreenCaptureDevice["Screen"] = 0] = "Screen";
18
20
  ScreenCaptureDevice[ScreenCaptureDevice["Camera"] = 1] = "Camera";
21
+ ScreenCaptureDevice[ScreenCaptureDevice["Canvas"] = 2] = "Canvas";
19
22
  })(ScreenCaptureDevice || (ScreenCaptureDevice = {}));
20
23
  export var ScreenCaptureMode;
21
24
  (function (ScreenCaptureMode) {
@@ -37,36 +40,58 @@ function disposeStream(str) {
37
40
  }
38
41
  export class ScreenCapture extends Behaviour {
39
42
  onPointerClick() {
43
+ if (this.isReceiving) {
44
+ return;
45
+ }
40
46
  if (this.isSending) {
41
47
  this.close();
42
48
  return;
43
49
  }
44
50
  this.share();
45
51
  }
52
+ videoPlayer;
46
53
  device = ScreenCaptureDevice.Screen;
47
54
  aspectMode = AspectMode.AdjustHeight;
55
+ get currentScream() {
56
+ return this._currentStream;
57
+ }
58
+ get currentMode() {
59
+ return this._currentMode;
60
+ }
48
61
  get isSending() {
49
- return this._currentStream && this._currentMode === ScreenCaptureMode.Sending;
62
+ return this._currentStream?.active && this._currentMode === ScreenCaptureMode.Sending;
50
63
  }
51
64
  get isReceiving() {
52
- return this._currentStream && this._currentMode === ScreenCaptureMode.Receiving;
65
+ if (this._currentMode === ScreenCaptureMode.Receiving) {
66
+ if (!this._currentStream || this._currentStream.active === false)
67
+ return false;
68
+ // if any track is still live consider it active
69
+ const tracks = this._currentStream.getTracks();
70
+ for (const track of tracks) {
71
+ if (track.readyState === "live")
72
+ return true;
73
+ }
74
+ }
75
+ return false;
53
76
  }
54
77
  _net;
55
- _video;
56
78
  _requestOpen = false;
57
79
  _currentStream = null;
58
80
  _currentMode = ScreenCaptureMode.Idle;
59
81
  awake() {
82
+ console.log(this);
60
83
  AudioSource.registerWaitForAllowAudio(() => {
61
- if (this._video && this._currentStream && this._currentMode === ScreenCaptureMode.Receiving) {
62
- this._video.setVideo(this._currentStream);
84
+ if (this.videoPlayer && this._currentStream && this._currentMode === ScreenCaptureMode.Receiving) {
85
+ this.videoPlayer.setVideo(this._currentStream);
63
86
  }
64
87
  });
65
88
  }
66
89
  start() {
67
- this._video = GameObject.getComponentInChildren(this.gameObject, VideoPlayer) ?? undefined;
68
- if (!this._video) {
69
- console.error("Missing VideoPlayer component");
90
+ if (!this.videoPlayer) {
91
+ this.videoPlayer = GameObject.getComponent(this.gameObject, VideoPlayer) ?? undefined;
92
+ }
93
+ if (!this.videoPlayer) {
94
+ console.error("Screencapture did not find a VideoPlayer component");
70
95
  return;
71
96
  }
72
97
  const handle = PeerHandle.getOrCreate(this.context, this.guid);
@@ -78,7 +103,7 @@ export class ScreenCapture extends Behaviour {
78
103
  async share() {
79
104
  this._requestOpen = true;
80
105
  try {
81
- if (this._video) {
106
+ if (this.videoPlayer) {
82
107
  const settings = {
83
108
  echoCancellation: true,
84
109
  autoGainControl: false,
@@ -88,9 +113,11 @@ export class ScreenCapture extends Behaviour {
88
113
  audio: settings,
89
114
  };
90
115
  switch (this.device) {
116
+ // Capture a connected camera
91
117
  case ScreenCaptureDevice.Camera:
92
118
  this.tryShareUserCamera(displayMediaOptions);
93
119
  break;
120
+ // capture any screen, will show a popup
94
121
  case ScreenCaptureDevice.Screen:
95
122
  if (!navigator.mediaDevices.getDisplayMedia) {
96
123
  console.error("No getDisplayMedia support");
@@ -103,6 +130,15 @@ export class ScreenCapture extends Behaviour {
103
130
  else
104
131
  disposeStream(myVideo);
105
132
  break;
133
+ // capture the canvas meaning the threejs view
134
+ case ScreenCaptureDevice.Canvas:
135
+ // looks like this doesnt work reliably on chrome https://stackoverflow.com/a/66848674
136
+ // firefox updates fine
137
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=1156408
138
+ const fps = 0;
139
+ const stream = this.context.renderer.domElement.captureStream(fps);
140
+ this.setVideo(stream, ScreenCaptureMode.Sending);
141
+ break;
106
142
  }
107
143
  }
108
144
  }
@@ -120,8 +156,8 @@ export class ScreenCapture extends Behaviour {
120
156
  this._requestOpen = false;
121
157
  if (this._currentStream) {
122
158
  console.warn("Close current stream / disposing resources");
123
- disposeStream(this._currentStream);
124
159
  this._net?.stopSendingVideo(this._currentStream);
160
+ disposeStream(this._currentStream);
125
161
  this._currentMode = ScreenCaptureMode.Idle;
126
162
  this._currentStream = null;
127
163
  }
@@ -130,12 +166,12 @@ export class ScreenCapture extends Behaviour {
130
166
  if (stream === this._currentStream)
131
167
  return;
132
168
  this.close();
133
- if (!stream || !this._video)
169
+ if (!stream || !this.videoPlayer)
134
170
  return;
135
171
  this._currentStream = stream;
136
172
  this._requestOpen = true;
137
173
  this._currentMode = mode;
138
- this._video.setVideo(stream);
174
+ this.videoPlayer.setVideo(stream);
139
175
  if (mode === ScreenCaptureMode.Sending)
140
176
  this._net?.startSendingVideo(stream);
141
177
  this._targetObjects = undefined;
@@ -189,8 +225,9 @@ export class ScreenCapture extends Behaviour {
189
225
  _updateAspectRoutineId = -1;
190
226
  *updateAspectImpl() {
191
227
  const id = ++this._updateAspectRoutineId;
228
+ const lastAspect = undefined;
192
229
  while (this.aspectMode !== AspectMode.None && this._currentStream && id === this._updateAspectRoutineId) {
193
- const video = this._video;
230
+ const video = this.videoPlayer;
194
231
  const stream = this._currentStream;
195
232
  if (!video)
196
233
  return;
@@ -199,13 +236,25 @@ export class ScreenCapture extends Behaviour {
199
236
  let aspect = undefined;
200
237
  for (const track of stream.getVideoTracks()) {
201
238
  const settings = track.getSettings();
202
- if (settings.width && settings.height) {
239
+ if (settings && settings.width && settings.height) {
203
240
  aspect = settings.width / settings.height;
204
241
  break;
205
242
  }
243
+ // on firefox capture canvas stream works but looks like
244
+ // the canvas stream track doesnt contain settings?!!?
245
+ else {
246
+ if (this.device === ScreenCaptureDevice.Canvas)
247
+ aspect = this.context.renderer.domElement.clientWidth / this.context.renderer.domElement.clientHeight;
248
+ }
249
+ }
250
+ if (aspect === undefined) {
251
+ yield;
252
+ continue;
253
+ }
254
+ if (lastAspect === aspect) {
255
+ yield;
256
+ continue;
206
257
  }
207
- if (aspect === undefined)
208
- return;
209
258
  if (!this._targetObjects)
210
259
  this._targetObjects = video.getTargetObjects();
211
260
  for (const obj of this._targetObjects) {
@@ -223,10 +272,14 @@ export class ScreenCapture extends Behaviour {
223
272
  break;
224
273
  }
225
274
  }
226
- yield;
275
+ for (let i = 0; i < 3; i++)
276
+ yield;
227
277
  }
228
278
  }
229
279
  }
280
+ __decorate([
281
+ serializeable(VideoPlayer)
282
+ ], ScreenCapture.prototype, "videoPlayer", void 0);
230
283
  __decorate([
231
284
  serializeable()
232
285
  ], ScreenCapture.prototype, "device", void 0);
@@ -404,7 +457,8 @@ class PeerHandle extends EventDispatcher {
404
457
  // TODO: unsubscribe
405
458
  }
406
459
  onPeerConnect(id) {
407
- console.log("Peer connected as", id);
460
+ if (debug)
461
+ console.log("Peer connected as", id);
408
462
  this.context.connection.send(PeerEvent.Connected, new PeerUserConnectedModel(this, id));
409
463
  }
410
464
  onPeerReceivingCall(call) {
@@ -481,6 +535,7 @@ class NetworkedVideo extends EventDispatcher {
481
535
  if (_steam) {
482
536
  const calls = this._sendingVideoStreams.get(_steam);
483
537
  if (calls) {
538
+ console.log("Closing calls", calls);
484
539
  for (const call of calls) {
485
540
  call.close();
486
541
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ScreenCapture.js","sourceRoot":"","sources":["../../../engine-components/ScreenCapture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScreenCapture.js","sourceRoot":"","sources":["../../../engine-components/ScreenCapture.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ export declare class __Ignore {
2
+ }
1
3
  export { AlignmentConstraint } from "../AlignmentConstraint";
2
4
  export { Animation } from "../Animation";
3
5
  export { AnimationCurve } from "../AnimationCurve";
@@ -15,7 +17,6 @@ export { Collider } from "../Collider";
15
17
  export { SphereCollider } from "../Collider";
16
18
  export { BoxCollider } from "../Collider";
17
19
  export { InstantiateOptions } from "../Component";
18
- export { UnityObject } from "../ComponentExtensions";
19
20
  export { DeleteBox } from "../DeleteBox";
20
21
  export { Deletable } from "../DeleteBox";
21
22
  export { DeviceFlag } from "../DeviceFlag";
@@ -1,4 +1,6 @@
1
1
  // Export types
2
+ export class __Ignore {
3
+ }
2
4
  export { AlignmentConstraint } from "../AlignmentConstraint";
3
5
  export { Animation } from "../Animation";
4
6
  export { AnimationCurve } from "../AnimationCurve";
@@ -16,7 +18,6 @@ export { Collider } from "../Collider";
16
18
  export { SphereCollider } from "../Collider";
17
19
  export { BoxCollider } from "../Collider";
18
20
  export { InstantiateOptions } from "../Component";
19
- export { UnityObject } from "../ComponentExtensions";
20
21
  export { DeleteBox } from "../DeleteBox";
21
22
  export { Deletable } from "../DeleteBox";
22
23
  export { DeviceFlag } from "../DeviceFlag";
@@ -138,4 +139,4 @@ export { Rect } from "../ui/RectTransform";
138
139
  export { RectTransform } from "../ui/RectTransform";
139
140
  export { SpatialHtml } from "../ui/SpatialHtml";
140
141
  export { Text } from "../ui/Text";
141
- //# sourceMappingURL=exports.js.map
142
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../engine-components/codegen/components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Object3D } from "three";
2
+ export declare function apply(object: Object3D): void;
@@ -0,0 +1,75 @@
1
+ import { Object3D } from "three";
2
+ import { GameObject } from "../Component";
3
+ const decorated = Symbol("GameObject.decorated");
4
+ // this is a fix to allow gameObject active animation be applied to a three object
5
+ Object.defineProperty(Object3D.prototype, "activeSelf", {
6
+ get: function () {
7
+ return this.visible;
8
+ },
9
+ set: function (val) {
10
+ const state = typeof val === "number" ? val > 0.5 : val;
11
+ this.visible = state;
12
+ }
13
+ });
14
+ // do we still need this?
15
+ Object3D.prototype["SetActive"] = function (active) {
16
+ this.visible = active;
17
+ };
18
+ Object3D.prototype["addNewComponent"] = function (type) {
19
+ return GameObject.addNewComponent(this, type);
20
+ };
21
+ Object3D.prototype["removeComponent"] = function (inst) {
22
+ return GameObject.removeComponent(inst);
23
+ };
24
+ Object3D.prototype["getOrAddComponent"] = function (typeName) {
25
+ return GameObject.getOrAddComponent(this, typeName);
26
+ };
27
+ Object3D.prototype["getComponent"] = function (type) {
28
+ return GameObject.getComponent(this, type);
29
+ };
30
+ Object3D.prototype["getComponents"] = function (type, arr) {
31
+ return GameObject.getComponents(this, type, arr);
32
+ };
33
+ Object3D.prototype["getComponentInChildren"] = function (type) {
34
+ return GameObject.getComponentInChildren(this, type);
35
+ };
36
+ Object3D.prototype["getComponentsInChildren"] = function (type, arr) {
37
+ return GameObject.getComponentsInChildren(this, type, arr);
38
+ };
39
+ Object3D.prototype["getComponentInParent"] = function (type) {
40
+ return GameObject.getComponentInParent(this, type);
41
+ };
42
+ Object3D.prototype["getComponentsInParent"] = function (type, arr) {
43
+ return GameObject.getComponentsInParent(this, type, arr);
44
+ };
45
+ // used to decorate cloned object3D objects with the same added components defined above
46
+ const extensions = Object.keys(Object3D.prototype);
47
+ const descriptors = new Array();
48
+ for (let i = 0; i < extensions.length; i++) {
49
+ const key = extensions[i];
50
+ const descriptor = Object.getOwnPropertyDescriptor(Object3D.prototype, key);
51
+ if (descriptor) {
52
+ descriptors.push(descriptor);
53
+ }
54
+ }
55
+ export function apply(object) {
56
+ if (object[decorated])
57
+ return;
58
+ object[decorated] = true;
59
+ // const prototype = object.constructor.prototype;
60
+ for (let i = 0; i < extensions.length; i++) {
61
+ const key = extensions[i];
62
+ const desc = descriptors[i];
63
+ if (desc) {
64
+ // if (prototype) {
65
+ // const exists = Object.getOwnPropertyDescriptor(prototype, key);
66
+ // if (exists) {
67
+ // continue;
68
+ // }
69
+ // }
70
+ // console.trace("DEFINE", object.name, key);
71
+ Object.defineProperty(object, key, desc);
72
+ }
73
+ }
74
+ }
75
+ //# sourceMappingURL=Object3D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Object3D.js","sourceRoot":"","sources":["../../../../engine-components/js-extensions/Object3D.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ import "./engine/engine_setup";
3
3
  export { GameObject, Behaviour } from "./engine-components/Component";
4
4
  export { serializeable } from "./engine/engine_serialization_decorator";
5
5
  export { Collision } from "./engine/engine_physics";
6
- export * from "./engine-components/codegen/exports";
6
+ export * from "./engine-components/codegen/components";
7
+ export * from "./engine-components/js-extensions/Object3D";