@absolutejs/rapier3d 0.8.0 → 0.9.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 +29 -0
- package/absolutejs/README.md +29 -0
- package/dist/build-info.mjs +1 -1
- package/dist/provenance.json +5 -5
- package/dist/rapier.mjs +1 -1
- package/dist/types/dynamics/multibody_joint_set.d.ts +12 -0
- package/dist/types/rapier_wasm3d.d.ts +10 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -36,6 +36,13 @@ corrects previous-simplex witness preservation and reduces force-free rotation
|
|
|
36
36
|
roundoff, as described below. Contact and CCD policy defaults remain unchanged.
|
|
37
37
|
Runtime motion still needs independent geometric and energy checks.
|
|
38
38
|
|
|
39
|
+
Version 0.8.1 refreshes articulated link velocities after final solver impulses
|
|
40
|
+
and uses the integrated link geometry for center-of-mass velocity offsets.
|
|
41
|
+
This fixes stale `linvel()`/`angvel()` state and inconsistent velocities on rotating
|
|
42
|
+
fixed assemblies. It does not change the restitution iteration budget or provide
|
|
43
|
+
a general energy-conservation guarantee for off-center articulated impacts.
|
|
44
|
+
|
|
45
|
+
|
|
39
46
|
The ESM package includes WASM initialization and requires no separate asset URL.
|
|
40
47
|
Concurrent `init()` calls share initialization. The package targets 3D f32
|
|
41
48
|
web/Node/Bun; it does not claim a 2D, f64, CommonJS or SIMD distribution.
|
|
@@ -253,3 +260,25 @@ exact locked collision library alongside the native WASM hash. They are lightwei
|
|
|
253
260
|
serialized strings and require no WASM initialization. Packaging rejects ambiguous
|
|
254
261
|
multiple Parry source entries. Release qualification evidence and retained experiment
|
|
255
262
|
results are recorded in `absolutejs/research/simplex-gyro/`.
|
|
263
|
+
|
|
264
|
+
## Articulation damping controls
|
|
265
|
+
|
|
266
|
+
`world.multibodyJoints.generalizedDamping(jointHandle)` returns an owned
|
|
267
|
+
`Float32Array` for the entire articulation containing that joint, including its
|
|
268
|
+
floating root. A removed joint returns `undefined`. These coefficients are
|
|
269
|
+
raw native coefficients, separate from rigid-body damping: native free angular generalized coordinates
|
|
270
|
+
default to `0.1` even when `RigidBody.setAngularDamping(0)` is used.
|
|
271
|
+
They are not dimensionless decay rates: angular coefficients act against inertia
|
|
272
|
+
in native world units. The same numeric coefficient need not produce the same
|
|
273
|
+
decay after changing the world length scale.
|
|
274
|
+
|
|
275
|
+
`setGeneralizedDamping(jointHandle, values)` returns `true` on success. It rejects
|
|
276
|
+
wrong lengths, negative/nonfinite values, native float overflow and removed
|
|
277
|
+
handles without mutation. Coordinate order is the native generalized order;
|
|
278
|
+
read the vector again after adding, removing or changing joints. The setter does
|
|
279
|
+
not wake sleeping bodies; wake the affected bodies explicitly. Neither method
|
|
280
|
+
changes the native default policy for newly created coordinates.
|
|
281
|
+
|
|
282
|
+
For an explicitly undamped diagnostic, read the vector, replace it with a zero
|
|
283
|
+
vector of the same length, and verify the readback. This is a diagnostic control,
|
|
284
|
+
not a recommendation to remove damping from every game mechanism.
|
package/absolutejs/README.md
CHANGED
|
@@ -36,6 +36,13 @@ corrects previous-simplex witness preservation and reduces force-free rotation
|
|
|
36
36
|
roundoff, as described below. Contact and CCD policy defaults remain unchanged.
|
|
37
37
|
Runtime motion still needs independent geometric and energy checks.
|
|
38
38
|
|
|
39
|
+
Version 0.8.1 refreshes articulated link velocities after final solver impulses
|
|
40
|
+
and uses the integrated link geometry for center-of-mass velocity offsets.
|
|
41
|
+
This fixes stale `linvel()`/`angvel()` state and inconsistent velocities on rotating
|
|
42
|
+
fixed assemblies. It does not change the restitution iteration budget or provide
|
|
43
|
+
a general energy-conservation guarantee for off-center articulated impacts.
|
|
44
|
+
|
|
45
|
+
|
|
39
46
|
The ESM package includes WASM initialization and requires no separate asset URL.
|
|
40
47
|
Concurrent `init()` calls share initialization. The package targets 3D f32
|
|
41
48
|
web/Node/Bun; it does not claim a 2D, f64, CommonJS or SIMD distribution.
|
|
@@ -253,3 +260,25 @@ exact locked collision library alongside the native WASM hash. They are lightwei
|
|
|
253
260
|
serialized strings and require no WASM initialization. Packaging rejects ambiguous
|
|
254
261
|
multiple Parry source entries. Release qualification evidence and retained experiment
|
|
255
262
|
results are recorded in `absolutejs/research/simplex-gyro/`.
|
|
263
|
+
|
|
264
|
+
## Articulation damping controls
|
|
265
|
+
|
|
266
|
+
`world.multibodyJoints.generalizedDamping(jointHandle)` returns an owned
|
|
267
|
+
`Float32Array` for the entire articulation containing that joint, including its
|
|
268
|
+
floating root. A removed joint returns `undefined`. These coefficients are
|
|
269
|
+
raw native coefficients, separate from rigid-body damping: native free angular generalized coordinates
|
|
270
|
+
default to `0.1` even when `RigidBody.setAngularDamping(0)` is used.
|
|
271
|
+
They are not dimensionless decay rates: angular coefficients act against inertia
|
|
272
|
+
in native world units. The same numeric coefficient need not produce the same
|
|
273
|
+
decay after changing the world length scale.
|
|
274
|
+
|
|
275
|
+
`setGeneralizedDamping(jointHandle, values)` returns `true` on success. It rejects
|
|
276
|
+
wrong lengths, negative/nonfinite values, native float overflow and removed
|
|
277
|
+
handles without mutation. Coordinate order is the native generalized order;
|
|
278
|
+
read the vector again after adding, removing or changing joints. The setter does
|
|
279
|
+
not wake sleeping bodies; wake the affected bodies explicitly. Neither method
|
|
280
|
+
changes the native default policy for newly created coordinates.
|
|
281
|
+
|
|
282
|
+
For an explicitly undamped diagnostic, read the vector, replace it with a zero
|
|
283
|
+
vector of the same length, and verify the readback. This is a diagnostic control,
|
|
284
|
+
not a recommendation to remove damping from every game mechanism.
|
package/dist/build-info.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.freeze({schemaVersion:1,scope:"package",packageName:"@absolutejs/rapier3d",packageVersion:"0.
|
|
1
|
+
var e=Object.freeze({schemaVersion:1,scope:"package",packageName:"@absolutejs/rapier3d",packageVersion:"0.9.0",qualifiedKernelRelease:"0.9.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:"f4e4606942e43e6af0ed2bed313005f9f4b89b0f716f569818e81742f77926ae",wasmBytes:3294044,solverChanges:!1});export{e as buildInfo};
|
package/dist/provenance.json
CHANGED
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"scope": "package",
|
|
4
4
|
"packageName": "@absolutejs/rapier3d",
|
|
5
|
-
"packageVersion": "0.
|
|
6
|
-
"qualifiedKernelRelease": "0.
|
|
5
|
+
"packageVersion": "0.9.0",
|
|
6
|
+
"qualifiedKernelRelease": "0.9.0",
|
|
7
7
|
"upstream": "b716d375efc0201003f0cd9ef7168eee0b62c177",
|
|
8
8
|
"engine": "0.36.0",
|
|
9
9
|
"collisionLibraryVersion": "0.31.1",
|
|
10
10
|
"collisionSource": "git+https://github.com/absolutejs/parry?rev=dbd99a8dfce020da3698056471262435d56d3f69#dbd99a8dfce020da3698056471262435d56d3f69",
|
|
11
11
|
"bindings": "0.21.0",
|
|
12
12
|
"bindgen": "0.2.129",
|
|
13
|
-
"wasmSha256": "
|
|
14
|
-
"wasmBytes":
|
|
15
|
-
"solverChanges":
|
|
13
|
+
"wasmSha256": "f4e4606942e43e6af0ed2bed313005f9f4b89b0f716f569818e81742f77926ae",
|
|
14
|
+
"wasmBytes": 3294044,
|
|
15
|
+
"solverChanges": false
|
|
16
16
|
}
|