UnityのDrawLineとDrawRayのメモ

1. DrawLineは2点を結ぶ線

点Aと点Bがある時,その2つを結ぶ線を引きたい時使う

2. DrawRayは1点と1距離から作る線

点Aがある時,そこからある方向へ,ある長さの線を引きたい時使う*1

3. メモ

DrawRayは内部でDrawLineを使っている f:id:SiunCyclone:20200806002850p:plain UnityCsReference/Gizmos.cs at master · Unity-Technologies/UnityCsReference · GitHub
DrawLineだけじゃなくDrawRayも存在してるのは,単純に使いやすさのため.
ある点から100右向きの線引きたい時に
DrawLine(origin, origin + Vector3.right * 100);
と書くより
DrawRay(origin, Vector3.right * 100);
と書けるほうが便利だから

4. 注意点

Rayのdirectionは自動で正規化されるが,DrawRayのdirectionは正規化されない

*1:DrawRay(Ray r)を使う場合は正規化された長さしか引けない.長さを指定する場合はDrawRay(Vector3 from, Vector3 direction)を使う.