@galacean/engine-physics-lite 1.4.0-alpha.1 → 1.4.0-alpha.3

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.
@@ -1,5 +1,5 @@
1
1
  import { Ray, Vector3 } from "@galacean/engine";
2
- import { ICharacterController, IPhysicsScene } from "@galacean/engine-design";
2
+ import { ICharacterController, ICollision, IPhysicsScene } from "@galacean/engine-design";
3
3
  import { LiteCollider } from "./LiteCollider";
4
4
  /**
5
5
  * A manager is a collection of colliders and constraints which can interact.
@@ -22,7 +22,7 @@ export declare class LitePhysicsScene implements IPhysicsScene {
22
22
  private _currentEvents;
23
23
  private _eventMap;
24
24
  private _eventPool;
25
- constructor(onContactEnter?: (obj1: number, obj2: number) => void, onContactExit?: (obj1: number, obj2: number) => void, onContactStay?: (obj1: number, obj2: number) => void, onTriggerEnter?: (obj1: number, obj2: number) => void, onTriggerExit?: (obj1: number, obj2: number) => void, onTriggerStay?: (obj1: number, obj2: number) => void);
25
+ constructor(onContactEnter?: (collision: ICollision) => void, onContactExit?: (collision: ICollision) => void, onContactStay?: (collision: ICollision) => void, onTriggerEnter?: (obj1: number, obj2: number) => void, onTriggerExit?: (obj1: number, obj2: number) => void, onTriggerStay?: (obj1: number, obj2: number) => void);
26
26
  /**
27
27
  * {@inheritDoc IPhysicsManager.setGravity }
28
28
  */
@@ -1,4 +1,4 @@
1
- import { Vector3 } from "@galacean/engine";
1
+ import { Vector3, Vector4 } from "@galacean/engine";
2
2
  import { IBoxColliderShape } from "@galacean/engine-design";
3
3
  import { LitePhysicsMaterial } from "../LitePhysicsMaterial";
4
4
  import { LiteColliderShape } from "./LiteColliderShape";
@@ -7,6 +7,8 @@ import { LiteColliderShape } from "./LiteColliderShape";
7
7
  */
8
8
  export declare class LiteBoxColliderShape extends LiteColliderShape implements IBoxColliderShape {
9
9
  private static _tempBox;
10
+ private static _tempMatrix;
11
+ private static _tempInvMatrix;
10
12
  private _halfSize;
11
13
  private _sizeScale;
12
14
  /**
@@ -28,5 +30,9 @@ export declare class LiteBoxColliderShape extends LiteColliderShape implements I
28
30
  * {@inheritDoc IBoxColliderShape.setSize }
29
31
  */
30
32
  setSize(value: Vector3): void;
33
+ /**
34
+ * {@inheritDoc IColliderShape.pointDistance }
35
+ */
36
+ pointDistance(point: Vector3): Vector4;
31
37
  private _setBondingBox;
32
38
  }
@@ -1,12 +1,17 @@
1
- import { Ray, Vector3 } from "@galacean/engine";
1
+ import { Quaternion, Ray, Vector3, Vector4 } from "@galacean/engine";
2
2
  import { IColliderShape, IPhysicsMaterial } from "@galacean/engine-design";
3
3
  import { LiteHitResult } from "../LiteHitResult";
4
4
  /**
5
5
  * Abstract class for collider shapes.
6
6
  */
7
7
  export declare abstract class LiteColliderShape implements IColliderShape {
8
+ protected static _tempPos: Vector3;
9
+ protected static _tempRot: Quaternion;
10
+ protected static _tempScale: Vector3;
11
+ protected static _tempPoint: Vector3;
12
+ protected static _tempVector4: Vector4;
8
13
  private static _ray;
9
- private static _tempPoint;
14
+ private _rotation;
10
15
  protected constructor();
11
16
  /**
12
17
  * {@inheritDoc IColliderShape.setRotation }
@@ -36,6 +41,10 @@ export declare abstract class LiteColliderShape implements IColliderShape {
36
41
  * {@inheritDoc IColliderShape.setIsTrigger }
37
42
  */
38
43
  setIsTrigger(value: boolean): void;
44
+ /**
45
+ * {@inheritDoc IColliderShape.pointDistance }
46
+ */
47
+ abstract pointDistance(point: Vector3): Vector4;
39
48
  /**
40
49
  * {@inheritDoc IColliderShape.destroy }
41
50
  */
@@ -1,6 +1,6 @@
1
1
  import { ISphereColliderShape } from "@galacean/engine-design";
2
2
  import { LiteColliderShape } from "./LiteColliderShape";
3
- import { Vector3 } from "@galacean/engine";
3
+ import { Vector3, Vector4 } from "@galacean/engine";
4
4
  import { LitePhysicsMaterial } from "../LitePhysicsMaterial";
5
5
  /**
6
6
  * Sphere collider shape in Lite.
@@ -25,4 +25,8 @@ export declare class LiteSphereColliderShape extends LiteColliderShape implement
25
25
  * {@inheritDoc IColliderShape.setWorldScale }
26
26
  */
27
27
  setWorldScale(scale: Vector3): void;
28
+ /**
29
+ * {@inheritDoc IColliderShape.pointDistance }
30
+ */
31
+ pointDistance(point: Vector3): Vector4;
28
32
  }