Unityである地点(fromPosition)からある地点(toPosition)に向かってオブジェクトを回転させたい
久々の逆引き辞典風な見出しで。
※もともとのこのブログのタイトルは「dentaqのWebデザイン逆引き辞典」だったと思う。
というかブログ自体非常にご無沙汰してしまった。
さて、
2つのベクトル(Vector3)からQuaternionにより回転させる方法は以下のとおり。
//開始位置 Vector3 fromPosition = new Vector3(1, 1, 0); //終了位置 Vector3 toPosition = new Vector3(2, 2, 0); //回転の計算 Vector3 newRotation = Quaternion.LookRotation(fromPosition - toPosition).eulerAngles; //transform.rotationに新しい回転を代入 transform.rotation = Quaternion.Euler(newRotation);
fromPositionとtoPositionの値(x, y, z)をいろいろ変えてみよう。fromPositionからtoPositionの方向に向かって回転するよ。