Sphere Radius = 800 と書いた。でも、800がどこまでなのかは分かりません。敵の視界を120度に設定した。でも、その扇形が実際どこを向いているのかも見えません。
Print String は値を教えてくれますが、空間の情報は文字では分かりません。800 という数字と、目の前の壁までの距離が一致するのかどうかは、描いてみるまで分からないのです。この記事では、範囲や向きをゲーム画面の中に描く Draw Debug 系ノードと、後から巻き戻して見る Visual Logger を解説します。
この記事でわかること
- 数字と、見えている範囲は一致しない
Draw Debug Sphere/Line/Box/Arrow/Cone/StringDurationの意味 (Tickから呼ぶなら0)- 自分で描く前に エディタ標準の表示 で足りることも多い
- Visual Logger で後から巻き戻す
- 実践: AIが反応しない原因を、可視化で突き止める
数字は、距離を教えてくれない
Sphere Collision の Sphere Radius に 800 と入れる。敵の SightRange を 1200 にする。この数字が、ゲーム世界のどこまでなのかは、書いた本人にも分かりません。
UEの単位は1つが1cmなので、800 は8メートルです。でも「8メートル」と言われて、目の前の廊下の何割かが即答できる人はほとんどいません。

そしてバグの多くは、この「思っていた範囲」と「実際の範囲」のズレから生まれます。
- 敵が反応しない → 検知範囲が思ったより狭かった
- 敵が壁越しに反応する → 検知範囲が思ったより広かった
- 攻撃が当たらない → 攻撃判定の球がキャラの中に埋まっていた
こうしたとき、Print String で 800 と表示しても何も進みません。描いて、目で見るのがいちばん速い解決です。
Draw Debug系ノード
Blueprintで Draw Debug と検索すると、図形ごとにノードが並びます。よく使うのは6つです。

| ノード | 描くもの | 使いどころ |
|---|---|---|
| Draw Debug Sphere | 球 | 検知範囲・攻撃範囲。いちばん出番が多い |
| Draw Debug Line | 線 | 「AからBへ」の関係。ターゲットとの結び |
| Draw Debug Box | 直方体 | 部屋の範囲、Kill Volumeの位置 |
| Draw Debug Arrow | 矢印 | 向き。移動方向、ノックバックの方向 |
| Draw Debug Cone | 円錐 | 視界。扇形の検知範囲 |
| Draw Debug String | 世界の中の文字 | Actorの真上に状態を出す |
ピンはどれも似ています。位置(と大きさ)・色・太さ・Duration の4種類だけ押さ えれば使えます。
Draw Debug String は特に便利です。 Print String が画面の左上にまとめて出るのに対し、これはそのActorの真上に文字を出せます。敵が10体いても、「どの敵が今どの状態か」を1体ずつ頭の上に表示できます(→ enumとステートマシン)。
Line Trace専用の描画もあります。
Line Trace by ChannelなどのノードにはDraw Debug Typeというピンがあり、そこでFor Durationを選ぶとトレースの線と当たった点が自動で描かれます。トレースの確認はこちらのほうが簡単なので、使い分けてください(→ Line Traceの記事)。この記事のDraw Debug系は、トレース以外の何でも描ける汎用の道具です。
Durationとどこから呼ぶか
Draw Debugでいちばん引っかかるのが、描いたのに一瞬で消えるという現象です。
原因は Duration です。既定は 0 で、これは「1フレームだけ描く」という意味になります。
