Open mxgrey opened 6 years ago
Adding to this, it seems I neglected a few fields in the Joint
class: mConstraintimpulses
, mVelocityChanges
, and mImpulses
all seem like they should actually belong to the Joint State, whereas they are currently just plain fields of the GenericJoint
class. As a consequence, option 3 of this comment is failing to work, even though it should.
We should make a point of putting absolutely all data members of every class (that gets used in simulation) into a State
, Properties
, or Cache
container, depending on the role of the data.
With the introduction of Aspects to our dynamics objects, we've managed to get a clear handle on statefulness in our dynamics computations. However, this design pattern never made its way into simulation and constraint solving objects, so we end up with issues like #1086 . Having explicit properties may also help users to configure settings, like what was requested in #1068.
In general, these simulation classes could probably use a good deal of attention. A lot of them haven't really had much development in quite a few years now, and we have reason to believe they could be improved.