Code: Select all
Entity eA;
Entity eB;
DistanceJoint j;
Vector3 forward = game.AudioObjects[anchorB_UniqueID].Entity.Position - game.AudioObjects[anchorA_UniqueID].Entity.Position;
float linkDistance = forward.Length();
linkDistance /= numLinks;
forward.Normalize();
for (i = 0; i < numLinks; ++i)
{
eA = i == 0 ? game.AudioObjects[anchorA_UniqueID].Entity : new Sphere(game.AudioObjects[anchorA_UniqueID].Entity.Position + (forward * linkDistance * i), 0.05f, 1f);
eB = i == numLinks - 1 ? game.AudioObjects[anchorB_UniqueID].Entity : new Sphere(game.AudioObjects[anchorA_UniqueID].Entity.Position + (forward * linkDistance * (i + 1)), 0.05f, 1f);
j = new DistanceJoint(eA, eB, eA.Position, eB.Position);
game.Space.Add(j);
joints.Add(j);
obbs.Add(new OBB((j.WorldAnchorA + j.WorldAnchorB) * 0.5f, 0.5f, 0.5f, j.Distance, ToolBox.RotationFrom(j.WorldAnchorA - j.WorldAnchorB)));
}
What could be the cause of this behaviour? Why would the stiffness remain constant for one link and not for multiple?