OptionalcapacityMost particles. Fixed at construction.
OptionalcellGrid spacing Δx, metres. Particles are emitted 2 per cell per axis (8 per cell). Fixed at construction.
OptionalcflCourant number C of the stable step dt ≤ C·Δx / (maxSpeed + sound speed) (see mpmStableStep).
OptionalemitBlocks emitted once, whenever the solver is (re)built. Emit more through the ref.
OptionalfrictionTerrain friction coefficient (Coulomb): 0 slips, large values stick.
OptionalgravityGravity, m/s².
OptionalheightTerrain height function, world metres (re-baked when it changes).
OptionalmaterialsMaterials compiled in (keys, fixed at construction) and their parameters (live).
OptionalmaxParticle speed limit, m/s: the "max particle speed" of the stable step, enforced in G2P.
OptionalmaxMost substeps per frame; past it the simulation runs slower than real time instead of going unstable.
OptionaloriginWorld position of the domain's minimum corner, metres. Moving it shifts the domain by whole cells (the particles keep their world positions; those left outside freeze). Floating-origin safe: the GPU only sees positions relative to it.
OptionalrefReceives the MPMSolverImpl instance.
OptionalrenderDrawing through the particle pool's unlit shading.
Optionalcolors?: string[]Colour ramp by volume change J: first key squashed, middle at rest, last stretched (1 to 8 #rrggbb).
Optionalopacity?: numberOpacity.
Optionalsize?: numberSprite width, in particle spacings (Δx / 2).
OptionalstrainScale?: numberHow much volume change spans the colour ramp: key = 0.5 + (J − 1) × strainScale.
OptionalresolutionGrid nodes along x, y, z (8…160 each). Fixed at construction.
OptionalseedSeed for the emission jitter.
OptionalsubstepsSubsteps per frame at least. More are added when the frame is longer than the stable step allows.
OptionaltimeSeconds simulated per frame: default the frame's delta; a fixed step (e.g. 1 / 60) is deterministic and slows
down rather than going unstable when frames drop. 0: not stepped here (step it through the ref, or let <MPMLava>).
OptionalwallsDomain sides act as slip walls (else particles that leave the domain freeze).
Props of
<MPM>: every MPMInput setting plus the ones below.