I First Ask Question on Make GameObject rotate forward relative to other gameobject
Here is Link - https://answers.unity.com/questions/1583814/make-gameobject-forward-in-term-of-direction-to-ot.html
And Use it as
UseVector3 RelativePos = other.position - transform.position;
var newRotation = Quaternion.LookRotation(RelativePos);
newRotation.y = other.transform.rotation.y;
newRotation.x = other.transform.rotation.x;
transform.rotation = Quaternion.Slerp(transform.rotation, newRotation, Time.deltaTime * 1);
Now Results is
Image before Run
Image After Rotation is Complete
I tried many times but don’t know why it is happening