Unityの忘備録とメモです('◇')ゞ

Unityでゲーム制作中に気づいたことや忘備録とかとか

【Unity】Debug.DrawRayに角度をつける

ゲーム制作お疲れ様です~( ^^) _旦~~

Playerの前方に角度がわかるように3本のRayを飛ばします。

真ん中から右に70度、左に-70度とします。

youtu.be

using UnityEngine;

public class Test : MonoBehaviour
{
   void OnDrawGizmos()// OnDrawGizmos()を使うとゲームを実行していなくてもRayが可視化されるようです
   {
      Gizmos.color = Color.blue;                                                //transform.upをプラスしてRayの高さを1にしています
      Gizmos.DrawRay(transform.position + transform.up, transform.forward * 5); //5を掛けることで長さが5になります
      Gizmos.DrawRay(transform.position + transform.up, transform.forward + Quaternion.Euler(0, 70, 0) * transform.forward * 5);
      Gizmos.DrawRay(transform.position + transform.up, transform.forward + Quaternion.Euler(0, -70, 0) * transform.forward * 5);
   }
}

Quaternion.Euler(0, 70, 0)の70の所で角度を調節できます。

ただ角度を可視化したかっただけなのに、
結構ドツボにはまって上記のスクリプトを書くのに1時間くらいかかりました。。。。。

相も変わらずセンスがない(´;ω;`)

transform.fowardにQuatenion.Eulerをそのまま足そうとしてもエラーが出るし、
掛けてもエラーが出るし。。

Quatenion.EulerはVector3型と掛け算した後でないとtransform.fowardに足し算できないっぽいですね(゜-゜)

わからん!!

おわり('◇')ゞ