ReadonlycolumnsColumn samples along x and z.
ReadonlyobjectThe surface mesh (add it to the scene; it follows the solver's origin).
Resolved settings.
ReadonlyshadingShading uniforms.
ReadonlysurfacePer column: x surface height (local to the solver's origin), y snow depth, z mean Jp, w debris (0…1).
Frees the GPU passes and the mesh.
The surface's compute passes for this frame (splat, resolve, smooth), to batch in one renderer.compute([...]).
Merges input into the settings (detail is fixed at construction).
Rebuilds the surface from the particles (after MPMSolver.step).
Draws an MPMSolver's snow as a continuous snow cover: each frame the snow particles splat their current volume (rest volume × det F × Jp, so compaction shows as a depression) into a column grid over the domain with quadratic B-spline weights, a pass smooths it, and a heightfield mesh on the terrain is displaced by it and shaded with snowMaterial (compacted snow by its mean Jp). Footprints, tracks, slumps and avalanche debris all read as one surface; airborne snow lands in the column below it. Hide the solver's particles (
object.visible = false).Example