@absolutejs/rapier3d 0.12.0 → 0.13.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/README.md CHANGED
@@ -232,7 +232,7 @@ before `init()`. It reports the packaged kernel; supplying custom bytes to
232
232
 
233
233
  ## Contact witnesses and force-free rotation (0.8)
234
234
 
235
- The collision dependency is pinned to `absolutejs/parry` revision
235
+ Version 0.8 introduced the `absolutejs/parry` collision correction at revision
236
236
  `dbd99a8dfce020da3698056471262435d56d3f69`, based on upstream 0.31.1.
237
237
  Tetrahedron-to-face reduction now preserves support points needed by GJK's
238
238
  previous-simplex calculation. Previously, an overwritten point could be combined
@@ -349,5 +349,29 @@ Reports remain usable after freeing the borrowed world. Always attach the actual
349
349
  build identity when storing or sending a report through your existing diagnostics
350
350
  system. Sampling has a cost: use explicit application policy and measure it.
351
351
 
352
- This API uses the unchanged qualified 0.11.0 native kernel. It does not change
353
- solver thresholds, contact policies or physical state serialization.
352
+ The sampler was introduced in 0.12.0 without changing the 0.11.0 native kernel.
353
+ Sampling itself does not change solver thresholds, contact policies or physical
354
+ state serialization. Later native revisions remain identified by buildInfo.
355
+
356
+
357
+ ## Compound inertia reconstruction (0.13)
358
+
359
+ The collision dependency now pins `absolutejs/parry` revision
360
+ `c566aabd77be8ac7a427c2b704860c47e34657b9`. Mass-property aggregation uses a
361
+ scale-normalized, bounded Jacobi decomposition with double-precision workspace.
362
+ It corrects principal frames for small tensors and repeated or nearly repeated
363
+ moments. Public f32 types, mass, COM and nonnegative principal-moment policy are
364
+ unchanged; compound mass properties and resulting motion can change when the
365
+ previous decomposition was inaccurate. No JavaScript API is added.
366
+
367
+ The focused native suite covers 2,688 tensor/aggregation cases in f32 and f64.
368
+ The package tests also reconstruct two- and three-collider physical tensors
369
+ across scale, orientation and insertion order. The small-object baseline could
370
+ exceed 50% relative tensor error; this is a reproduced fixture, not an estimate
371
+ of error across all objects. Angular integration and articulated COM-transport
372
+ limitations are separate and remain under investigation.
373
+
374
+ This calculation runs when mass properties are recomputed. It is not a render
375
+ optimization: recompute after geometry/mass changes, not unnecessarily every
376
+ frame. Qualification records, measured cost and limits are retained under
377
+ `absolutejs/research/inertia-reconstruction/`.
@@ -232,7 +232,7 @@ before `init()`. It reports the packaged kernel; supplying custom bytes to
232
232
 
233
233
  ## Contact witnesses and force-free rotation (0.8)
234
234
 
235
- The collision dependency is pinned to `absolutejs/parry` revision
235
+ Version 0.8 introduced the `absolutejs/parry` collision correction at revision
236
236
  `dbd99a8dfce020da3698056471262435d56d3f69`, based on upstream 0.31.1.
237
237
  Tetrahedron-to-face reduction now preserves support points needed by GJK's
238
238
  previous-simplex calculation. Previously, an overwritten point could be combined
@@ -349,5 +349,29 @@ Reports remain usable after freeing the borrowed world. Always attach the actual
349
349
  build identity when storing or sending a report through your existing diagnostics
350
350
  system. Sampling has a cost: use explicit application policy and measure it.
351
351
 
352
- This API uses the unchanged qualified 0.11.0 native kernel. It does not change
353
- solver thresholds, contact policies or physical state serialization.
352
+ The sampler was introduced in 0.12.0 without changing the 0.11.0 native kernel.
353
+ Sampling itself does not change solver thresholds, contact policies or physical
354
+ state serialization. Later native revisions remain identified by buildInfo.
355
+
356
+
357
+ ## Compound inertia reconstruction (0.13)
358
+
359
+ The collision dependency now pins `absolutejs/parry` revision
360
+ `c566aabd77be8ac7a427c2b704860c47e34657b9`. Mass-property aggregation uses a
361
+ scale-normalized, bounded Jacobi decomposition with double-precision workspace.
362
+ It corrects principal frames for small tensors and repeated or nearly repeated
363
+ moments. Public f32 types, mass, COM and nonnegative principal-moment policy are
364
+ unchanged; compound mass properties and resulting motion can change when the
365
+ previous decomposition was inaccurate. No JavaScript API is added.
366
+
367
+ The focused native suite covers 2,688 tensor/aggregation cases in f32 and f64.
368
+ The package tests also reconstruct two- and three-collider physical tensors
369
+ across scale, orientation and insertion order. The small-object baseline could
370
+ exceed 50% relative tensor error; this is a reproduced fixture, not an estimate
371
+ of error across all objects. Angular integration and articulated COM-transport
372
+ limitations are separate and remain under investigation.
373
+
374
+ This calculation runs when mass properties are recomputed. It is not a render
375
+ optimization: recompute after geometry/mass changes, not unnecessarily every
376
+ frame. Qualification records, measured cost and limits are retained under
377
+ `absolutejs/research/inertia-reconstruction/`.
@@ -1 +1 @@
1
- var e=Object.freeze({schemaVersion:1,scope:"package",packageName:"@absolutejs/rapier3d",packageVersion:"0.12.0",qualifiedKernelRelease:"0.11.0",upstream:"b716d375efc0201003f0cd9ef7168eee0b62c177",engine:"0.36.0",collisionLibraryVersion:"0.31.1",collisionSource:"git+https://github.com/absolutejs/parry?rev=dbd99a8dfce020da3698056471262435d56d3f69#dbd99a8dfce020da3698056471262435d56d3f69",bindings:"0.21.0",bindgen:"0.2.129",wasmSha256:"352f0e9ff982bd9486e3771bf65fab1944f81ca53f7a5f5d43bee56acdaff6a0",wasmBytes:3298167,solverChanges:!0});export{e as buildInfo};
1
+ var e=Object.freeze({schemaVersion:1,scope:"package",packageName:"@absolutejs/rapier3d",packageVersion:"0.13.0",qualifiedKernelRelease:"0.13.0",upstream:"b716d375efc0201003f0cd9ef7168eee0b62c177",engine:"0.36.0",collisionLibraryVersion:"0.31.1",collisionSource:"git+https://github.com/absolutejs/parry?rev=c566aabd77be8ac7a427c2b704860c47e34657b9#c566aabd77be8ac7a427c2b704860c47e34657b9",bindings:"0.21.0",bindgen:"0.2.129",wasmSha256:"a6f06627b5b95ff15b87fbe45bf8dfd19eeb78b4f949a912e3fed5805fbcc62b",wasmBytes:3298974,solverChanges:!0});export{e as buildInfo};
@@ -2,15 +2,15 @@
2
2
  "schemaVersion": 1,
3
3
  "scope": "package",
4
4
  "packageName": "@absolutejs/rapier3d",
5
- "packageVersion": "0.12.0",
6
- "qualifiedKernelRelease": "0.11.0",
5
+ "packageVersion": "0.13.0",
6
+ "qualifiedKernelRelease": "0.13.0",
7
7
  "upstream": "b716d375efc0201003f0cd9ef7168eee0b62c177",
8
8
  "engine": "0.36.0",
9
9
  "collisionLibraryVersion": "0.31.1",
10
- "collisionSource": "git+https://github.com/absolutejs/parry?rev=dbd99a8dfce020da3698056471262435d56d3f69#dbd99a8dfce020da3698056471262435d56d3f69",
10
+ "collisionSource": "git+https://github.com/absolutejs/parry?rev=c566aabd77be8ac7a427c2b704860c47e34657b9#c566aabd77be8ac7a427c2b704860c47e34657b9",
11
11
  "bindings": "0.21.0",
12
12
  "bindgen": "0.2.129",
13
- "wasmSha256": "352f0e9ff982bd9486e3771bf65fab1944f81ca53f7a5f5d43bee56acdaff6a0",
14
- "wasmBytes": 3298167,
13
+ "wasmSha256": "a6f06627b5b95ff15b87fbe45bf8dfd19eeb78b4f949a912e3fed5805fbcc62b",
14
+ "wasmBytes": 3298974,
15
15
  "solverChanges": true
16
16
  }