@needle-tools/engine 2.36.0-pre → 2.37.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 (102) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/needle-engine.d.ts +171 -141
  3. package/dist/needle-engine.js +451 -437
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +82 -82
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/api.d.ts +1 -0
  8. package/lib/engine/api.js +1 -0
  9. package/lib/engine/api.js.map +1 -1
  10. package/lib/engine/debug/debug.d.ts +1 -0
  11. package/lib/engine/debug/debug.js +3 -0
  12. package/lib/engine/debug/debug.js.map +1 -1
  13. package/lib/engine/engine_gameobject.js +2 -1
  14. package/lib/engine/engine_gameobject.js.map +1 -1
  15. package/lib/engine/engine_physics.d.ts +33 -42
  16. package/lib/engine/engine_physics.js +431 -383
  17. package/lib/engine/engine_physics.js.map +1 -1
  18. package/lib/engine/engine_physics.types.d.ts +16 -0
  19. package/lib/engine/engine_physics.types.js +19 -0
  20. package/lib/engine/engine_physics.types.js.map +1 -0
  21. package/lib/engine/engine_serialization_core.d.ts +3 -0
  22. package/lib/engine/engine_serialization_core.js +5 -0
  23. package/lib/engine/engine_serialization_core.js.map +1 -1
  24. package/lib/engine/engine_setup.js +3 -1
  25. package/lib/engine/engine_setup.js.map +1 -1
  26. package/lib/engine/engine_types.d.ts +45 -26
  27. package/lib/engine/engine_types.js +24 -37
  28. package/lib/engine/engine_types.js.map +1 -1
  29. package/lib/engine/engine_util_decorator.d.ts +6 -0
  30. package/lib/engine/engine_util_decorator.js +54 -0
  31. package/lib/engine/engine_util_decorator.js.map +1 -0
  32. package/lib/engine/engine_utils.d.ts +1 -1
  33. package/lib/engine/engine_utils.js +1 -1
  34. package/lib/engine/engine_utils.js.map +1 -1
  35. package/lib/engine/extensions/NEEDLE_gameobject_data.js +2 -0
  36. package/lib/engine/extensions/NEEDLE_gameobject_data.js.map +1 -1
  37. package/lib/engine-components/Animation.d.ts +6 -5
  38. package/lib/engine-components/Animation.js +0 -7
  39. package/lib/engine-components/Animation.js.map +1 -1
  40. package/lib/engine-components/BoxHelperComponent.js +1 -0
  41. package/lib/engine-components/BoxHelperComponent.js.map +1 -1
  42. package/lib/engine-components/Collider.d.ts +7 -2
  43. package/lib/engine-components/Collider.js +27 -15
  44. package/lib/engine-components/Collider.js.map +1 -1
  45. package/lib/engine-components/Component.d.ts +6 -15
  46. package/lib/engine-components/Component.js +7 -112
  47. package/lib/engine-components/Component.js.map +1 -1
  48. package/lib/engine-components/DragControls.js +9 -6
  49. package/lib/engine-components/DragControls.js.map +1 -1
  50. package/lib/engine-components/NavMesh.d.ts +0 -5
  51. package/lib/engine-components/NavMesh.js +100 -10
  52. package/lib/engine-components/NavMesh.js.map +1 -1
  53. package/lib/engine-components/NestedGltf.js +2 -0
  54. package/lib/engine-components/NestedGltf.js.map +1 -1
  55. package/lib/engine-components/RigidBody.d.ts +40 -25
  56. package/lib/engine-components/RigidBody.js +253 -142
  57. package/lib/engine-components/RigidBody.js.map +1 -1
  58. package/lib/engine-components/SpatialTrigger.js +1 -1
  59. package/lib/engine-components/SpatialTrigger.js.map +1 -1
  60. package/lib/engine-components/SpectatorCamera.d.ts +1 -0
  61. package/lib/engine-components/SpectatorCamera.js +9 -2
  62. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  63. package/lib/engine-components/SpringJoint.d.ts +0 -13
  64. package/lib/engine-components/SpringJoint.js +42 -41
  65. package/lib/engine-components/SpringJoint.js.map +1 -1
  66. package/lib/engine-components/VideoPlayer.js.map +1 -1
  67. package/lib/engine-components/WebXR.d.ts +1 -0
  68. package/lib/engine-components/WebXR.js +10 -2
  69. package/lib/engine-components/WebXR.js.map +1 -1
  70. package/lib/engine-components/WebXRController.js +12 -6
  71. package/lib/engine-components/WebXRController.js.map +1 -1
  72. package/lib/engine-components/codegen/components.d.ts +1 -3
  73. package/lib/engine-components/codegen/components.js +1 -3
  74. package/lib/engine-components/codegen/components.js.map +1 -1
  75. package/package.json +3 -4
  76. package/src/engine/api.ts +2 -1
  77. package/src/engine/codegen/register_types.js +4 -12
  78. package/src/engine/debug/debug.ts +4 -0
  79. package/src/engine/engine_gameobject.ts +4 -4
  80. package/src/engine/engine_physics.ts +460 -421
  81. package/src/engine/engine_physics.types.ts +19 -0
  82. package/src/engine/engine_serialization_core.ts +8 -1
  83. package/src/engine/engine_setup.ts +5 -1
  84. package/src/engine/engine_types.ts +82 -56
  85. package/src/engine/engine_util_decorator.ts +69 -0
  86. package/src/engine/engine_utils.ts +3 -3
  87. package/src/engine/extensions/NEEDLE_gameobject_data.ts +2 -0
  88. package/src/engine-components/Animation.ts +10 -12
  89. package/src/engine-components/BoxHelperComponent.ts +1 -0
  90. package/src/engine-components/Collider.ts +29 -29
  91. package/src/engine-components/Component.ts +15 -130
  92. package/src/engine-components/DragControls.ts +9 -5
  93. package/src/engine-components/NavMesh.ts +114 -115
  94. package/src/engine-components/NestedGltf.ts +2 -0
  95. package/src/engine-components/RigidBody.ts +258 -149
  96. package/src/engine-components/SpatialTrigger.ts +1 -1
  97. package/src/engine-components/SpectatorCamera.ts +10 -2
  98. package/src/engine-components/SpringJoint.ts +41 -41
  99. package/src/engine-components/VideoPlayer.ts +1 -2
  100. package/src/engine-components/WebXR.ts +12 -2
  101. package/src/engine-components/WebXRController.ts +16 -7
  102. package/src/engine-components/codegen/components.ts +1 -3
@@ -192,7 +192,7 @@ export class DragControls extends Interactable {
192
192
  this._dragHelper.onUpdate(this.context);
193
193
  for (const rb of this._draggingRigidbodies) {
194
194
  rb.wakeUp();
195
- rb.setBodyFromGameObject();
195
+ rb.resetVelocities();
196
196
  }
197
197
  }
198
198
  onDragEnd(evt) {
@@ -201,6 +201,9 @@ export class DragControls extends Interactable {
201
201
  this._isDragging = false;
202
202
  if (!this._dragHelper)
203
203
  return;
204
+ for (const rb of this._draggingRigidbodies) {
205
+ rb.setVelocity(rb.smoothedVelocity);
206
+ }
204
207
  this._draggingRigidbodies.length = 0;
205
208
  const selected = this._dragHelper.selected;
206
209
  if (debug)
@@ -274,9 +277,8 @@ class DragHelper {
274
277
  if (this._selected && context) {
275
278
  for (const rb of this._rbs) {
276
279
  rb.wakeUp();
277
- if (!rb.smoothedVelocity)
278
- continue;
279
- rb.setVelocity(rb.smoothedVelocity.x, rb.smoothedVelocity.y, rb.smoothedVelocity.z);
280
+ // if (!rb.smoothedVelocity) continue;
281
+ rb.setVelocity(0, 0, 0);
280
282
  }
281
283
  }
282
284
  if (this._selected) {
@@ -303,7 +305,7 @@ class DragHelper {
303
305
  this._hasGroundPlane = true;
304
306
  this._groundOffset.set(0, 0, 0);
305
307
  this._requireUpdateGroundPlane = true;
306
- this._rbs = GameObject.getComponentsInChildren(this._selected, Rigidbody);
308
+ // this._rbs = GameObject.getComponentsInChildren(this._selected, Rigidbody);
307
309
  this.onUpdateScreenSpacePlane();
308
310
  }
309
311
  }
@@ -451,7 +453,8 @@ class DragHelper {
451
453
  InstancingUtil.markDirty(this._selected);
452
454
  for (const rb of this._rbs) {
453
455
  rb.wakeUp();
454
- rb.setBodyFromGameObject({ x: 0, y: 0, z: 0 });
456
+ rb.resetForcesAndTorques();
457
+ // rb.setBodyFromGameObject({ x: 0, y: 0, z: 0 });
455
458
  rb.setAngularVelocity(0, 0, 0);
456
459
  }
457
460
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DragControls.js","sourceRoot":"","sources":["../../../engine-components/DragControls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DragControls.js","sourceRoot":"","sources":["../../../engine-components/DragControls.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { Behaviour } from "./Component";
2
- export declare class NavMesh extends Behaviour {
3
- }
4
- export declare class NavMeshAgent extends Behaviour {
5
- }
@@ -1,11 +1,101 @@
1
- import { Behaviour } from "./Component";
2
- /*
3
- import { Pathfinding, PathfindingHelper } from 'three-pathfinding';
4
- import * as THREE from 'three';
5
- import { mergeBufferGeometries } from 'three/examples/jsm/utils/BufferGeometryUtils'
6
- */
7
- export class NavMesh extends Behaviour {
8
- }
9
- export class NavMeshAgent extends Behaviour {
10
- }
1
+ "use strict";
2
+ // import { Behaviour, GameObject } from "./Component";
3
+ // /*
4
+ // import { Pathfinding, PathfindingHelper } from 'three-pathfinding';
5
+ // import * as THREE from 'three';
6
+ // import { mergeBufferGeometries } from 'three/examples/jsm/utils/BufferGeometryUtils'
7
+ // */
8
+ // export class NavMesh extends Behaviour {
9
+ // /*
10
+ // public meshes: THREE.Object3D[] = [];
11
+ // private pathfinding: Pathfinding | null = null;
12
+ // private zones: string[] = [];
13
+ // onEnable(): void {
14
+ // this.pathfinding = new Pathfinding();
15
+ // const ZONE = 'zone';
16
+ // const geometries : THREE.BufferGeometry[] = [];
17
+ // if (this.meshes && this.meshes.length > 0) {
18
+ // for (let i = 0; i < this.meshes.length; i++) {
19
+ // const obj = this.meshes[i] as THREE.Mesh;
20
+ // if (!obj) continue;
21
+ // const geo = obj.geometry;
22
+ // if (!geo) continue;
23
+ // const copy : THREE.BufferGeometry = {...geo};
24
+ // // const copy = geo;
25
+ // const attributesCopy = {...copy.attributes};
26
+ // copy.attributes = attributesCopy;
27
+ // if(attributesCopy.uv2) delete attributesCopy.uv2;
28
+ // // copy.applyMatrix4(obj.matrixWorld);
29
+ // geometries.push(copy);
30
+ // // obj.updateMatrixWorld();
31
+ // // singleGeometry.merge(geo);
32
+ // // console.log(singleGeometry, geo);
33
+ // }
34
+ // }
35
+ // const mesh = mergeBufferGeometries(geometries);
36
+ // const zone = Pathfinding.createZone(mesh);
37
+ // const name = ZONE;
38
+ // this.zones.push(name);
39
+ // this.pathfinding.setZoneData(name, zone);
40
+ // // const target = new THREE.Vector3(2, 0, 2);
41
+ // // const groupID = this.pathfinding.getGroup(ZONE, target);
42
+ // // const path = this.pathfinding.findPath(this.worldPosition, target, ZONE, groupID);
43
+ // // console.log(path, this.pathfinding);
44
+ // }
45
+ // public tryFindPath(from: THREE.Vector3, to: THREE.Vector3): THREE.Vector3[] | null {
46
+ // const zone = this.zones[0];
47
+ // const groupId = this.pathfinding.getGroup(zone, to);
48
+ // const path = this.pathfinding.findPath(from, to, zone, groupId);
49
+ // return path;
50
+ // }
51
+ // */
52
+ // }
53
+ // // import { input } from "../engine/engine_input";
54
+ // import { Physics, RaycastOptions } from "../engine/engine_physics"
55
+ // // import { time } from "../engine/engine_time";
56
+ // // import { scene } from "../engine/engine_setup";
57
+ // import {SyncedTransform} from "./SyncedTransform";
58
+ // export class NavMeshAgent extends Behaviour {
59
+ // /*
60
+ // public navMesh: NavMesh | null = null;
61
+ // private currentPath: THREE.Vector3[] | null = null;
62
+ // private helper : PathfindingHelper | null = null;
63
+ // onEnable(): void {
64
+ // this.helper = new PathfindingHelper();
65
+ // scene.add(this.helper);
66
+ // }
67
+ // update(): void {
68
+ // if (input.mouseClick) {
69
+ // if (this.navMesh) {
70
+ // const from = this.worldPosition;
71
+ // const opts = new RaycastOptions();
72
+ // opts.setMask(RaycastOptions.AllLayers);
73
+ // const hits = Physics.raycast(opts);
74
+ // if (hits.length > 0) {
75
+ // const to = hits[0].point;
76
+ // this.helper.setPlayerPosition(from);
77
+ // this.helper.setTargetPosition(to);
78
+ // this.currentPath = this.navMesh.tryFindPath(from, to);
79
+ // this.helper.setPath(this.currentPath);
80
+ // // console.log(...this.currentPath);
81
+ // const sync = GameObject.getComponent(this.gameObject, SyncedTransform);
82
+ // if(sync) sync.requestOwnership();
83
+ // }
84
+ // }
85
+ // }
86
+ // if (this.currentPath && this.currentPath.length > 0) {
87
+ // const wp = this.worldPosition;
88
+ // const target = this.currentPath[0];
89
+ // this.worldPosition = wp.lerp(target, time.deltaTime*2);
90
+ // this.gameObject.lookAt(target);
91
+ // // const vec = target.clone().sub(wp);
92
+ // // const wr = this.worldQuaternion;
93
+ // // wr.slerp(rot, time.deltaTime*5);
94
+ // // this.worldQuaternion = wr;
95
+ // if (wp.distanceTo(this.currentPath[0]) < 0.1)
96
+ // this.currentPath.shift();
97
+ // }
98
+ // }
99
+ // */
100
+ // }
11
101
  //# sourceMappingURL=NavMesh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavMesh.js","sourceRoot":"","sources":["../../../engine-components/NavMesh.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAc,MAAM,aAAa,CAAC;AACpD;;;;EAIE;AACF,MAAM,OAAO,OAAQ,SAAQ,SAAS;CAiDrC;AASD,MAAM,OAAO,YAAa,SAAQ,SAAS;CAoD1C"}
1
+ {"version":3,"file":"NavMesh.js","sourceRoot":"","sources":["../../../engine-components/NavMesh.ts"],"names":[],"mappings":";AACA,uDAAuD;AACvD,KAAK;AACL,sEAAsE;AACtE,kCAAkC;AAClC,uFAAuF;AACvF,KAAK;AACL,2CAA2C;AAC3C,KAAK;AACL,4CAA4C;AAE5C,sDAAsD;AACtD,oCAAoC;AAEpC,yBAAyB;AAEzB,gDAAgD;AAChD,+BAA+B;AAC/B,0DAA0D;AAC1D,uDAAuD;AACvD,6DAA6D;AAC7D,4DAA4D;AAC5D,sCAAsC;AACtC,4CAA4C;AAC5C,sCAAsC;AACtC,gEAAgE;AAChE,uCAAuC;AACvC,+DAA+D;AAC/D,oDAAoD;AACpD,oEAAoE;AACpE,yDAAyD;AACzD,yCAAyC;AACzC,8CAA8C;AAC9C,gDAAgD;AAChD,uDAAuD;AACvD,gBAAgB;AAChB,YAAY;AACZ,0DAA0D;AAC1D,qDAAqD;AACrD,6BAA6B;AAC7B,iCAAiC;AACjC,oDAAoD;AAEpD,wDAAwD;AACxD,sEAAsE;AACtE,gGAAgG;AAChG,kDAAkD;AAClD,QAAQ;AAER,2FAA2F;AAC3F,sCAAsC;AACtC,+DAA+D;AAC/D,2EAA2E;AAC3E,uBAAuB;AACvB,QAAQ;AACR,SAAS;AACT,IAAI;AAEJ,qDAAqD;AACrD,qEAAqE;AACrE,mDAAmD;AACnD,qDAAqD;AACrD,qDAAqD;AAErD,gDAAgD;AAChD,SAAS;AACT,6CAA6C;AAE7C,0DAA0D;AAC1D,wDAAwD;AAExD,yBAAyB;AACzB,iDAAiD;AACjD,kCAAkC;AAClC,QAAQ;AAER,uBAAuB;AACvB,kCAAkC;AAClC,kCAAkC;AAClC,mDAAmD;AACnD,qDAAqD;AACrD,0DAA0D;AAC1D,sDAAsD;AACtD,yCAAyC;AACzC,gDAAgD;AAChD,2DAA2D;AAC3D,yDAAyD;AACzD,6EAA6E;AAC7E,6DAA6D;AAC7D,2DAA2D;AAE3D,8FAA8F;AAC9F,wDAAwD;AACxD,oBAAoB;AACpB,gBAAgB;AAChB,YAAY;AAEZ,iEAAiE;AAEjE,6CAA6C;AAC7C,kDAAkD;AAClD,sEAAsE;AAEtE,8CAA8C;AAC9C,qDAAqD;AACrD,kDAAkD;AAClD,kDAAkD;AAClD,4CAA4C;AAE5C,4DAA4D;AAC5D,4CAA4C;AAG5C,YAAY;AACZ,QAAQ;AACR,SAAS;AACT,IAAI"}
@@ -42,6 +42,8 @@ export class NestedGltf extends Behaviour {
42
42
  res.matrix.identity();
43
43
  res.applyMatrix4(matrix);
44
44
  res.matrixAutoUpdate = true;
45
+ res.layers.disableAll();
46
+ res.layers.set(this.layer);
45
47
  }
46
48
  this.destroy();
47
49
  if (debug)
@@ -1 +1 @@
1
- {"version":3,"file":"NestedGltf.js","sourceRoot":"","sources":["../../../engine-components/NestedGltf.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAoB,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAE1C,MAAM,OAAO,UAAW,SAAQ,SAAS;IAErC,QAAQ,CAAkB;IAElB,uBAAuB,GAAY,KAAK,CAAC;IAEjD,gBAAgB,CAAC,GAAqB;QAClC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO;QACH,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,KAAK;QACP,IAAI,IAAI,CAAC,uBAAuB;YAAE,OAAO;QACzC,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,IAAI,MAAM,EAAE;YACR,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YACpC,MAAM,IAAI,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACtC,4DAA4D;YAC5D,IAAI,CAAC,UAAU,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACtC,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YACrG,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACxE,IAAI,GAAG,EAAE;gBACL,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC7B,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACtB,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACzB,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC;aAC/B;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;SAC5F;IACL,CAAC;IAED,IAAI,CAAC,GAAW;QACZ,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;SACnD;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA7CG;IADC,aAAa,CAAC,cAAc,CAAC;4CACJ"}
1
+ {"version":3,"file":"NestedGltf.js","sourceRoot":"","sources":["../../../engine-components/NestedGltf.ts"],"names":[],"mappings":"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"}
@@ -1,49 +1,64 @@
1
1
  import { Behaviour } from "./Component";
2
- import * as CANNON from 'cannon-es';
3
2
  import * as THREE from 'three';
4
3
  import { Vector3 } from "three";
5
4
  import { IRigidbody } from "../engine/engine_types";
5
+ import { CollisionDetectionMode, RigidbodyConstraints } from "../engine/engine_physics.types";
6
6
  export declare class Rigidbody extends Behaviour implements IRigidbody {
7
7
  mass: number;
8
- set isKinematic(kinematic: boolean);
9
- get isKinematic(): boolean;
10
- private _isKinematic;
8
+ useGravity: boolean;
9
+ constraints: RigidbodyConstraints;
10
+ isKinematic: boolean;
11
11
  drag: number;
12
12
  angularDrag: number;
13
13
  detectCollisions: boolean;
14
14
  sleepThreshold: number;
15
- get body(): CANNON.Body | null;
15
+ collisionDetectionMode: CollisionDetectionMode;
16
+ get lockPositionX(): boolean;
17
+ get lockPositionY(): boolean;
18
+ get lockPositionZ(): boolean;
19
+ get lockRotationX(): boolean;
20
+ get lockRotationY(): boolean;
21
+ get lockRotationZ(): boolean;
22
+ set lockPositionX(v: boolean);
23
+ set lockPositionY(v: boolean);
24
+ set lockPositionZ(v: boolean);
25
+ set lockRotationX(v: boolean);
26
+ set lockRotationY(v: boolean);
27
+ set lockRotationZ(v: boolean);
28
+ private _propertiesChanged;
16
29
  private static tempPosition;
17
- private _body;
18
- private currentVelocity;
30
+ private _currentVelocity;
19
31
  private _smoothedVelocity;
20
- private lastWorldPosition;
21
- private _ignoreChange;
22
- private _dirty;
23
- private _positionWatch?;
24
- private _matrixWatch?;
25
- private _setMatrix;
26
- constructor();
32
+ private _smoothedVelocityGetter;
33
+ private _lastPosition;
34
+ private _watch?;
27
35
  awake(): void;
28
36
  onEnable(): void;
29
37
  onDisable(): void;
30
38
  onDestroy(): void;
31
- onBeforeRender(): void;
32
- initialize(): void;
39
+ onValidate(): void;
40
+ earlyUpdate(): void;
41
+ private get body();
42
+ resetForces(): void;
43
+ resetTorques(): void;
44
+ resetVelocities(): void;
45
+ resetForcesAndTorques(): void;
33
46
  wakeUp(): void;
34
- applyForce(vec: THREE.Vector3, rel?: THREE.Vector3): void;
47
+ applyForce(vec: Vector3, _rel?: THREE.Vector3): void;
48
+ applyImpulse(vec: Vector3): void;
35
49
  setForce(x: number, y: number, z: number): void;
36
- getVelocity(): THREE.Vector3;
37
- setVelocity(x: number | Vector3, y: number, z: number): void;
38
- getTorque(): THREE.Vector3;
50
+ getVelocity(): Vector3;
51
+ setVelocity(x: number | Vector3, y?: number, z?: number): void;
52
+ setAngularVelocity(x: number | Vector3, y?: number, z?: number): void;
39
53
  setTorque(x: number | Vector3, y: number, z: number): void;
40
- get smoothedVelocity(): THREE.Vector3;
41
- setAngularVelocity(x: number, y: number, z: number): void;
42
- private static copyVector3;
43
- setBodyFromGameObject(velocity?: THREE.Vector3 | null | {
54
+ get smoothedVelocity(): Vector3;
55
+ /**d
56
+ * @deprecated not used anymore
57
+ */
58
+ setBodyFromGameObject(_velocity?: THREE.Vector3 | null | {
44
59
  x: number;
45
60
  y: number;
46
61
  z: number;
47
62
  }): void;
48
- private updateVelocity;
63
+ private captureVelocity;
49
64
  }