Unity の lookAt を おきかえる

UnityのlookAtは便利ですが、回転をさらに細かく制御しようと思うと難しいので置き換えます。


Rot.transform.LookAt (Vector3.zero);

こうするところを、


Vector3 relative = gameObject.transform.InverseTransformPoint(Vector3.zero);
float angle = Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg;
Rot.transform.localRotation = Quaternion.Euler(0,angle - 90.0f, 0);

こうしてあげると、Vector3.zeroをむきつつ90.0度Y軸回転をできます

コメントを残す