class MAGES::MeshDeformations::DynamicSoftbodySnapshot

Overview

An immutable, self-contained snapshot of a DynamicSoftbodyActor’s simulation state. More…

class DynamicSoftbodySnapshot
{
public:
    // properties

    IReadOnlyList<Particle> Particles;
    IReadOnlyList<DistanceConstraint> DistanceConstraints;
    IReadOnlyList<VolumeConstraint> VolumeConstraints;
    IReadOnlyList<ShapeMatchingConstraint> ShapeMatchingConstraints;
    IReadOnlyList<CollinearConstraint> CollinearConstraints;
    IReadOnlyList VolumeConstraintsNeighbors;
    IReadOnlyList VolumeConstraintsToDistanceConstraintsMap;
    IReadOnlyList ParticlesUVs;
    int ParticleCount;
    int DistanceConstraintCount;
    int VolumeConstraintCount;
    int ShapeMatchingConstraintCount;
    int CollinearConstraintCount;
};

Detailed Documentation

An immutable, self-contained snapshot of a DynamicSoftbodyActor’s simulation state.

A snapshot holds deep copies of the full simulation topology (particles and all constraint collections) plus the derived bookkeeping needed to rebuild the visible mesh. It is produced by DynamicSoftbodyActor.Save and consumed by DynamicSoftbodyActor.Load.

The snapshot is captured verbatim: it uses the same indexing as the live runtime arrays and keeps disabled entries in place (it does not compact them). Movement state is intentionally discarded — captured particle positions are the rest positions (InitialPosition) and velocities are zero.

Transient solver state (corrections, predicted/adjusted mass, rest distances/volumes) and the actor’s physics materials / collision layer are not captured; they are re-derived or reused on restore.

Properties

IReadOnlyList<Particle> Particles

Gets the captured particles. Same indexing as the live particle array; disabled entries are kept.

IReadOnlyList<DistanceConstraint> DistanceConstraints

Gets the captured distance constraints.

IReadOnlyList<VolumeConstraint> VolumeConstraints

Gets the captured volume constraints.

IReadOnlyList<ShapeMatchingConstraint> ShapeMatchingConstraints

Gets the captured shape matching constraints.

IReadOnlyList<CollinearConstraint> CollinearConstraints

Gets the captured collinear constraints.

IReadOnlyList VolumeConstraintsNeighbors

Gets the captured volume-constraint neighbor list (derived bookkeeping, verbatim).

IReadOnlyList VolumeConstraintsToDistanceConstraintsMap

Gets the captured volume-constraint to distance-constraint map (derived bookkeeping, verbatim).

IReadOnlyList ParticlesUVs

Gets the captured per-particle UVs (derived bookkeeping, verbatim).

int ParticleCount

Gets the number of captured particles.

int DistanceConstraintCount

Gets the number of captured distance constraints.

int VolumeConstraintCount

Gets the number of captured volume constraints.

int ShapeMatchingConstraintCount

Gets the number of captured shape matching constraints.

int CollinearConstraintCount

Gets the number of captured collinear constraints.