ReadonlyccdThe §31 CCD modes this adapter implements. Always contains "disabled",
since doing nothing is always available.
ReadonlydeterminismThe strongest §33 tier this adapter can actually achieve. Not an aspiration: the §92 determinism tests are written against it.
ReadonlydimensionsThe §21 dimensions this adapter can simulate; at least one.
ReadonlyjointThe §28 joint types this adapter implements, by name.
string rather than the engine's JointType union, per §37 — an adapter
may expose a solver-specific constraint the engine has no name for. An
adapter declares exactly the ShippedJointTypes it builds (plan P6-1);
[] means createJoint throws NOT_IMPLEMENTED, which is where the two
Rapier adapters stand until WP-6.2/6.3.
This declaration is about which types an adapter builds. Whether the
engine can talk to its joints at all — ids, reactions, live reconfiguration
— is the separate SolverJointAccess seam, detected structurally rather
than declared here, because §37 fixes this record's six fields.
ReadonlyqueriesWhich of §30's queries are implemented.
ReadonlysnapshotsWhether PhysicsSolverAdapter.createSnapshot and PhysicsSolverAdapter.restoreSnapshot are implemented (§34).
Optional ReadonlytuningWhich accepted §25/§32 tunables this adapter actually applies.
Optional because §37 fixes the six fields above and an adapter written against that list cannot have answered; omitting it reads as NO_TUNING_CAPABILITIES — "none of them reach the solver" — through resolveTuningCapabilities, which is the reading that produces a warning rather than the one that hides a dropped coefficient.
What a solver can do (§37).
§37: "Capability declarations drive
solver: "auto"selection (§20) and the compatibility tables of §90." They also decide what a world may ask for — a world that requests a determinism tier or a CCD mode the adapter does not declare fails at construction rather than degrading quietly (WP-5.3).Declarations must be honest. Declaring a capability an adapter does not have converts a clear construction-time error into a wrong simulation, which is the failure mode this whole record exists to prevent.