「攻撃範囲がどれくらいか、数値だけではイメージしづらい」
「当たり判定の球がどこにあるか、Play中に目で追いたい」
そんなときに便利なのがGizmosです。
Sceneビュー上に線や球を描画でき、ゲーム画面(Gameビュー)には表示されません。
開発中だけ「見える化」できるデバッグ用の描画ツールと考えてください。
この記事では、OnDrawGizmosの書き方、DrawWireSphere・DrawLineの例、攻撃範囲や視界の可視化、色の付け方までを説明します。
Debug.Logで数値を確認する方法と組み合わせると、バグの特定がさらに速くなります。
- OnDrawGizmosを書いたのに、Sceneに何も表示されない…
- Gameビューに出したいのに出ず、どこに描画されているか分からない。
- DrawWireSphereの半径や座標の指定方法が分からない。
✨ この記事でわかること
- Gizmosとは何か、SceneとGameの違い
- OnDrawGizmosとOnDrawGizmosSelectedの使い分け
- DrawWireSphere・DrawLine・DrawWireCubeの基本
- 攻撃範囲・視界距離の可視化例
- Gizmosの色を変える方法
- 初心者でも理解できる解説
\プログラミング未経験でも大丈夫!まずは1本作り切ろう/
初心者が最初に選ぶならコレ
Unity ノンフィールドRPG
+スレスパ風JRPG講座
Unity6対応・スマホ化対応の最新カリキュラム。「何から始めればいいかわからない」という初心者でも、ステップごとに手を動かすだけでRPGが完成します。
憧れのアクションゲームに挑戦
Unity 2Dアクションゲーム
の作り方講座(ロックマン風)
初心者でもロックマン風の横スクロールACTが作れる講座。7ステージ+ラスボスという本格構成で、スマホ化・広告実装まで対応。「自分のゲームをリリースしたい」夢を叶えます。
3Dゲーム開発の入口はここ
ゼルダ風3Dアクションゲーム
の作り方講座
「3Dゲームって難しそう…」と感じている初心者向けの講座。全16回でゼルダ風3Dアクションがスマホ対応で作れるようになります。3D開発の基礎がしっかり身につきます。
Gizmosとは|Sceneだけに表示される描画
Gizmosは、UnityエディタのSceneビュー専用の補助線・補助図形です。
プレイヤーには見えず、開発者が配置や範囲を確認するためのものです。
カメラの視錐台やライトの影響範囲など、エディタが自動で描くGizmosもあります。
スクリプトから描く場合は、OnDrawGizmosまたはOnDrawGizmosSelectedメソッドを使います。
| メソッド | いつ描画されるか |
|---|---|
| OnDrawGizmos | 常に描画(オブジェクトが選択されていなくても表示) |
| OnDrawGizmosSelected | そのオブジェクトを選択しているときだけ描画 |
Sceneビュー右上の「Gizmos」ボタンがオンになっているかも確認してください。
オフだと、スクリプトで描いても見えません。
OnDrawGizmosの基本コード
MonoBehaviourを継承したスクリプトに、次のようなメソッドを追加します。
public class AttackRangeGizmo : MonoBehaviour
{
public float attackRange = 2f;
void OnDrawGizmos
{
Gizmos.color = Color.red;
Gizmos.DrawWireSphere(transform.position, attackRange);
}
}
このスクリプトをキャラクターにアタッチし、InspectorでattackRangeを変えると、Scene上の赤いワイヤー球の大きさが変わります。
Playしなくても表示されるので、配置の段階で範囲を調整できます。
中心座標は多くの場合transform.positionを使います。
オフセットしたいときは、transform.position + Vector3.up などでずらせます。

Gizmosは「ゲームに出ない」ので安心して試せます。
まずは空のGameObjectにスクリプトを付け、球がSceneに出るか確認してみましょう。
よく使う描画メソッド
範囲の形に応じて、次のメソッドを使い分けます。
| メソッド | 用途の例 |
|---|---|
| DrawWireSphere | 攻撃範囲、索敵半径、爆風の届く距離 |
| DrawLine | 視線の方向、パトロール経路、レイの軌跡 |
| DrawWireCube | 長方形の当たり範囲、出現エリアの枠 |
| DrawRay | Raycastの方向と長さを可視化 |
void OnDrawGizmos
{
// 視界:前方へ5mの線
Gizmos.color = Color.yellow;
Gizmos.DrawRay(transform.position, transform.forward * 5f);
// 足元に小さな立方体
Gizmos.color = Color.cyan;
Gizmos.DrawWireCube(transform.position, Vector3.one * 0.5f);
}
DrawWireCubeの第2引数は「サイズ(幅・高さ・奥行き)」です。
Vector3.one * 2f なら、各辺2mの立方体の枠が描かれます。
攻撃範囲と視界の可視化例
実践的な組み合わせ例です。
public変数にしておくと、Inspectorから数値を変えながら調整できます。
public float detectRange = 8f;
public float attackRange = 2f;
void OnDrawGizmosSelected
{
Gizmos.color = new Color(1f, 1f, 0f, 0.3f);
Gizmos.DrawWireSphere(transform.position, detectRange);
Gizmos.color = Color.red;
Gizmos.DrawWireSphere(transform.position, attackRange);
}
索敵範囲を黄色の大きな球、攻撃範囲を赤い小さな球で重ねて表示します。
OnDrawGizmosSelectedにすると、Hierarchyでそのオブジェクトを選んだときだけ表示され、シーンが散らかりにくくなります。
Raycastで地面を検知している場合は、DrawRayで射出方向を線にすると、「どこを向いているか」が一目で分かります。
ヒット距離が分かっているときは、その長さまで線を引くと再現性が高まります。

「当たっているはずなのに当たらない」ときは、Gizmosの球とColliderのサイズを並べて見比べると、ズレに気づきやすいです。
数値だけより断然早いですよ。
色の設定と注意点
Gizmos.colorに色を指定してから描画します。
半透明にしたいときは、new Color(r, g, b, alpha) の第4引数で透明度を下げます。
- Gameビューには出ない → プレイヤー向けUIやエフェクトには使えない
- ビルド後は動かない → エディタ専用のため、製品版には含まれない
- 重い処理を入れない → OnDrawGizmos内でFindや大量のループは避ける
- ColliderのGizmoと混同しない → 緑のワイヤーはColliderコンポーネント側の表示
2DプロジェクトでもGizmosは使えます。
Z座標を0に固定し、DrawWireSphereの代わりにDrawWireCubeで平面の範囲を枠表示する方法もよく使われます。
- STEP1スクリプトにOnDrawGizmosを追加
publicな範囲変数と、DrawWireSphereを1行書きます。
- STEP2GameObjectにアタッチ
キャラクターや敵のルートオブジェクトに付けます。
- STEP3Sceneでサイズを確認
Inspectorの数値を変え、球や線が意図どおりか見ます。
- STEP4本番ロジックと数値を共有
攻撃判定の半径と、Gizmosの半径を同じ変数にするとズレません。

攻撃判定のコードとGizmosで同じ変数(attackRangeなど)を使うのがコツです。
片方だけ直してズレる、というミスが防げます。
記事を読んで「作ってみたい!」と思ったら!初心者でも1本完成できる講座で実力をつけよう
知識を読むだけで終わらせるのはもったいない。実際に手を動かしてゲームを1本完成させることで、理解が一気に深まります。プログラミング未経験からでも取り組める講座で、ゲーム開発の第一歩を踏み出しましょう。
Unity ノンフィールドRPG+スレスパ風JRPG講座【Unity6対応!初心者でもデッキ構築×JRPGをスマホ向けに作れる!】

- Unity6対応・スマホ化対応で最新環境のゲーム開発が学べる
- Slay the Spire風のデッキ構築システム×JRPGの組み合わせを実装
- 初心者でも迷わず進められる丁寧な解説構成
- ノンフィールドRPGとデッキ構築JRPGの2つをまとめて学べるセット講座
Unity ノンフィールドRPGの作り方講座+Slay the Spire風デッキ構築JRPGの作り方講座は、プログラミング未経験の初心者でも取り組みやすい、ステップバイステップ形式の講座です。
Unity6対応・スマホ化対応の最新カリキュラムで、読んで「なるほど」と思った知識を、実際に動くゲームとして形にする体験ができます。
「何から始めればいいかわからない…」という初心者が最初に選ぶ一本として最適な講座です。
Unity6対応・スマホ化対応の最新カリキュラム
ゼロからでもRPGを完成させよう
→ スレスパ風デッキ構築JRPG講座を見てみる
初心者でもスマホ対応のRPGが作れる!まずは1本完成を目指そう!
Unity 2Dアクションゲームの作り方講座(ロックマン風)【全16回!初心者でもスマホ化・広告実装まで対応した本格横スクロールACTが作れる!】

- ロックマン・マリオ・カービィのような横スクロールACTをゼロから開発
- 7ステージ+ラスボスステージの本格的なゲーム設計を初心者でも実現
- スマホ化・AdMob広告実装まで対応してリリースまで見据えた構成
- 敵AI15体・多彩なマップギミック・武器システムを完全実装
- 完全オリジナルゲームをアセット不使用で素材提供付きで制作
Unity 2Dアクションゲームの作り方講座(ロックマン風)は、ロックマン・スーパーマリオ・星のカービィのような2D横スクロールアクションゲームを、初心者でもゼロから開発できるようになる講座です。
全16回で当たり判定・物理挙動・敵AIの知識を実際のゲームコードとして実装する体験が詰め込まれています。スマホ化・広告実装まで対応しているため、「作って終わり」ではなくリリースまで見据えた実践スキルが身につきます。
「憧れのアクションゲームを自分の手で作ってみたい」という初心者に強くおすすめの一本です。
スマホ化・広告実装まで対応した本格横スクロールACT
初心者でもロックマン風2Dアクションをリリースまで作り上げよう
→ 2Dアクションゲームの作り方講座を見てみる
初心者でも本格ACTが完成する!広告収益まで視野に入れた実践スキルを手に入れよう!
ゼルダ風3Dアクションゲームの作り方講座【全16回!初心者でも3Dアクションがスマホ対応で作れる!】

- ゼルダの伝説・モンハン・原神のような3Dアクションをゼロから開発
- 「3Dは難しそう」と感じている初心者でも取り組みやすい丁寧な解説構成
- スマホ化対応で実機で動かせるゲームが完成
- アセットを使った実践的なゲーム開発手法が身につく
- 画像・動画・全ソースコード公開の充実したサポート
ゼルダ風3Dアクションゲームの作り方講座は、「3Dゲームは難しそう…」と感じている初心者こそおすすめの入門講座です。
全16回の丁寧な解説で、ゼルダの伝説・モンハン・原神のような本格的な3Dアクションゲームを確実に完成まで導きます。スマホ化対応で実機で動かせるため、初めて3Dゲームを作り上げた達成感がひときわ大きい講座です。
「3Dゲームを自分でも作れるか試してみたい」という初心者の最初の一歩として最適です。
初心者でも3Dアクションがスマホ対応で完成する
ゼルダ風3Dアクションゲームで3D開発の壁を一気に突破しよう
→ ゼルダ風3Dアクションゲームの作り方講座を見てみる
全16回でスマホで動くオリジナル3Dゲームを完成させよう!
まとめ
UnityのGizmosは、OnDrawGizmos内でDrawWireSphereやDrawLineを呼び、Sceneビューに範囲や方向を可視化する仕組みです。
ゲーム画面には出ず、開発中の確認専用。
攻撃範囲・索敵距離・レイの向きなど、数値だけでは分かりにくい情報を「見える化」できます。
まずは1つのpublic floatとDrawWireSphereから試し、慣れたら色分けやOnDrawGizmosSelectedでシーンを整理していきましょう。
Debug.Logと併用すると、ログの数値とSceneの形を照合しやすくなります。
実践的なゲーム制作でデバッグ手法を身につけたい方は、Unity入門の森の講座も参考になります。
当たり判定やAIの範囲設定を学ぶ中で、Gizmosの活用例も自然に触れられます。
今日はキャラクターに赤い球を1つ描いて、範囲のイメージを掴んでみてください。



コメント