public override void GetLocalExtremePointWithoutMargin(ref Vector3 direction, out Vector3 extremePoint)
{
var transform = new RigidTransform { Orientation = shapes.WrappedList.Elements[0].Orientation };
shapes.WrappedList.Elements[0].CollisionShape.GetExtremePoint(direction, ref transform, out extremePoint);
for (int i = 1; i < shapes.WrappedList.Count; i++)
{
Vector3 temp;
transform.Orientation = shapes.WrappedList.Elements[i].Orientation;
shapes.WrappedList.Elements[i].CollisionShape.GetExtremePoint(direction, ref transform, out temp);
Vector3.Add(ref extremePoint, ref temp, out extremePoint);
}
Vector3.Add(ref extremePoint, ref localOffset, out extremePoint);
}