@absolutejs/rapier3d 0.3.0 → 0.5.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.
|
@@ -11,6 +11,15 @@ export declare class IntegrationParameters {
|
|
|
11
11
|
get contactClustering(): boolean;
|
|
12
12
|
/** Change between simulation steps; false may increase solver workload. */
|
|
13
13
|
set contactClustering(value: boolean);
|
|
14
|
+
/** Reuse nearby contact manifolds between updates. Default true; false increases narrow-phase work. */
|
|
15
|
+
get contactRecycling(): boolean;
|
|
16
|
+
set contactRecycling(value: boolean);
|
|
17
|
+
/** Relative-pose drift threshold, multiplied by lengthUnit. Default 0.05. Change between steps. */
|
|
18
|
+
get normalizedContactRecycleDistance(): number;
|
|
19
|
+
set normalizedContactRecycleDistance(value: number);
|
|
20
|
+
/** Fraction of cached impulses reused by the solver, in [0, 1]. Default 1. Change between steps. */
|
|
21
|
+
get warmstartCoefficient(): number;
|
|
22
|
+
set warmstartCoefficient(value: number);
|
|
14
23
|
/** Minimum CCD substep duration in seconds; upstream default is 1/60/100. */
|
|
15
24
|
get minCcdDt(): number;
|
|
16
25
|
/** Change between steps. Very small values may introduce numerical instability. */
|
|
@@ -632,6 +632,23 @@ export declare class Collider {
|
|
|
632
632
|
* @returns `null` if the shapes are separated by a distance greater than prediction, otherwise contact details. The result is given in world-space.
|
|
633
633
|
*/
|
|
634
634
|
contactCollider(collider2: Collider, prediction: number, target?: ShapeContact): ShapeContact | null;
|
|
635
|
+
/**
|
|
636
|
+
* Queries the two native shapes at their current parent-body poses without stepping
|
|
637
|
+
* the world or propagating body poses into the collider set. Includes each collider's
|
|
638
|
+
* local translation and rotation; parentless colliders use their stored world pose.
|
|
639
|
+
*
|
|
640
|
+
* Useful for explicit diagnostics after body edits, when contactCollider and stored
|
|
641
|
+
* manifolds may still refer to the previous collider poses. This is an allocating shape
|
|
642
|
+
* query, not a solver contact, continuous sweep, or authored-material penetration bound.
|
|
643
|
+
* Collision filters, hooks, and contact skin are not applied. The result is world-space.
|
|
644
|
+
* A null result can also indicate an unsupported native shape pair; it is not a proof
|
|
645
|
+
* that arbitrary compound or authored material is disjoint.
|
|
646
|
+
*
|
|
647
|
+
* @param prediction - Finite nonnegative prediction distance in world length units.
|
|
648
|
+
* @param target - Optional reusable result object.
|
|
649
|
+
*/
|
|
650
|
+
contactColliderAtCurrentBodyPoses(collider2: Collider, prediction?: number, target?: ShapeContact): ShapeContact | null;
|
|
651
|
+
private currentBodyPose;
|
|
635
652
|
/**
|
|
636
653
|
* Find the closest intersection between a ray and this collider.
|
|
637
654
|
*
|
|
@@ -706,12 +706,14 @@ export class RawIntegrationParameters {
|
|
|
706
706
|
[Symbol.dispose](): void;
|
|
707
707
|
constructor();
|
|
708
708
|
contactClustering: boolean;
|
|
709
|
+
contactRecycling: boolean;
|
|
709
710
|
readonly contact_erp: number;
|
|
710
711
|
dt: number;
|
|
711
712
|
lengthUnit: number;
|
|
712
713
|
maxCcdSubsteps: number;
|
|
713
714
|
minCcdDt: number;
|
|
714
715
|
normalizedAllowedLinearError: number;
|
|
716
|
+
normalizedContactRecycleDistance: number;
|
|
715
717
|
normalizedPredictionDistance: number;
|
|
716
718
|
numInternalPgsIterations: number;
|
|
717
719
|
numSolverIterations: number;
|
|
@@ -723,6 +725,7 @@ export class RawIntegrationParameters {
|
|
|
723
725
|
softBodiesMaxExtraSubsteps: number;
|
|
724
726
|
softBodiesRecovery: RawSoftRecoverySettings;
|
|
725
727
|
softBodiesResweepStrain: number;
|
|
728
|
+
warmstartCoefficient: number;
|
|
726
729
|
}
|
|
727
730
|
|
|
728
731
|
export class RawIslandManager {
|
|
@@ -2297,6 +2300,7 @@ export interface InitOutput {
|
|
|
2297
2300
|
readonly rawimpulsejointset_new: () => number;
|
|
2298
2301
|
readonly rawimpulsejointset_remove: (a: number, b: number, c: number) => void;
|
|
2299
2302
|
readonly rawintegrationparameters_contactClustering: (a: number) => number;
|
|
2303
|
+
readonly rawintegrationparameters_contactRecycling: (a: number) => number;
|
|
2300
2304
|
readonly rawintegrationparameters_contact_erp: (a: number) => number;
|
|
2301
2305
|
readonly rawintegrationparameters_dt: (a: number) => number;
|
|
2302
2306
|
readonly rawintegrationparameters_lengthUnit: (a: number) => number;
|
|
@@ -2304,16 +2308,19 @@ export interface InitOutput {
|
|
|
2304
2308
|
readonly rawintegrationparameters_minCcdDt: (a: number) => number;
|
|
2305
2309
|
readonly rawintegrationparameters_new: () => number;
|
|
2306
2310
|
readonly rawintegrationparameters_normalizedAllowedLinearError: (a: number) => number;
|
|
2311
|
+
readonly rawintegrationparameters_normalizedContactRecycleDistance: (a: number) => number;
|
|
2307
2312
|
readonly rawintegrationparameters_normalizedPredictionDistance: (a: number) => number;
|
|
2308
2313
|
readonly rawintegrationparameters_numInternalPgsIterations: (a: number) => number;
|
|
2309
2314
|
readonly rawintegrationparameters_numSolverIterations: (a: number) => number;
|
|
2310
2315
|
readonly rawintegrationparameters_set_contactClustering: (a: number, b: number) => void;
|
|
2316
|
+
readonly rawintegrationparameters_set_contactRecycling: (a: number, b: number) => void;
|
|
2311
2317
|
readonly rawintegrationparameters_set_contact_natural_frequency: (a: number, b: number) => void;
|
|
2312
2318
|
readonly rawintegrationparameters_set_dt: (a: number, b: number) => void;
|
|
2313
2319
|
readonly rawintegrationparameters_set_lengthUnit: (a: number, b: number) => void;
|
|
2314
2320
|
readonly rawintegrationparameters_set_maxCcdSubsteps: (a: number, b: number) => void;
|
|
2315
2321
|
readonly rawintegrationparameters_set_minCcdDt: (a: number, b: number) => void;
|
|
2316
2322
|
readonly rawintegrationparameters_set_normalizedAllowedLinearError: (a: number, b: number) => void;
|
|
2323
|
+
readonly rawintegrationparameters_set_normalizedContactRecycleDistance: (a: number, b: number) => void;
|
|
2317
2324
|
readonly rawintegrationparameters_set_normalizedPredictionDistance: (a: number, b: number) => void;
|
|
2318
2325
|
readonly rawintegrationparameters_set_numInternalPgsIterations: (a: number, b: number) => void;
|
|
2319
2326
|
readonly rawintegrationparameters_set_numSolverIterations: (a: number, b: number) => void;
|
|
@@ -2324,6 +2331,7 @@ export interface InitOutput {
|
|
|
2324
2331
|
readonly rawintegrationparameters_set_softBodiesMaxExtraSubsteps: (a: number, b: number) => void;
|
|
2325
2332
|
readonly rawintegrationparameters_set_softBodiesRecovery: (a: number, b: number) => void;
|
|
2326
2333
|
readonly rawintegrationparameters_set_softBodiesResweepStrain: (a: number, b: number) => void;
|
|
2334
|
+
readonly rawintegrationparameters_set_warmstartCoefficient: (a: number, b: number) => void;
|
|
2327
2335
|
readonly rawintegrationparameters_softBodiesContactStiffening: (a: number) => number;
|
|
2328
2336
|
readonly rawintegrationparameters_softBodiesFemLinearTolerance: (a: number) => number;
|
|
2329
2337
|
readonly rawintegrationparameters_softBodiesFemMaxDenseDofs: (a: number) => number;
|
|
@@ -2331,6 +2339,7 @@ export interface InitOutput {
|
|
|
2331
2339
|
readonly rawintegrationparameters_softBodiesMaxExtraSubsteps: (a: number) => number;
|
|
2332
2340
|
readonly rawintegrationparameters_softBodiesRecovery: (a: number) => number;
|
|
2333
2341
|
readonly rawintegrationparameters_softBodiesResweepStrain: (a: number) => number;
|
|
2342
|
+
readonly rawintegrationparameters_warmstartCoefficient: (a: number) => number;
|
|
2334
2343
|
readonly rawislandmanager_forEachActiveRigidBodyHandle: (a: number, b: number) => void;
|
|
2335
2344
|
readonly rawislandmanager_new: () => number;
|
|
2336
2345
|
readonly rawkinematiccharactercontroller_autostepEnabled: (a: number) => number;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@absolutejs/rapier3d",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Rapier 3D with
|
|
3
|
+
"version": "0.5.0",
|
|
4
|
+
"description": "Rapier 3D with current-body shape queries and solver-contact diagnostics",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"repository": {
|