@needle-tools/engine 2.31.0-pre → 2.32.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 (46) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/needle-engine.d.ts +148 -141
  3. package/dist/needle-engine.js +332 -332
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +17 -17
  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/engine_utils.d.ts +9 -7
  21. package/lib/engine/engine_utils.js +35 -2
  22. package/lib/engine/engine_utils.js.map +1 -1
  23. package/lib/engine-components/Component.d.ts +10 -3
  24. package/lib/engine-components/Component.js +98 -40
  25. package/lib/engine-components/Component.js.map +1 -1
  26. package/lib/engine-components/OrbitControls.d.ts +2 -0
  27. package/lib/engine-components/OrbitControls.js +9 -0
  28. package/lib/engine-components/OrbitControls.js.map +1 -1
  29. package/lib/engine-components/Rigidbody.d.ts +12 -6
  30. package/lib/engine-components/Rigidbody.js +64 -17
  31. package/lib/engine-components/Rigidbody.js.map +1 -1
  32. package/lib/engine-components/XRFlag.js.map +1 -1
  33. package/lib/engine-components/ui/Text.js +2 -1
  34. package/lib/engine-components/ui/Text.js.map +1 -1
  35. package/package.json +1 -1
  36. package/src/engine/debug/error_overlay.ts +3 -3
  37. package/src/engine/engine_input.ts +179 -103
  38. package/src/engine/engine_mainloop_utils.ts +6 -2
  39. package/src/engine/engine_physics.ts +86 -24
  40. package/src/engine/engine_setup.ts +8 -3
  41. package/src/engine/engine_utils.ts +50 -4
  42. package/src/engine-components/Component.ts +109 -40
  43. package/src/engine-components/OrbitControls.ts +11 -1
  44. package/src/engine-components/RigidBody.ts +76 -20
  45. package/src/engine-components/XRFlag.ts +0 -2
  46. package/src/engine-components/ui/Text.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"engine_utils.js","sourceRoot":"","sources":["../../../engine/engine_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_utils.js","sourceRoot":"","sources":["../../../engine/engine_utils.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ export declare class InstantiateOptions {
37
37
  }
38
38
  declare abstract class GameObject extends THREE.Object3D implements THREE.Object3D {
39
39
  guid: string | undefined;
40
- static setActive(go: THREE.Object3D, active: boolean): void;
40
+ static setActive(go: THREE.Object3D, active: boolean, processStart?: boolean): void;
41
41
  static isActiveSelf(go: THREE.Object3D): boolean;
42
42
  static isActiveInHierarchy(go: THREE.Object3D): boolean;
43
43
  static markAsInstancedRendered(go: THREE.Object3D, instanced: boolean): void;
@@ -120,7 +120,11 @@ declare class Component implements EventTarget {
120
120
  onAfterRender?(): void;
121
121
  onCollisionEnter?(col: Collision): any;
122
122
  onCollisionExit?(col: Collision): any;
123
+ onCollisionExitRaw?(col: Collision): any;
123
124
  onCollisionStay?(col: Collision): any;
125
+ onTriggerEnter?(col: Collision): any;
126
+ onTriggerStay?(col: Collision): any;
127
+ onTriggerExit?(col: Collision): any;
124
128
  startCoroutine(routine: Generator, evt?: FrameEvent): Generator;
125
129
  stopCoroutine(routine: Generator, evt?: FrameEvent): void;
126
130
  get destroyed(): boolean;
@@ -138,9 +142,12 @@ declare class Component implements EventTarget {
138
142
  constructor();
139
143
  private _collisionExitRoutine;
140
144
  private _collisions;
145
+ private _triggerExitRoutine;
146
+ private _triggerCollisions;
147
+ get collisionsCount(): number;
141
148
  private __internalResetsCachedPhysicsData;
142
- __internalHandleCollision(col: Collision): void;
143
- sendExitCollisionEvent(obj: Object3D): void;
149
+ __internalHandleCollision(col: Collision, isTriggerCollision: boolean): void;
150
+ __internalHandleExitCollisionEvent(obj: Object3D, isTriggerCollision: boolean): void;
144
151
  private __waitForCollisionExit;
145
152
  private static _worldPositionBuffer;
146
153
  private static _worldQuaternionBuffer;
@@ -44,10 +44,13 @@ THREE.Object3D.prototype["SetActive"] = function (active) {
44
44
  };
45
45
  class GameObject extends THREE.Object3D {
46
46
  guid;
47
- static setActive(go, active) {
47
+ static setActive(go, active, processStart = true) {
48
48
  if (!go)
49
49
  return;
50
50
  go.visible = active;
51
+ main.updateActiveInHierarchyWithoutEventCall(go);
52
+ if (active && processStart)
53
+ main.processStart(Context.Current, go);
51
54
  }
52
55
  static isActiveSelf(go) {
53
56
  return go.visible || GameObject.isUsingInstancing(go);
@@ -768,60 +771,115 @@ class Component {
768
771
  this.__didEnable = false;
769
772
  this._collisionExitRoutine = undefined;
770
773
  this.onDisable();
774
+ this._collisions?.clear();
771
775
  }
772
776
  constructor() {
773
777
  this.__internalNewInstanceCreated();
774
778
  }
775
779
  _collisionExitRoutine;
776
780
  _collisions = null;
781
+ _triggerExitRoutine;
782
+ _triggerCollisions = null;
783
+ get collisionsCount() { return this._collisions?.size ?? 0; }
777
784
  __internalResetsCachedPhysicsData() {
778
785
  this._collisionExitRoutine = null;
779
786
  this._collisions = null;
787
+ this._triggerExitRoutine = null;
788
+ this._triggerCollisions = null;
780
789
  }
781
- __internalHandleCollision(col) {
782
- if (this.onCollisionEnter || this.onCollisionExit || this.onCollisionStay) {
783
- const otherObject = col.gameObject;
784
- if (!this._collisions)
785
- this._collisions = new Map();
786
- if (this._collisions.has(otherObject)) {
787
- const cur = this._collisions.get(otherObject);
788
- cur.frame = this.context.time.frameCount;
789
- cur.col = col;
790
+ __internalHandleCollision(col, isTriggerCollision) {
791
+ if (isTriggerCollision) {
792
+ if (!this.onTriggerEnter && !this.onTriggerStay && !this.onTriggerExit)
793
+ return;
794
+ }
795
+ else {
796
+ if (!this.onCollisionEnter && !this.onCollisionStay && !this.onCollisionExit)
797
+ return;
798
+ }
799
+ const otherObject = col.gameObject;
800
+ // lazily create the maps
801
+ if (isTriggerCollision && !this._triggerCollisions)
802
+ this._triggerCollisions = new Map();
803
+ else if (!this._collisions)
804
+ this._collisions = new Map();
805
+ // select the correct map
806
+ const collection = isTriggerCollision ? this._triggerCollisions : this._collisions;
807
+ if (collection.has(otherObject)) {
808
+ const cur = collection.get(otherObject);
809
+ // console.log("STAY", this.name, this.context.time.frameCount)
810
+ // cur.exitFrame = undefined;
811
+ cur.frame = this.context.time.frameCount;
812
+ cur.col = col;
813
+ if (isTriggerCollision)
814
+ this.onTriggerStay?.(col);
815
+ else
790
816
  this.onCollisionStay?.call(this, col);
791
- }
792
- else {
793
- const entry = { col, frame: this.context.time.frameCount };
794
- this._collisions.set(otherObject, entry);
817
+ }
818
+ else {
819
+ // console.log("START", this.name);
820
+ const entry = { col, frame: this.context.time.frameCount };
821
+ collection.set(otherObject, entry);
822
+ if (isTriggerCollision)
823
+ this.onTriggerEnter?.(col);
824
+ else
795
825
  this.onCollisionEnter?.call(this, col);
796
- }
797
826
  }
798
827
  }
799
- sendExitCollisionEvent(obj) {
800
- if (!this._collisions)
801
- return;
802
- const col = this._collisions.get(obj);
803
- if (!col)
828
+ __internalHandleExitCollisionEvent(obj, isTriggerCollision) {
829
+ if (isTriggerCollision) {
830
+ if (!this._triggerCollisions)
831
+ return;
832
+ }
833
+ else {
834
+ if (!this._collisions)
835
+ return;
836
+ }
837
+ const collection = isTriggerCollision ? this._triggerCollisions : this._collisions;
838
+ const collision = collection.get(obj);
839
+ if (!collision)
804
840
  return;
805
- this.onCollisionExit?.call(this, col.col);
806
- this._collisions.delete(obj);
807
- }
808
- __waitForCollisionExit() {
809
- if (this._collisionExitRoutine)
841
+ collision.exitFrame = this.context.time.frameCount;
842
+ // console.log("EXIT col", this.name, this.context.time.frameCount);
843
+ // if (this.onCollisionExit !== undefined)
844
+ this.__waitForCollisionExit(isTriggerCollision);
845
+ if (!isTriggerCollision)
846
+ this.onCollisionExitRaw?.call(this, collision.col);
847
+ // this._collisions.delete(obj);
848
+ }
849
+ __waitForCollisionExit(isTriggerCollision) {
850
+ const routine = isTriggerCollision ? this._triggerExitRoutine : this._collisionExitRoutine;
851
+ if (routine)
810
852
  return;
811
- // const self = this;
812
- // function* routine() {
813
- // while (self._collisions && self._collisions.size > 0) {
814
- // for (let ob of self._collisions.keys()) {
815
- // const entry = self._collisions!.get(ob)!;
816
- // if (self.context.time.frameCount - entry.frame > 1) {
817
- // self._collisions!.delete(ob);
818
- // self.onCollisionExit?.call(self, entry.col);
819
- // }
820
- // }
821
- // yield;
822
- // }
823
- // }
824
- // this._collisionExitRoutine = this.startCoroutine(routine(), FrameEvent.EarlyUpdate);
853
+ const collection = isTriggerCollision ? this._triggerCollisions : this._collisions;
854
+ const self = this;
855
+ const frames = 10;
856
+ function* delayedExitRoutine() {
857
+ while (collection && collection.size > 0) {
858
+ for (let other of collection.keys()) {
859
+ const entry = collection.get(other);
860
+ if (entry.frame !== undefined && self.context.time.frameCount - entry.frame >= frames) {
861
+ // console.log("EXIT real", self.name, entry.col.gameObject.name, collection);
862
+ collection.delete(other);
863
+ if (isTriggerCollision)
864
+ self.onTriggerExit?.(entry.col);
865
+ else
866
+ self.onCollisionExit?.call(self, entry.col);
867
+ }
868
+ }
869
+ for (let i = 0; i < frames; i++)
870
+ yield;
871
+ }
872
+ if (isTriggerCollision)
873
+ self._triggerExitRoutine = undefined;
874
+ else
875
+ self._collisionExitRoutine = null;
876
+ // console.log("DONE", self.name);
877
+ }
878
+ const newRoutine = this.startCoroutine(delayedExitRoutine(), FrameEvent.OnAfterRender);
879
+ if (isTriggerCollision)
880
+ this._triggerExitRoutine = newRoutine;
881
+ else
882
+ this._collisionExitRoutine = newRoutine;
825
883
  }
826
884
  // TODO move this to threeutils
827
885
  // we need a copy for modifying the values to local space
@@ -900,7 +958,7 @@ class Component {
900
958
  }
901
959
  static _forward = new THREE.Vector3(0, 0, 1);
902
960
  get forward() {
903
- return Component._forward.set(0, 0, 1).applyQuaternion(this.worldQuaternion);
961
+ return Component._forward.set(0, 0, -1).applyQuaternion(this.worldQuaternion);
904
962
  }
905
963
  // EventTarget implementation:
906
964
  _eventListeners = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../engine-components/Component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../engine-components/Component.ts"],"names":[],"mappings":"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"}
@@ -30,9 +30,11 @@ export declare class OrbitControls extends Behaviour {
30
30
  private _cameraTargetPosition;
31
31
  private _inputs;
32
32
  private _enableTime;
33
+ private _startedListeningToKeyEvents;
33
34
  awake(): void;
34
35
  onEnable(): void;
35
36
  onDisable(): void;
37
+ onDestroy(): void;
36
38
  start(): void;
37
39
  private startRaycastDelayed;
38
40
  onBeforeRender(): void;
@@ -46,8 +46,10 @@ export class OrbitControls extends Behaviour {
46
46
  _cameraTargetPosition = null;
47
47
  _inputs = 0;
48
48
  _enableTime = 0; // use to disable double click when double clicking on UI
49
+ _startedListeningToKeyEvents = false;
49
50
  awake() {
50
51
  this._lookTargetPosition = new THREE.Vector3();
52
+ this._startedListeningToKeyEvents = false;
51
53
  }
52
54
  onEnable() {
53
55
  this._enableTime = this.context.time.time;
@@ -75,6 +77,10 @@ export class OrbitControls extends Behaviour {
75
77
  }
76
78
  this._controls.dampingFactor = this.dampingFactor;
77
79
  this._controls.enablePan = this.enablePan;
80
+ if (!this._startedListeningToKeyEvents) {
81
+ this._startedListeningToKeyEvents = true;
82
+ this._controls.listenToKeyEvents(window.document.body);
83
+ }
78
84
  }
79
85
  }
80
86
  onDisable() {
@@ -84,6 +90,9 @@ export class OrbitControls extends Behaviour {
84
90
  // this._controls.reset();
85
91
  }
86
92
  }
93
+ onDestroy() {
94
+ this._controls?.dispose();
95
+ }
87
96
  start() {
88
97
  if (this._controls) {
89
98
  const camGo = GameObject.getComponent(this.gameObject, Camera);
@@ -1 +1 @@
1
- {"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../../engine-components/OrbitControls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../../engine-components/OrbitControls.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { Behaviour } from "./Component";
2
2
  import * as CANNON from 'cannon-es';
3
3
  import * as THREE from 'three';
4
+ import { Vector3 } from "three";
4
5
  export declare class Rigidbody extends Behaviour {
5
6
  mass: number;
6
7
  set isKinematic(kinematic: boolean);
@@ -16,20 +17,25 @@ export declare class Rigidbody extends Behaviour {
16
17
  private currentVelocity;
17
18
  private _smoothedVelocity;
18
19
  private lastWorldPosition;
19
- private dirty;
20
- private transformProxy?;
20
+ private _ignoreChange;
21
+ private _dirty;
22
+ private _positionWatch?;
23
+ private _matrixWatch?;
24
+ private _setMatrix;
25
+ constructor();
21
26
  awake(): void;
22
- start(): void;
23
27
  onEnable(): void;
24
28
  onDisable(): void;
25
29
  onDestroy(): void;
26
- earlyUpdate(): void;
27
30
  onBeforeRender(): void;
28
31
  initialize(): void;
29
32
  wakeUp(): void;
30
- applyForce(vec: THREE.Vector3, rel: THREE.Vector3 | undefined): void;
33
+ applyForce(vec: THREE.Vector3, rel?: THREE.Vector3): void;
34
+ setForce(x: number, y: number, z: number): void;
31
35
  getVelocity(): THREE.Vector3;
32
- setVelocity(x: number, y: number, z: number): void;
36
+ setVelocity(x: number | Vector3, y: number, z: number): void;
37
+ getTorque(): THREE.Vector3;
38
+ setTorque(x: number | Vector3, y: number, z: number): void;
33
39
  get smoothedVelocity(): THREE.Vector3;
34
40
  setAngularVelocity(x: number, y: number, z: number): void;
35
41
  private static copyVector3;