@flighthq/physics2d 0.3.0-next.1220.6982c21 → 0.3.0-next.1272.222de94
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/jointRegistry.d.ts.map +1 -1
- package/dist/jointRegistry.js +38 -21
- package/dist/jointRegistry.js.map +1 -1
- package/dist/joints.d.ts.map +1 -1
- package/dist/joints.js +41 -23
- package/dist/joints.js.map +1 -1
- package/dist/step.d.ts.map +1 -1
- package/dist/step.js +11 -5
- package/dist/step.js.map +1 -1
- package/package.json +5 -5
- package/src/jointRegistry.test.ts +60 -0
- package/src/step.test.ts +52 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jointRegistry.d.ts","sourceRoot":"","sources":["../src/jointRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAalC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"jointRegistry.d.ts","sourceRoot":"","sources":["../src/jointRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACf,MAAM,0BAA0B,CAAC;AAalC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,GAAG,cAAc,CAY9F;AAyBD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,EAC/B,IAAI,EAAE,kBAAkB,GACvB,oBAAoB,GAAG,IAAI,CAE7B;AASD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,oBAAoB,GAC3B,IAAI,CASN;AAGD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,OAAO,CAKpG"}
|
package/dist/jointRegistry.js
CHANGED
|
@@ -9,30 +9,39 @@ import { findPhysics2DBody, isPhysics2DPairOrdered } from './world';
|
|
|
9
9
|
// world. The anchors and lever arms swap with the bodies — a joint whose ends were exchanged without its
|
|
10
10
|
// anchors would attach to the wrong points and hold the pair in a pose nobody asked for.
|
|
11
11
|
export function addPhysics2DJoint(world, joint) {
|
|
12
|
+
// The kind decides how to reverse itself, because the registry cannot know which of a joint's fields
|
|
13
|
+
// carry a direction — see _canonicalizePhysics2DJointEnds.
|
|
14
|
+
// Only canonicalize when the kind can be consulted. A joint whose solver is not registered yet is
|
|
15
|
+
// explicitly supported (a scene deserialized ahead of the code that solves it), and swapping it now
|
|
16
|
+
// would exchange the bodies and anchors while its kind-specific direction fields stayed as authored --
|
|
17
|
+
// the generic half of a swap with the kind's half missing, which no later registration would repair.
|
|
18
|
+
// An unregistered joint constrains nothing, so its ordering does not matter until a solver exists;
|
|
19
|
+
// registerPhysics2DJointSolver canonicalizes what is already in the world at that point.
|
|
20
|
+
if (getPhysics2DJointSolver(world, joint.kind) !== null)
|
|
21
|
+
_canonicalizePhysics2DJointEnds(world, joint);
|
|
22
|
+
world.joints.push(joint);
|
|
23
|
+
return joint;
|
|
24
|
+
}
|
|
25
|
+
// Exchanges `joint`'s ends when the pair is out of canonical order and the kind consents. The kind is
|
|
26
|
+
// asked only when a swap is actually pending, since swapEnds both vetoes and transforms: calling it
|
|
27
|
+
// otherwise would apply a reversal to ends that never moved.
|
|
28
|
+
function _canonicalizePhysics2DJointEnds(world, joint) {
|
|
12
29
|
const first = findPhysics2DBody(world, joint.bodyA);
|
|
13
30
|
const second = findPhysics2DBody(world, joint.bodyB);
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
// reverse it, and a kind whose second end is not a body at all must refuse outright. Making that
|
|
17
|
-
// the kind's decision is the only place it can be correct: the registry cannot know which fields
|
|
18
|
-
// carry a direction.
|
|
19
|
-
// Decide whether a swap is pending BEFORE asking the kind: swapEnds both vetoes and transforms, so
|
|
20
|
-
// calling it when nothing is being exchanged would apply a kind's reversal to ends that never moved.
|
|
21
|
-
const swapPending = first !== null && second !== null && !isPhysics2DPairOrdered(first, second);
|
|
31
|
+
if (first === null || second === null || isPhysics2DPairOrdered(first, second))
|
|
32
|
+
return;
|
|
22
33
|
const solver = getPhysics2DJointSolver(world, joint.kind);
|
|
23
|
-
if (
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
world.joints.push(joint);
|
|
35
|
-
return joint;
|
|
34
|
+
if (!(solver?.swapEnds?.(joint) ?? true))
|
|
35
|
+
return;
|
|
36
|
+
const bodyA = joint.bodyA;
|
|
37
|
+
joint.bodyA = joint.bodyB;
|
|
38
|
+
joint.bodyB = bodyA;
|
|
39
|
+
const anchorX = joint.localAnchorAX;
|
|
40
|
+
const anchorY = joint.localAnchorAY;
|
|
41
|
+
joint.localAnchorAX = joint.localAnchorBX;
|
|
42
|
+
joint.localAnchorAY = joint.localAnchorBY;
|
|
43
|
+
joint.localAnchorBX = anchorX;
|
|
44
|
+
joint.localAnchorBY = anchorY;
|
|
36
45
|
}
|
|
37
46
|
// The solver registered for `kind`, or null when none is. A missing solver is an expected condition, not
|
|
38
47
|
// an error: a scene deserialized with a joint kind the running build does not know about should import
|
|
@@ -49,6 +58,14 @@ export function getPhysics2DJointSolver(world, kind) {
|
|
|
49
58
|
// and a game using none of them should pay for none of them.
|
|
50
59
|
export function registerPhysics2DJointSolver(world, kind, solver) {
|
|
51
60
|
world.jointSolvers.set(kind, solver);
|
|
61
|
+
// Joints of this kind may already be in the world: addPhysics2DJoint deliberately leaves an
|
|
62
|
+
// unknown-kind joint in its authored order, because canonicalizing it without the kind's consent
|
|
63
|
+
// would half-swap it. This is where that deferred work happens, so the outcome no longer depends on
|
|
64
|
+
// whether the scene or the solver arrived first.
|
|
65
|
+
for (const joint of world.joints) {
|
|
66
|
+
if (joint.kind === kind)
|
|
67
|
+
_canonicalizePhysics2DJointEnds(world, joint);
|
|
68
|
+
}
|
|
52
69
|
}
|
|
53
70
|
// Removes `joint` from `world`. Returns false when the world does not hold it.
|
|
54
71
|
export function removePhysics2DJoint(world, joint) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jointRegistry.js","sourceRoot":"","sources":["../src/jointRegistry.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEpE,0GAA0G;AAC1G,gDAAgD;AAChD,EAAE;AACF,kGAAkG;AAClG,sGAAsG;AACtG,sGAAsG;AACtG,oGAAoG;AACpG,yGAAyG;AACzG,yFAAyF;AACzF,MAAM,UAAU,iBAAiB,CAAC,KAAqB,EAAE,KAAqB;IAC5E,
|
|
1
|
+
{"version":3,"file":"jointRegistry.js","sourceRoot":"","sources":["../src/jointRegistry.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEpE,0GAA0G;AAC1G,gDAAgD;AAChD,EAAE;AACF,kGAAkG;AAClG,sGAAsG;AACtG,sGAAsG;AACtG,oGAAoG;AACpG,yGAAyG;AACzG,yFAAyF;AACzF,MAAM,UAAU,iBAAiB,CAAC,KAAqB,EAAE,KAAqB;IAC5E,qGAAqG;IACrG,2DAA2D;IAC3D,kGAAkG;IAClG,oGAAoG;IACpG,uGAAuG;IACvG,qGAAqG;IACrG,mGAAmG;IACnG,yFAAyF;IACzF,IAAI,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI;QAAE,+BAA+B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,sGAAsG;AACtG,oGAAoG;AACpG,6DAA6D;AAC7D,SAAS,+BAA+B,CAAC,KAAqB,EAAE,KAAqB;IACnF,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI,IAAI,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC;QAAE,OAAO;IACvF,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;QAAE,OAAO;IACjD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC;IACpC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IAC1C,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IAC1C,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC;IAC9B,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC;AAChC,CAAC;AAED,yGAAyG;AACzG,uGAAuG;AACvG,wDAAwD;AACxD,MAAM,UAAU,uBAAuB,CACrC,KAA+B,EAC/B,IAAwB;IAExB,OAAO,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAC9C,CAAC;AAED,wGAAwG;AACxG,wGAAwG;AACxG,wDAAwD;AACxD,EAAE;AACF,oGAAoG;AACpG,wGAAwG;AACxG,6DAA6D;AAC7D,MAAM,UAAU,4BAA4B,CAC1C,KAAqB,EACrB,IAAwB,EACxB,MAA4B;IAE5B,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrC,4FAA4F;IAC5F,iGAAiG;IACjG,oGAAoG;IACpG,iDAAiD;IACjD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI;YAAE,+BAA+B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,oBAAoB,CAAC,KAAqB,EAAE,KAA+B;IACzF,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAuB,CAAC,CAAC;IACzD,IAAI,EAAE,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACzB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/joints.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"joints.d.ts","sourceRoot":"","sources":["../src/joints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EAKd,cAAc,EAEf,MAAM,0BAA0B,CAAC;AAMlC,eAAO,MAAM,0BAA0B,aAAa,CAAC;AACrD,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAC/C,eAAO,MAAM,0BAA0B,aAAa,CAAC;AACrD,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAQ7C,eAAO,MAAM,4BAA4B;qBACtB,cAAc,SAAS,cAAc,GAAG,IAAI;oCAkB7B,cAAc,GAAG,IAAI;mBAItC,cAAc,SAAS,cAAc,MAAM,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"joints.d.ts","sourceRoot":"","sources":["../src/joints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EAKd,cAAc,EAEf,MAAM,0BAA0B,CAAC;AAMlC,eAAO,MAAM,0BAA0B,aAAa,CAAC;AACrD,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAC/C,eAAO,MAAM,0BAA0B,aAAa,CAAC;AACrD,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAQ7C,eAAO,MAAM,4BAA4B;qBACtB,cAAc,SAAS,cAAc,GAAG,IAAI;oCAkB7B,cAAc,GAAG,IAAI;mBAItC,cAAc,SAAS,cAAc,MAAM,MAAM,GAAG,IAAI;iBA6C1D,cAAc,SAAS,cAAc,GAAG,IAAI;CAa1D,CAAC;AAOF,eAAO,MAAM,yBAAyB;gBAMxB,OAAO;oCAMa,cAAc,GAAG,IAAI;mBAKtC,cAAc,SAAS,cAAc,MAAM,MAAM,GAAG,IAAI;iBA4B1D,cAAc,SAAS,cAAc,GAAG,IAAI;CAqC1D,CAAC;AAOF,eAAO,MAAM,4BAA4B;qBACtB,cAAc,SAAS,cAAc,GAAG,IAAI;oCAO7B,cAAc,GAAG,IAAI;oBAarC,cAAc,GAAG,OAAO;mBAWzB,cAAc,SAAS,cAAc,MAAM,MAAM,GAAG,IAAI;iBAuB1D,cAAc,SAAS,cAAc,GAAG,IAAI;CAiE1D,CAAC;AAMF,eAAO,MAAM,wBAAwB;qBAClB,cAAc,SAAS,cAAc,GAAG,IAAI;oCAkB7B,cAAc,GAAG,IAAI;mBAItC,cAAc,SAAS,cAAc,MAAM,MAAM,GAAG,IAAI;iBA0B1D,cAAc,SAAS,cAAc,GAAG,IAAI;CAe1D,CAAC;AAWF,eAAO,MAAM,wBAAwB;qBAClB,cAAc,SAAS,cAAc,GAAG,IAAI;oCAS7B,cAAc,GAAG,IAAI;oBAMrC,cAAc,GAAG,OAAO;mBAMzB,cAAc,SAAS,cAAc,MAAM,MAAM,GAAG,IAAI;iBAkB1D,cAAc,SAAS,cAAc,GAAG,IAAI;CAe1D,CAAC"}
|
package/dist/joints.js
CHANGED
|
@@ -64,7 +64,12 @@ export const physics2DDistanceJointSolver = {
|
|
|
64
64
|
jointScratch[2] = 0;
|
|
65
65
|
}
|
|
66
66
|
distance.rAX = joint.rAX;
|
|
67
|
-
|
|
67
|
+
const distanceState = acquireJointState(distance, 5);
|
|
68
|
+
distanceState[0] = jointScratch[0];
|
|
69
|
+
distanceState[1] = jointScratch[1];
|
|
70
|
+
distanceState[2] = jointScratch[2];
|
|
71
|
+
distanceState[3] = axisScratch[0];
|
|
72
|
+
distanceState[4] = axisScratch[1];
|
|
68
73
|
},
|
|
69
74
|
solve(world, joint) {
|
|
70
75
|
const state = jointStateScratch.get(joint);
|
|
@@ -121,7 +126,12 @@ export const physics2DMouseJointSolver = {
|
|
|
121
126
|
// maxForce is a force; joint.impulse0/1 accumulate an impulse. Clamping one against the other was
|
|
122
127
|
// a unit error worth a factor of 1/dt — at dt 0.01 the bound admitted a hundred times the force it
|
|
123
128
|
// named. Convert once here, where dt is in hand, rather than in solve, which does not receive it.
|
|
124
|
-
|
|
129
|
+
const mouseState = acquireJointState(mouse, 5);
|
|
130
|
+
mouseState[0] = inverseGamma;
|
|
131
|
+
mouseState[1] = biasFactor;
|
|
132
|
+
mouseState[2] = dt * mouse.maxForce;
|
|
133
|
+
mouseState[3] = 0;
|
|
134
|
+
mouseState[4] = 0;
|
|
125
135
|
},
|
|
126
136
|
solve(world, joint) {
|
|
127
137
|
const mouse = joint;
|
|
@@ -209,15 +219,14 @@ export const physics2DRevoluteJointSolver = {
|
|
|
209
219
|
// by zero.
|
|
210
220
|
const inverseInertiaSum = bodyA.inverseInertia + bodyB.inverseInertia;
|
|
211
221
|
const angularMass = inverseInertiaSum > 0 ? 1 / inverseInertiaSum : 0;
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
]);
|
|
222
|
+
const revoluteState = acquireJointState(joint, 7);
|
|
223
|
+
revoluteState[0] = errorX * (BAUMGARTE / dt);
|
|
224
|
+
revoluteState[1] = errorY * (BAUMGARTE / dt);
|
|
225
|
+
revoluteState[2] = angularMass;
|
|
226
|
+
revoluteState[3] = 0;
|
|
227
|
+
revoluteState[4] = 0;
|
|
228
|
+
revoluteState[5] = dt * revolute.maxMotorTorque;
|
|
229
|
+
revoluteState[6] = 1 / dt;
|
|
221
230
|
},
|
|
222
231
|
solve(world, joint) {
|
|
223
232
|
const revolute = joint;
|
|
@@ -316,7 +325,12 @@ export const physics2DRopeJointSolver = {
|
|
|
316
325
|
// Slack: no constraint at all this step, which is what a rope IS. Marked by a zero effective mass so
|
|
317
326
|
// the iterations skip it without a second flag to keep in sync.
|
|
318
327
|
const active = excess > 0;
|
|
319
|
-
|
|
328
|
+
const ropeState = acquireJointState(rope, 5);
|
|
329
|
+
ropeState[0] = active && mass > 0 ? 1 / mass : 0;
|
|
330
|
+
ropeState[1] = active ? excess * (BAUMGARTE / dt) : 0;
|
|
331
|
+
ropeState[2] = 0;
|
|
332
|
+
ropeState[3] = unitX;
|
|
333
|
+
ropeState[4] = unitY;
|
|
320
334
|
if (!active)
|
|
321
335
|
joint.impulse0 = 0;
|
|
322
336
|
},
|
|
@@ -377,13 +391,12 @@ export const physics2DWeldJointSolver = {
|
|
|
377
391
|
const errorY = bodyB.y + joint.rBY - (bodyA.y + joint.rAY);
|
|
378
392
|
const angleError = bodyB.angle - bodyA.angle - weld.referenceAngle;
|
|
379
393
|
const angularMass = bodyA.inverseInertia + bodyB.inverseInertia;
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
]);
|
|
394
|
+
const weldState = acquireJointState(weld, 5);
|
|
395
|
+
weldState[0] = errorX * (BAUMGARTE / dt);
|
|
396
|
+
weldState[1] = errorY * (BAUMGARTE / dt);
|
|
397
|
+
weldState[2] = angleError * (BAUMGARTE / dt);
|
|
398
|
+
weldState[3] = angularMass > 0 ? 1 / angularMass : 0;
|
|
399
|
+
weldState[4] = 0;
|
|
387
400
|
},
|
|
388
401
|
solve(world, joint) {
|
|
389
402
|
const state = jointStateScratch.get(joint);
|
|
@@ -454,15 +467,20 @@ function axisRelativeVelocity(bodyA, bodyB, joint, axisX, axisY) {
|
|
|
454
467
|
// costs nothing — but allocating a fresh one per joint per step made the step's allocation profile scale
|
|
455
468
|
// with the joint count, which is exactly the hidden per-frame allocation the package's own charter
|
|
456
469
|
// forbids.
|
|
457
|
-
|
|
470
|
+
// Returns this joint's reusable per-step scratch, sized to `length`, for the caller to write into by
|
|
471
|
+
// index. It deliberately does not take the values: a `(joint, [a, b, c])` signature allocates the
|
|
472
|
+
// literal at every call site on every step, so the array the joint reuses was only ever the
|
|
473
|
+
// destination — the source was fresh garbage each frame, one array per joint per step. Handing the
|
|
474
|
+
// destination back is what makes the prepare pass allocation-free, and it matches the SDK's
|
|
475
|
+
// write-into-out convention rather than returning a new value.
|
|
476
|
+
function acquireJointState(joint, length) {
|
|
458
477
|
let state = jointStateScratch.get(joint);
|
|
459
478
|
if (state === undefined) {
|
|
460
479
|
state = [];
|
|
461
480
|
jointStateScratch.set(joint, state);
|
|
462
481
|
}
|
|
463
|
-
state.length =
|
|
464
|
-
|
|
465
|
-
state[i] = values[i];
|
|
482
|
+
state.length = length;
|
|
483
|
+
return state;
|
|
466
484
|
}
|
|
467
485
|
// Per-step solver state, keyed by joint. A Map rather than fields on the joint because the numbers each
|
|
468
486
|
// solver needs mean different things per kind, and putting a fixed block of untyped scratch on the
|
package/dist/joints.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"joints.js","sourceRoot":"","sources":["../src/joints.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"joints.js","sourceRoot":"","sources":["../src/joints.ts"],"names":[],"mappings":"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"}
|
package/dist/step.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../src/step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,cAAc,EAIf,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../src/step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,cAAc,EAIf,MAAM,0BAA0B,CAAC;AA8SlC,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CA+DrE"}
|
package/dist/step.js
CHANGED
|
@@ -92,10 +92,8 @@ function buildPhysics2DContacts(world) {
|
|
|
92
92
|
// before any collider is inspected silently deleted every sensor overlap between two immovable
|
|
93
93
|
// bodies. A static trigger volume over static scenery is an ordinary thing to build, and it
|
|
94
94
|
// reported nothing at all. Immovable pairs are still skipped, unless one of them senses.
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
!hasSensorCollider(first) &&
|
|
98
|
-
!hasSensorCollider(second)) {
|
|
95
|
+
const bothImmovable = first.inverseMass === 0 && second.inverseMass === 0;
|
|
96
|
+
if (bothImmovable && !hasSensorCollider(first) && !hasSensorCollider(second)) {
|
|
99
97
|
continue;
|
|
100
98
|
}
|
|
101
99
|
// A jointed pair almost always overlaps at the anchor, and resolving that contact fights the
|
|
@@ -109,9 +107,17 @@ function buildPhysics2DContacts(world) {
|
|
|
109
107
|
for (let j = 0; j < bodyB.colliders.length; j++) {
|
|
110
108
|
const colliderA = bodyA.colliders[i];
|
|
111
109
|
const colliderB = bodyB.colliders[j];
|
|
110
|
+
const sensorPair = colliderA.sensor || colliderB.sensor;
|
|
111
|
+
// The immovable test belongs here, not on the bodies. Owning one sensor anywhere does not make
|
|
112
|
+
// a body's other colliders reportable: a static body carrying a trigger volume plus ordinary
|
|
113
|
+
// scenery would otherwise emit solid-vs-solid contacts against other static scenery, which
|
|
114
|
+
// nothing can ever resolve. Sensors are reported and never resolved, so a sensor pair is the
|
|
115
|
+
// only pair worth keeping between two bodies that cannot move.
|
|
116
|
+
if (bothImmovable && !sensorPair)
|
|
117
|
+
continue;
|
|
112
118
|
if (!collideContactManifold(colliderA.world, colliderB.world, manifoldScratch))
|
|
113
119
|
continue;
|
|
114
|
-
mergePhysics2DContact(world, bodyA.index, bodyB.index, i, j, manifoldScratch,
|
|
120
|
+
mergePhysics2DContact(world, bodyA.index, bodyB.index, i, j, manifoldScratch, sensorPair, (colliderA.material.friction + colliderB.material.friction) / 2, Math.max(colliderA.material.restitution, colliderB.material.restitution));
|
|
115
121
|
}
|
|
116
122
|
}
|
|
117
123
|
}
|
package/dist/step.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step.js","sourceRoot":"","sources":["../src/step.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"step.js","sourceRoot":"","sources":["../src/step.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flighthq/physics2d",
|
|
3
|
-
"version": "0.3.0-next.
|
|
3
|
+
"version": "0.3.0-next.1272.222de94",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/flighthq/flight.git",
|
|
@@ -36,10 +36,10 @@
|
|
|
36
36
|
"clean:dist": "tsx ../../scripts/clean-package-dist.ts"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@flighthq/collision": "0.3.0-next.
|
|
40
|
-
"@flighthq/math": "0.3.0-next.
|
|
41
|
-
"@flighthq/spatial": "0.3.0-next.
|
|
42
|
-
"@flighthq/types": "0.3.0-next.
|
|
39
|
+
"@flighthq/collision": "0.3.0-next.1272.222de94",
|
|
40
|
+
"@flighthq/math": "0.3.0-next.1272.222de94",
|
|
41
|
+
"@flighthq/spatial": "0.3.0-next.1272.222de94",
|
|
42
|
+
"@flighthq/types": "0.3.0-next.1272.222de94"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"typescript": "^5.3.0"
|
|
@@ -51,6 +51,7 @@ describe('addPhysics2DJoint', () => {
|
|
|
51
51
|
// anchors have to travel with the bodies — a joint whose ends were exchanged without its anchors
|
|
52
52
|
// would attach to the wrong points and hold the pair in a pose nobody asked for.
|
|
53
53
|
const world = createPhysics2DWorld();
|
|
54
|
+
registerPhysics2DJointSolver(world, 'Test', { prepare: () => {}, solve: () => {} });
|
|
54
55
|
const first = body(world, 0, 0);
|
|
55
56
|
const second = body(world, 2, 0);
|
|
56
57
|
const added = addPhysics2DJoint(world, joint('Test', second.index, first.index, 7, 9));
|
|
@@ -61,6 +62,65 @@ describe('addPhysics2DJoint', () => {
|
|
|
61
62
|
expect(added.localAnchorBX).toBe(7);
|
|
62
63
|
});
|
|
63
64
|
|
|
65
|
+
// Adding a joint whose kind has no solver yet is explicitly supported — a scene can deserialize
|
|
66
|
+
// ahead of the code that solves it. Canonicalizing there would exchange bodies and anchors while the
|
|
67
|
+
// kind's own direction fields stayed as authored, and no later registration would repair that half
|
|
68
|
+
// swap. So ordering waits for the kind, and an unsolved joint constrains nothing meanwhile.
|
|
69
|
+
it('leaves a joint whose kind has no solver in its authored order', () => {
|
|
70
|
+
const world = createPhysics2DWorld();
|
|
71
|
+
const first = body(world, 0, 0);
|
|
72
|
+
const second = body(world, 2, 0);
|
|
73
|
+
|
|
74
|
+
const added = addPhysics2DJoint(world, joint('Unknown', second.index, first.index, 7, 9));
|
|
75
|
+
|
|
76
|
+
expect(added.bodyA).toBe(second.index);
|
|
77
|
+
expect(added.localAnchorAX).toBe(7);
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
// Critic's repro: register the solver AFTER the joint is already in the world, and the kind's own
|
|
81
|
+
// reversal must still run. Previously the generic swap had already happened at add time without the
|
|
82
|
+
// kind's consent, so the directional field kept its authored sign forever.
|
|
83
|
+
it('canonicalizes an already-added joint when its solver registers later, reversing direction', () => {
|
|
84
|
+
const world = createPhysics2DWorld();
|
|
85
|
+
const first = body(world, 0, 0);
|
|
86
|
+
const second = body(world, 2, 0);
|
|
87
|
+
const added = addPhysics2DJoint(world, {
|
|
88
|
+
...joint('Directional', second.index, first.index, 7, 9),
|
|
89
|
+
direction: 1,
|
|
90
|
+
} as Physics2DJoint & { direction: number });
|
|
91
|
+
|
|
92
|
+
registerPhysics2DJointSolver(world, 'Directional', {
|
|
93
|
+
prepare: () => {},
|
|
94
|
+
solve: () => {},
|
|
95
|
+
swapEnds: (target) => {
|
|
96
|
+
const directional = target as Physics2DJoint & { direction: number };
|
|
97
|
+
directional.direction = -directional.direction;
|
|
98
|
+
return true;
|
|
99
|
+
},
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
expect(added.bodyA).toBe(first.index);
|
|
103
|
+
expect(added.localAnchorAX).toBe(9);
|
|
104
|
+
expect((added as Physics2DJoint & { direction: number }).direction).toBe(-1);
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
// A kind that vetoes the exchange must still be obeyed on the deferred path.
|
|
108
|
+
it('honours a solver that vetoes the swap when it registers later', () => {
|
|
109
|
+
const world = createPhysics2DWorld();
|
|
110
|
+
const first = body(world, 0, 0);
|
|
111
|
+
const second = body(world, 2, 0);
|
|
112
|
+
const added = addPhysics2DJoint(world, joint('Vetoing', second.index, first.index, 7, 9));
|
|
113
|
+
|
|
114
|
+
registerPhysics2DJointSolver(world, 'Vetoing', {
|
|
115
|
+
prepare: () => {},
|
|
116
|
+
solve: () => {},
|
|
117
|
+
swapEnds: () => false,
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
expect(added.bodyA).toBe(second.index);
|
|
121
|
+
expect(added.localAnchorAX).toBe(7);
|
|
122
|
+
});
|
|
123
|
+
|
|
64
124
|
it('leaves an already-ordered joint untouched', () => {
|
|
65
125
|
const world = createPhysics2DWorld();
|
|
66
126
|
const first = body(world, 0, 0);
|
package/src/step.test.ts
CHANGED
|
@@ -204,6 +204,58 @@ describe('sensor reporting between immovable bodies', () => {
|
|
|
204
204
|
expect(world.contacts).toHaveLength(0);
|
|
205
205
|
});
|
|
206
206
|
|
|
207
|
+
// Every existing case above gives each body exactly one collider, which is why the body-level guard
|
|
208
|
+
// looked sufficient. Owning a sensor ANYWHERE does not make a body's other colliders reportable:
|
|
209
|
+
// these two static bodies overlap solid-on-solid, and the disjoint trigger volume must not smuggle
|
|
210
|
+
// that pair past the immovable shortcut.
|
|
211
|
+
function immovableWithSensorAndSolid(world: Physics2DWorld, x: number): RigidBody2D {
|
|
212
|
+
const body = createRigidBody2D('static', x, 0);
|
|
213
|
+
// A trigger volume far away from the solid part, so it overlaps nothing.
|
|
214
|
+
body.colliders.push(
|
|
215
|
+
createPhysics2DCollider({ kind: 'aabb', minX: 99.5, minY: -0.5, maxX: 100.5, maxY: 0.5 }, STONE, true),
|
|
216
|
+
);
|
|
217
|
+
body.colliders.push(
|
|
218
|
+
createPhysics2DCollider({ kind: 'aabb', minX: -0.5, minY: -0.5, maxX: 0.5, maxY: 0.5 }, STONE, false),
|
|
219
|
+
);
|
|
220
|
+
return addPhysics2DBody(world, body);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
it('reports nothing when the overlapping colliders are both solid and both bodies are immovable', () => {
|
|
224
|
+
const world = createPhysics2DWorld(0, 0);
|
|
225
|
+
immovableWithSensorAndSolid(world, 0);
|
|
226
|
+
immovable(world, 0, false);
|
|
227
|
+
|
|
228
|
+
stepPhysics2D(world, 1 / 60);
|
|
229
|
+
|
|
230
|
+
expect(world.events.began).toHaveLength(0);
|
|
231
|
+
expect(world.contacts).toHaveLength(0);
|
|
232
|
+
});
|
|
233
|
+
|
|
234
|
+
// The other half of the same class: the sensor collider on that body must still report when it is
|
|
235
|
+
// the one actually overlapping, so the pair-level test is not just a blanket suppression.
|
|
236
|
+
it('still reports the sensor collider of a mixed body when that collider overlaps', () => {
|
|
237
|
+
const world = createPhysics2DWorld(0, 0);
|
|
238
|
+
immovableWithSensorAndSolid(world, 0);
|
|
239
|
+
immovable(world, 100, false);
|
|
240
|
+
|
|
241
|
+
stepPhysics2D(world, 1 / 60);
|
|
242
|
+
|
|
243
|
+
expect(world.contacts).toHaveLength(1);
|
|
244
|
+
expect(world.contacts[0].sensor).toBe(true);
|
|
245
|
+
});
|
|
246
|
+
|
|
247
|
+
// A movable body is unaffected by the immovable test, so its solid contacts still resolve even when
|
|
248
|
+
// the other body carries a sensor.
|
|
249
|
+
it('keeps a solid contact when one body can move', () => {
|
|
250
|
+
const world = createPhysics2DWorld(0, 0);
|
|
251
|
+
immovableWithSensorAndSolid(world, 0);
|
|
252
|
+
box(world, 0, 0);
|
|
253
|
+
|
|
254
|
+
stepPhysics2D(world, 1 / 60);
|
|
255
|
+
|
|
256
|
+
expect(world.contacts.some((contact) => !contact.sensor)).toBe(true);
|
|
257
|
+
});
|
|
258
|
+
|
|
207
259
|
it('resolves nothing for a static sensor pair — reporting is not colliding', () => {
|
|
208
260
|
const world = createPhysics2DWorld(0, 0);
|
|
209
261
|
const sensor = immovable(world, 0, true);
|