The rationale is that CharacterJoint should contain all of the joint state information, and JointVertexTransform should be pretty much devoid of state so that we don't have to worry about synchronizing it. JointVertexTransform::_matrix was just a cached/precomputed matrix that transforms from original vertex positions to animated vertex positions, so moving it to CharacterJoint doesn't change any engine functionality. This also removes the useless lock on recomputing that matrix. It was useless because it was computing from shared state in CharacterJoint that wasn't properly synchronized, but this would have to be fixed by making CharacterJoint pipeline-cycled - a lock won't do. |
||
|---|---|---|
| .. | ||
| metalibs | ||
| src | ||