@absolutejs/rapier3d 0.3.0 → 0.4.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.
@@ -110,3 +110,25 @@ across all passes in a step. The TOI timer also accumulates instead of resetting
110
110
  for every clamp pass. Both are recorded only with profiling enabled. The timing
111
111
  fix leaves contact equations and trajectories unchanged; package tests compare
112
112
  profiled/unprofiled poses and official upstream trajectories.
113
+
114
+ ## Contact policy controls (0.4)
115
+
116
+ The following existing native settings are now exposed through
117
+ `world.integrationParameters`. Defaults and solver algorithms are unchanged.
118
+
119
+ | Property | Default | Meaning |
120
+ | --- | --- | --- |
121
+ | `contactRecycling` | `true` | Reuse contact manifolds while relative poses stay within the native reuse bounds. |
122
+ | `normalizedContactRecycleDistance` | `0.05` | Relative-pose drift bound, multiplied by `lengthUnit`; zero prevents recycling. |
123
+ | `warmstartCoefficient` | `1` | Fraction of cached impulses reused by the solver, from zero to one. |
124
+
125
+ Change settings between simulation steps. The boolean setter rejects coercible
126
+ non-booleans; numeric setters reject non-finite/out-of-range input, including f32
127
+ overflow for the distance. Native snapshots preserve all three settings.
128
+
129
+ These controls support explicit diagnosis and application-specific qualification.
130
+ Disabling recycling increases contact-generation work and can change contact
131
+ features; disabling warm starting changes convergence. Neither is a general fix
132
+ for penetration. Evaluate the entire requested simulation horizon and geometric
133
+ intersections, alongside live/cached contact diagnostics. A process that exits
134
+ successfully after an early physical guard is not a completed physical test.
@@ -3,8 +3,8 @@
3
3
  "engine": "0.36.0",
4
4
  "bindings": "0.21.0",
5
5
  "bindgen": "0.2.129",
6
- "wasmSha256": "82c8735acd1b112c2d1368c8e46c91ce46a87e3d941b1a8d2fe11d46a8acbd3a",
7
- "wasmBytes": 3298797,
6
+ "wasmSha256": "65ebc43d69dc3b4b290b29ca30ff44955711c8002799503749bcc03060783b39",
7
+ "wasmBytes": 3299287,
8
8
  "solverChanges": false,
9
- "addition": "Live contacts, fresh CCD pass counts, and aggregate CCD/TOI timing repair"
9
+ "addition": "Validated contact recycling, recycle distance and warm-start controls; contact and CCD diagnostics"
10
10
  }