Unity 直線から見てある点が左右どちらにあるかを求める
この問題を解決するのにすごく時間がかかったので残しておきます。
敵をロックオンするカメラの実装等に使えると思います。
①考え方
②コードで書いてみる
//基準点からの方向ベクトルを求める Vector3 ab = b.transform.position - a.transform.position; //acベクトルの右方向ベクトルを求める Vector3 acRight = Vector3.Cross(c.transform.position - a.transform.position, a.transform.up); //内積を求める float cross = Vector3.Dot(new Vector3(ab.x, 0, ab.z).normalized, new Vector3(acRight.x, 0, acRight.z).normalized);
以上です。意外といろんなところで使うかも、、、?