Easy Coding

ノートみたいなもの。

【Unity】オブジェクトの角度を扱う方法についての備忘録【スクリプト】

こんにちは

Unityでローカルな角度を保持したまま目標物へ向けてオブジェクトを回転させたり、弧度法で範囲指定をして、それ以上は回転させない、という挙動を実装するスクリプトについての解説です。

例えば、村人が主人公の方を振り向く首の動きなどに実装できそうですね

public var target : GameObject;//振り向く対象
public var angle : float;//左右に振り向いていい角度の範囲

function Update(){

   //まず目標の方向を向く
   this.transform.LookAt(scr.target.transform.position);

   if(this.transform.localRotation.y >= angle){//もしも振り向きすぎなら
      this.transform.localRotation.y = angle;//最大値に抑えてやる
   }else if()(this.transform.localRotation.y <= -angle){//もしも逆に振り向きすぎなら
      this.transform.localRotation.y = -angle;//最小値に抑えてやる
   }


これにて、村人が映画「エクソシスト」のように首を180度回転させるという恐怖を防ぐことができそうですね^^

今回はこれにて終了です

広告