А что если
// попытка сгладить движение камеры
targetPosition = Vector3.Lerp(oldTargetPosition, targetPosition, 15*Time.deltaTime);
if((targetPosition-oldTargetPosition ).magnitude <0.001f)
{
targetPosition = oldTargetPosition ;
}
else
{
oldTargetPosition = targetPosition;
}