actionScript書きの日記

アラフォーFlashデベロッパのブログ。actionscriptやobjective-cを経て、現在はUnity、Spine、AfterEffectsがメイン。

Unityでオブジェクトを指定した角度に回転させる方法のまとめ

前提

Unity上のオブジェクトを、指定した角度に回転させたい。例えば、Rotationの値が(0, 0, 90)になるようにしたい。

 簡単なようでいて、この対応が意外とややこしいので、備忘録として。

 

対応

対応は2種類の方法がある。

  1. Transformの「eulerAngles」を指定する方法。
  2. transform.rotationを指定する方法。

 

Transformの「eulerAngles」を指定する方法。

this.gameObject.transform.eulerAngles = new Vector3(0, 0, 90);

Transformの「eulerAngles」はVector3で指定できるので便利。

 

transform.rotationを指定する方法。

transform.rotation = Quaternion.AngleAxis(90.0f, new Vector3(0, 0, 1));

「Quaternion.AngleAxis」を使用して角度と回転軸を指定すると、それに見合ったQuaternionの値を返してくれる。Transform.rotationにそのまま代入できるのは便利。

 

参考

以下の記事に助けて頂いた。他にもよくまとまっていて素晴らしい記事。感謝申し上げる。

tama-lab.net