@aura3d/physics 1.5.2 → 2.0.0
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/dist/ArcadeCharacterController.d.ts +53 -0
- package/dist/ArcadeCharacterController.d.ts.map +1 -0
- package/dist/ArcadeCharacterController.js +98 -0
- package/dist/ArcadeCharacterController.js.map +1 -0
- package/dist/ArcadeVehicleTelemetry.d.ts +162 -0
- package/dist/ArcadeVehicleTelemetry.d.ts.map +1 -0
- package/dist/ArcadeVehicleTelemetry.js +363 -0
- package/dist/ArcadeVehicleTelemetry.js.map +1 -0
- package/dist/CharacterController.d.ts +52 -0
- package/dist/CharacterController.d.ts.map +1 -1
- package/dist/CharacterController.js +380 -7
- package/dist/CharacterController.js.map +1 -1
- package/dist/Constraint.d.ts +20 -4
- package/dist/Constraint.d.ts.map +1 -1
- package/dist/Constraint.js +34 -60
- package/dist/Constraint.js.map +1 -1
- package/dist/FightingCharacterController.d.ts +32 -0
- package/dist/FightingCharacterController.d.ts.map +1 -0
- package/dist/FightingCharacterController.js +76 -0
- package/dist/FightingCharacterController.js.map +1 -0
- package/dist/MeshBVH.d.ts +72 -0
- package/dist/MeshBVH.d.ts.map +1 -0
- package/dist/MeshBVH.js +244 -0
- package/dist/MeshBVH.js.map +1 -0
- package/dist/PathFollowDriver.d.ts +162 -0
- package/dist/PathFollowDriver.d.ts.map +1 -0
- package/dist/PathFollowDriver.js +163 -0
- package/dist/PathFollowDriver.js.map +1 -0
- package/dist/PhysicsDebugDraw.d.ts +40 -1
- package/dist/PhysicsDebugDraw.d.ts.map +1 -1
- package/dist/PhysicsDebugDraw.js +87 -17
- package/dist/PhysicsDebugDraw.js.map +1 -1
- package/dist/PhysicsWorld.d.ts +37 -18
- package/dist/PhysicsWorld.d.ts.map +1 -1
- package/dist/PhysicsWorld.js +231 -630
- package/dist/PhysicsWorld.js.map +1 -1
- package/dist/RacingLineProfile.d.ts +116 -0
- package/dist/RacingLineProfile.d.ts.map +1 -0
- package/dist/RacingLineProfile.js +181 -0
- package/dist/RacingLineProfile.js.map +1 -0
- package/dist/Raycast.d.ts +11 -0
- package/dist/Raycast.d.ts.map +1 -1
- package/dist/Raycast.js +62 -8
- package/dist/Raycast.js.map +1 -1
- package/dist/RigidBody.d.ts +16 -9
- package/dist/RigidBody.d.ts.map +1 -1
- package/dist/RigidBody.js +23 -75
- package/dist/RigidBody.js.map +1 -1
- package/dist/SurfaceQuery.d.ts +72 -0
- package/dist/SurfaceQuery.d.ts.map +1 -0
- package/dist/SurfaceQuery.js +89 -0
- package/dist/SurfaceQuery.js.map +1 -0
- package/dist/VehicleDynamics.d.ts +10 -0
- package/dist/VehicleDynamics.d.ts.map +1 -1
- package/dist/VehicleDynamics.js +31 -3
- package/dist/VehicleDynamics.js.map +1 -1
- package/dist/VehicleMotion.d.ts +125 -0
- package/dist/VehicleMotion.d.ts.map +1 -0
- package/dist/VehicleMotion.js +373 -0
- package/dist/VehicleMotion.js.map +1 -0
- package/dist/index.d.ts +62 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +70 -17
- package/dist/index.js.map +1 -1
- package/dist/solverless-entry.d.ts +41 -0
- package/dist/solverless-entry.d.ts.map +1 -0
- package/dist/solverless-entry.js +40 -0
- package/dist/solverless-entry.js.map +1 -0
- package/dist/solverless.d.ts +37 -0
- package/dist/solverless.d.ts.map +1 -0
- package/dist/solverless.js +36 -0
- package/dist/solverless.js.map +1 -0
- package/dist/world-entry.d.ts +31 -0
- package/dist/world-entry.d.ts.map +1 -0
- package/dist/world-entry.js +30 -0
- package/dist/world-entry.js.map +1 -0
- package/dist/world.d.ts +18 -0
- package/dist/world.d.ts.map +1 -0
- package/dist/world.js +17 -0
- package/dist/world.js.map +1 -0
- package/package.json +10 -2
package/dist/PhysicsWorld.d.ts
CHANGED
|
@@ -7,11 +7,11 @@ import { type Vec3 } from "./Shape.js";
|
|
|
7
7
|
export type PhysicsContinuousCollisionDescriptor = {
|
|
8
8
|
/**
|
|
9
9
|
* Bounds the travel of every moving collider by splitting a requested step.
|
|
10
|
-
* The wrapper
|
|
10
|
+
* The wrapper bounds motion in addition to Rapier's native CCD.
|
|
11
11
|
*/
|
|
12
12
|
readonly mode: "adaptive-substeps";
|
|
13
13
|
/**
|
|
14
|
-
* Maximum internal
|
|
14
|
+
* Maximum internal Rapier steps allowed for one public `step()` call.
|
|
15
15
|
* The default overflow policy throws rather than silently losing the CCD
|
|
16
16
|
* guarantee.
|
|
17
17
|
*/
|
|
@@ -26,7 +26,7 @@ export type PhysicsContinuousCollisionDescriptor = {
|
|
|
26
26
|
export type PhysicsContinuousCollisionSelection = {
|
|
27
27
|
readonly active: boolean;
|
|
28
28
|
readonly mode: "disabled" | "adaptive-substeps";
|
|
29
|
-
readonly provider: "none" | "
|
|
29
|
+
readonly provider: "none" | "rapier-native-ccd+adaptive-substeps";
|
|
30
30
|
readonly maxSubSteps: number;
|
|
31
31
|
readonly motionThreshold: number;
|
|
32
32
|
readonly onSubstepLimit: "error" | "clamp";
|
|
@@ -43,18 +43,32 @@ export type PhysicsWorldDescriptor = {
|
|
|
43
43
|
readonly fixedDelta?: number;
|
|
44
44
|
readonly solverIterations?: number;
|
|
45
45
|
readonly enableSleeping?: boolean;
|
|
46
|
+
/** @deprecated Rapier owns its native sleep thresholds. Retained for source compatibility. */
|
|
46
47
|
readonly sleepVelocityThreshold?: number;
|
|
48
|
+
/** @deprecated Rapier owns its native sleep delay. Retained for source compatibility. */
|
|
47
49
|
readonly sleepDelay?: number;
|
|
48
50
|
readonly continuousCollision?: PhysicsContinuousCollisionDescriptor;
|
|
49
51
|
};
|
|
50
|
-
|
|
52
|
+
/**
|
|
53
|
+
* The one production solver.
|
|
54
|
+
*
|
|
55
|
+
* The backend bake-off and subsequent 1.6 replatform selected Rapier as the single
|
|
56
|
+
* physical owner. The former in-house and Cannon paths have been removed.
|
|
57
|
+
*
|
|
58
|
+
* Keeping two solvers was not a safety net, it was the defect generator: every
|
|
59
|
+
* behaviour implemented by only one branch shipped as a silent divergence. The stable
|
|
60
|
+
* public descriptors now delegate joints, forces, contacts, sleep, CCD, and all supported
|
|
61
|
+
* collider shapes to the same selected adapter.
|
|
62
|
+
*
|
|
63
|
+
* One solver means a passing test and a shipped route execute the same code. Per R12 this
|
|
64
|
+
* capability now has exactly one owner.
|
|
65
|
+
*/
|
|
66
|
+
export type PhysicsBackend = "rapier";
|
|
51
67
|
export type PhysicsBackendPreference = PhysicsBackend | "auto";
|
|
52
68
|
export type PhysicsBackendSelection = {
|
|
53
69
|
readonly requested: PhysicsBackendPreference;
|
|
54
70
|
readonly active: PhysicsBackend;
|
|
55
|
-
readonly fallback?: string;
|
|
56
71
|
readonly deterministic: boolean;
|
|
57
|
-
readonly jsFallbackAvailable: boolean;
|
|
58
72
|
readonly continuousCollision: PhysicsContinuousCollisionSelection;
|
|
59
73
|
};
|
|
60
74
|
export type PhysicsStepStats = {
|
|
@@ -85,8 +99,6 @@ export declare class PhysicsWorld {
|
|
|
85
99
|
readonly fixedDelta: number;
|
|
86
100
|
private readonly solverIterations;
|
|
87
101
|
private readonly enableSleeping;
|
|
88
|
-
private readonly sleepVelocityThreshold;
|
|
89
|
-
private readonly sleepDelay;
|
|
90
102
|
private readonly continuousCollision;
|
|
91
103
|
private readonly bodiesById;
|
|
92
104
|
private readonly collidersById;
|
|
@@ -95,8 +107,10 @@ export declare class PhysicsWorld {
|
|
|
95
107
|
private readonly eventQueue;
|
|
96
108
|
private readonly requestedBackend;
|
|
97
109
|
private backendSelection;
|
|
98
|
-
private
|
|
99
|
-
private readonly
|
|
110
|
+
private readonly rapierWorld;
|
|
111
|
+
private readonly rapierBodiesByAuraId;
|
|
112
|
+
private readonly rapierCollidersByAuraId;
|
|
113
|
+
private readonly rapierJointsByConstraint;
|
|
100
114
|
private nextBodyId;
|
|
101
115
|
private nextColliderId;
|
|
102
116
|
private lastEvents;
|
|
@@ -108,6 +122,14 @@ export declare class PhysicsWorld {
|
|
|
108
122
|
createRigidBody(descriptor?: RigidBodyDescriptor): RigidBody;
|
|
109
123
|
createCollider(body: RigidBody | number, descriptor: ColliderDescriptor): Collider;
|
|
110
124
|
createConstraint(descriptor: ConstraintDescriptor): Constraint;
|
|
125
|
+
/**
|
|
126
|
+
* Change world gravity after construction.
|
|
127
|
+
*
|
|
128
|
+
* Needed for anything that flips or scales gravity at runtime — a low-gravity level, a
|
|
129
|
+
* zero-g section, a game that inverts it as a mechanic. Without a setter the only way to
|
|
130
|
+
* change it was to rebuild the world and lose every body.
|
|
131
|
+
*/
|
|
132
|
+
setGravity(gravity: Vec3): void;
|
|
111
133
|
getBody(id: number): RigidBody | undefined;
|
|
112
134
|
getCollider(id: number): Collider | undefined;
|
|
113
135
|
bodies(): readonly RigidBody[];
|
|
@@ -124,16 +146,13 @@ export declare class PhysicsWorld {
|
|
|
124
146
|
sphereCast(origin: Vec3, radius: number, direction: Vec3, options?: RaycastOptions): SphereCastHit | undefined;
|
|
125
147
|
sphereCastAll(origin: Vec3, radius: number, direction: Vec3, options?: RaycastOptions): readonly SphereCastHit[];
|
|
126
148
|
snapshot(): PhysicsSnapshot;
|
|
149
|
+
/** Release the selected native solver and every world-owned handle. Idempotent. */
|
|
150
|
+
dispose(): void;
|
|
127
151
|
private detectContacts;
|
|
128
152
|
private collectPotentialPairs;
|
|
129
|
-
private
|
|
130
|
-
private
|
|
131
|
-
private
|
|
132
|
-
private updateSleeping;
|
|
133
|
-
private createCannonBody;
|
|
134
|
-
private addCannonCollider;
|
|
135
|
-
private disableCannonBackend;
|
|
136
|
-
private stepCannon;
|
|
153
|
+
private createRapierJoint;
|
|
154
|
+
private synchronizeRapierJoints;
|
|
155
|
+
private stepProduction;
|
|
137
156
|
private planContinuousCollisionStep;
|
|
138
157
|
private earliestTimeOfImpact;
|
|
139
158
|
private assertContinuousCollisionPlan;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhysicsWorld.d.ts","sourceRoot":"","sources":["../../../../packages/physics/src/PhysicsWorld.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PhysicsWorld.d.ts","sourceRoot":"","sources":["../../../../packages/physics/src/PhysicsWorld.ts"],"names":[],"mappings":"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"}
|