2dでのfromtorotationでlookatを再現する方法が良く理解出来ません

Vector3 diff = (Head.gameObject.transform.position - this.transform.position);

this.transform.rotation = Quaternion.FromToRotation (Vector3.up, diff);

特に何故vector3.upを使うのかがよく分かりません