You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The soft body pass skips the shapes no particle can reach. Each
substep it tested every particle of every soft body against every
shape in the world. It now first tests the box around a soft body's
particles against each shape: a bounding sphere for spheres, capsules,
voxel chunks, meshes and height fields, and a separating face for
hulls. Planes are always tested. Each test keeps a stated rounding
margin, so a skipped pair is one the projection would leave alone. A
bench scene of four cloths and two jellies among 2000 static shapes 40
to 90 m away runs on 3.57 billion instructions instead of 282.1
billion, 79 times fewer. The skip changes no result: hashes,
snapshots and replays are the same with it as without it, and there is
no API change. (#47)
The API reference lives on the documentation site. The README and
the Godot binding's README link https://rawframe-project.github.io/maul3d/api.html, which is built from
the headers. The committed docs/api.md, which showed an older API, is
gone. m3World_Hash's doc now lists what the hash covers and what it
leaves out: mesh geometry and height field samples are not hashed. m3Counters.voxelEditsRefused is documented as a counter that is
neither hashed nor snapshotted.
(#46)
Fixed
Soft body particles collide with thin mesh triangles and with
triangles that repeat a corner; they used to pass through. On a
triangle well under a millimetre wide, the closest point could come
out up to a metre from a particle a few centimetres away, so the
particle was not pushed. A triangle whose first two corners are one
vertex gave no closest point at all. On other triangles a result
changes only where the point lies within rounding of an edge, and no
golden or bench result moved.
(#48)